2010-03-17 60 views
0

我是来自unix/c环境的web开发环境的新手。 我最近被要求创建一个web应用程序,我认为这需要postgresql, java/j2ee,以及客户端界面的javascript。因为我曾经想要一个更好的gui,我已经在extjs上看过 ,这对我来说看起来非常好。Jdeveloper vs java/j2ee/js + extjs?

同事提到,学习所有这些不同的 件所需要的时间需要的时间是费时,和JDeveloper似乎提供大部分我们会需要 (我被一个演示,这似乎是能够生成一些漂亮的网页界面)。

不同的方法有什么优点和缺点?

有些我能想到的: - jdeveloper是一个集成的ide,它可以轻松创建UI,并与数据库集成在一起 。 (亲) - jdeveloper会更重? (con) - 向导生成的代码可能难以重构? (CON) - 在Java/J2EE/JS + ExtJS的需要制定从地面向上(CON)的东西

提前感谢分享您的经验和想法... SAM

回答

1

虽然这是非常主观主题,我仍强烈建议不要使用“集成IDE”。无论是IDEA,Netbeans,JDeveloper,Eclipse,你都可以这样命名:不要过头,也不要过度依赖它们。他们倾向于涵盖开发的很大一部分,但是当你想要脱离他们的“集成”技术时,你遇到了麻烦。正如你也提到的,生成的代码也很难维护。

我一直在用ExtJS做2个商业项目。优点是:(1)更容易启动并快速执行正在运行的应用程序,(2)大部分逻辑如客户端的大量记录分页(仅在内存中保留3-4页例如)已经为你完成了,(3)使用一些较低级别的抽象更好,感觉更有价值和更有成效,而不是J2EE方法“我们有一个模型来开发一个创建框架的过程”,即使对拥有10年以上经验的开发者也是如此。

缺点:不是你想要的一切,都会在那里。例如,如果管理人员(或客户)在Web页面某些部分的棘手的圆角上占上风,那么它是好运 - 您必须Google,找到用JS编写的CSS包装库等。我用ExtJS做的第二个项目最终花费了40%的时间来进行小的GUI调整。

尽管如此,我仍然强烈主张立即更容易理解的技术,并在最初给出更快的结果。如果他们有6个月的时间表,没有人会很有动力,他们在第二个月末看到他们的第一个真实结果。

希望这会有所帮助。

1

为什么JDeveloper比较重要?无论如何,它不会成为Web应用程序的一部分。

现在几点建议。我想建议你去开发,同时尝试理解底层技术,即JSP,Servlet,Servlet Filters等。

你用什么IDE并不重要。我更喜欢IntelliJ和Netbeans。IntelliJ是商业化的,顺便提供了一个社区版本,但是却忽略了web开发中所需的一些非常强大的工具/功能。所以,你只剩下JDeveloper,Netbeans和Eclipse。选择你喜欢的任何东西。

你应该使用一些快速的Web开发框架,对,我想你寻找到检票或条纹。听说有关Play框架的好消息。对于JavaScript部分,我建议你看看JQuery和JQuery UI,它是一个非常强大的框架,具有很好的社区支持。

另一种选择可以是Spring。抓住临春书,并开始开发你的应用程序与这个全功能强大的框架。即使官方文件是真棒。 Spring IoC,Spring MVC,以及良好的Spring JDBC API。在前一个选项中缺少JDBC API时,您需要为此获取某种ORM,或者提出自己的代码。在这里,您将获得简单维护的好处,您可以轻松添加新功能。

但让我再说一遍。你必须知道底层技术。因为你不知道可能会受到伤害。

1

如果你正在寻找到JDeveloper中,我假设你正在考虑Oracle Application Development Framework?我对这个框架的经验是它使得一些简单的开发任务变得非常简单,并且一些非常困难。特别是,广泛定制外观可能非常耗时。

如果你是幸福的基本ADF的外观和感觉,和你的需求被满足the components provided,该框架可以为您节省一些时间。如果您需要完全控制应用程序的外观,或者您的用例与预定义的组件不匹配,我会建议查看其他框架。使用自动进稿器或类似的框架的

一个好处是,你可以快速生成基本的网络应用,而HTML,CSS或JavaScript的丰富知识。这是否重要取决于开发团队的技能。

0

答案中缺少的一个部分是,JDeveloper和更具体的ADF为您提供的是一种端到端解决方案,它不仅涵盖了UI部分,还涵盖了如何将其绑定到业务服务,以及也是构建业务服务的一个更简单的解决方案。