北京北大青鸟校区总结:优秀软件工程师的特质(1-5)

现如今,无论是什么行业的公司,都愿意把业务、工作放到互联网上。因此IT人才成为任何一家企业都不可或缺的岗位,尤其是开发软件的人——软件工程师正显得越发重要。但是,你该如何发现那种百里挑一的程序员呢?通州北大青鸟学校总结出优秀软件工程师的特质,按照这些特质去完善自己的工作能力吧!

1. 热爱编程
2. 完成事情
3. 持续重构代码
4. 使用设计模式
5. 编写测试
6. 善用现有代码
7. 专注可用性
8. 编写可维护的代码
9. 能用任何语言编程
10. 知晓基本的计算机科学

1. 热爱编程
编程是一种为了满足兴趣而心甘情愿去做的劳动。和其他任何职业一样,唯有真正的热情,才能完成真正的伟大事情。这里有个误解,认为编写代码是机械化并纯科学性的。事实上,最优秀的软件工程师能把能量、独创性和创造力融入到每一行代码中。伟大的工程师知道何时该把代码雕琢至完美,知道何时把大型系统像拼图一样组装到一块。热爱编程的工程师从构建软件中获得满足,正是兴奋感和成就感,才造就了喜爱编程的明星工程师。

2. 完成事情
有很多技术人员只谈论软件而不编写代码。而伟大软件工程师会真正去编码,这也是他们最为重要的品质之一。他们是实际做事的人。聪明人都知道,解决问题的最佳途径是直面问题,而不是花上数周来设计复杂又不必要的架构和函数库。优秀工程师应当会问:解决手头问题的最简单方法是什么?最近的软件开发方法——敏捷实践,正是专注那个。它的思想是,把复杂的项目拆分为短小的迭代,每个迭代只关注一小部分的增量功能。因为每个迭代对应的编码只需要数周,所以功能易于管理并简单。

3. 持续重构代码
重新塑造代码的原则称为“重构”,重构背后的原始思想是:改善代码而不改变其功能,移动调整部分代码以确保系统不腐,还有确保系统完成基于当前需求该完成的事。软件工程师要通过最佳方式来持续完善自己的代码,以达到目标。(北京北大青鸟学校

几十年的软件开发文化要求我们不应该去改变正常工作的东西。然而随着时间推移,老旧代码变得不稳定和不兼容。而重构正好可以改变这一状况,因为我们是代码的主人,不是它的奴隶。重构在工程师和代码之间建立起持续的“对话”,并带来所有权、确定性、自信心和系统的稳定性。

4. 使用设计模式
在我们所处世界,不管是自然界还是人类行为,模式无处不在。软件工程自然也不例外。模式就是不断重现的跨语言跨系统的场景和机制。一位优秀的工程师通常能识别并利用模式,而不是受制于模式。工程师不应(强制)让系统去适应某种模式,而需发现在系统中使用模式的时机(恰当使用模式)。在使用模式来确保正确性时,应借鉴利用前人的智慧结晶,使用以前能正当解决特定工程问题的方法。

5. 编写测试
如果你认为软件工程师不需要测试,那就大错特错了。如果你不做测试,怎么能确保代码就能正常工作?敏捷实践中的“单元测试”已获得普遍认可,因为它注重编写测试来反映代码是否有效。随着系统增大,测试也随之增大。

有经验的工程师知道并了解测试的价值所在,因为测试的目的就是创建一个能正常运作的系统。优秀的工程师通常会确保出现过一次的Bug不会再出现第二次。但优秀的工程师也知道,不应该浪费时间写那些琐碎或多余的测试,而需要专注测试各个组件中的核心部分。(北京北大青鸟学校,未完)

北大青鸟网上报名
北大青鸟招生简章