用于构建 Web 应用程序的技术堆栈 [关闭]
Posted
技术标签:
【中文标题】用于构建 Web 应用程序的技术堆栈 [关闭]【英文标题】:Technology stack for building a web application [closed] 【发布时间】:2011-11-13 19:17:48 【问题描述】:我是一名 C++/算法老手,正在首次尝试构建 Web 应用程序。我可以利用社区的帮助来做出正确的架构/技术堆栈决策。以下是我们正在尝试做的事情:
数据有一个简单的关系模型。大多数应用程序都是简单的 CRUD,具有很高的可用性和各种 UI 控件,以匹配公司遵循的相当复杂的工作流程。通常需要在一个页面中显示/编辑来自多个表的数据 - 考虑一个充分利用大型监视器(网格、拖放、数据树形显示等)的可编辑仪表板。还有一些服务器端文本处理工作要做,Python 是公司选择的处理语言。
公司希望尽可能使用开源,但希望获得最好的 UI 控件/小部件,并将支付商业 UI 包的费用。他们希望确保有一个规模庞大的开发人员社区,他们使用所涉及的所有技术,这样他们在构建应用程序后就永远不会遇到其他人来维护/增强应用程序的麻烦。将有不到十几个并发用户。
我在这里阅读了各种问题/答案,自己进行了一些研究,并与一些构建网络应用程序的同事进行了交谈,以决定为该应用程序选择合适的技术堆栈。这是我想出的:
用于 UI 的 Sencha ExtJS 用于数据传输的 JSON Django 作为服务器上的 Web 应用程序框架 Apache 作为 Web 服务器 mysql 作为 RDBMS Linux 作为操作系统 用于开发存储库的 Github 用于应用托管的 Webfaction(完整的 shell 访问、长期进程支持、Linux/Apache/MySQL/Django 支持等) 通过数据库中的用户名/密码进行身份验证我很乐意让一些有经验的人验证这个技术堆栈。如果您构建了高可用性 CRUD 风格的 Web 应用程序,请告诉我您对我的预期选择的看法,如果我遗漏了任何重要内容,请告诉我。
谢谢!
罗恩
【问题讨论】:
我唯一想说的是考虑postgres over mysql。 【参考方案1】:这将归结为您在进行过程中感到舒适 - 不要过早锁定您的组合。我相信您已经列出了一个非常有用的堆栈。我对 Sencha ExtJS 没有任何经验,但其余的都是可靠的东西。 Django 是一个美丽的东西,即使你没有 Python 经验,它也很容易(而且很有趣!)学习。
但是当你去的时候,你会发现有些东西不感觉只是因为你的背景,或者因为它适合你的堆栈的其他部分,并且可能会找到更适合的东西根据你的情况。
我实际上得出的结论是,这些天来,可用于 Web 堆栈的部分发展得如此之好,探索得如此之好,以至于您(几乎)不会出错 - 远 em> 更重要的是应用程序设计。人们倾向于沉浸在技术决策中而失去对应用程序本身的关注。
【讨论】:
“你(几乎)不会出错——更重要的是应用程序设计。” +1 如果 Sencha 和 ExtJS 走上了同样的道路,那么我必须说它是一个了不起的 javascript 框架。在 ExtJS 获得双重许可之前,我曾经很享受使用 ExtJS 的乐趣。以上是关于用于构建 Web 应用程序的技术堆栈 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章