I wanted to let you know I'm using you tutorials to help train mainframe COBOL programmers in Java. I'm getting a great reaction to the tutorials from the programmers. I took the lessons myself and really enjoyed them, very clear.
I was going to suggest some debugging added to the beginner tutorial, but I see you are putting that out as a separate tutorial, great. I was also going to suggest when you change the fonts in the preferences you also added turning on line numbers, good for debugging and the JUnit results.
Was there a reason you decided on using Junit 3 instead of Junit 4 in the tutorial? Would be a good way to introduce annotations.
I would like to see an intermediate tutorial taking your library example and refactor it to a design pattern.
You have done a great job.
Hi Michael. I'm very glad to hear that you are getting good use from the tutorials. If I had it to do over again, I would have used JUnit 4 in the Total Beginners. I switched to JUnit 4 in the Persistence tutorials (and I show how to move a project from 3.8 to 4). At some point, I'd like to go back and revise the Total Beginners, at which time I'll start with JUnit 4.
I like your suggestion about working in a design pattern. I'll have to give that some thought. I'm also thinking about doing something with GUI (Swing or SWT or both) and perhaps something about the Java and SQL databases. There are a lot of possible topics to choose from.
Thanks again for the kind words and the feedback. Mark
I was giving the design pattern idea some more thought.
The scenario could be new requirement, we need a card catalog for the library. At first some card catalog methods are put in the MyLibrary class, but realzie this code "smells" and it is refactored out into it's own concrete class. Then we add two new requirements to the card catalog (I don't know yet maybe the ways we can list the books?). We could use inheritance to specialize the new functions but instead introduce "composition over inheritance" and make the card catalog class an abstract class and put our new requirements in concrete classes that impelement card catalog as a strategy pattern where new strategies can easily be added.
The above results could be used as a platform for many other tutorials that now requires an online card catalog could be a gui, or a JEE applicaition, or both. Could also introduce an SQL database using Derby (easy to get and use with Eclipse) and maybe Hibernate for the ORM.
Just some ideas right now. I might try to develop some code examples for the card catalog and share them, if you are interested.
Log in to post a comment.