Jdeveloper 与 java/j2ee/js+extjs?
我是 Web 开发环境的新手,来自 UNIX/C 环境。 我最近被要求创建一个网络应用程序,我认为这需要 postgresql, java/j2ee 和用于客户端界面的 javascript。因为我想要一个更好的 GUI,所以我 一直在阅读 extjs,它对我来说看起来非常好。
一位同事提到,学习所有这些不同的内容需要时间 件很耗时,Jdeveloper 似乎提供了我们需要的大部分内容 (我看到了一个演示,它似乎能够生成一些不错的网络界面)。
不同方法的优缺点是什么?
我能想到的一些: - jdeveloper是一个集成的IDE,可以轻松、紧密地创建UI 与数据库集成。 (专业人士) - jdeveloper会更重吗? (反) - 向导生成的代码可能更难重构? (反) - java/j2ee/js+extjs 需要从头开始开发东西(con)
提前感谢分享您的经验和想法...... 萨姆
i am new to the web development environment, having came from a unix/c environment.
i've been recently asked to create a web app, which i thought would require postgresql,
java/j2ee, and javascript for the client interface. as i had wanted a nicer gui, i've
been reading up on extjs, which looks really nice to me.
a colleague mentioned that the time needed time needed to learn all these various
pieces is time consuming, and Jdeveloper seems to provide most of what we'd need
(i was shown a demo, which appears to be able to generate some nice web interfaces).
what are the pros and cons with the different approaches ?
some i can think of:
- jdeveloper is an integrated ide, which creates UI easily, tightly
integrated with database. (pro)
- jdeveloper will be heavier? (con)
- wizard generated code may be harder to refactor ? (con)
- java/j2ee/js+extjs needs to develop things from ground up (con)
thanks in advance for sharing your experiences and thoughts ...
sam
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
虽然这是一个非常主观的话题,但我仍然强烈建议不要使用“集成 IDE”。无论是 IDEA、Netbeans、JDeveloper、Eclipse,凡是您能想到的:不要过度使用,也不要过度依赖它们。它们往往涵盖了开发的很大一部分,但是当您想要摆脱它们的“集成”技术时,您就会遇到麻烦。正如您还提到的,生成的代码也更难维护。
我一直在用 ExtJS 做 2 个商业项目。优点是:(1) 更容易启动并快速运行一个工作应用程序,(2) 大多数逻辑,例如在客户端对大量记录进行分页(仅在内存中保留 3-4 页)示例)已经为您完成,并且(3)使用一些较低级别的抽象更好,感觉更有回报和富有成效,而不是 J2EE 方法“我们有一个模型来开发创建框架的流程”,即使对于拥有 10 年以上经验的开发人员来说,这也是令人生畏的。
缺点:并不是你想要的一切都会在那里。例如,如果管理层(或客户)对网页中某些部分的棘手圆角感到恼火,那么祝你好运——你必须 Google 一下,找到用 JS 编写的 CSS 包装库等。我用 ExtJS 做的第二个项目最终花费了 40% 的时间来进行小的 GUI 调整。
尽管如此,我仍然强烈提倡更容易立即理解、并且最初能更快得到结果的技术。如果他们有 6 个月的时间表,并且在第 2 个月末看到第一个真正的结果,那么没有人会积极主动。
希望这有帮助。
While this is very subjective topic, I still strongly advise against "integrated IDEs". Be it IDEA, Netbeans, JDeveloper, Eclipse, you name it: don't overdo it, and don't over-rely on them. They tend to cover a good part of the development, but the moment where you want to get outside their "integrated" technologies, you are in trouble. As you also mentioned, generated code is also much harder to maintain.
I have been doing 2 commercial project with ExtJS. Pros are: (1) Much easier to start and do quickly a working application, (2) most of the logic of things like, say, pagination of large number of records on the client side (keeping only 3-4 pages in memory for example) is already done for you, and (3) working with a bit of lower level abstractions is much nicer and feels more rewarding and productive, instead of the J2EE approach "we have a model to develop a process to create a framework", which is intimidating even to developers with 10+ years experience.
Cons: not everything you want, will be there. For example, if the management (or the customer) gets on your head for that tricky round corners on certain sections in the Web page, then it's good luck -- you have to Google it, find CSS wrapping libraries written on JS, etc. The 2nd project I did with ExtJS ended up consuming 40% of its schedule to small GUI tweaks.
In spite of that, I still strongly advocate technologies which are easier to comprehend right away, and give faster results initially. Nobody is well motivated if they have 6 months schedule and they got to see their first real result at the end of the 2nd month.
Hope this helps.
JDeveloper 是否更重为什么很重要?无论如何,它不会成为网络应用程序的一部分。
现在很少有建议。我建议你一边开发,一边尝试了解底层技术,即JSP、Servlet、Servlet Filters等。
无论你使用什么IDE都没关系。我更喜欢 IntelliJ 和 Netbeans。 IntelliJ 是商业版,顺便说一句,虽然有一个社区版本可用,但它缺少 Web 开发所需的一些真正强大的工具/功能。因此,您只剩下 JDeveloper、Netbeans 和 Eclipse。选择你喜欢的任何东西。
您应该使用一些快速的 Web 开发框架,为此我希望您研究一下 Wicket 或 Stripes。也听说过有关 Play 框架的好消息。对于 JavaScript 部分,我建议您查看 JQuery 和 JQuery UI,它是一个非常强大的框架,具有非常好的社区支持。
另一种选择是 Spring。拿起一本 Pro Spring 书籍,开始使用这个功能强大的一体化框架开发您的应用程序。就连官方文档也很棒。 Spring IoC、Spring MVC,以及良好的 Spring JDBC API。在前一个选项中,缺少 JDBC API,您需要为此获取某种 ORM,或者提出您自己的代码。在这里,您将获得轻松维护的好处,并且可以非常轻松地添加新功能。
但让我再说一遍。你必须了解底层技术。因为你不知道的事情可能会伤害你。
Why does it matter if JDeveloper is heavier. Its not gonna be the part of web application anyway.
Now few suggestions. I would like to suggest you to go with the development, meanwhile try understanding the underlying technologies, namely, JSP, Servlet, Servlet Filters etc.
It doesn't matter what IDE you use. I prefer IntelliJ and Netbeans. IntelliJ is commercial, by the way there is a community version available though but that misses some really powerful tools/features required in web development. So, you are left with JDeveloper, Netbeans and Eclipse. Choose whatever you like to.
You should employ some rapid web development framework, for that I would like you to look into Wicket or Stripes. Heard good things about Play framework as well. For JavaScript part, I would suggest you to look at JQuery and JQuery UI, its a very powerful framework with a very good community support.
Another alternative can be Spring. Grab a Pro Spring book, and start developing your app with this all-in-one powerful framework. Even the official documentation is awesome. Spring IoC, Spring MVC, with the good Spring JDBC API. In the former option JDBC API is missing you need to grab some kinda ORM for that, or come up with your own code. Here you will get the benefit of easy maintenance and you would be able to add new features quite easily.
But let me say it again. You must know underlying technologies. Because what you don't know may hurt.
如果您正在研究 JDeveloper,我假设您正在考虑 Oracle应用程序开发框架?我对这个框架的体验是,它使一些简单的开发任务变得非常容易,而另一些则非常困难。特别是,广泛定制外观和感觉可能非常耗时。
如果您对基本 ADF 的外观感到满意,并且 提供的组件,框架可以为您节省一些时间。如果您需要完全控制应用程序的外观,或者您的用例与预定义的组件不匹配,我建议您考虑其他框架。
使用 ADF 或类似框架的好处之一是您可以快速生成基本的 Web 应用程序,而无需广泛了解 HTML、CSS 或 Javascript。这是否重要取决于您的开发团队的技能。
If you're looking into JDeveloper, I assume you are considering Oracle Application Development Framework? My experience with this framework is that it makes some simple development tasks very easy, and some hideously hard. In particular, customizing the look and feel extensively can be time consuming.
If you are happy with the look and feel of basic ADF, and your needs are met by the components provided, the framework can save you some time. If you need full control over the appearance of your application, or your use cases do not match the predefined components, I would recommend looking into other frameworks.
One benefit of using ADF or similar frameworks is that you can quickly produce basic web applications without extensive knowledge of HTML, CSS, or Javascript. Whether this is important depends on the skill set of your development team.
人们在答案中遗漏的一个部分是,JDeveloper(更具体地说,ADF)为您提供的是一种端到端解决方案,它不仅涵盖 UI 部分,还涵盖如何将其绑定到业务服务,而且还是一个更简单的解决方案用于构建商业服务。
One part that people are missing in the answers is that what JDeveloper and more specifically ADF gives you is an end-to-end solution that covers not just the UI part but also how you bind it to the business services, and also a simpler solution for building the business services.