我对网络框架的经验是它们相对“不稳定”。并不是说它们崩溃了,而是有很多更改会迫使人们重新编写代码。我想知道您使用过哪些 Web 开发包以及维护该代码的工作量是多少?
4 回答
“变化是要求的一部分。”
我不认为我们设计的 web 包有很大的变化。如果它改变了,那么它就是一个糟糕的设计。如果我们使用外部 API,则很少有一些会被弃用,否则大多数都是相同的。
一些用作 JAVA/J2EE 程序员的包: - MVC - Struts - 一些 AJAX 框架
这些是非常基本的使用方法。大多数其他的都是自行开发的,一旦网络包的设计完成,我们不会更改设计。
任何正在积极开发的库都将是不稳定的。以 .NET 为例,每个月都有一种新的更好的方法来处理旧的东西。另一方面,开源库更倾向于抛弃旧的不推荐使用的方法,因为它使代码更好,这就是让他们高兴的原因。
但是我不建议使用任何旧的和不受支持的东西,尽管环境会完全稳定,但你会靠自己。
最好的方法似乎只是冻结您开始使用的库版本并切换到新版本,只有这样做会有巨大的好处。至少每个人都是这样做的。
.NET 和 jQuery 等框架在很大程度上向后兼容,允许您慢慢使用新功能。
然而,Mootools……API 破坏了从 1.11 到 1.2 再到 1.3 的许多东西。在这种情况下,升级并不简单。
作为一项规则,我会尝试等待某些内容完成测试,然后再将其包含在生产代码中。认可也有很长的路要走——因为微软称 jQuery 是客户端框架的赢家,所以很容易鼓励其他人也接受它。
我的大部分经验是使用 Ruby on Rails,所以我将分享我在过去几年中所看到的。
Rails 以相当不错的速度更新,但除非您需要功能或罕见的安全补丁,否则您实际上不需要更新。例如,我现在在我们公司运行一个 Rails 应用程序,它是大约 2.5 年前编码的,今年只需要对其进行一次工作即可将其升级到与 apache mod_rails 兼容的新版本,它我相信最初是针对 Rails 1.2 编写的。当然,那是一个没有任何安全要求的内网应用程序。总而言之,它非常无痛。如果我一直使用 mongrel + mod_proxy,它就不需要为安全补丁更新一次。
Rails 非常安全,漏洞之间也相距甚远。如果我没记错的话,Ruby 漏洞比 Rails 漏洞要多一些,但总而言之,它非常可靠,升级你的 ruby 不应该破坏轨道,特别是如果你使用一个向后移植安全修复程序的发行版。