# 程序员心理——大三写pj+lab有感

目录

到目前为之,我的程序员生涯只有一年多一点,而我接触电脑的时间总共也不过才两年多一点。因为在上大学之前我是没有接触过电脑的,真正进入计算机专业也是从大二开始。坦白说,我的专业课学的并不是非常扎实,起码没有高中语数外那么扎实。估计大二一年的代码量不过在万行左右,自从上大三之后努力实践码代码,尤其是操作系统+分布式系统,写了比较多的c和java(对自己来说)。终于对写代码产生了一些感觉感悟;同时,自己对于技术的热衷的情怀也慢慢被培养起来了。这一篇博文就当是自己开化的自述吧(虽然比较反感程序人生一类的文章,因为大多这样的文章都是作者为了吹嘘自己有多牛逼而写的,真正写技术心得的文章可为少之又少,希望自己能不落俗套,能认认真真搞技术,多一点工匠精神):

既要苛求自己代码以最少的次数AC,同时也要随时准备debug

老实说,之前自己还是挺害怕程序出bug的,总是担心自己因定位不到bug在哪而花费很多时间。但其实,只要使用合理的方法,by all means and without independence of others and can describe question in detail and specifically, importantly, be patient。做到以上几点,99% 的bug 都无所遁形

  • 将debug 看成是一次挑战,一次debug成功的成就感并不少于完成整个程序
  • 善于debug,多注意编译器等给出的提示条件

如何快速入门一项新技术

以自己写分布式系统pj为例,之前从未接触过Hadoop相关的知识,老师突然给出了要用Hadoop写分布式系统的project,虽然讲了大体思路,但还是有些挑战性的

  • 不要恐惧,不要恐惧,不要恐惧:理性的分析该怎么做,心态决定了能做多好,能走多远
  • 了解新技术的整体架构+原理——主要是偏理论方面
  • starting from hello world 由于不懂Hadoop怎么处理xml文件,就去咨询师姐,师姐就让我解释Hadoop的wordcount给她听,我之前看过一边,以为很简单,但我解释的时候却漏洞百出,还被师姐的好多问题给难住了。她就让我先看懂wordcount。于是我又仔仔细细的把wordcount中的每一行代码都琢磨了一边。找到了解决自己关键问题的入口(就是具体要怎么干)。万事规律,由简入繁。当把简单的功夫练到极致,那些高深莫测的武功稍加学习就能通晓了。
  • 不要臆想,(要懂得)看源码(touch the MOST relevant part):想要更好的使用工具,就必须对工具自身主要的构造足够清楚。这里的”足够“看情况而定,如果时间足够+姿势水平够高,那就可以横扫源码,否则的话还是要看一下和自己工作十分相关的那部分源码。在本次pj当中,我就是把Hadoop的inputformat 部分的源码基本看了一边(深深拜服,注释写得好,逻辑足够清晰)

学习一门语言的有效方法

以前经常会花费一段时间(大多一两个李白)去专门学一门语言,比如MATLAB、python、scala等等,可到后来呢?过一段时间又忘记了,等到再用的时候还是从头开始学习。所以不要为了学习一门语言而学习语言,目的要更加具体些,下面是一些方法:

  • 抓住一门语言的某个特性:比如java的面向对象特性、python的数值计算、c的内存操作,可以就针对这一个特性选取一些小型项目练习。
  • 依傍项目学习语言:要是通过写不同的算法来学习一门语言,那肯定是事倍功0(毫无效果)

写项目的一些小经验

这个学期写了操作系统的lab。老实说,难在两个方面,一是要理解操作系统的每一部分的原理;另一部分是,两次lab之间间隔的时间有点长,刚刚熟悉了lab,经过一周的淡忘,下次写的时候又要重新熟悉。下面先介绍一下到目前为止,学到的经验

  • 每次熟悉项目的时候,将新学习的函数/接口/特别的变量(c中尤其是宏)记在同一份文档上面:这样就不用每次都做重复的工作了

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值