Chinaunix首页 | 论坛 | 博客
  • 博客访问: 94902
  • 博文数量: 47
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 515
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-29 10:31
文章分类
文章存档

2014年(15)

2013年(32)

我的朋友

分类: JavaScript

2014-02-26 17:25:46

在沼泽中建城堡是脑子被门挤了才干的事儿,原因你懂的。

JavaScript就是一个沼泽。它在所有专业程序设计中是最为重要的沼泽。如果你是一个开发人员,你应该对它有专业的掌握。但对于企业代码库来说,它是可怕的。

现在,企业面临一个令人困惑的未来。微软的技术指导已经失去了其AAA评级(虽然很明显我们迟早会从微软看到一个新的路线图),并且JVM(Java虚拟机)在很大程度上因为谷歌、Android以及Java缓慢进化的复杂性而缺乏明确的方向,同时,苹果已经从虚拟领域无足轻重的角色进化为移动设备的佼佼者,并且它创造着那些奇妙的桌面电脑替代品,只是将你锁入一个专有语言中。

面对所有这些复杂性,很多人提供一个简单的解决方案:和HTML5作为企业和移动应用开发的平台。“每个人都可以编写JavaScript!这是全民可用的!”也许这不仅是错误的,还是一个灾难。

JavaScript 程序员群体的确是比企业软件开发人员队伍庞大,任何有专业开发软件技能的人都可以学习并掌握JavaScript语言,但并不意味着每个Web开发人员都 能突然胜任构建应用或基础结构,也不意味着你的软件开发团队在JavaScript上将和从前在他们偏好语言上一样活跃高效。关于JavaScript的 生产力,有四大主要问题:

  • 第一,平台SDK的问题。一次关于“JavaScript安全库”的网络搜索,为人们带来了一个由三人所写的项目。作者都有优秀的背景,代码也很规范,但人们却不太敢用它来保护自己的企业王冠。
  • 第二,类型系统哲学。不少人喜欢动态类系统。也梦想着另一个世界——即Smalltalk(或至少Ruby)在每个企业代码库中扮演重要角色。但行业却一次又一次地将这个愿景拒于千里之外,至少在其内部的大部分代码上是这样的。
  • 第 三,涉及类型系统,但也涉及JavaScript句法学和语义学的其它方面。所有编程语言都有这样的问题,如果忽视或忘记,就会导致麻烦。 JavaScript基于原型的传承是有优点的。但对于只熟悉Java或C#模型的人将会遭遇类似“阻抗不匹配”的窘境。这些正是专业开发人员被雇来掌控 的东西。但JavaScript的动态类型系统使得基于静态工具地发现这些问题变得更加困难。
  • 第四,遗留集成。

当 然,对于上述四点,有反论是必然的:JavaScript库的数量在增加,市场对动态类型系统的阻力可能会改变,JavaScript的怪癖可以被避免, 遗留代码可以通过仔细修改来解决。有大量的应用是用JavaScript写的。很多创业公司在服务器上押注于JavaScript(这容易让人联想到 1998年创业公司在服务器上押注于Perl)等等。

有人说如果你坚持在沼泽中建城堡,终将会有最强大的城堡群——不管你信不信,反正我不信。正所谓万丈高楼平地起——基础是大事!没有稳固的地基,再华丽的设计都是浮云。

阅读(685) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~