|Aug 5, 2006, 01:24 AM||#1|
Need Help: Modern Java Landscape Overview + Questions
Hi guys, I used to do some Java programming but haven't really touched it much in at least 5 years (been doing C/Obj-C/Cocoa/Python development instead). But, I may have an opportunity a bit down the road at a great job doing Java development (you can translate "great" as "really high-paying" ). I'm sure the landscape is much different now than the last time I was involved (back then JFC/Swing, applets, and EJB were considered "new", for example, and anything web-related was very primitive). Please excuse the long post, but here are some of the questions I have:
1. What's a good general IDE to use for Java development nowadays? Even though I'll use my Mac whenever I can, I'd probably want to stick with something cross-platform and industry-standard, such as Elipse or NetBeans. Are those tools still the most common? Are they any good or out of date? Are there newer, better tools I should look at? Whichever IDE I use would need to be able to handle many different Java-related things, including XML, localization, different deployment options, etc. Also, which ones perform best on a Mac?
2. Is Ant still relevant for building Java apps? It's what I used to use but I don't know if there are better methods to use now.
4. What are the best resources for brushing up on my Java and all the related technologies? I feel like I still have all the basics in my head somewhere but I need to start myself off gently again to make it all come back. What books do you like? What websites are the most helpful?
Thanks for reading!
Go outside, the graphics are amazing!
|Aug 5, 2006, 01:40 AM||#2|
I will also be interested to see if anyone has any insights on this, but most programming discussions on these forums are quite basic, so I'm not sure if this is the best place to post to reach a high number of experienced enterprise level Java developers with up to date knowledge of the platform.
As for the questions. My impression is the Eclipse and Netbeans are both good IDEs and both projects are active, are releasing updated version regularly and are widely supported.
I'm currently reading "Beginning J2EE 1.4" from 2003 by Weaver and Mukhar, hoping that at least some of it is still valid.
Someone get Nekkid™, now!
Last edited by gekko513; Aug 5, 2006 at 02:46 AM.
|Aug 5, 2006, 02:32 AM||#3|
I've been using Eclipse for a couple of years now, and it's pretty good. Now that I've had lots of practice, I feel that I'm very productive with it. I briefly tried Netbeans, which seems decent, but I went back to Eclipse - probably because I'm used to it, and it works well for me. The GUI builder in Netbeans 5 is pretty slick, though. I've heard good things about IntelliJ IDEA, but I haven't personally tried it.
Eclipse runs great on Intel Macs, but is pretty slow on PowerPC Macs. Lots of RAM helps in either case.
As far as I know, Ant is still widely used. That's what my company uses.
Unfortunately, I don't think I can help with the rest of your question... I haven't done any Java web development (thankfully...). I also haven't picked up any Java books in a long time, so I don't have any suggestions there. Between Google and Sun's Java forum, I can usually figure out any problems I get stuck on.
|Aug 5, 2006, 03:39 AM||#4|
I'm a big fan of Eclipse, great refactoring, slick editor, plays nice with the rest of the OS, but it really lacks in the JSP/Struts department.
Netbeans is much more tightly integrated, with it you get the whole shebang (text editor/compiler toolchain/application server/wywiwymg swing - jsp editor/struts/war deployer...)
Of course there are eclipse plugins but there are incompatibilities between them.
I've been doing more and more .Net the past year, but had a discussion with a Java expert the other day, seems like Struts/JSP is on the way out, in favor of JFaces.
If you need an O/R mapping, it seems that Hibernate still dominates the field.
As far as application servers go, I'm sorry, I can't help you there...
|Aug 5, 2006, 12:18 PM||#5|
A couple of thoughts:
Eclipse is still one of the most popular IDE's. NetBeans is good and gives you the total integration. You can get the same level of integration that NetBeans provides if you go with the Rational tooling from IBM. The Rational IDE is built on top of Eclipse so everything you know about Eclipse is the same in the Rational tools. JSF integration and EJB authoring is heavily automated for you.
Get up to speed on the new features of Java 1.5. Java 1.5 has some significant changes to the language. Most of the changes are improvements so you really want to understand the support for generics and the automatic boxing/unboxing stuff.
EJB has evolved a lot. The deployment descriptors have had major changes over the years. With the new specification released last year the deployment descriptors are now optional. However not many folks have picked up the new specification yet.
Ant is still the way to go for complex build needs.
If you are interested in web integration take a look at Java ServerFaces. JSF feels in many ways like the natural evolution of struts and effectively smooths over the rough parts of struts.
To group your list of technologies -- XML, XSLT, SAX are all about data storage and processing. Personally, I find that XML and SAX are the basics here. Understanding a little of XML is necessary for many technologies since most people end up using XML as their data/configuration format. SAX gives you an easy way to parse XML documents. To output XML you can just use print/write statements. If you need to process over the XML documents then DOM is your path.
WSDL, SOAP, XML-RPC -- these are your component services technologies. Basically how you wrap your code so it can be invoked by other applications.
|Aug 5, 2006, 02:43 PM||#6|
So here's my list so far:
Core: Java 1.5
IDE: NetBeans or Eclipse/Rational
GUI: JavaServer Faces, AJAX (possibly)
Data: XML, SAX, DOM
Object relational mapping / persistence: Hibernate, SQL
Component services: XML-RPC, SOAP, WSDL
(I'm still unclear on which of the component technologies are necessary, then which are considered the most modern/best). Anyway, thanks to all of you for all the great info, it is really helping me. Keep it coming!
Go outside, the graphics are amazing!
|Aug 5, 2006, 05:08 PM||#7|
the job done in a fast and efficent manner. You should first ask yourself
what you want to do and _then_ see what you need to get it done . Posting
a very general question like yours will only get you back a bunch of
mixed answers (which as far as I have read on this thread are OK).
Anyway, regarding your first question. Eclipse is the way to go. It is
basically the industry's defacto standard. Not in the sense MS Windows is ,
but because Eclipse is actually good. Borland (the maker of Jbuilder,
another Java IDE) won't release any further versions of JBuilder and will
move to eclipse as well (i.e, produce an IDE based on Eclipse).
Note: AJAX has nothing to do with Java. You can read more about
Last edited by Compile 'em all; Aug 5, 2006 at 05:39 PM.
|Aug 5, 2006, 05:12 PM||#8|
|Aug 5, 2006, 05:28 PM||#9|
Thanks for the heads-up
I've spent too much time in an MVC-less land (WebForms, bleh), whish I could get back to Java... That'll give me an excuse to get a MBP
Speaking about Ajax, I had the displeasure to work with Atlas and I just checked-out google's Ajax toolkit, which seems quite nice.
I think this is a very neat approach that may hint at solving Ajax' maintenability issues.
ps: sorry for my spelling, I long for camino's inclusion of the Cocoa spellchecker :/
|Aug 6, 2006, 05:38 AM||#11|
Join the army of the dead: http://www.urbandead.com
|Thread Tools||Search this Thread|
|thread||Thread Starter||Forum||Replies||Last Post|
|Some apps prompt to install Java 6 even when Java 7 is installed||MacMan988||OS X Mavericks (10.9)||1||Apr 18, 2014 07:56 AM|
|Java 6.x security risk (?) vs Java 7.x and broken apps w/ v7.x installs?||mgiamo||Mac Basics and Help||1||Dec 15, 2013 03:48 PM|
|Java questions.||alexwei||MacBook Pro||6||Aug 27, 2013 04:16 PM|
|Chrome on OS X -- Java plugin / Java 7 vs Java 6 Issue||booyahbooyah||Mac Applications and Mac App Store||4||May 31, 2013 09:13 AM|
|Installed Java 7.07 but doesn't show up in Java preferences?||-mattias-||OS X 10.8 Mountain Lion||21||Aug 31, 2012 04:49 PM|
All times are GMT -5. The time now is 10:42 AM.