一.硬编码
硬编码就是直接将数据写入到代码中进行编译开发。在java开发中,如果我们没有使用MyBatis框架或者其它ORM框架前,我们使用原始的JDBC操作数据库时候,我们直接将sql语句嵌入到JDBC代码中;再比如jsp开发过程中,我们将前端html代码与java代码进行耦合。以上两种情况都是硬编码。
硬编码耦合度高,不利于模块拆分然后进行协同开发。同时由于硬编码是直接将操作数据的代码片段,或者读取配置文件片段嵌入到代码中,如果我们是C/S开发,我们每次更新数据操作方式和更新配置文件位置时候,都需要重新部署项目,同时客服端也需要重新安装软件,非常不友好。
二.软编码
软编码就是讲数据和源代码进行解耦,提高程序开发效率。对于上文中出现的第一个问题,我们可以使用MyBatis框架,将SQL语句写到MyBatis框架中的配置文件中,这样就可以将SQL语句和底层代码进行分离,就只暴露出SQL语句供程序员编写。
对于上文中的第二个问题,我们可以采用MVC框架的设计模式,将jsp拆分为前端HTML代码和后端的逻辑代码,这样有利于提高程序的开发效率和测试效率。