概述
dotnet应用程序的通用开发方法都是使用Visual Studio的工具,比如在页面上拖几个控件,然后利用VS工具的DataAdpter访问数据库,接着应用程序的功能便可以实现了。申明一点这个开发过程不包括真正企业级别的开发。
好处
这个开发过程的好处开发简单(不过比脚手架方法有不足,脚手架方法一个命令就可以创建),方便初学者使用。而且对不熟悉业务的开发人员来讲也是降低了熟悉业务的技能要求。
问题
但是在实现大规模的企业应用的时候的实现难度非常的大,而且应用程序不便于维护,灵活性也不够,应用程序不能随着业务需求的变化随时响应变化。事实上有一大批的程序停留在这种方法上,不管是国内的还是国外的。本人认为dotnet平台基本上的应用程序都有这种通病。
而且使用这种方法的企业或者个人可能在短期内有良好的经济效益,但是后期的开发维护成本是不可想象的。
所以现在的软件企业都跟随面向对象和敏捷方法的潮流,但是都是在形而上学上。
解决方法
上面的通用方法本质上是基于数据库,然后再开发应用。而不是首先满足业务需求,然后再想持久化问题。只有真正做到由业务驱动开发而不是技术实现业务应用的角度(特别是要警惕软件已上来就设计数据库),才能开发出满足业务需要,灵活性高并且维护性好的大型软件。
建议
同时程序员本身要加强理论的修养和能力的锻炼,比如跳出dotnet平台来看dotnet,看一些敏捷方面和领域驱动开发专家的书籍(Martin Fowler等),然后熟悉一下常见的业务逻辑和组织架构。也要学习微软软件的开发方法,而不是学习微软提供给我的工具本身。