我是大学毕业生.我想知道我应该花多少时间在编码和学习上.
while (true) { learn; code; }
当然,你已经意识到对你应该花费编码的时间量进行有限的测量是徒劳的,并且无关紧要.
做你想做的,但总是尽量保持最新.
我在大学里有两个朋友,都在学习媒体信息学,两人都是编程的绝对初学者.
如果他必须为项目学习新语言但从未有过私人编程项目,那么第一个在家里读了很多.
第二个读了一下,但有自己的python项目.他的朋友的网络应用程序,您可以在其中打赌足球结果.
两者相比:
第一个人编程速度慢,总是偶然发现简单的东西,他的代码可以优化(行号和注释)至少5个.在两天内他会再次遇到同样的问题......
第二个人快得多,可以轻松阅读外国代码和语言,并且最多偶然发现一次问题,第三次使用他所学到的东西......
所以imho,做你自己的项目,你编码因为你喜欢它,你工作到早上修复bug或完成实现,是最好的学习方式!
当我第一次开始编程时,我似乎突然学到了新的东西.函数,类,继承等等.但过了一段时间,我意识到你通过编码学习.我用大量的阅读材料 - 有效的C++,现代C++来装载自己,但是当我真正坐下来编写代码时,没有什么可以胜过它们.
当然,一遍又一遍地以相同的方式编写代码并不能使您成为更好的程序员.你必须学会思考 - 我如何让它重复使用?不容易出错?便携式?免疫应用程序的其他领域的变化?更容易维护?有一个更好的方法吗?
最终,学习达到顶峰,你所学到的是我喜欢的乘数.这就像知道dirname(__FILE__)
在PHP中返回包含文件所在的当前目录.这就像找出什么是ORM以及如何通过抽象化数据库来更多地关注代码逻辑而不是编写INSERTS和UPDATE SQL的无限例程声明.这就像学习智能指针和在C++中有效使用STL,在执行JavaScript/CSS/HTML时有效地使用Firebug ......等等.
所以代码; 一旦你对某事感到沮丧("必须有比现在更好的方法来做到这一点!"),寻找更好的方法 - 无论如何,这就是我的学习方式.
我小的时候:
周一至周五,上午10点至晚上7点,在办公室编程
星期六下午,阅读章节
周一至周六晚上9点至凌晨1点,在家编程
星期天,开车去市中心,从书店拿几本书
那些是谷歌被称为nntp的日子
这些日子:
周一至周五,上午10点至晚上7点,在办公室编码(太糟糕了,我现在在网上;-)
晚上9点到凌晨1点,在我的MacBook Air上编写一些iPhone项目
周六和周日,再编码16个小时
太糟糕了,谷歌打断了我太多,我无法计算阅读博客和PDF书籍花了多少小时......