牛腩新闻发布系统可以说是b/s开发方式的一个开始,也是对以往知识的一个回顾。 此次工程实践再一次为我们开启了一扇动人的窗。
此系统的前一部分所需知识包含在已有的知识网中,不过在这部分知识网中数据库的存储过程和触发器未曾经过工程实践。这一次算是一个补充。这两者的用法不必多说,好处提一句:较少了网络流量(即减少了与数据库的交互次数,这一点在做c/s方式时有所体会,现在想想,那时多步完成的一个业务逻辑,如今可以一步完成了),提升了执行效能。
在这次实践中也解决了原先一个疑问:sql语句中使用参数那么麻烦起到了什么作用呢。后来也接触了点SQL注入的问题,不过未曾将两者联系起来。如今清楚在sql语句中使用参数可以有效地防止SQL注入。同时,这也引发了我的思考。为什么我在遇到感觉复杂问题的时候没多问追问一句:既然这么复杂为什么还在使用呢,我使用的那个简单方法究竟较之是好是坏呢?不要轻易放弃犯错的机会也不要轻易放弃追问的机会。
此外,还使用了MVC三层架构。对于这块,曾经在二次开发机房收费系统时,让我大为止步。现在想想也就是提高软件灵活性的一种思想。往日苦恼的东西,而今不离双手与大脑。
说道MVC,其实这半年来一直是在这个架构上做工程、学习。现今的这个新闻发布系统仍旧不离此架构,只是打开了另一扇门:B/S 方式。与C/S方式相比,最直接的区别就是由原先的桌面窗体换成了浏览器中的页面。
在做工程的过程中,学习了下html和CSS的入门教程,他们就构成了我做的页面的基础功能部分。而网页(即V层)在与业务逻辑层交互时,同C/S方式的V层与C层交互上有所不同,那就是有时我们必须要手动写好获取用户从页面输入的数据后点击的数据(如使用request类的QueryString获取网页中传递的字符串等)。
对比两种开发方式的界面层,我感觉界面层也分为前台和后台,只不过C/S方式中使用的开发工具vb dot net ,主要是在前台拖动控件来完成界面的布局的。而B/S方式中则主要是使用代码(html、css、JScript等等)来布局的。界面层的后台完成两者则无太大区别。
在接触的新东西就是iis了,用起来不难,在此不多说。
在感受着这扇刚打开的窗之美的同时,感受最深的就是“理解”与“实践”。二者相辅相成,缺一则不达!总之,撕开的这个口子带出来的东西定不会少,并且也拉开了团队开发的序幕……