•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the Java section within the Software Development category of DaniWeb, a massive community of 374,032 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,875 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Java advertiser: Lunarpages Java Web Hosting
Views: 5576 | Replies: 17
![]() |
» Prologue «
I guess this is one of the threads everyone here has been waiting for. There was a thread created sometime back but due to been diluted by off topic posts couldn't be made into a sticky. I would request the OP to post the same links here if possible.
Please don't post "spam" or "Thank you" posts in this thread since this is meant to be used as a guide for all beginners and I am sure we would like it to be on topic. I hope you understand this.
» Introduction to Java «
To start off, Java is a general purpose programming language liked by application developers and web developers alike. It is the force which drives a large number of enterprise applications out there. Read more about it here. And yes, just for the records, Java is not slow!! ;-)
» Getting started «
All you require to develop Java application is a text editor and a JDK which encompasses a Java compiler, a Java interpreter and a host of tools which ease your development.
As a beginner, you should know the commonly used JDK development tools like javac, java, jar, javadoc to name a few. Read about them here.
Though not recommended for beginners, there are a lot of IDE (Integrated Development Environments) out there which greatly reduce the development time and abstract away all the complexities faced. A few free and commercial ones are:
Though compiling Java programs using the javac tool may seem fine enough now, it has it's limitations. Compiling, building and archiving an entire application becomes quite tedious. Build tools to the rescue. It's a good thing to have the knowledge of at least one of the build tools under your belt if you want to work with Java in a professional setting. There are a lot of open source build tools out there, Ant and Maven being well known among them. Which build system to use is a personal / project choice though Ant is a good one for beginners. For those who are conversant with Ruby, you might find Raven interesting. Google for 'ant tutorial' and you will surely find something to get you started (that is if you are using Ant).
» Unit Testing «
It's a good thing to get into the habit of unit testing your code. Test cases have a host of advantages over your normal print statements placed throughout your program. Testing helps you in focus on the way your Java object is actually used / the part it plays in the system, thereby improving class design. And above all, its fun. :-) Get the unit testing framework JUnit here. Google for 'junit tutorial' and you will surely find something to get you started.
» Links «
Now for some tutorial links:
» Frequently Asked Questions «
» Certifications «
After getting a good grasp of the subject, you might want to get a good certification to add a feather to your cap. You can find more about Java certification here. Google for 'scjp notes', 'java mock test' or 'scjp mock' to get started. Getting a certification or not is a choice you have to make.
» Of programming and hackers «
The learning process remains incomplete unless we play around with the language, learn to understand others code and implement some sample projects. For those want to learn Java *really* fast, Teach yourself programming in ten years would be a good read. Some other inspirational reads are 'How to become a hacker', Great Hackers and other Paul Graham essays. One of our community members, Black Box, has written a nice post targeted at beginners, which enlists what it takes to learn a language.
That being said, you can find a lot of open source Java projects on Java source. Play with them to your fullest, try to see how things are done in the real world and walk the path of a hacker! ;-)
» Game Development «
And yes, now you can use Java for professional game development for the PC platform. The Java Monkey Engine makes this possible with advanced features like shaders, cloth simulation, bump mapping, inbuilt sound and user interface support and much much more. You can learn more about it on the JMonkey Home page.
» Epilogue «
After all this, if you still find yourself struggling with some issue, make sure you read this thread and this essay before creating a new topic in the Java forums.
It has taken a lot of effort to come up with these links so that you don't waste your time googling for some study material / reference text. So, just go for it, learn, contribute to this thread and above all, enjoy programming!
Java FTW. :-)
I guess this is one of the threads everyone here has been waiting for. There was a thread created sometime back but due to been diluted by off topic posts couldn't be made into a sticky. I would request the OP to post the same links here if possible.
Please don't post "spam" or "Thank you" posts in this thread since this is meant to be used as a guide for all beginners and I am sure we would like it to be on topic. I hope you understand this.
» Introduction to Java «
To start off, Java is a general purpose programming language liked by application developers and web developers alike. It is the force which drives a large number of enterprise applications out there. Read more about it here. And yes, just for the records, Java is not slow!! ;-)
» Getting started «
All you require to develop Java application is a text editor and a JDK which encompasses a Java compiler, a Java interpreter and a host of tools which ease your development.
» Java 1.4 downloadAfter installing the JDK, you might want to take a look at the common problems beginners face when setting up Java and their solutions. New to java center is a good section for absolute beginners.
» Java 5.0 download
» Java 6.0 download
» Java Language Specification - 3rd edition
» Java 1.5 online documentation
As a beginner, you should know the commonly used JDK development tools like javac, java, jar, javadoc to name a few. Read about them here.
Though not recommended for beginners, there are a lot of IDE (Integrated Development Environments) out there which greatly reduce the development time and abstract away all the complexities faced. A few free and commercial ones are:
» Netbeans IDE [open source]» Build Tools «
» Eclipse IDE[open source]
» IntelliJ IDEA[commercial ide]
» JCreator [both free and commercial versions]
» Sun Java studio creator [free]
Though compiling Java programs using the javac tool may seem fine enough now, it has it's limitations. Compiling, building and archiving an entire application becomes quite tedious. Build tools to the rescue. It's a good thing to have the knowledge of at least one of the build tools under your belt if you want to work with Java in a professional setting. There are a lot of open source build tools out there, Ant and Maven being well known among them. Which build system to use is a personal / project choice though Ant is a good one for beginners. For those who are conversant with Ruby, you might find Raven interesting. Google for 'ant tutorial' and you will surely find something to get you started (that is if you are using Ant).
» Unit Testing «
It's a good thing to get into the habit of unit testing your code. Test cases have a host of advantages over your normal print statements placed throughout your program. Testing helps you in focus on the way your Java object is actually used / the part it plays in the system, thereby improving class design. And above all, its fun. :-) Get the unit testing framework JUnit here. Google for 'junit tutorial' and you will surely find something to get you started.
» Links «
Now for some tutorial links:
» Java tutorials (beginners start here!)Some free online books / pdf's:
» Online resources for Java programmers
» Brewing Java
» Java tutorials at about.com
» Don't fear the OOP
» The Java Tutorial by Mary Campione and Kathy Walrath
» Java Student's Resouce
» Sussex Data structure notes in java
» Ohio University Java notes
» Rochester Advanced programming in java notes
» Introduction to Programming Using Java, Fifth EditionIn case you need to buy a book, consider the ones enlisted below. They are a gem.
» Thinking in Java 3rd edition
» Free java books
» Free java books at Developer's Daily
» Onto Java
» O'Reilly's eBooks
» Head First Java [beginner]Must visit sites for all Java programmers:
» Java Programming Language [advanced]
» Java in a Nutshell [intermediate]
» Hardcore Java [advanced]
» Java concurrency in practice [intermediate]
» JavaWorldIf you are one of those people who are interested in reading blogs, I would recommend Reddit, DZone, JRoller and many others.
» OnJava
» IBM Java developerworks
» Frequently Asked Questions «
» How can I convert a java program to an executable?Just google for 'java faq' and you surely would stumple upon a gold mine of well written FAQ's.
» What are the difference between Java and C/C++?
» What is hell is 'Generics' all about?
» Where can I find a more comprehensive FAQ?
» Certifications «
After getting a good grasp of the subject, you might want to get a good certification to add a feather to your cap. You can find more about Java certification here. Google for 'scjp notes', 'java mock test' or 'scjp mock' to get started. Getting a certification or not is a choice you have to make.
» Of programming and hackers «
The learning process remains incomplete unless we play around with the language, learn to understand others code and implement some sample projects. For those want to learn Java *really* fast, Teach yourself programming in ten years would be a good read. Some other inspirational reads are 'How to become a hacker', Great Hackers and other Paul Graham essays. One of our community members, Black Box, has written a nice post targeted at beginners, which enlists what it takes to learn a language.
That being said, you can find a lot of open source Java projects on Java source. Play with them to your fullest, try to see how things are done in the real world and walk the path of a hacker! ;-)
» Game Development «
And yes, now you can use Java for professional game development for the PC platform. The Java Monkey Engine makes this possible with advanced features like shaders, cloth simulation, bump mapping, inbuilt sound and user interface support and much much more. You can learn more about it on the JMonkey Home page.
» Epilogue «
After all this, if you still find yourself struggling with some issue, make sure you read this thread and this essay before creating a new topic in the Java forums.
It has taken a lot of effort to come up with these links so that you don't waste your time googling for some study material / reference text. So, just go for it, learn, contribute to this thread and above all, enjoy programming!
Java FTW. :-)
Last edited by ~s.o.s~ : Dec 1st, 2007 at 9:08 am.
"I don't accept change. I don't deserve to live."
"Working a real job is a win if you're lazy, greedy, or unmotivated. If you're average, you fit right in. And if you're above average, the basic terms of employment and premise of the arrangement is against your interests."
"Working a real job is a win if you're lazy, greedy, or unmotivated. If you're average, you fit right in. And if you're above average, the basic terms of employment and premise of the arrangement is against your interests."
One more very handy site for code snippet examples on many things:
Java Examples from The Java Developers Almanac 1.4
Java Examples from The Java Developers Almanac 1.4
Everyone working with Java should take the time to read the Java coding conventions published by Sun: http://java.sun.com/docs/codeconv/ht...nvTOC.doc.html
Coding to the common conventions will ensure a consistency that greatly aids both the coder and others reading that code.
Anyone designing programs that involve more than one or two classes could benefit from familiarizing themselves with design patterns. An excellent introduction to this is Head First Design Patterns. Design patterns may or may not be appropriate for a given application, but learning about them and their usage will teach you to look at your program organization in a more critical manner from perspectives that you may not have considered at the outset.
Coding to the common conventions will ensure a consistency that greatly aids both the coder and others reading that code.
Anyone designing programs that involve more than one or two classes could benefit from familiarizing themselves with design patterns. An excellent introduction to this is Head First Design Patterns. Design patterns may or may not be appropriate for a given application, but learning about them and their usage will teach you to look at your program organization in a more critical manner from perspectives that you may not have considered at the outset.
A sample chapter on Data Structures in Java from the book Java concepts for Java 5 and 6. A good and thorough read.
"I don't accept change. I don't deserve to live."
"Working a real job is a win if you're lazy, greedy, or unmotivated. If you're average, you fit right in. And if you're above average, the basic terms of employment and premise of the arrangement is against your interests."
"Working a real job is a win if you're lazy, greedy, or unmotivated. If you're average, you fit right in. And if you're above average, the basic terms of employment and premise of the arrangement is against your interests."
•
•
Join Date: Dec 2004
Location: London or Slovakia
Posts: 1,907
Reputation:
Rep Power: 9
Solved Threads: 216
JDBC tutorial that can help to start
Learn to see in another's calamity the ills which you should avoid.
Publilius Syrus
(~100 BC)
If we helped you to solve your problem, answered your question please mark your post as SOLVED.
Publilius Syrus
(~100 BC)
If we helped you to solve your problem, answered your question please mark your post as SOLVED.
•
•
Join Date: Feb 2008
Location: India
Posts: 3
Reputation:
Rep Power: 0
Solved Threads: 0
following are few of the useful java tutorial websites:
http://www.javacoffeebreak.com/tutorials/index.html
http://java.sun.com/docs/books/tutorial/
http://www.tutorialized.com/tutorials/Java/1
and there are plenty more on google ..
http://www.javacoffeebreak.com/tutorials/index.html
http://java.sun.com/docs/books/tutorial/
http://www.tutorialized.com/tutorials/Java/1
and there are plenty more on google ..
•
•
Join Date: Mar 2008
Location: Nepal
Posts: 2
Reputation:
Rep Power: 0
Solved Threads: 0
the art of java, core java and some books from osborne.com and horstmann.com are always good for me. They are useful.
A document describing the common compile time / runtime errors and ways to resolve them; beginners might find it to be useful.
"I don't accept change. I don't deserve to live."
"Working a real job is a win if you're lazy, greedy, or unmotivated. If you're average, you fit right in. And if you're above average, the basic terms of employment and premise of the arrangement is against your interests."
"Working a real job is a win if you're lazy, greedy, or unmotivated. If you're average, you fit right in. And if you're above average, the basic terms of employment and premise of the arrangement is against your interests."
•
•
Join Date: May 2008
Posts: 4
Reputation:
Rep Power: 0
Solved Threads: 0
Could I recommend both Notepad++ and JGRASP as lightweight beginner IDEs? I like them a lot when writing individual java files and I don't feel like waiting for Netbeans to come up. They both have the basics, such as Indentation Guides, but JGRASP is more focused on Java, while Notepad++ is highly configurable (such as add-ons, custom highlighting, and code-completion). Just my two cents to help everyone.
![]() |
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
•
•
•
•
•
•
•
•
DaniWeb Java Marketplace
- Previous Thread: multi dimensional arrays
- Next Thread: JComboBox problems



Linear Mode