Build advanced Java graphical interfaces using Swing and MVC architecture
Swing offers a high degree of granularity in terms of components, events, and windows, ideally suited to the needs of applications based on specific and complex thick clients. The portable and consistent look and feel ensures consistent ergonomics across all platforms.
Is it for you ?
Java developers, designers, project managers, technical architects.
Prerequisites
Fundamental Java (classes, packages, events).
Good understanding of event-driven programming.
Basic knowledge of graphical user interfaces (buttons, menus, dialog boxes).
Knowledge of the MVC pattern.
Basic knowledge of threading (for responsive UI).
What You'll Walk Away With
- ✓ Design graphical user interfaces in Java using Swing components and layouts
- ✓ Handle user interactions through events and the Observer pattern
- ✓ Structure applications with a maintainable and scalable MVC2 architecture
- ✓ Use advanced components (tables, lists, trees) for complex interfaces
- ✓ Develop, test, and deploy Swing applications with packaging and network distribution
Training content
1 API Technical Architecture
- History of Swing
- Software engineering exercise to discover components
- The MVC model in graphical components
- Practical work: Software engineering exercise to discover components
2 Creating a simple interface based on specifications
- Assembling windows and components
- Arranging elements with layouts
- Practical work: Starting the leave management application, creating windows and placement managers
3 Responding to user events with listeners
- Understanding the Observer pattern
- Implementing internal and anonymous classes
- Practical work: Place Swing components (such as JButton) in the leave entry form and manage their events via internal and anonymous classes, implement dedicated classes
4 Set up a maintainable MVC2-type architecture
- Differences between technical and functional events
- Create a controller for the application's use cases
- Use the Command pattern for business logic
- Maintain the navigation context and associated information
- Practical work: Manage navigation in the application, following the MVC paradigm
5 Use advanced Swing components and their models
- Lists and their models (data, editing, and display)
- Tables and their models
- Tree structures and their models
6 Develop complex and user-friendly interfaces
- Components for creating menus
- Complex windows with advanced containers: scrollbars, internal windows, etc.
- User-friendly design with absolute or relative component layout
- Graphic enhancement with customizable and portable look and feel styles
- Use drag and drop
- Practical work: Improve the presentation and ergonomics of the application using advanced Swing components
7 Creating intelligent components
- Creating a JavaBeans Swing component
- Events for processing data changes
- Surface controls and rollback on component state changes
- Practical work: Create a JavaBean to control and save data entered by the user
8 Advanced aspects
- Use Java Web Start for network deployment
- Comparison with Eclipse RCP
- Practical work: Package and deploy the leave management application for remote use
📌 Practical information
Our training sessions are offered in Montreal or Quebec City, in person or in a virtual classroom. Dates and locations are specified when you select your session below. If you have any questions, check out our FAQ.