软件开发进阶的历程(附书籍推荐)?
作为一个软件开发者,其实我们的工作内容远远不止写代码这么简单。要想在此基础上进阶,还需要做很多事情,比如项目管理、需求整理、代码优化、预言项目、团队协作、深入浅出传达项目、解决难题等等。
这里我把这个进阶的过程分为4个阶段,入门级、中级、熟练级、技术带头人,并且推荐一些书,供大家参考。
1第一级 入门级
这个阶段需要会利用某种语言的基本功能,能够编写类、子程序、循环和条件语句,会使用语言的许多特性
。
熟练软件开发的工具和技巧,并且可以介绍出如何处理细节问题等等,这个阶段有两本书可以参考。
代码大全(第2版)
《代码大全》即 Code Complete
,是一本完整的软件构建手册,涵盖了软件质量、编程思想等软件构建过程中的所包含的几乎所有细节,并详细论述了很多紧跟潮流的新技术、高层次观点以及通用的概念等等。
本书包含有丰富且典型的程序示例,不管你是初学者还是编程,都是很适合去研读的,如果想要继续深入理解成为高手,本书包含的编程技巧以及编程思想更是对我们大有裨益。
总的来说,无论是什么背景的读者,阅读这本书都有助于在更短的时间内、更容易地写出更好的程序。
编程珠玑
本书的内容是围绕程序设计人员面对的一系列实际问题展开的,授人以鱼不如授人以渔,所以作者用这种超强的洞察力来教会我们要在实际中解决问题,这对我们至关重要。
通过一些精心设计的实用程序,在设计技巧及基本设计原理上进行了透彻的描述,生动有趣,可以使我们在摸索中快乐学习,并且在复杂的编程问题中有清晰而完备的解决思路。
编程珠玑
多年来都很受欢迎,可以说排在程序员爱读的计算机图书的前列,不枉珠玑两字,书中浓缩了史上众大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程。
其本质可总结为:如何正确选择和高效地实现算法,并透彻阐述和总结了许多独特而精妙的设计原则、思考和解决问题的方法以及实用程序设计技巧。
本书的代码示例均以C/C++语言编写,并且在解答之后都留有一些问题,使我们可以举一反三,继续探索其中的妙处,拓展我们的思维。
2第二级 中级
这个阶段能利⽤多种语言的基本功能,并能够得心应手地使用至少一种语言。
而且还需要关注软件构造、管理、需求、设计及其他软件话题等等,这个阶段有两本书可以参考。
UML和模式应用(原书第3版)
《UML和模式应用(原书第3版)》吸收了大量OOA,D的精华思想和现代实践方法,是一本经典的面向对象分析设计技术的入门书。
本书将面向对象的概念、过程、方法、原则结合个人的实践并以实例为证,将软件的架构、设计、实现整个过程娓娓道来,叙述清晰精准,使人受益匪浅。
并且本书适用范围广泛,从初学者到有一定对象技术知识学习者、希望进一步提高开发水平的中级读者,甚至是资深的专业人员,都是很有帮助的。
软件需求
《软件需求》这本经典名著介绍的需求工程最佳实践、工具和技术,使读者可以提升需求引导、捕获、开发、管理和分析能力,不仅仅是软件本身,而且经过工程实、实例和洞见。
软件需求和工程实践结合,在尽可能减少成本、增强维护性和避免返工的同时,交付定位更准确、质量更优良的软件产品以及服务。
3第三级 熟练级
这个阶段一般需要对语言或环境或两者兼具有着专业技能,或者对Java EE如数家珍,或者对Linux系统了了如指掌,很多程序员通常无法超越这个层次。
重构Refactoring
《重构:改善既有代码的设计》为面向对象软件开发所做的贡献,难以衡量,本书中解释了重构的原理和最佳实践方式,并指出何时何地你应该开始挖掘你的代码以求改善。
本书的核心是一份完整的重构名录,其中每一项都介绍一种经过实证的代码变换手法的动机和技术,某些项目看起来可能很浅显,但不要掉以轻心,因为理解这类技术正是有条不紊地进行重构的关键。
设计模式Design Patterns
这本书结合设计实作例从面向对象的设计中精选出23个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。
书中涉及的设计模式并不描述新的或未经证实的设计,只收录了那些在不同系统中多次使用过的成功设计,并且分类描述了一组设计良好、表达清楚的软件设计模式,这些模式在实用环境下特别有用。
4第四级 技术带头⼈人级
这个阶段需要具有熟练级的专业才学,善于了解需求,擅长设计架构,不为机器写代码,而为人写代码,代码质量高,优雅,简洁,易理解。
5如何获取?
关注以下公众号,回复软件进阶即可!