软件工程师在进行一项较大型的软件项目开发前,需要从以下几点去思考软件的整体架构,正所谓“谋定而后动”,很多问题想在前面,才不至于以后遇到困难时狼狈不堪。首先是软件的健壮性,健壮性意味着软件在各种条件下运行良好,而不出重大错误。软件的重大错误一般在内存泄漏,数组或列表下标越界,线程死锁等方面。在开发前应巧妙设计一套机制去处理内存的分配,线程的管理,以及避免数组越界方法。这些机制和技巧都来自于平时写代码时的思考。其次是软件的可维护性,一个新的软件项目意味着后期的更改会比较多。差的软件架构往往导致“牵一发而动全身