B. The 10 Current Trends of Computer Software
1. Python Programming Language
I. Technical Background
Is a widely used general-purpose, high-level programming language. Its design philosophy emphasizes codereadability, and its syntax allows programmers to express concepts in fewer lines of code than would be possible in languages such as C.
The language provides constructs intended to enable clear programs on both a small and large scale.
Python supports multiple programming paradigms, including object-oriented, imperative and functional programming or proceduralstyles. It features a dynamic type system and automatic memory management and has a large and comprehensive standard library.
Python is an object -oriented language, from the ground up. Its class model supports advanced notions such as polymorphism, operator overloading, and multiple inheritance; yet, in the context of Python’s simple syntax and typing, OOP is remarkably easy to apply. In fact, if you don’t understand these terms, you’ll find they are much easier to learn with Python than with just about any other OOP language available.From a features perspective, Python is something of a hybrid.
Its toolset places it between traditional scripting languages (such as Tcl, Scheme, and Perl) and systems development languages (such as C, C++, and Java). Python provides all the simplicity and ease of use of a scripting language, along with more advanced software-engineering tools typically found in compiled languages. Unlike some scripting languages, this combination make Python useful for large-scale development projects.
II. Company Profile
Python was conceived in the late 1980s and its implementation was started in December 1989[2] by Guido van Rossum at CWI in the Netherlands as a successor to the ABC programming language capable of exception handling and interfacing with the Amoeba operating system. Van Rossum is Python’s principal author, and his continuing central role in deciding thedirection of Python is reflected in the title given to him by the Python community, Benevolent Dictator for Life (BDFL).
III. Significance and Purpose
The design of of the Python language emphasizes programmer productivity and code readability. Compare to the most languages, it has simple and logical syntax, and its very easy to learn.
IV. Conceptual Development and Implementation
Most Python implementations (including CPython) can function as a command line interpreter, for which the user enters statements sequentially and receives the results immediately. In short, Python acts as a shell. Other shells add capabilities beyond those in the basic interpreter, including IDLE and IPython. While generally following the visual style of the Python shell, they implement features like auto-completion, retention of session state,
and syntax highlighting.
In addition to standard desktop Python IDEs (integrated development environments), there are also browser-based IDEs, Sage (intended for developing science and math-related Python programs), and a browser-based IDE and hosting environment,
The main Python implementation, named CPython, is written in C meeting the C89 standard. It compiles Python programs into intermediate bytecode, which is executed by the virtual machine. CPython is distributed with a large standard library written in a mixture of C and Python. It is available in versions for many platforms, including Microsoft Windows and most modern Unix-likesystems. CPython was intended from almost its very conception to be cross-platform.
V. Quality Attributes
* Reliability
-Python is implemented in C and relies on well understood, portable C libraries Python.org states that in applications that started out as pure C++ with Python being added as an extension language, a higher % of code written in Python = an increase in overall performance, functionality and reliability of the application. Creates robust applications
* Performance
-This page is devoted to various tips and tricks that help improve the performance of your Python programs. Wherever the information comes from someone else, I’ve tried to identify the source. Python has changed in some significant ways since I first wrote my “fast python” page in about 1996, which means that some of the orderings will have changed. I migrated it to the Python wiki in hopes others will help maintain it.
* Security
– Python is an open source, interactive, object oriented programming language. It’s very easy to learn and an extremely
powerful high level language. It runs on Windows, Linux, UNIX, Mac OSX and is free to use (even for commercial purpose)
since it’s based on the open source license. It can be used to write custom tools and scripts for special purpose when performing
security assessment of an application.
VI. Possible Questions:
1. What are the difference between python and other programming languages?
– The difference between them are python is it has simple and logical syntax, and its very easy to learn.
And it is a fewer syntax rule.
2. Difference between python 2.x and 3.x?
-In general, using Python 2.x for book designed for 3.x is difficult because:
- There are differences in syntax and semantics between Python 2.x and 3.x.
- Python 3.x is, by design, not backwards compatible
VII. Design Specification
VIII. References
http://wiki.answers.com/Q/What_the_purpose_of_python_programming_language?#slide=5
http://en.wikipedia.org/wiki/Python_(programming_language)
http://www.cs.ucsb.edu/~pconrad/cs8/textbooks/MillerRanum/python2.x.issues/