Find Courses Here
Introduction to Wireless Programming using Java Print E-mail
Course Length - 5 Days
 
  
Course Description

This five-day course provides an introduction to Java programming with a focus on coding for wireless devices. Students first learn the Java language and development process, including OO concepts and techniques, working with the Java 2 Standard Edition, or J2SE. Then they learn how to create wireless applications with the Java 2 Micro Edition, or J2ME, and the Mobile Information Device Profile, or MIDP. (The MIDP is the “profile” defined within the J2ME for small mobile devices such as cellphones and PDAs.) 

The first module introduces the Java software architecture, including the Java Virtual Machine, Java Runtime Environment, Core API, and the Developer’s Kit. Students learn to configure a Java development and runtime environment and to use the J2SE SDK command-line tools, and learn the basic software development process for Java.

The second module covers the fundamentals of the Java language, focusing on its grammar, data types, and procedural aspects such as flow control, including exception handling. By the end of the module students are building simple, practical Java classes and applications.

The third module covers Java as an object-oriented language. The module includes an optional primer on object-oriented methodology and concepts, and then looks at Java as an object-oriented implementation language, including classes, construction, visibility, inheritance, polymorphism, interfaces, abstract classes, and type identification. Lab work moves from analysis and design of a case study to implementation as a Java package of several classes including an application class that implements a command-line interface.

Study of wireless programming begins with a top-down tour of the J2ME architecture, focusing on wireless programming via the Connected, Limited Device Configuration, or CLDC, and the MIDP. Students learn the simple Core API of the CLDC – primarily by contrast to the Java 2 Standard Edition Core API – and then move into the individual packages of the MIDP.

The final MIDP module begins with three chapters on user-interface design, which in MIDP is dramatically different from standard Java. Students learn the high- and low-level UI frameworks, and how to use commands and events. Students then study the MIDP Record Management System for limited persistent storage on the device, and then work on mobile networking. 

This course focuses on application of concepts through substantial hands-on exercises: instructor-led demonstrations and individually-performed labs. A moderately complex MIDP application – a “MIDlet” – is developed over the course as a case study in all the course topics and skills
.

 
   
 Course Objectives:
  • Learn to program effectively in the Java language
  • Understand the Java software architecture, and the design decisions which make Java software portable, efficient, secure and robust
  • Learn how to configure a simple Java development environment
  • Know the grammar, data types and flow control constructs of the Java language
  • Understand Java as a purely object-oriented language
  • Understand the Java 2 Micro Edition architecture, and the stacking of virtual machine, configuration, and profile to address different types of “micro” devices
  • Understand the limitations of mobile devices and see how they drive the design of the Connected, Limited Device Configuration, and the supporting “K” Virtual Machine
  • Identify the key differences between the JVM and the KVM, including build process and code security implementations
  • Understand the design and mission of the Mobile Information Device Profile, and see how programming for mobile devices is fundamentally different from J2SE programming
  • Code cleanly to the CLDC using the KVM
  • Build a simple, functioning MIDlet
  • Understand the framework for packaging and deploying MIDlets to devices
  • Build user interfaces for mobile devices, including text presentation, input controls, 2D graphics, and multi-screen navigation
  • Handle pointer and keypad input in a MIDlet
  • Implement menus and commands
  • Save and re-load information from one MIDlet run to the next using the MIDP Record Management System
  • Make network connections from the mobile device
  • Retrieve remote information via HTTP, including dynamic information based on user requests
 
      
 Course Prerequisites

The course is intended for students with some (presumably non-Java) coding experience. Students without previous programming experience are unlikely to finish the course successfully in the five-day timeline.