Register an open source project on http://code.google.com and check in your workspace project into the SVN repository.
If you are using the Eclipse IDE, you may have to download a plugin for SVN.
Describe what you did, including any problems you may have faced, and how you overcame them, in a blog post.
leave a comment here after completing this task.
Showing posts with label java_insights101. Show all posts
Showing posts with label java_insights101. Show all posts
Sunday, November 09, 2008
Task: Hello World
Everything starts with a HelloWorld, and so shall we :-)
Write a HelloWorld program that takes in command line parameters to determine what should be printed. The program usage is as follows:
HelloWorld -g -n
-g A compulsory parameter which denotes a greeting such as Hello, or Hi
-n A compulsory parameter which denotes the name that will follow the greeting in the output
Running
HelloWorld -g Hello -n Parag
will print
"Hello Parag"
HelloWorld -g Hello
Should print the usage string
If any of the arguments are not provided, the program should abort with a usage string.
Describe what you did, including any problems you may have faced, and how you overcame them, in a blog post.
Leave a comment here after completing the task.
Write a HelloWorld program that takes in command line parameters to determine what should be printed. The program usage is as follows:
HelloWorld -g
-g A compulsory parameter which denotes a greeting such as Hello, or Hi
-n
Running
HelloWorld -g Hello -n Parag
will print
"Hello Parag"
HelloWorld -g Hello
Should print the usage string
If any of the arguments are not provided, the program should abort with a usage string.
Describe what you did, including any problems you may have faced, and how you overcame them, in a blog post.
Leave a comment here after completing the task.
Task: Create a working environment for Java
Ensure that you have installed JDK 1.6 (latest update), and an IDE such as Eclipse or Netbeans.
In your IDE, create a new project called JavaInsights101_. Create an empty readme.txt file in the project. Create a 'src' directory, and a 'test' directory in the project.
Describe what you did, any problems that you may have faced and how you overcame them, in a blog post.
Leave a comment here after completing this task.
In your IDE, create a new project called JavaInsights101_
Describe what you did, any problems that you may have faced and how you overcame them, in a blog post.
Leave a comment here after completing this task.
JavaInsights 101
Description:
This learning track is for developers who have completed at least one course in Core Java (or are familiar with basic principles of Java, like Syntax, compiling, and running Java programs) and would like to improve their understanding of the Java language and ecosystem.
Why Is This Track Needed?:
A typical Core Java course focuses on the Java syntax and simple exercises to understand Java. These are an important first step, however, usually due to lack of time such a course cannot equip the learner with deeper knowledge of how to develop good software in the Java ecosystem. The Java landscape is very huge and cannot be dealt with in a single course. When dealing with such magnitude, the best way to learn is self learn. This track's focus is to help developers by providing guidance as they get their feet wet, and give them the initial momentum for continuous self learning. The track will provide developers with:
For this track we will use the concept of networked collaborative learning. Breifly, this means that everyone is a learner and a mentor. Learning happens by understanding, practicing, and participating. New media technologies (such as blogs, and podcasts) will be used for participation.
The JavaInsights101 track consists of 16 tasks. I recommend that you try and complete them in 16 weeks. Each task is explained in a separate blog post. After completing a task, please write a blog post (describing your solution, problems faced if any, and how you overcame them) on your own blog and leave a comment on the post describing the task (on this blog). Be sure that your comment contains the URL of your post describing your solution for the task.
Participants are encouraged to write blog posts regularly as well as read posts of other participants and leave (constructive) comments on their blogs.
There is a supporting Google Group for this track, which can be used for asking questions, and other discussions related to the track. Participants are also encouraged to go beyond this Google Group and ask questions on public Java forums, such as Java Ranch and Java.net . Participating on these forums will give you a wider perspective and will also help you connect with the Java developer community. For the benefit of other participants, whenever you ask a question on another forum, either write a blog post with the URL of the question, or write a quick mail on the mailing list, describing your question and it's URL. This will help other participants who have similar questions. Moreover if someone already knows the answer, they can post it on the question thread.
Registration:
To register for this track leave a comment on this post with your blog URL and go to Task 1. If you do not already have a blog, do Task1 first and then leave a comment on this post.
Fees:
This is a pay-it-forward course, which means you do not have to pay any fees monetarily. However, you are strongly urged to volunteer after completing this track by helping new participants, by either answering their questions on the forum, or by reviewing their code.
Frequently Asked Questions
Learning Tasks:
This learning track is for developers who have completed at least one course in Core Java (or are familiar with basic principles of Java, like Syntax, compiling, and running Java programs) and would like to improve their understanding of the Java language and ecosystem.
Why Is This Track Needed?:
A typical Core Java course focuses on the Java syntax and simple exercises to understand Java. These are an important first step, however, usually due to lack of time such a course cannot equip the learner with deeper knowledge of how to develop good software in the Java ecosystem. The Java landscape is very huge and cannot be dealt with in a single course. When dealing with such magnitude, the best way to learn is self learn. This track's focus is to help developers by providing guidance as they get their feet wet, and give them the initial momentum for continuous self learning. The track will provide developers with:
- An understanding of coding and design best practices
- An exposure to the Java ecosystem of open source libraries and frameworks
- An understanding of how to unit test Java code
- An understanding of source control systems and how to use them
- An understanding of how to use development and code analysis tools
- A deeper understanding of some of the topics already learned in a regular Core Java course
For this track we will use the concept of networked collaborative learning. Breifly, this means that everyone is a learner and a mentor. Learning happens by understanding, practicing, and participating. New media technologies (such as blogs, and podcasts) will be used for participation.
The JavaInsights101 track consists of 16 tasks. I recommend that you try and complete them in 16 weeks. Each task is explained in a separate blog post. After completing a task, please write a blog post (describing your solution, problems faced if any, and how you overcame them) on your own blog and leave a comment on the post describing the task (on this blog). Be sure that your comment contains the URL of your post describing your solution for the task.
Participants are encouraged to write blog posts regularly as well as read posts of other participants and leave (constructive) comments on their blogs.
There is a supporting Google Group for this track, which can be used for asking questions, and other discussions related to the track. Participants are also encouraged to go beyond this Google Group and ask questions on public Java forums, such as Java Ranch and Java.net . Participating on these forums will give you a wider perspective and will also help you connect with the Java developer community. For the benefit of other participants, whenever you ask a question on another forum, either write a blog post with the URL of the question, or write a quick mail on the mailing list, describing your question and it's URL. This will help other participants who have similar questions. Moreover if someone already knows the answer, they can post it on the question thread.
Registration:
To register for this track leave a comment on this post with your blog URL and go to Task 1. If you do not already have a blog, do Task1 first and then leave a comment on this post.
Fees:
This is a pay-it-forward course, which means you do not have to pay any fees monetarily. However, you are strongly urged to volunteer after completing this track by helping new participants, by either answering their questions on the forum, or by reviewing their code.
Frequently Asked Questions
Learning Tasks:
- Create a blog
- Create a working environment for Java
- Hello World
- Task: Check-in code into a source control system
- Refactor HelloWorld to use JSAP
- First Steps Into Test Driven Development
- An exercise with Collections
- An exercise with Threads
- An exercise with Swing
- Unit testing the Swing GUI
- Unit test code coverage
- Using Log4J for logging
- Code review
- Using ANT for compiling your project
- Ensuring code quality with FindBugs
- Your journey begins now
Subscribe to:
Posts (Atom)