首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >构建长期应用程序架构

构建长期应用程序架构
EN

Stack Overflow用户
提问于 2011-12-01 07:15:04
回答 3查看 293关注 0票数 0

我有兴趣了解web应用程序是如何发展的。我们的想法是,如果在基于java的web应用中引入新的技术或设计方法,那么最值得探索的5-10种技术是什么?此外,如果有人能指出好的书籍或在线资源来进行这项研究,也会很有帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-01 08:20:24

一个关键的方面是开发人员的生产力。Matt Raible (通常是非EE空间)和Adam Bien为EE6空间在这个领域做了一些出色的研究和演讲。

票数 1
EN

Stack Overflow用户

发布于 2011-12-01 09:09:09

对于我所有快速有效的web解决方案,我都使用Grails。它提供了生产力和合理的性能。它是由VMWare支持的,所以长期支持看起来还可以。

票数 1
EN

Stack Overflow用户

发布于 2011-12-02 03:44:58

应用程序随时间成功发展的能力更多地与您的软件体系结构有关,而不是与您的技术或方法有关。然而,您对技术和方法的选择将影响您如何构建您的软件。

首先,要知道你面对的是什么。在20世纪60年代末,人们开始研究随着时间的推移应用程序会发生什么。在过去的40年里,这些观察结果已经变成了一组定律(c.f。梅尔·雷曼)。这可能看起来很明显,但这是一个很好的起点:

  • 随着系统的发展,其复杂性会增加,除非进行维护或减少它的工作。
  • 系统的功能必须不断增加,才能在其生命周期内保持用户满意度。除非严格维护系统并使其适应操作环境的变化,否则系统的质量似乎会下降。

如果你长期从事这项工作,最大的问题可能是组织上的,而不是技术上的。例如,开发人员已经知道并喜欢使用哪些技术?如果开发人员计划在公司工作5-10年,问一下未来让他们兴奋的是什么。收集关于“热门”网络应用技术的想法的最好地方是http://www.infoq.com/

考虑哪些方法适合您组织的技术和业务文化。敏捷开发是伟大的,但它并不适合每个组织或每个环境。

考虑一下供应商。我曾经在一个网站工作,那是一家真正的IBM商店,因为IBM生产可靠的软件和硬件。然而,客户端实际上被锁定在供应商中。1997年,客户仍在使用令牌环网和OS/2。当需要时,给自己一些空间来切换工具和技术。如果不切换技术栈,一个有生命的应用程序几乎不可能在十年的使用中存活下来。

要真正创建一个能够适应业务环境变化的软件设计,请遵循这句古老的格言:“构建一个即扔即弃”。我们曾经使用新的操作系统,新的编程范例,从绿屏终端到胖客户端GUI的切换构建了一个新系统……这是对公司信息技术的彻底改造。如果我们没有建立一个原型并把它扔掉,我们永远不会成功。当我们构建原型时,我们没有在第一次选择所有正确的技术和方法。但是当我们构建生产系统时,我们有机会纠正这些错误。只有当您可以创建原型,然后在将其用于实际业务需求之前将其丢弃时,这才有效。一旦应用程序投入生产,“扔掉一个”的窗口就消失了。

祝你好运!-Aaron

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8334391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档