The success of newer BlackBerry models such as the Pearl, Curve, Bold and Storm has allowed RIM (Research in Motion) to break into the consumer smartphone market and compete head-to-head with Apple’s iPhone as a platform for Applications. If you’ve been ignoring the BlackBerry platform because it was too enterprise-focused for your apps, it might be time to focus specifically on BlackBerry. This is how you start.

It’s java time

BlackBerry development for all recent models is done exclusively in Java. So if you are not a good Java programmer, now is the time to brush up on your Java programming skills. (C# programmers will find the transition to Java quite simple, the languages ​​are very similar in most respects.) ME), which itself is a derivative of Java version 1.3. So forget about all the fancy (but useful) language features introduced in Java 1.5 (generics, enums, etc.) that you can’t use in BlackBerry programming. You also can’t use most of the library classes you’re familiar with, they just aren’t there. A small subset of Java Standard Edition (Java SE) classes are supported, as well as several BlackBerry-specific classes.

Java microediting?

Once you’ve brushed up on your Java, you should spend a little time understanding the Java ME platform, which was formerly known as Java 2 Micro Edition, or J2ME for short. You need to understand the concepts of settings and profiles, and in particular the CLDC and MIDP standards. You’ll find a lot of information about these in various books and on Sun’s Java development site.

The BlackBerry platform

After learning about Java ME, it’s time to explore the BlackBerry platform. The BlackBerry platform is based on CLDC and includes support for MIDP 2.0. However, a large number of BlackBerry-specific classes are also provided. Which brings you to the first question you will face: are you going to write a BlackBerry application or a MIDP application? In a MIDP application, you are constrained to use only the APIs exposed by the CLDC and MIDP standards. Your app will run on the BlackBerry and most cell phones, but you won’t be able to use any of the BlackBerry’s special features. You can use any MIDP-compliant development tool, such as the Sun Java Wireless Toolkit for CLDC (formerly known as the J2ME Wireless Toolkit), to create your applications.

Most application developers choose to create applications specifically for BlackBerry. This means learning BlackBerry-specific APIs, including new user interface classes, and using the BlackBerry Java Development Environment (JDE) to develop your applications. The JDE, which is free to download, works with the standard Java SDK and provides you with all the tools you need to create, package, test, and debug BlackBerry applications. You don’t even need a BlackBerry handheld, because the JDE includes a full featured BlackBerry device simulator. A complete set of JavaDocs is provided describing all the classes and interfaces available to programmers.

After downloading and installing JDE, you’ll want to read the developer’s guides that come with JDE and see the sample applications that ship with it. Then start your development by writing a few simple applications to get familiar with the BlackBerry APIs and tools.

Get a BlackBerry handheld

Although you can develop and test your applications for free, at some point you will need to run the application on an actual BlackBerry handheld. This will cost you money, of course, so it’s not something you want to do until you’re serious about building apps for BlackBerry. On-device testing is crucial to ensure the app works correctly, as the simulator is not a perfect emulation system.

If you’re really serious about BlackBerry app development, consider also joining one of BlackBerry’s developer programs for additional support and early access to new devices and APIs. You should also explore other BlackBerry developer resources from RIM. There are also third-party books and forums available to help you learn about the BlackBerry platform.

Conclusion

BlackBerry programming is not difficult if you know some Java and understand the restrictions and limitations of the underlying Java ME platform. You have to learn a new set of APIs and use new development tools, but in the end it’s just another kind of Java programming.

Leave a Reply

Your email address will not be published. Required fields are marked *