Recently, using Python to develop some gadgets, I found that Python really fits my philosophy: lightweight, powerful, open.
Python is a scripting language that does not require a heavy compilation process like java. This makes Python more lightweight and can be written and executed anywhere. Although the jre7 added the ability to dynamically compile Java code, it is still a heavy feeling. Comes with a very powerful type system map,list,set, and reduces the constraints of generics with respect to Java. When you use these types of Java, you will notice that you do not add generics and you have to write code such as map<object> to use different types of collections, which also shows the advantages of weak-type languages.
Python has a very powerful built-in type, and an exceptionally powerful standard library. Data structures such as map,list are directly internal to the language, which makes it easier to use these types, and there are even small, well-functioning webserver (Simplehttpserver) in standard libraries that are extremely powerful, and search protocol file parsing (robots.txt). Therefore, the basic requirements can be found within Python solution.
Python is open source and has an open community. And Python supports multiple ways of using: scripting, C-extension, inline, embedded. This is the development of a variety of ways to use. I can develop a python shell on my own to complete the purpose of launching Python, and even modify Python's sanner and parser to design my own language.
But Python is still a little bit out of place for me. For example, the Python standard library in the GUI,PIP installation of the way, the Python program is not published in the same way, so I would like to study python, see if Python can adapt to my needs.
Demand:
1. Replace the TCL/TK. Modify the default GUI programming method to other GUI.
2. Adapt to the independent release of the way the library installation. That is, when you publish Python code, you can publish it together with libraries that are directly associated with it.
3. When you publish your software, you will need to install Python when you do not need to use the published software when you bring your own runtime environment. (although there are similar py2exe ways to solve these two problems, but I think that can not be lightweight, easy upgrade purposes)
Pre-survey:
Originally wanted to use CYGWIN,MINGW to compile Python, but found that the compilation has many problems to abandon this way, instead of using the Microsoft compiler to compile.
Compiler:
Why does Microsoft not release compilers and linker separately?
God-like presence Microsoft Visual C + + Compiler for Python 2.7
Announcing Visual C + + Build Tools 2015
Msbuild:
Microsoft Build Tools 2015
Book:
Python Source code anatomy
Python resource:
python-2.7.11
Self-release Python version production (i)