【问题标题】:Generating modern js-based rich client from server side?从服务器端生成基于 js 的现代富客户端?
【发布时间】:2013-05-15 13:36:34
【问题描述】:

我正在开发一个内部网项目,该项目使用 javascript 来实现客户端副作用/小部件,例如树、网格、拖动。我们正在考虑使用 jquery/backbone 以及一些 jquery ui。

问题是,凭借 jquery/backbone 的极大灵活性,我们经验不足的开发人员几乎肯定会编写代码MESSY。我讨厌这样。

为了减少他们使代码混乱的机会,我将构建一个服务器端程序来解析 xml(那些开发人员将尽可能编写 xml 而不是 javascript)并在运行时生成 javascript。通过这样做,我可以强制限制 xml。而且 xml 往往不会那么混乱。

但在开始之前,我想问一下是否有任何类似的现有框架?最好生成的 javascript 也使用模型/视图/控制器模式。

或者我还能做些什么来防止项目混乱?

ps:我想教育开发者。但这是一项长期的工作。对当前项目没有真正的帮助。

谢谢你们。


好吧,我认为这是一个糟糕的主意。所以除了培训我的开发人员(长期),我还能做什么?尤其是在短期内,因为项目正在进行中?

【问题讨论】:

  • 无论您编写什么框架,维护和/或使用都将是一场噩梦。如果您雇用 Web 开发人员并且不让他们进行 Web 开发,您可能需要重新考虑您的工作方式。没有人愿意写 XML,你几乎肯定会让事情变得更难写。
  • 我认为 extjs 是一个不会变得混乱的 js 框架,而不是基于 xml 的代码生成。
  • 这听起来绝对是个糟糕的主意。用 XML 表达逻辑和控制流会非常冗长。
  • 如果您的开发人员无法将 JS 编写到您想要的标准,那么请引入代码审查和培训,并将他们的 JS 技能提高到可以达到的水平。
  • 你可以试试gwt,它会从服务器端java代码生成客户端js和html。

标签: javascript code-organization generated-code


【解决方案1】:

我喜欢您的目标,但我认为尝试以编程方式执行编码标准过于解决问题。不过,以下步骤有助于引导您朝着正确的方向前进:

  1. 使用版本控制系统,例如 SVN 或 Git。这不仅可以让您查明谁在弄乱您的代码并教育他们,而且还可以让您选择回滚完全破坏您的项目的更改。它不应该被视为一种“指责”机制,但肯定是识别罪魁祸首的可靠方法。您可能还会发现,在您的开发人员意识到自己的工作可以接受此类审查后,他们不太可能提交不符合标准的代码。
  2. 文档 - 我并不一定意味着拥有一个 300 页的 wiki,说明您的项目是如何组织的以及应该如何编写函数。但即使是像评论每个函数这样简单的事情也会经常鼓励其他人也这样做。重要的是,开发人员会看到他们期望在您的工作中交付的工作标准。有潜力的开发者会向你学习。
  3. 结对编程 - 养成在开发人员编码时与他们坐在一起的习惯。不是 100% 的时间,但经常足以让你意识到他们的长处和短处。按照您希望他们编码的方式教他们。
  4. 如果其他方法都失败了,请使用可帮助开发人员达到标准的工具,例如 Visual Studio 的 Resharper 插件。虽然这主要是为 C# 使用而设计的,但它还为 Javascript 提供代码提示等,这将帮助没有经验的开发人员采用一组应该提高其代码可读性的实践。

我认为没有任何东西可以替代优秀的导师,提供任何类型的自动化解决方案都可能会给你带来很多麻烦,而不会真正提高你希望教的人的技能。

【讨论】:

    猜你喜欢
    • 2013-08-15
    • 2010-10-16
    • 2011-02-13
    • 2021-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-19
    • 2013-06-23
    相关资源
    最近更新 更多