我计划将我的桌面财务应用程序(用Delphi编写)重写为web应用程序,并且正在考虑使用哪种技术。其他可能的要求是将尽可能多的代码转移到共享库中,这些共享库也可以在应用程序的桌面版本中使用。不存在总成本这样的参数。我可以重写它,只要我想。
我需要一个跨平台的技术,能够处理UTF-8的本机和连接到PostgreSQL以及Microsoft SQL Server。
我已经用Ruby on Rails编写了足够多的程序,我会说它对商业网站来说是相当好的,但不适合我自己的web应用程序,因为我不喜欢它的“魔力”和无法用UTF-8编写.rb文件。
PHP看起来和RoR很相似,虽然我还没试过。
ASP.NET / Windows符合我的要求,除了它只适用于.NET。
所以,我选择了Java。但是在Internet上他们说Java和JSP是不同的技术,我不能把Java桌面应用程序改成JSP。Java和JSP真的如此不同吗?例如,在.NET中,我可以编写一个既可以在桌面应用程序中使用,也可以在ASP.NET应用程序中使用的数据库和业务逻辑库。
发布于 2012-10-14 23:14:03
Java和JSPs没有什么不同。JSP在执行前将编译成Java Servlet。
ASP是用来编写类似于处理表示的代码的。换句话说,它提供了与Java编码分离的表示细节,但最终,服务器将JSP文件编译成Java Servlets。
你想用JSP写的东西,可以通过Servlet来写。
如果您计划在Servlet上使用JSP,请确保您没有使用JSP本身编写整个代码,例如从数据库读取数据。所有的业务逻辑都应该放在JAVA类中,并通过JAVA类在中使用。如果设计得当,Java类可以重用。
如果我没理解错的话,这就是你想要实现的,也就是application logic的achieve re-usability。
发布于 2012-10-14 23:26:00
它们并没有太大的不同,而且你可以像.NET一样重用你的服务、逻辑等。唯一的问题是视图,在java中有很多方法可以做到。如果你已经选择了JSP,你将需要编写所有的演示文稿(你可以调用你的服务,逻辑等),但是如果你想在Desktop java应用程序中重用尽可能多的代码,并把它带到web上,也许你应该考虑一下java Applets,它们相对简单,可以转化为java应用程序。
发布于 2012-10-14 23:28:55
对于你所描述的情况,在桌面和应用程序的web application.Think上都有大量的共享代码应该是相当容易的,因为它由两层组成:
java第一层:业务逻辑和数据库访问代码,这一层只是纯
应用程序编程技术编写的。该UI层将依赖于第1层,并且由于第1层的全面测试套件,您可以确信它在第1层调用的操作是良好的。
至于web开发技术,我建议您考虑比JSP和Servlet更高级的框架,因为这将为您节省大量时间。
有一种可能是能够使用JavaScript编写单个UI层,HTML5是一个web应用程序,但在许多功能上表现得像桌面应用程序。然后你可以制作一个桌面版本的产品,基本上启动一个浏览器窗口,没有chrome,并在其中运行应用程序。如果你真的选择使用JavaScript和HTML5,有很多框架可供选择,我建议你在infoq.com上观看ThroneOfJS会议http://www.infoq.com/throne_of_js/上的视频,了解哪些框架是可用的,我有偏见的建议是使用AngularJS。
https://stackoverflow.com/questions/12883474
复制相似问题