Introduction to Python
If you are not familiar with the Python programming language, you should first read about it on the official Python website [[
http://www.python.org/∞] and other sources such as Wikipedia:
http://en.wikipedia.org/wiki/Python_programming_language∞.
If you are a Python programmer already then you may be wondering why
PythonCE is a separate project with its own binary releases, and not available from the official Python website. The main reasons are that Windows CE is different enough from other Windows operating systems that significan patches are required to use it, and also because there are currently not enough developers willing to maintain the Windows CE support in the main Python source. However, this is slowly changing and future versions of Python will begin to incorporate Windows CE support.
Why should I use PythonCE?
If you are a Python developer then
PythonCE can allow you to run your Python applications on a Pocket PC PDA or similar device with relatively few changes, because naturally it is more portable than lower-level languages such as C/C . There are some limitations to this portability, so see the separate page on
differences between
PythonCE and other Python platforms.
If you are a
Windows CE C/C developer then
PythonCE can help to bring the advantages of Python to embedded platforms, especially Pocket PC-based
PDA∞s, but also other Windows CE-based platforms. Some of these advantages include portability, rapid development, an extensive standard library plus many third-party extension modules, and the robustness of an interpreted language.
Why shouldn't I use PythonCE?
Compared to other languages on Windows CE, Python also has some disadvantages that you should consider. Firstly, the "batteries included" philosophy of Python means that the size of the binary code and standard library is quite large, which is an important consideration on embedded devices since they usually have much less storage and RAM than PCs. In terms of storage this can be mitigated somewhat by installing
PythonCE on a flash-based storage card instead of in RAM. In theory it would be possible to create a reduced Python installation with only the components that your application needs, but that would make it more difficult to later install more Python programs that use different modules. Depending on your target users, requiring them to install
PythonCE before using your application can be problematic. This may apply equally to other interpreted languages such as Visual Basic and C#.
The performance of Python and other interpreted languages can be a limiting factor for compute-intensive applications because embedded devices are less powerful than PCs, both in terms of clock speed and features such as hardware floating point. This is typically much less of a problem for interactive graphical applications though, which of course are the most common applications on PDAs.
(to be written)
There are 4303 comments on this page. [Display comments]