[70] smartphone development languages and trends

Source: Internet
Author: User
Currently, in the field of smartphone development, there are three major operating systems: Symbian, Windows Mobile (Windows), and Linux. Palm is out of the game and you don't have to worry about it. There are also two camps: The j2's camp (cross-operating systems, including windows) and the. net cf camp (only running on Windows, hereinafter referred to as. net ).

The development languages on these platforms include:
Symbian: C ++, Java, Python
Windows: C #, C ++, VB, Java
Linux: C ++, Java...

J2's camp: Java
. Net camp: C #

The preceding sequence is based on the number of users on different platforms. It can be seen that Java is not dominant in products developed only for an operating system platform.

compared with. net, the advantage of j2-based architecture is mainly in game development, but. Net has a wider application. In MIDP 2.0, the core part is mainly for 3D graphics, multimedia, and game API support, used to support game development. Because the time required to develop the MIDP 2.0 specification is limited, many other important functions are included in the optional package, rather than as the core content of MIDP 2.0. Therefore, although many mobile phones claim to support MIDP 2.0, an Optional package may not be installed, so that the software using this Optional package cannot run on this phone. For example, if an optional PDA package is not installed, you cannot access the local file system of your mobile phone, read the address book, or read the text messages saved in the mailbox. These functions are required for the development of personal information backup/recovery software. However, this situation will gradually improve over time. The new smartphones include more and more optional packages, major manufacturers such as Nokia, Motorola, and Sony Ericsson have very powerful support for j2's. In addition to the optional packages that are not installed with this restriction, the j2s application runs in a strict sandbox and needs to develop and use resources other than system memory, display, and sound control (for example, local file system, Address Book, mailbox), the developed application must be signed, this development process is quite tedious.

It is precisely because most of the mobile phones on Symbian are too old and have very limited functions. Unless game applications are developed, most Symbian Developers choose C ++ for development, because c ++ can access all resources of the system. However, although Symbian C ++ has many advantages, it is unfriendly to developers and has a very high learning threshold (a lot of rules and regulations, as if Ruti has taken over Wutai ), there are also many problems from the perspective of object-oriented design (similar to MFC, some people may think that object-oriented development is not very important in mobile phone development ). It is quite difficult to become a master of Symbian C ++ in less than half a year. This huge sink lost must be carefully weighed.
There are few developers who use python for development on Symbian. The advantages and disadvantages are not clear yet.
By the way, Nokia launched the Development Tool carbide in the first half of this year. It has two versions for Symbian C ++ and j2's, both of which are based on Eclipse.

On Windows, you can also perform the development of j2s. If MIDP 2.0 is installed on your mobile phone, you can directly use it. If it is not installed, you need to install it separately. The IBM j9 VM is a good tool for windows, but j9 VM only includes the core part of MIDP 2.0, not a large number of optional packages. If you only develop a game, it should be enough.
However, Windows developers prefer C # And C #, which are much more efficient than C ++ and provide excellent performance. Compared with Java, it is easier to access the required resources, so the development efficiency is also higher. The embed VC ++ and embed VB tools used by windows in the past few years have been removed from the second-line.

In Linux, C ++ and Java can be used for development. I have no experience in developing Linux. I will skip this article.

To sum up, the three dominant languages in mobile phone development are c ++, Java, and C #.
compared with the. NET platform, the two platforms have advantages in game development, while. Net has advantages in development in other fields (such as mobile enterprise applications. But because of the popularity of the first-line mobile phone manufacturers, the future is limitless. Currently, Windows smartphones are mainly sold by some emerging manufacturers (Lenovo, maxcompute, and xiaxin ...).
the countries with more advanced mobile intelligence applications are Japan and the United States. In Japan, game applications are dominant, and in the United States mobile enterprise applications are dominant. China's future path will probably be the same as Japan's. Therefore, after 3G was launched, the emergence of the j2_application in China was predictable.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.