软件有使用、实现和原理三个层面,其中实现的层面可以从以下的角度来分析:
从不同的方面来看,有界面,逻辑,数据,配置和资源,build过程,log等六个方面,每一个feature都会具有以上全部或者部分的方面。
从环境的角度看,有开发环境和运行环境。
开发环境需要源代码,编译工具(build过程,例如soureccode->drop->war),和一个local的运行环境。local的运行环境,可能使用自己的数据库,staging的war包,内网上的服务等等,组成一个混合的运行环境,以便于本地去模拟产品上的某些功能,来开发调试。同时需要许多杂七杂八工具,例如UE,IE,eclipse,JDK,Oracle client,SSH,build tools等等,这些工具大多起到便于人和计算机交互的功能。
运行环境有三种,local(见上),staging(模拟产品),product(真正产品)。只需要JDK,Tomcat和war即可运行起来。
开发环境总是比较杂乱,但我们的目标是形成一个干净而有效的运行环境。
PS:以上结论可能仅限于我们公司。