欢迎来到Kittow的部落格! - http://blog.skyhe.com
Agile Web Development (敏捷Web开发)
Want to Know Something More? Move Your Mouse Here;)我是天空的一片云,偶尔投影在你的波心,你记得也好,最好你忘掉,你我在交汇时,互放的光亮。
——徐志摩《偶然》 More...
ASP | ASP.NET | PHP |
ColdFusion | Perl | Python |
我是天空的一片云,偶尔投影在你的波心,你记得也好,最好你忘掉,你我在交汇时,互放的光亮。
——徐志摩《偶然》 More...
只使用过 Windows 版本的 Mysql 的我要去管理一个从未使用过的开源数据库。
只装过 Windows 版本的 Apache 的我要去配置一个完全陌生的 Web 服务器。
只撰写过一篇 Ruby on rails 文章的我(RoR 的经验仅仅限于那篇 Oreily 的教程),要使用它去开发一个完整网站。 虽然这并非很困难的事情,但是需要的是时间,我定下的开发时间是两个月,结果超出了一个月,实际花费在 ROR 开发上的时间只有3个多星期(RoR 的开发效率可见一斑),大部分时间在学习,学习上述的各种知识,它们对我来说都是陌生的,其中花费在学习服务器管理的时间就有一个多月,Rails 的学习花费了半个月(当然是读那本 Rails Book, 还有 Rails Recipes),还有 web 服务器和数据库也花费了一点时间。虽然网站的雏形已经出来,而且已经上线,但是我感觉真正的工作才开始。这将近三个月的学习和开发,自己总结了一些经验,对于那些打算独自开发 Web 项目的人可能有些借鉴作用。 1:首先也是最重要的一点:
做一件事情的热情远比完成它所需要的技术更加重要。
如果没有热情,就算是碰到一点小困难,你也会放弃,相反,就算是再大的困难你也能克服。 2:尽量不要到国内的任何技术论坛去提问,这既浪费自己的时间,也浪费别人的。
因为通常简单的问题搜索网络就能找到,反倒会招来嘲笑;复杂的问题也不会有人给你解决,通常论坛上也可能解决不了。最好的方式是自己从 Google 上搜索。(这是经验谈) 3:CSDN 上的这篇文章非常好,虽然是转载自国外的。
http://java.csdn.net/n/20060710/92484.html 其中我对第 6,11,15 条的感触最深。引用如下
注解: 国内程序员之间喜欢谈论技术的人多,真正闷头做事的人太少;各种论坛上相互争吵,辩论的多,写代码的人少。我也曾经是这样的人,很多东西都是停留在想法上,开始对 RoR 的顾虑也很多,性能啊,扩展啊。在网上搜索到很多这样的辩论,曾经动摇过我使用 ROR 的决心, 但是最终开发效率这一点最终占了上风。 其实仔细想想,你如果不喜欢一个东西,会找出有很多原因,如果喜欢它,一条理由就足够了。边学习边做的确是个好的方式,应该算是 Agile 的工作方式吧。那些考察讨论再三再开始做事的方式道象是 RUP 了。
这两条的理念是相同的,所以放在一起注解
注解:
这点的确很重要,我在开来始做网站的时候,界面设计选用了很复杂的页面模板,想到各种花哨的技术来堆砌它。后来觉得人家来你网站无非是推荐音乐,听音乐,评论,搜索,真正经常操作的就是这么一些简单功能,鼓捣花哨概念和技术的想法可能从最开始就是在远离你的用户。这的确是应该尽量避免的,如果不是读到这条,我可能也不会中途改版。
3:Ajax 看上去很美,但是它应该限制在某些特定功能的网站上(比如 Gmail, Google Map),整个网站采用它应该是不合适的。而且浏览器之间兼容的问题的确还是存在的。RoR 提供了非常简单的 Ajax 使用方式,有时候你会忍不住去采用它(Rails Recipes 这本书上充满了各种“奇技淫巧”),但是在做之前千万要考虑一下,这样做是否会给你的页面带来复杂性和服务器性能上的问题。在开发这个网站的开始,我也试验了很多 RoR 的Ajax 技术,但是后来都取消了,只保留了一个最简单的首页“最新留言”的动态显示功能。因为这个功能的确很有用。我将网站定位为一个多媒体的应用,所以采用 Flash RIA 来制作前端可能会更好, 整个网站采用 Flash 做前台比整个网站采用 Ajax 做前台更合理。原因如下:
1:Flash 比 Ajax 更成熟
2:Flash 有组件 4:如果你一个人制作整个网站,那么采用 RoR 是非常好的选择,原因当然是开发效率。整个网站从最开始有想法,到最终完成花费了三个月,其中学习时间占据了大部分,那么几个星期的开发时间就相当紧张了,如果采用 Java 可能根本无法想象。 其实搭建这么个音乐网站的想法,早在2001年就有了,我先后在论坛上推荐了四年的音乐,两年在博客上写音乐推荐。这期间我不是没有自己开发一个网站的想法,但是用 Java 实现起来太麻烦,我很多想法只是停留在脑海中,大部分时间用在考虑实现了,再加上我是个极为懒惰之人,看到那么麻烦的事情就不做了,直到 RoR 的出现,才使得这个网站得以完成。RoR 的好处在于:如果你有什么想法,你总是能很快的实现,只要你掌握了基本的技术,你就可以发挥你的想象来建设你的网站。 首页上泡泡框显示访客留言摘要的功能是我在一天早上5点醒来的时候想到的,爬起来用了两个小时就完成了它,很多人反映这个东西很好玩。 5:Web 2.0 的网站现在实在是太多,已经把整个市场搞坏了,前几天一个以前公司的朋友和几个人一起开了个公司,也是做 web 2.0 网站的,兴高采烈地把刚刚上线的网站地址给我,我一看,又是这种似曾相识的模板,似曾相识的应用。这种 Web2.0 站点的趋势就是:早期的web2.0国内站点抄袭国外的知名站点,后来的新进者抄袭国内已经成名的web2.0站点。如果这样的网站也有人投资那才叫怪了。 本来我也有开发网站寻找投资的想法,但是实在是想不出什么赢利模式,我也做不来这些写计划书的事情,还是自己凭兴趣做的好玩。朋友都说我的网站页面不适合商业站点,让我赶紧换了,我心里很清楚什么是他们说的商业页面模板,但是他们都说好,可我偏不喜欢。没法,还是按照我的想法来改造它吧。只要自己上班找个工作养活这个网站,或者更好的情况是,它能自己维持自己,这我就心满意足了。 6:现在的 RoR 实在是太火了,大有大家同上一条船的架式,搞 RoR 的人以它为荣,以搞 Java 为耻,估计也能写出个八荣八耻。但是它只是一种技术,众多后台技术中的一种,网站的访问者并不会因为你使用了 RoR 就给你掏钱,甚至是留下个好印象。网站的内容是主要的,掌握了它并不意为着能制作一个好网站。常言说:拥有榔头并不意为着你就是个建筑师 ,也不能让满地都是钉子。要么你去给人敲钉子为生,或者指导别人如何敲钉子,再或者找到一个好木场自己建个房子。“去 RoR 化”可能是我要做的下一个工作,把前台用 Flash 重建,采用 RoR 的 builder view 技术来传递信息。我个人感觉这个音乐网站有个好的想法,不管它是否能挣钱。首先是音乐推荐的确能给人带来快乐,做这样的网站才有趣。技术应该是实现你想法的工具,如果网站成为技术的试验品,对我来说就没有什么意思了。
未完待续http://dev.csdn.net/author/koalant/9cb229dc3f3c41d7828f0a9b9cb41b57.html