3

如果您必须重做一个在任何网络平台上拥有大约 150 个表格和 250,000 多名访问者/天的网站,您会选择什么?为什么?

几点

  • 团队拥有经验丰富的开发人员
  • 旧应用程序是用未重构的 PHP 编写的。它无法使用。
  • 很多数据库没有规范化,并且有列在错误的位置。许多新功能和数据库现在无法支持它们。

期望的目标:

  • 出色且快速的测试(grails 对此不利)
  • 良好的关注点(域、控制器、视图)分离,能够不复制任何东西
  • 简洁的代码和优雅的设计 - 没有代码膨胀
  • 灵活——我们不想遇到抽象的泄漏问题
  • 编码和测试很快——例如,编写控制器测试不应该花费 1 小时,或者我们不应该花费超过 1 分钟左右的时间来编写可重用的标签。

Scala 在我们的脑海中,但我们很难看到它是如何工作的,因为工具还不成熟。我们实际上不喜欢 Grails。我们中的很多人都习惯了 Java/Spring/Hibernate,但是厌倦了它的低级特性,并且想要更具表现力的东西。

4

3 回答 3

1

这是一个相当无法回答的问题,因为有很多你没有提到的因素需要考虑。例如,将要重写它的开发人员的技能组合是什么?目前是如何实施的?现有代码可以重用吗?性能要求是什么?

如果这是我的决定,我会选择 Groovy/Grails,因为:

  • 我喜欢 Groovy/Grails 并且非常了解这些技术
  • 提供良好的性能,因为它主要基于 Java 和成熟的 Java 库(如 Spring 和 Hibernate)构建

更新

出色且快速的测试(grails 对此不利)

我不知道有任何 Web 框架会在 Grails 的可测试性上投入更多精力。它使测试所有类型的工件(控制器、域、服务、标签库)变得非常简单。

我们实际上不喜欢 Grails

如果您已经了解 Java、Spring 和 Hibernate,那么我很难理解您为什么不喜欢 Grails。

于 2010-06-01T10:03:29.313 回答
1

我会组建一个详细的研究小组来分析我们的选择,看看我们可以使用什么,以及它如何扩展到它必须承受的负载和任务。之后,挑选前 5 个选项进行仔细检查,看看团队中有什么浮动。就个人而言,我开始喜欢 RoR 而不是 PHP。

根据旧/当前项目的状态,确保在触及之前备份所有内容并进行版本控制。有些人将他们的项目的一半留在 un-vcs'd 中,或者根本不使用!

于 2010-06-01T10:19:28.597 回答
0

linux 环境上的好旧 php / mysql / apache 是我见过的最稳定的。我在 Asp.Net / SQL Server / IIS / Windows 上工作了 3 年,只有 SQL Server 是稳定的,但它真的很贵所以如果你真的不知道你要去哪里(关于钱),你最好注意这个参数。

我认为,在开放的环境中,您会找到更多帮助。

于 2010-06-01T10:04:37.943 回答