CPTTM software developer newsletter issue #2
Topics in this issue:
Sharpening your Java skills
Want to know how good you're in Java? Go to the Java Black Belt
(http://javablackbelt.com) and take some of the many quizzes. I just
spent 15 minutes to answer the quizzes and earned a yellow belt :-) I
found those questions for the yellow belt look remarkably like
those in the SCJP exam (Sun Certified Java Programmer). It's free.
If you find that you need to improve your Java skills, you may also
take our
Java Programming Language course (see
http://www2.cpttm.org.mo/training/sdb/showCourse.do?courseCode=CM148-04-2006-C),
which will enable you to pass the SCJP exam.
Next generation Java web application
frameworks
Servlet and JSP are technologies of the past. Nowadays most people
will NOT use them directly. Instead, they use a framework. Struts
is the classic framework that is also getting old and being phased
out. Newer generation frameworks include JSF, Tapestry and Wicket. They
all use the concept of components. Here are the general
opinions on them:
- JSF
- PRO: It is the standard from Sun and supported by many vendors.
- CON: It is complicated because it is trying to support web UI,
mobile UI and others.
- CON: It doesn't use pure HTML by default.
- CON: You need IDE support to use it efficiently.
- Tapestry
- PRO: It allows clean
separation of pure HTML code and Java code.
- PRO: It is from the Apache foundation.
- PRO: It has an large and active community.
- PRO: It has been around for several years and used for high
trafficed sites.
- CON: It is not a standard approved by SUN.
- CON: It needs some XML configuration files.
- Wicket. A clone of Tapestry.
- PRO: It allows clean
separation of pure HTML code and Java code.
- PRO: It doesn't need any XML configuration file. Everything is
done in Java code.
- PRO: It is easier to learn than Tapestry.
- PRO: It has a growing and active community.
- CON: It is relatively new and unproven.
- CON: It doesn't scale.
If you'd like learn more about Tapestry, you may take our upcoming
course
(http://www2.cpttm.org.mo/training/sdb/showCourse.do?courseCode=CM189-04-2006-C).
It has been updated for Tapestry 4.
Great software for FREE
- The most popular Java IDE: Eclipse (http://www.eclipse.org).
- Following Oracle and Microsoft, IBM has released a free version
of DB2
(http://www-306.ibm.com/software/data/db2/udb/edition-expressc.html).
Limited to 2 CPU (each can be dual-core) and 4G RAM. No limit on the
size of databases.
Book review: Refactoring by Martin Fowler
This is the classic book on "refactoring", i.e., improving the
structure or quality of your code in tiny steps without changing or
breaking the existing functionality. The key here is "tiny steps". If
you restructure your code and it take days before it can compile
again, then this is not refactoring. With the refactoring techniques
taught in this book, you should be able to make a tiny change, it
should work again in a few minutes, then you can make another tiny
change, and so on.
This book is available for borrowing at CPTTM Cyber-Lab. Many
other books on software development are also available. Please see
http://www2.cpttm.org.mo/cyberlab/mslib.
Feedbacks
Have any
questions, ideas or experiences regarding
software development?
Contact me at 781313 or kent at cpttm dot org dot mo.
Until next time,
Kent Tong