2012-02-19 33 views
0

我即将开始开发一个私人TODO网站(稍后将扩展到Web应用程序)。我不确定使用什么框架。我已经阅读了关于GWI和PHP框架,比如Yii。每个人对另一个人有什么好处。使用GWT通过php框架(如Yii)有什么好处?

背景 - 在Java中 经验 - 得到了支持PHP

疑惑的Apache Web主机:

  • 会在GWT开发意味着重构会比PHP(发展中国家特别是因为你更容易可以使用Eclipse)
  • 看起来像PHP的框架,如Yii为您创建数据库布局的设计对象......这可以通过GWT完成吗?

谢谢!

+0

PHP比Java更灵活,但代码不明确。 – 2012-02-19 01:47:15

+1

的优势 - 无需使用/学习PHP。 – 2012-02-19 03:56:39

回答

2

我在问题或答案/评论中没有提到的一个很大的区别是Yii是一个服务器端框架,它完全在您自己的/托管服务器上运行,而GWT编译为JavaScript,因此运行仅在客户端的浏览器中。这两种产品(和想法)服务于不同的目的,并且可以一起使用。

使用GWT构建客户端时,只要将数据公开给基于JS的客户端,就可以使用任何所需的工具构建服务器。可以采用JSON或XML的形式,或者其他一些数据编码(例如,内置在RPC中的GWT可以将复杂的对象图传入Java servlet容器或从Java servlet容器中传递)。

如果您将它们一起使用,Yii可用于从数据库架构/布局创建PHP对象,并构建认证/授权的各种规则,以便客户端可以读取和写入数据。 GWT可以用来建立一个客户端,读取和更新数据,调用Yii/PHP代码公开的服务。

+0

+1用于区分客户端GWT和服务器端PHP。 – davidethell 2012-02-19 02:33:12

+0

啊哈!这太有趣了!它很好地区分服务器端和客户端。问题:java servlets运行在退回正确的? GWT是否生成Java servlet?如果是这样,GWT可以为前端和后端生成代码? – Karan 2012-02-19 04:27:21

+0

GWT可以使用Java servlet,并附带一些servlet,但仅为客户端生成代码。由于大多数GWT代码都是用Java编写的,所以有些代码可以与服务器共享,但不是全部 - 共享的主要候选对象是模型对象和一些验证类型的东西,但服务和数据库调用等最适合服务器,而小部件和数据绑定最适合客户。有一些Java库涵盖了将对象转换为数据库调用的工作,但GWT不是其中之一 - 它服务于不同的目的。 – 2012-02-19 06:37:19

2

如果你喜欢Eclipse,你肯定可以留在Eclipse中,并仍然使用PHP进行开发。 eclipse.org的PHP工具非常好,Aptana的IDE插件甚至更好。

关于Yii与GWT,它真的取决于您选择的语言。如果你非常精通Java并且非常喜欢Java语言的强大类型,那么GWT是一个不错的选择(尽管当然还有其他选择可以让你在Java世界中继续使用,例如Tapestry)。 PHP框架在它们拥抱OOP的程度以及诸如基于数据库创建业务对象等概念方面差异很大。 Yii由于内置了代码生成功能,因此绝对脱颖而出。如果您开始使用PHP,那肯定会对您有所帮助。