At AMPATH, we have some developers starting who are new to programming in Java, so we are looking for some good resources (websites, books, free online tutorials, etc.) to get them familiar with programming in Java before we start teaching them about programming for OpenMRS. These are people who already know how to program (e.g., in PHP or C#), just not in Java yet.
I beg to disagree with Judy. Java is thus far the most solid and complete programming paradigm, running on billions of devices today.
Burke, my recommendation will be “Java Actually, by Dr. Khalid Mughal” from University of Bergen, who conducted a week long Java programming workshop at IHS (former IRD), where we learnt the art of programming on Java. You can in fact, contact him for an in-house workshop at AMPATH as well. He’s very capable…
I’ve been learning Java at University for the past 2 years and feel the best resource I’ve used has been head first. There is a head first Java book, followed by a head first design patterns book, both i’d recommend.
There is a San Francisco java learning meetup which gets together to learn the basics of programming and Java together by following the online coursework for UC Berkeley’s CS 61B. http://www.cs.berkeley.edu/~jrs/61b/overview.html MIT also has free computer science courses - a good algorithms course etc… (Just google MIT opencourseware)
The most challenging part for me as a new developer is identifying which packages to import in my controllers. Any guidance on these are also very much appreciated!
JAVA 2: The complete reference would be the best source for the person who has some programming background. The primary reason for this book is the in-depth information available for useful java class libraries.
From my experience I think The Java Tutorials is the best place to learn about java since it is the official documentation of java(updating regularly with new features).
youtube has some great tutorial series like thenewboston which very helpful for beginners.
For those who are already familiar with OOP I will recommend- “Sun Certified Programmer for Java 6 Study Guide”.
Very easy to read, but the result impress. There are no boring technical details, like in Thinking in Java (Eckel), you will enhoy read that!
I think this would be a good resource.
http://www.javatpoint.com/java-tutorial.
Since they are already familiar with programming and OOP(given that they know C#). I don’t think following a book will be a good idea.
If you are using a modern IDE like eclipse or intelliJ, this is something you don’t worry about, as long as you know the simple class name, IDE’s autocomplete feature will take care of the rest
At my social business, Usbong (www.usbong.ph), we use online materials from www.udacity.com. They have courses on Intro to Java Programming, among others.
Here’s a copy of their syllabus.
Lesson 1: Introduction to Computers, Programming Languages, Algorithms, and the Java Programming Environment
Lesson 2: Introduction to Classes and Objects
Lesson 3: Graphics
Lesson 4: Fundamental Data Types
Lesson 5: Decisions
Lesson 6: Iterations
Lesson 7: Arrays, ArrayLists and Simple Array Algorithms
Lesson 8: Methods (Parameter Passing, Instance vs. Static Methods)
Lesson 9: Inheritance
Hey burke,
I want to contribute to this organisation and I have a question for you.
I am already familiar with Java and have a 2 year experience coding on Java. Shall I learn Java EE as well?
I haven’t done any Web Dev with Java, just GUI and Desktop Applications.
My recommendation would be to start by reading the Getting Started as a Developer wiki page and try to work on an introductory ticket, learning what you need to as you progress.