Mobile application development is the set of processes and procedures involved in writing software for small, wireless computing devices such as smartphones or tablets.
The Nokia X is expected to feature a 4-inch touch screen display with 480×800 pixel resolution.
Nokia plans to launch its first Android based smart phone on February
24, according to a report of The Wall Street Journal. This is however
not the first time that reports of a Nokia Android phone has surfaced.
The Mobile Indian had earlier also reported about the Nokia X with
Android operating system.
The Nokia X is expected to feature a 4-inch touch screen display with
480×800 pixel resolution. Its design would be a simple marriage of the
Nokia Asha and Nokia Lumia series models. Reports also suggest that the
smartphone would be powered by quad-core Qualcomm Snapdragon 200
processor and 512 MB RAM. The Nokia X will be offered in dual-SIM and is
expected to be priced under Rs 10,000 for India.
A new technology's successful adoption often depends on its
development tools. Good tools help new developers more easily get
started and make experienced developers more productive. For instance,
the success of Microsoft's programming environment is closely associated
with the success of its Visual Studio tools.
Featured Resource
Presented by IBM
10 Ways to Build Better CRM Processes
When implemented properly, CRM and ERP can enable better sales, more efficient marketing, and drive
The J2ME (Java 2 Platform, Micro Edition) technology is still
relatively new. Strong development tools, especially IDEs, will greatly
help J2ME's adoption among wireless application developers. In this
article, I review four J2ME IDE products:
Borland JBuilder 7 Enterprise with MobileSet 3
Sun Microsystems' Sun ONE (Open Network Environment) Studio 4 Mobile Edition
Metrowerks CodeWarrior Wireless Studio 7
S5 Systems' jVise (based on IBM Eclipse technology)
Landscape of J2ME development tools
Different
wireless devices have different limitations in terms of memory size,
screen size, input methods, and computing speed. Also, vendors' J2ME
implementations might contain vendor-specific add-on APIs that leverage
special underlying hardware/OS features.
The diversified device
market naturally results in diversified development tools. Each device
vendor has its own SDK, device emulators, and performance analysis
tools. Some SDKs even come with their own build project-management and
source-code editing tools. One example is Sun's J2ME Wireless ToolKit
(J2MEWTK). J2MEWTK contains a reference implementation of J2ME/MIDP
(Mobile Information Device Profile) and has multiple device emulators
that run on Unix/Linux and Windows platforms. J2MEWTK also has
performance profile tools and real memory usage monitors. All those
tools can be administrated from a central control panel called kToolBar.
kToolBar can also build and package ready-to-deploy JAR/Jad programs
from development directories. However, mastering all these tools and
testing applications on all emulators can prove tedious.
You Might Also Like
A J2ME IDE eases development by integrating device vendor SDKs
with other tools. Developers can then have a unified IDE interface for
all supported SDKs. IDEs also improve developer productivity and the
quality of deliverable applications.
Who should use an IDE?
I
do not recommend IDEs to novice developers. Such developers must learn
several different things at once: the Java language, J2ME APIs and
packages, the IDE itself. An IDE's convenience features can easily
obscure what's really happening under the hood. You might end up
developing a set of skills tied to a specific IDE. IDEs can help,
however, if you already know what you are doing. They can automate many
tedious processes for an experienced developer.
J2ME IDE buyer's guide
I evaluated this article's J2ME IDEs according to the following aspects:
General productivity features:
I evaluated those features beneficial to all Java development projects,
not those specific to J2ME. Those features include editor,
project-manager, debugger, architecture-designer, and documentation
tools, plus tools for advanced programming techniques (refactoring, unit
testing, and so on).
Third-party SDK integration:
Support for multiple SDKs is a core feature for any J2ME IDE. But IDE
vendors have difficulties tracking and integrating support for each
individual SDK. The Unified Emulator Interface (UEI) specification
standardizes the programming interface between SDKs and IDEs.
UEI-compatible SDKs and IDEs are guaranteed to work with each other. In
my evaluation, I discuss what SDKs the IDEs support out of the box,
whether the IDEs support UEI, and how difficult it is to switch between
SDKs in a project.
Post-compilation tools: J2ME
applications are mobile applications that require a high level of
security and performance. Code obfuscation can prevent people from
reverse-engineering your class files and reduce code size. Special
optimization techniques are available from IDE vendors and their
partners. J2ME applications can also be post processed and optimized for
deployment devices based on the resources available for specific device
types. These post-processing, obfuscation, and optimization tools fall
into this post-compilation category.
Over-the-air (OTA) deployment support:
J2ME applications are often deployed over public wireless networks.
J2ME OTA specifications standardize the process for discovering,
downloading, authenticating, authorizing, verifying, and executing a
mobile Java application. OTA specifications require properly formatted
meta files on the server side and Java Application Manager (JAM) on the
mobile device side. The server also requires special configurations to
support OTA meta types. The OTA process can become quite complex with
the upcoming release of MIDP 2.0. An IDE should help generate those meta
files automatically. A good IDE should also integrate OTA-compliant JAM
clients to test the deployment within the IDE.
End-to-end mobile application development:
J2ME devices are not powerful enough to process or store large amounts
of information by themselves; J2ME applications are often thick clients
for some backend enterprise application servers. Thus, a first-rate IDE
should allow developers to build entire end-to-end projects. That
minimizes learning costs and project coordination efforts.
Documentation and tutorials:
Java mobile application development is a sophisticated process
involving many aspects of software engineering. IDEs provide tools to
automate many tasks; however, due to the development process's intrinsic
complexity, novice programmers often find it hard to use those features
correctly. Tutorials and detailed case studies prove essential for an
IDE's efficient adoption.
J2ME GUI (graphical user interface) builders:
Some IDEs have RAD (rapid application development) tools that allow
developers to construct mobile user interfaces visually. Those tools
appeal to developers from the desktop world—those familiar with J2SE
(Java 2 Platform, Standard Edition) RAD tools. However, use J2ME visual
GUI builders with caution: because wireless devices differ in screen
sizes, the same UI design might appear differently on various devices.
For example, a Palm PDA can display four command buttons in a row. But a
cell phone might ask you to choose from a list of four commands when
you click a Menu button. So what you see on the GUI builder might not be
what you eventually get on a particular device.
The next stage of the smartphone wars has been set with the release
of the iPhone 5S, which joins high-end phones like the HTC One, Galaxy S 4, and Moto X for the final battle — of 2013, at least. But in the big
competition between iOS and Android, the choice is harder than ever,
because the two have never felt more equal to one another.
Once
upon a time, Android was the ugly duckling of mobile operating systems.
Until recently, manufacturers' skins such as HTC's Sense and Samsung's
TouchWiz were necessary to cover up the shortcomings of "vanilla"
Android. But starting with Android 4.0 (out in late 2011), Google's core
design has actually been better than the overlays — and has the benefit
of getting upgraded faster.
As Android matured, iOS started
reaching old age. Critics have lately given it flak for its 2007-rooted
interface. iOS 7introduced a whole new user experience, and whether you
find its frosted glass and pastel theme jarring or delightful, there's
no denying that it comes along with a lot of handy new features.
Let's see how the latest versions stack up against one another on a few of the most important points.
User Experience: Elegance vs. Customization
image copyright Apple Inc.
People
who like complete control over the customization of their phones, and
want to be able to fiddle the lowest level functions, will prefer
Android thanks to its greater openness (one downside of this, though, is
that each company that makes Android phones can tweak them, sometimes
replacing default Android apps with inferior tools developed by that
company). Android customization can also require some complex technical
skills that the average person rarely has.
Taken as a comparison
done on a features list, the distance between Android and iPhone doesn't
seem that far--and it seems that Android is ahead in some areas. And
while that's true, the experience of using a phone, a device that's with
you all day long, doesn't boil down to what boxes get checked. The
experience is driven by quality and attention to detail, how the device
works and how you feel about it. There's a reason people feel
passionately enough about the iPhone to wait hours to get one on the day
of a new model's release. This happens sometimes with Android phones,
but less often and at lesser scale.
Most people want a phone that
works well, lets them run the apps they want, and is easy to use. On
that front, the iPhone wins hands down. Apple’s intense focus on ease of
use, quality experience, and things just working (see hardware, apps,
and Flash above for examples of how Android’s openness can make life
harder) makes it the clear choice for most users.
Apple has released the brand new, top-of-the-line, flagship iPhone 5s and less-expensive, colorfully fun iPhone 5c.
But is either of them the right phone for you? While everyone here at
iMore certainly believes the iPhone is still the best phone for most
people, most of the time, we're lucky that every major platform now has
one or more great phones for us to choose from as well. The iPhone may
have the best overall user experience, the highest quality apps and
games, the widest range of services, the biggest selection of
accessories, and the best customer support, but there are also things
the iPhone doesn't offer that other phones do, like much larger screens,
physical keyboards, high power cameras, greater hardware options, or
simply no Apple about them. How do you know which one is for you