底层软件开发人员,及所有的程序员,若想作好软件设计(良好的结构和移植性),能适应新项目的变化,就要遵循下面的原则:
·最重要的是要理解基本概念 ( 如操作系统 ),掌握设计原则 ( 如接口分层 )。
·第二是经验的积累。实践经验比书本知识更可贵,可极大提高后续工作和学习效率。
·第三是关注新的软件技术,提高自己对软件设计的理解。
需要注意的是,一个完整固定的学习路线是很难确定的,原因一是因人而异,二是技术进步很快。
这是从todaygood的blog上面摘下来的,todaygood的学习效率比我高,可能工作的环境更能锻炼人吧。就嵌入式系统软件开发的学习思路而言,我们的观点还是一致的。现在这三个方面我还都是注意的,基本上是白天在导师公司的时间里,就根据项目积累经验,总结和改进学习方法,晚上进行软件设计基础和理论基础的学习。中间穿插的休息时间就可以泡论坛,看blog,关注新的软件技术,先知道有这种技术,技术的发展状况如何。
当然,这些工作的前提是确定一个基本的知识体系框架,在校期间把框架的基础打好,尽量多扩展填充。工作之后,继续深入细化,形成专长。这是我的学习思路。
补充的一点是,要学会写文档,有两个原因,一是锻炼自己的表达能力,自己能否真正理解,就看写出文档,是否能让别人理解,如果能,那么证明你理解比较到位了,同时,可以通过讨论来找出自己理解的盲点,加深理解,二是作为技术经验备份,需要时可以迅速的拿来使用,不用在网上浪费大量的搜索时间,万一系统down掉,可以迅速的恢复,可以说,这是自己的一份经验和财富,管理好这些资源,对自己有很大的帮助。 |