无论做一个传统的桌面应用程序,还是做一个Web应用程序,前期的分析与设计是不可避免的。 分析:需求分析,你必须了解你要做的是什么,你的客户到底想要的是什么,在做新闻发布系统的时候,我就必须问我自己这样的问题:我的新闻发布系统能干什么,我想他是什么样子的等等。 当搞明白了,我到底要做什么的时候,就要开始设计了。设计是很繁琐的,记得以前做机房收费系统,设计几乎是改了又改,细化了又细化,这里也是一样。 对于刚刚入门的你,我想应该简单地画画页面流程图,选择什么样的工具?不重要,可以用Word,可以用Visio,即使用纸也无所谓,因为铅笔和橡皮能让你快速应变,只是如果要保存和传播,就不要选择纸了。这个时候,页面画出来,就是一堆框框的罗列,很简单,只要能让自己知道,这个应用最后大概会是什么样就可以了。当然点击某个按钮能完成什么等,可以用程序流程图表示出来,流程图还是推荐大家画的,因为这样你对系统的整个脉络会有更加清晰的认识。 2、网页实体模型 呵呵,理论上说,草图整完了,应该做实体模型了,仍然可以看做是页面的细化,不过这次看起来应该像最后Web应用程序成品的一个截图了。当然,如果你的客户就是你自己,只要你自己看着满意就可以了。 如果你是在不信任自己的Ps技术,或者,你实在没有审美细胞,又或者你不想成为大牛的网页设计师,你也可以偷懒,直接奔向网页原型的开发。当时,我就偷懒了,给自己的理由是:我是没有审美的程序员。事实证明,如果你没有实体模型,做起网页原型来肯定是要花费更多时间的,有句话说得好,“出来混,早晚要还的”。 3、网页原型开发 网页原型是用HTML开发出来的,肯定是要使用CSS渲染的。一般,我们的HTML文档都会利用外部样式来定义文档中使用的样式。Javascript也放在外部文档中,这个文档只包含了Javascript代码。 按照这样方式进行分离,网站将包含三种文本文件:HTML,包含页面的内容和结果;CSS:控制页面的外观和表示;Javascript,控制页面的行为。 HTML, Javascript, CSS文件必须是纯文本格式的,这样浏览器才能理解他们,推荐几款不错的编码工具:NotePad++(小巧,免费),EditPlus(功能全面的文本、HTML、程序源代码编辑器),VIM(速度,用它你可以把鼠标扔掉了)。 这个时候,在我的网页原型上做一些可用性测试,防止以后出现大面积的失误。在这个步骤的最后,我基本上就知道了我的web应用是如何组织到一起的了,前台页面有什么,各个页面是怎么跳转的等等。 这就好比,我做好了一个车模,剩下的就是让车跑起来了,又或者,我是造人,我已经把人的皮囊做好了,接下来就是做它的五脏六腑了,哈哈,貌似人不是这么造的,不太贴切。 4、选择框架 现在你已经知道了要去开发什么东西了,接下来的工作依然很多,我想,这个时候,你就该选择,要采用什么语言,什么框架了。
有选择自然就有痛苦。我至今没有看到,有人大胆宣称,哪个框架最好,哪种语言最好。 选择合适自己的,真是不容易,还好,如果你并不想花时间去研究所有框架,那么建议你选择比较容易上手的ASP.NET 框架吧,语言自然就选择C#了。 如果不是开发很小的系统,我想,你应该会用到数据库,如果你不知道如何选择,那就先从Access或者Sql Server开始吧。 5、开发进行时 好像蓄势待发了,那就挽起袖子开干吧,标准的编程工作嘛。在后台,你要创建类,对象,服务,过程,以及数据持久层来把这些对象保存到数据库中。 后台是整个应用的核心,对任何应用来说,它跟普通的编程没有什么区别,才用面向对象的方式,应用设计模式,等等,可以把C/S开发的经验应用过来。 然后,把后台的程序和原型界面集成到一起,把系统各部分集成到一起。集成的过程依然是可以用Javascript精雕细琢滴,采用jQuey,采用Ajax等等。 |