Web开发体现了一种全新的思维方式。例如,过去我们用微软的.NET来做界面程序,当经过了几个月的CSS,HTML,JavaScript学习之后,可以老实的说我很惭愧。
做为一名非Web软件开发者,我想起了曾有无数的嵌入式软件技术人员随手把Web编程工作写作一种“琐碎的”或“无聊的”工作。然而,经过了过去两个月对Web编程的钻研,发现事实正好相反。
就让我们先看看前端的这些东西:
学习CSS,HTML,JavaScript,jQuery以及把它们之间的相互作用关系搞通,并不是件容易的事情。事实上,对于那些从.NET,C++或Qt思维模式过来的人,它会困难的让人沮丧。GUI Toolkit这些东西跟Web前端的东西比较起来显得笨头笨脑没有灵性。
这个世界已经永远的抛弃了那些设计糟糕的、令人讨厌的桌面图形界面。而互联网对此要求的近乎苛刻 — 一个糟糕的用户界面设计会毁了一个互联网公司。人们经常在说,Facebook更简约的界面设计正是致使Myspace逐渐败退、几近消亡的关键原因。
有一个在一个新近突起互联网公司工作的软件技术人员告诉我:每天,新代码都会受到考验,来自不同地区的数百万的用户采用不同的方式,使用任何你能想到的软件、硬件对程序进行测试。你在数秒钟内就能获得反馈信息。如果某处改动可能会导致某种灾难性错误,我们可以只向1%的用户开放,并记录一切发生的事情。很遗憾,大多数桌面图形程序不会遇到这么大的压力。
桌面图形程序很容易跨平台。然而,面对着这么多不同的浏览器之间的细微差别和各自的奇特的癖好,你想让这样优雅的前端代码在它们中都能正确的运行,这更难。
现在,让我们讨论一下系统配置:
嵌入式系统通常是文本文件(如XML)来保存系统配置,运行时加载到内存里。的确,你可以做出一个嵌入式的Web前端来作为管理工具,用户通过这个前端修 改配置,但配置信息仍然存储在一个简单的文本里,有时,当简单文本体积增大的一定程度时,人们会使用小的sqllite3数据库。
而Web里,它要求的是巨大的、精心设计的关系型数据库,例如MySQL,更不用说那些数目众多的只是看起来像数据库东西,如Memcache, CouchDB,MongoDB, NoSQL。
在Web编程中我***能用上力的部分只有后端的Server程序。可是当遇到大数据问题时,我又不行了,就像离开了水的鱼。
再说一次:Web编程很难。它让人感到惭愧。但我仍努力学习它。
【编辑推荐】