必须具备的能力
- 需求能力
- 架构能力
- 设计能力
- 实现能力
- 验证能力
- 维护能力
基本语言技能
- 掌握一门脚本语言:JS、Python等
- 掌握一门底层语言:C语言、C++、汇编语言等
掌握一门高级语言:Java,C#等
编程语言有很多种,但是语言之间的区别并不是很大,精通一门语言之后上手其他语言会很快,掌握编程语言并不是最难的。
编程思想
自然 精简
什么是好的软件
- 可维护性:关注如何减少代码的修改成本
- 可测试性:关注如何降低发现bug的成本,以及如何提供定位bug的能力
- 可靠性:关注如何提高代码的鲁棒性,以及出现问题如何降低影响、如何修复
- 性能:关注如何提高代码的执行效率
- 简洁:关注如何减少代码量,以及提高代码的适应性
- 可移植性:关注如何方便软件移植到其他系统或者平台
代码重构
重构代码需要遵循三个原则:
- 及时发现问题、及时解决问题,思考总结
- 借鉴好的方法
- 对代码进行优化
自我提高
计算机的技术日新月异,发展很快,作为软件工程师必须要多学习、多交流、多练习,多总结、多思考、多实践。学习基础能力,交流经验教训,练习编码能力、总结知识点,形成文档,思考更好的解决方法,实践演练。
学习时间管理,不要重复解决同一个问题,要进行创造性的活动,而不是重复性的工作。时间是宝贵,共享信息,分享成果,这样可以让其他程序去解决新的问题,而不是永不休止的重复解决老问题。