我来自ASP.NET窗体背景,过去发现服务器端编码非常强大。然而,最近,我一直希望逐步取消前端的服务器端代码,并将其替换为纯HTML/JavaScript,后者通过JSON out服务访问数据。我在这方面没有真正的经验,所以我想知道这是否是一个经过试验和测试的模型。还有,围绕着它的陷阱是什么?
我发现ASP.NET用户控件非常有用,所以我希望通过将标记模板存储在服务器上的单独的HTML文件中来保持理论基础。它们将分别通过jQuery AJAX和jQuery HTML插件检索和使用。
如有任何意见,将不胜感激。
对不起,这类Web体系结构被称为web-2.0,还是我完全偏离了轨道?
发布于 2012-05-06 01:52:23
我已经将这种技术专门用于我们正在开发的一个web应用程序。我的后端使用Java托管在Google上,我的前端使用HTML、CSS和JavaScript (与jQuery一起使用)。
这个项目是一个较小的项目,只有我和一个网页设计师,我们都觉得这种方法帮助我们工作得更快,并得到一些更快的市场。
这种技术的主要优点是,了解一些PHP但不认为自己是程序员的Web设计人员可以在HTML和CSS中不受限制地工作,而不必费力地浏览无数行JSP、taglib标记和其他服务器端标记,这些都是我们多年来一直被告知的,应该可以使前端开发人员的生活变得轻松得多。
如果没有所有的服务器端标记,我们就会变得更加灵活。网页设计师已经直接更换和修改他的原始设计3或4次,很少改变在我的部分。
他对我的评论是,他觉得HTML是活的,因为他可以编辑它,然后立即用动态数据看到机器上的变化。我们都从中受益,因为集成大多是自动的。
/CSS切换
在过去的项目中,他不得不将HTML和CSS切换给Java开发人员,然后Java开发人员会使用他的HTML和CSS并使用JSP技术彻底重写它们。这将花费大量时间,并且通常会导致页面的实际呈现和W3C验证器中的验证存在微妙而重要的差异。
总的来说,我们都很满意这种技术,而且我的HTML页面中仍然没有JSP页面或服务器端代码。
REST/JSON技术的
也许最大的陷阱是那些我们还没有遇到的。我完全希望与经验更丰富的Java开发人员有一些分歧,他们被Apache基金会和Spring团队告诉他们的关于标记库如何使前端开发人员更容易地处理代码的问题洗脑了。我完全期望随着这个项目的扩展,会有一个学习曲线,并且我们会雇用更多的开发人员,他们可能不得不取消这些过时的技术,根据我的经验,这些技术就是使网页设计师的工作更加困难。
另一个缺陷是JavaScript代码变得非常庞大。这可能是一个更大的问题,因为我第一次使用这种技术,也因为我们在快速发布的过程中引入了一些轻微的技术缺陷。也许选择一个更好的框架将有助于减轻大量代码。在我看来,所有这些都不是一个展示,我被鼓励继续使用这一技术,并完善我在这一领域的技能。
上
最后,我应该提到一个隐藏的优势。因为我的后端RESTful服务和我的前端之间有很好的分离,所以我还创建了一个可以轻松扩展的平台。
我们的一个操作人员希望在另一个应用程序中尝试概念的证明,由于我的RESTful服务,我们能够为应用程序创建一个完全不同的前端,以解决一个完全不同的问题。快速发展的概念证明使用了它自己的HTML、CSS和JavaScript,但它使用RESTful服务作为后端和数据源。
最后,另一位项目经理看到了我所做的事情,很快就清楚了,这个特性需要的不仅仅是一个概念的证明,所以他的团队实现了它。
无论是在应用程序级别还是在HTML/CSS/JavaScript级别,我都不能充分强调这个体系结构的可重用性,我肯定会鼓励您在下一个项目中尝试这一点。
发布于 2012-05-06 14:14:52
这当然是一个可行的策略,但它不是一颗灵丹妙药。
发布于 2012-05-05 23:23:42
缺点之一是需要复制JavaScript和ASP.net中的一些逻辑。根据应用程序的不同,这对您来说可能不是什么大问题。这通常是因为您不想让服务器检查每件小事(“在这种情况下,用户是否允许按此按钮或选择此选项?”)但是,您也不希望依赖客户端作为唯一进行验证的客户端,因为用户可以控制客户端。
https://softwareengineering.stackexchange.com/questions/147423
复制相似问题