When designing and developing a game for BlackBerry, are there any special considerations to take into account in relation to the different models? I mean models that are in the market at the same time. For instance, the local store near by currently provides BlackBerry 8520, 9500, 8900, 9520, 9700.
These devices may have slight differences in the memory, CPU, and major differences in the screen size and resolution. Do the RIM libraries ensure a smooth experience for the users of different BlackBerry devices or the software engineer should make specific considerations?
As you move towards later and higher-end models, BlackBerry smartphones increase in capabilities -- but RIM has done a good job of making higher-end devices backwards-compatible.
The differences in the API correspond to the different BlackBerry OS/JDE versions (4.2, 4.6, 5.0, 6.0, etc.). I'd recommend that you download various JDE versions, look over the specs (or JavaDoc) and decide which is the lowest one that has all of the features you need for your game. Then just program for that one -- your game will run on all devices that have that OS version or higher.
Aside from that, the one separate customization you might consider is a separate version for touchscreen models.