我专门针对正在开发的Web应用程序使用了此技术。我的后端使用Java SDK托管在Google App Engine上,而前端使用HTML,CSS和JavaScript(带有jQuery)。
这个项目是一个很小的项目,只有我自己和一名Web设计师,我们俩都认为这种方法可以帮助我们更快地工作并更快地将产品推向市场。
优势:与网页设计师合作
这种技术的主要优点是,知道一些PHP但不认为自己是程序员的Web设计人员可以在HTML和CSS中不受限制地工作,而不必费力地浏览JSP,taglib标签和其他服务器端的代码。标记,我们一直在说年内应该做前端开发人员的生活变得更轻松。
没有所有服务器端标记,我们变得更加敏捷。网页设计师直接换了3次或4次修改其原始设计,而我所做的更改很少。
他对我的评论是,他觉得HTML仍然存在,因为他可以对其进行编辑,然后立即通过动态数据查看其计算机上的更改。我们都从中受益,因为集成几乎是自动的。
服务器端代码和HTML / CSS切换
在过去的项目中,他不得不将HTML和CSS交给Java开发人员,然后Java开发人员将使用他的HTML和CSS并使用JSP技术完全重写它们。这将花费大量时间,并且通常会导致页面的实际呈现以及W3C验证程序中的验证方面存在细微但重要的差异。
总的来说,我们都对这项技术感到满意,而且我的HTML页面中仍然有零个JSP页面或服务器端代码。
REST / JSON技术的陷阱
也许最大的陷阱是我们尚未遇到的陷阱。我完全希望与经验丰富的Java开发人员有所不同,这些开发人员对Apache基金会和Spring团队告诉他们的标签库如何使前端开发人员更轻松地使用代码感到震惊。我完全希望随着这个项目的扩展会有一个学习曲线,而且我们将招募更多的开发人员,他们可能不得不学习这些过时的技术,以我的经验,这些技术使Web设计师的工作更加困难。
另一个陷阱是JavaScript代码变得非常庞大。这可能是一个更大的问题,可能是因为我是第一次使用此技术,并且因为在实现快速发布方面我们引入了一些技术上的欠缺。也许选择一个更好的框架将有助于减轻很多代码的负担。在我看来,这都不是最重要的事情,因此,我被鼓励继续使用这项技术并提高我在该领域的技能。
优势:可以在平台上构建其他应用程序
最后,我要提到一个隐藏的优势。因为后端RESTful Web服务和前端之间存在很好的分离度,所以我还创建了一个可以轻松扩展的平台。
我们的一个运维人员想在另一个应用程序中尝试概念验证,并且由于有了RESTful服务,我们能够为该应用程序创建一个完全不同的前端,以解决一个完全不同的问题。快速发展的概念证明使用了它自己的HTML,CSS和JavaScript,但它使用RESTful服务作为后端和数据源。
最后,另一位项目经理看到了我所做的一切,并且立即变得很清楚,该功能不仅需要概念验证,因此,他的团队实施了该功能。
无论是在应用程序级别还是在HTML / CSS / JavaScript级别,我都无法强调这种体系结构的可重用性,因此,我绝对鼓励您在下一个项目中尝试一下。