我在软件工程中学到(也在教授)的一件事情是,代码重复是万恶之源。但另一方面,我发现很难解释这个概念应该如何应用于Web应用程序的开发。
请允许我澄清一下... 输入和数据验证可能是Web应用程序的重要组成部分。有时,这种验证可能非常复杂。例如,我曾经参与开发拼图编辑器,验证需要检查操作或移动是否有效。然后必须检查非平凡规则。
自然而然地,必须在服务器端进行验证,以确保存储的数据的一致性和质量。但必须在客户端进行验证,以确保用户体验顺畅。
在大多数情况下,客户端和服务器端的代码是用不同的语言编写的(即JavaScript / Python),因此验证代码必须编写两次。但在我使用GWT / Java(Java两端)的唯一经验中,我发现大部分验证代码可以重用。这似乎使一切变得更容易:维护、重构、调试等等。
所以我的问题是:在客户端和服务器端语言不同的项目中,您如何管理与代码重复相关的问题?
请允许我澄清一下... 输入和数据验证可能是Web应用程序的重要组成部分。有时,这种验证可能非常复杂。例如,我曾经参与开发拼图编辑器,验证需要检查操作或移动是否有效。然后必须检查非平凡规则。
自然而然地,必须在服务器端进行验证,以确保存储的数据的一致性和质量。但必须在客户端进行验证,以确保用户体验顺畅。
在大多数情况下,客户端和服务器端的代码是用不同的语言编写的(即JavaScript / Python),因此验证代码必须编写两次。但在我使用GWT / Java(Java两端)的唯一经验中,我发现大部分验证代码可以重用。这似乎使一切变得更容易:维护、重构、调试等等。
所以我的问题是:在客户端和服务器端语言不同的项目中,您如何管理与代码重复相关的问题?