公司最近做一个项目,采用Jsp+JavaScript+Spring+Ibatis+DTO,后台倒是简单,就是
页面框架设计的很复杂,几乎模块中的每个页面上都至少有300行JavaScript代码来控制页面
上的相关动作,感觉就是相当于直接用JavaScript设计了一个框架。
虽然项目进行了分层,给我感觉不是贯彻得很彻底。为什么面向对象的开发需要这么
多JS?
各位说说这么做合理不合理,难道不能放弃对JS的依赖吗?
页面框架设计的很复杂,几乎模块中的每个页面上都至少有300行JavaScript代码来控制页面
上的相关动作,感觉就是相当于直接用JavaScript设计了一个框架。
虽然项目进行了分层,给我感觉不是贯彻得很彻底。为什么面向对象的开发需要这么
多JS?
各位说说这么做合理不合理,难道不能放弃对JS的依赖吗?
这个疑问是正常,主要你没有以OO方式正确使用JS,通过JS组件来使用OO,比如我推崇prototype.js来使用JS,面向组件方式编程,这样可以克服JS不兼容性;二可以减少直接JS编程,变成积木的拼装。
所以,不建议直接使用JS编程,而是使用基于JS构建的构件和组件,你们在使用方式上出问题了。
无论使用什么技术,都是以易于维护拓展为宗旨,看来你们使用JS来进行控制之类事件机制,可能过于复杂了,JS用来实现MVC模式中一些View界面效果就可以了,引入AJAX异步事件机制也是必要的,但是过多事件流程会增加复杂性,很多事件和流程可以交给服务器端表现层框架来说,JSF/tapestry都是事件粒度非常细的框架。
,这样也造成具体业务和JS有强的联系。
其实,写的JS代码结构都是一样的,模块内,外的JS调用过程也都相似,很多function只是在
不同的业务中功能相同,名称不同而已。正像你所说的组件化程度低,维护起来不方便,也影
响了可扩展性。
不过,收获到一点就是感到前端页面交互设计的重要性了。
比较倾向JS。大公司肯定不会这么做的,我也想再找家比较规范点的公司。