大约10年前,我刚刚步入.Net开发,那时候还很流行单层架构,直接在界面上拖控件,然后绑定数据。数据库操作使用原生的Ado.Net,每次都要创建数据库连接,打开连接,发送Sql,获取结果、关闭连接。每当我需要进行数据库操作的时候,就把这一段复制粘贴过去,就这样干了几个月。
一日,一位师兄给我介绍了名为SqlHelper的数据库辅助类,使用了这玩意以后,我发现开发效率和质量倍增。由于不需要来回复制粘贴,冗余代码变少,代码简洁很多。另外不需要手工关闭数据库连接,也让BUG变得更少。虽然SqlHelper还谈不上应用程序框架,不过让我第一次体验到封装性的强大。之后我开始注重技术积累,把很多东西封装成Helper来调用,确实受益匪浅。
真正体验到应用程序框架强大是进入另一家公司。当时准备开发一个CRM,进去的前几天,项目经理对我和几位同事进行了简单培训,主要介绍如何在他们应用程序框架上开发新模块。这个框架大体包括:
- 一堆Helper,基本用到的东西都封装进去了。
- 一套ASP.NET WebForm自定义控件,大部分操作通过属性面板配置,比如验证和权限等
- 一些内置模块,比如权限、用户管理等。
开发那个项目比以往轻松得多,而且质量更高,每个人的代码风格也相近,更易维护。这个项目给我留下很深的印象,对我启发很大。之后我开始接触一些架构、模式、框架知识,特别是在接触了CSLA应用程序框架后,我开始逐步打造适合自己习惯的框架。