Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

NetBeans Platform Training @ MIT, Boston

DZone's Guide to

NetBeans Platform Training @ MIT, Boston

· Java Zone ·
Free Resource

Get the Edge with a Professional Java IDE. 30-day free trial.

MIT in Boston recently hosted a NetBeans Platform training course. In the beautiful if somewhat precarious architecture of a Frank Gehry building...

...yet another group of students, from MIT as well as Harvard, were introduced to the ins and outs of the NetBeans Platform:

As always, the NetBeans Platform course covered the standard topics, from modularity to Lookup to Nodes and all the other interesting topics surrounding these "NetBeans Platform standards". Several different applications were created, with this application as the end goal of the course:

As you can see, the explorer window contains a list of Nodes representing movies. Each movie has one or more actors, with one director. Each actor has one or more mansions. This structure really allows for a lot of fun and games with Node hierarchies!

Then, when we covered the topic of "actions and the NetBeans Platform", we created an action for comparing movies. As you can see, above, two different comparisons have been done, one comparison for identifying directors across movies and another comparison for identifying actors across movies. In typical NetBeans style, these two algorithms come from different modules:

The source code of this application can be found here:

http://java.net/projects/nb-api-samples/sources/api-samples/show/versions/7.1/courses/MovieAnalyzer

If you're reading this and you're also interested in learning how to create modular Java desktop applications, feel free to leave a message here or write directly to geertjan dot wielenga at oracle dot com.

 

Get the Java IDE that understands code & makes developing enjoyable. Level up your code with IntelliJ IDEA. Download the free trial.

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}