Datasheet
25
Chapter 1: Gathering What You Need to Develop BlackBerry Apps
✓ Device interactions: Your applications use the classes in this category’s
packages (net.rim.device.*) to perform operations that make use
of the various parts of the BlackBerry device, such as using the smart-
phone’s GPS or communicating with Bluetooth devices. In addition, the
classes you use to create every visual user interface object can be found
in this category.
✓ BlackBerry application interactions: You can use the classes in this
category (net.rim.blackberry.*) to interact with the standard
BlackBerry applications. For instance, your app can create an e-mail
message and send it, all without the user having to launch the BlackBerry
Mail application.
✓ Plazmic Media Engine: This category (net.rim.plazmic.*) contains
classes your app can use to deliver audio and video content to your users.
Debugging
The BlackBerry development tools come with a source-level debugger.
However, your own skills in debugging Java software are what matter most.
I assume that in your software application development experience, your
apps didn’t always work perfectly. I’m guessing that you’ve presumably spent
time analyzing code to find where the problems were hiding, and ruthlessly
eliminated them. In general, debugging is still something of an art. Sure, tools
can assist with finding the place where code goes wrong, but you still need
creativity and imagination to know where to start looking. Small applications
are usually easy to debug, but when your app has several dozen classes and
interfaces, bugs find more places to hide.
You can find resources online and in print regarding debugging, as well as
techniques and habits that you can use to make your code easier to debug.
I’ve worked on only a few applications where debugging of some sort was
not necessary, and that includes the sample applications I show you in the
chapters that follow. All of them had quirks and gotchas that required
analysis and imagination to overcome.
Using software patterns
The world of software has been around long enough that a lot of the ways to
solve problems have become standardized. You’ll find that using software
patterns can greatly simplify your code. This leads to code that’s easier to
maintain. Patterns tend to be simple and effective, focusing on delivering a
limited set of functionality within your app. A class in your application that
represents a particular software pattern for achieving a particular objective
is straightforward and easy to test.
05_467114-ch01.indd 2505_467114-ch01.indd 25 8/30/10 1:05 PM8/30/10 1:05 PM