Software Developer Newsletter Header
        CPTTM software developer newsletter issue #22, Kent Tong, Editor in Chief

Dear Software Developers,

This CPTTM Software Developer newsletter is to bring useful news to you, software developers in Macau, for references without obligations, so that you can do your jobs easier and better! Hope you like it. if you'd like to unsubscribe or recommend your friends to subscribe, just email me at kent@cpttm.org.mo. Old issues are available here.

Topics in this issue:

Google Web Toolkit: Superb way to create interactive web GUIGWT

Believe it or not: I downloaded Google Web Toolkit (GWT), read its doc and used it to create a web page containing input boxes, buttons, tabs and dialogs (see the screen shot) all in one hour!

Why is it so easy? The GUI components are constructed entirely in Java code. For example, to create the Add button, the code is:

 Button add = new Button("Add");
add.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
int n1 = ...;
int n2 = ...;
int sum = n1+n2;
...
}
}

As GWT provides components for tab panels, dialogs, menus and etc, it is very easy to build up such a web page. In this particular case, the entire program is only 35 lines!

Another interesting feature is that the Java code above (including the code to add the two numbers) is actually compiled into Javascript to be executed in the browser. It means during execution it is running on the client and thus can deliver a very high interactivity. For example, adding the two numbers doesn't involve any AJAX calls or network overhead. This is very much like RIA, but you don't have to write Javascript as in Silverlight or Flex. To allow you to debug the code easily, it can also be run in a special mode called "hosted mode" so that the Java code is executed directly and that you can trace it in the IDE.

What if you need to, say, save some data into the database on the server? In that case you can easily invoke Java methods on the server.

Given these powerful features, I'd say GWT is the best option to develop highly interactive web pages. For web applications that involve different pages working together, Wicket is probably the best bet. To learn more about GWT, click here.

Introduction to LINQ

We're glad to have our instructor, Mr. Francisco Leong, to contribute a tutorial on LINQ, which is like allowing you to write SQL in C# or VB code directly. This has a lot of implications: static type checking, auto-completion, the ability to call C# or VB functions in the query and refactoring in the query. Now, follow Francisco to go through a simple example to get started.

Eclipse plugin for the Spring framework and JBoss

If you use the Spring framework, you may check out the spring IDE plugin. It provides auto-completion and validation for bean definitions.  If you use JBoss (Hibernate, JSF, Facelets, EJB3, etc.), check out the JBoss IDE plugin. Both are very cool.

Get MS development tools for free (if you're a college student)

This includes Windows 2003 server, Visual Studio 2008 Professional and Expression Studio (a Photoshop competitor) . For more info, click here.

New features of ASP.NET 3.5ASP.NET

ASP.NET 3.5 was released in Nov 2007. Now it provides built-in support for AJAX and LINQ and comes with even more components such as a data pager. If you're stilling using the old ASP, you should seriously consider ASP.NET. It will give you a lot of useful components, visual GUI editing and it is much easier to maintain states with the pages.

To learn ASP.NET, you may attend our official Microsoft ASP.NET course: Developing Microsoft ASP.NET Web Applications Using Visual Studio.NET (2310).

Upcoming courses for software developers

Course code Title Start date Duration (hours) Fee (MOP) Remarks
CM276-04-2008-C Writing secure code in Java 2008/04/05 12 580
CM191-04-2008-C Developing Microsoft ASP.NET Web Applications Using Visual Studio.NET (2310) 2008/04/11 24 3850 Official Microsoft course materials and certificates
CM269-04-2008-C JSF, Wicket and AJAX 2008/04/30 42 1280
CM331-04-2008-C Developing web services in Java with Axis2 2008/04/01 15 580 Covers the latest version of Apache Axis2, including asynchronous operations, WS-Addressing and WS-Policy
CM299-05-2008-C Java SE6.0 Programming Language Intermediate Level (Sun official course SL-275) 2008/05/16 45 From 1680 Official SUN course materials and certificates
CM309-06-2008-C Practical Java programming Intermediate Level 2008/06/15 45 1300
CM330-06-2008-C Introduction to C# Programming with Microsoft .NET (2609) 2008/06/14 24 3850 Official Microsoft course materials and certificates

In addition, there are interesting courses that make your kids love IT:

Course code Title Start date Duration (hours) Fee (MOP) Remarks
CM321-04-2008-C 3D Modeling and Animation for Youth 2008/04/19 30 850
  • Your kids will learn how to build 3D models while having fun.
  • Enjoy up to 75% course fee reimbursement
CM328-05-2008-C Interactive animation course for Primary and Secondary students 2008/05/03 12 380
  • Your kids will learn how to write programs while having fun. My niece aged 8 enjoys it very much.
  • Enjoy up to 75% course fee reimbursement

Feedbacks

Any questions, ideas or experiences to share? Contact me at 28781313 or kent@cpttm.org.moWe also have two other newsletters: CIO newsletter and Network administrator newsletter, your friends may like to subscribe.

Until next time, 

Kent Tong

CIO Newsletter Footer