网络技术 百分网手机站

软件工程师必须知道的20个常识

时间:2017-08-27 12:54:52 网络技术 我要投稿

软件工程师必须知道的20个常识

  作为一名优秀是软件开发工程师,以下的这些常识你知道吗?在实际工作中有没有总结过呢?以下是YJBYS小编搜索整理的关于软件工程师必须知道的20个常识,供参考阅读,希望对大家有所帮助!想了解更多相关信息请持续关注我们应届毕业生培训网!

  1.针对面向对象的设计与分析:

  为了让软件有更好的可维护性,重用性以及快速开发,简短的OOAD与它的SOLID原则对于每一个软件工程师来说都是该牢记的。

  2.软件品质因素:

  软件工程的好坏与软件的品质因素是绝对关联的。请在开发过程中深刻的理解这一点。

  3.数据结构与算法:

  深刻理解像数组,列表,栈,树,图,集合等这样的基本数据结构,并在软件开发过程的关键部分使用好的`算法。这样整个软件逻辑就会很清晰了。

  4.Big-O符号来标记算法复杂度:

  在开发过程中,请务必使用Big-O符号来比较两个代码段或者不同算法所消耗的时间复杂度,这在开发高性能软件项目中是非常重要的。

  5.UML图:

  UML图已经是一个通用的软件设计与分析的语言。如果你们在开发软件的过程中还没有做UML图,那么给人的感觉就是这压根就不是软件工程。

  6.正确的衡量软件开发进度。

  7.设计模式:

  设计模式是前人在解决各种各样问题的过程中总结出来的一套标准对策,在绝大部分情况下,使用这些模式肯定是利大于弊的。如果你不想在开发过程中重新造轮子,那么就直接使用它吧。

  8.理解操作系统的基本原理:

  因为所有的应用程序都是直接运行在操作系统这个层级的,学习操作系统的基本原理能让我们对应用程序的底层以及性能有更好的把握。

  9.学习计算机组成原理:

  几乎所有的应用程序甚至是OS都需要与物理硬件打交道的,所以学习计算机组成原理与理解操作系统原理一样都可以让你对于应用程序有更深刻的理解。

  10.网络基础:

  网络与计算机组成,操作系统以及传输流程都是紧密关联的,理解网络基础能让你在开发过程中得心应手。

  11.需求分析:

  对于软件工程来说,需求分析是项目的起点,也是整个项目最最重要的部分。如果这玩意你搞错了,整个项目的方向也就错了。

  12.软件测试:

  在软件工程中,测试也是非常重要的。单元测试,黑盒测试,白盒测试,TDD,集成测试等等都是我们必须知道的。

  13.独立管理:

  主要是说类库(JAR,DLL等等)的管理,熟悉使用一些类似Maven,Ant,lvy这样的知名工具对于大型项目的类库管理是非常有用的。

  14.持续化集成:

  持续化集成能让测试大型模块与组件更加简单与自动化,关于这一点,你可以去了解Hudson这个工具。

  15.ORM:

  了解Hibernate这种将对象与数据库表映射工具是非常有好处的,它可以减少你的代码量并节省你的代码维护时间。

  16.DI(独立注入):

  DI或者IoC(Inversion of Control)的具体实现框架Spring能让你创建对象时更加轻松,对于大型企业级项目更是如此。

  17.版本控制系统:

  VSC工具(SVN,TFS,CVS等)对于团队合作开发以及版本控制都是非常重要的。熟练使用这类工具算得上是必备技能。

  18.国际化:

  通过i18n来将不同语种的字符串存储在其他文件是让软件支持多语种最好的方法。所以i18n在不同的IDE上使用的方法我们应该了解。

  19.架构模式:

  理解类似MVC,MVP,MVVM这样的架构模式非常关键,这能让你写出易维护,简洁以及方便测试的代码。

  20.编写干净的代码:

  你的代码仅仅只是能够正常运行是远远不够的,它必须让编程人员轻易看懂来方便后续维护,所以,代码格式以及编写易读的代码技术都是我们需要了解的关键点。


相关文章推荐:

1.软件工程师的待遇怎么样

2.软件工程师的薪资待遇2016

3.软件工程师领跑行业薪水榜

4.JAVA软件工程师的工资待遇怎么样

5.2016年嵌入式软件工程师笔试题(含答案)

6.ACCP软件工程师就业前景

7.accp软件工程师

【软件工程师必须知道的20个常识】相关文章:

1.软件工程师必须知道的10个概念

2.野炊必须要知道的常识

3.新人必须知道的婚礼常识

4.男模健身必须知道的健身常识

5.去英国留学必须知道的常识

6.韩国留学必须知道的饮食常识

7.美国留学必须知道的6大常识

8.必须知道的美国留学租房常识