What is system programming
Systems programming includes the various tools required to develop software products. These components are: the compiler and the interpreter. The first needed to read and recognize the native code and create a working version of the program. The interpreter is a translator of written code. It executes the commands, step by step following the algorithm.
An important role in the programming system plays an integrated environment in which to develop a software product. The development environment consists of various libraries, including graphics, and debug programs that perform the algorithm and help to find errors in the testing process.
Integrated environment – this particular set of built-in routines. The main task of a framework is to be generic and adaptable for different types of tasks to have a "friendly" interface, and reference service.
The most common and popular system programming
Of the most popular systems you can allocate Turbo Pascal, Turbo Basic, Turbo C, Respectively, for each system there is a package for developing applications.
For Turbo Pascal – Borland Delphi package. This is one of the most popular shells to create application programs, it is easy and convenient. Object - oriented environment that uses the language Pascal, has in its Arsenal a lot of different components to develop a fast and efficient compiler.
For Turbo Basic – Microsoft Visual Basic is a good tool for creating applications and macros. For Turbo C – Borland C++ package, it is convenient to develop software under DOS.
The programming system is directly tied to a specific programming language. Programming languages there are a large number that are implemented under their own specific tasks, depending on the scope of use and the operating system.
Programming languages can be used for writing commercial application programs, web applications, games, Android applications. Just was about 25 languages, some of them are children, that is, the syntax and algorithmic like. You can highlight some of the most spoken languages in the world: Delphi, PHP, C/C++.
Language Delphi is based on Pascal, it is characterized by its simplicity when creating the algorithm logic, support for procedural programming, classes and dynamic memory.
Language C/C++ is not so simple in programming like Pascal, it formed the basis of algorithmization and other languages, for example Java. It also has direct access to the hardware of the computer, has the property to convert the types, and belongs to the category system programming.
PHP is a language for creating web pages using scripts, it is characterized by its versatility and cross-platform.
Classifications systems and programming languages exist today quite a lot, but the main goal remains the same - creating high quality software product that will meet the needs of the user.
Advice 2: Programming languages for Android
The main part of software for Android is written in the programming language (PL) Java. System developers also offer programmers a framework for designing applications in C/C++, Python, and Java Script using jQuery and PhoneGap.
Java for Android
The main language for programming on Android is Java. To create the layout of apps and widgets that use the markup language XML. To write programs for Android in Java can be virtually any software environment, but the developers of the operating system recommend programmers to use Eclipse. The functionality of the compiler enabled the creation of mobile applications using the Android Development Tools plugin (ADT). A similar plugin is available for these popular environments like NetBeans and IntelliJ IDEA. In addition, to writing code in Java can be used package Motodev Studio for Android, created based on Eclipse and allows to program directly from the Google SDK.
To write some programs and code segments that require maximum speed, can be used by C/C++ library. The use of these JAPANESE is possible through a special package for developers Android Native Development Kit, geared specifically for creating applications using C++.
The package Embarcadero RAD Studio XE5 also allows you to write native apps for Android. At the same time to test the program enough one Android device or installed on a computer emulator. The developer also offered the opportunity to write in C/C++ low-level modules by using some standard libraries on Linux and developed for the Android Bionic library.
In addition to C/C++, programmers have the ability to use C#, proceeds of which will be useful when writing native programs for the platform. Work on C# Android is possible via the interface Mono or Monotouch. However, the initial license application C# programmer will cost $400, which is relevant only when writing large software products.
The solution SL4A allows you to use in the writing and scripting languages. Using the environment planned PL such as Python, Perl, Lua, BeanShell, JRuby, etc. However, the number of developers who currently use SL4A to your programs, small and the project is still in alpha testing.
Advice 3: How to create a programming language
Of the thousands of languages of programmingavailable today, only a few dozen widespread and used to develop computer programs. Despite this, every year their number increases. Create language programming can how enthusiast, satisfying in this way the thirst for creativity, and a big Corporation that seeks to create on its basis of new products.
Consider the basic concept of a created language of programming. Highlight the key features and expected functionality. Select paradigm (object-oriented, logical, etc.), which will follow the language and its computational model. Clearly answer the questions about how it will differ from existing analogues, what their traits to borrow.
Consider a system of data types. Answer the question about whether this language programming with static or dynamic typing. Indicate the list of built-in and ways to define new types. Declare the methods for the determination of the data structures. Describe other possibilities. So, if you create an object-oriented language programming, highlight possible ways of inheritance (for example, direct implementation inheritance, aggregation, etc.).
Thoroughly consider the concept of computing. Proceed, following the knowledge of the paradigm and computational models. For example, for a procedural-oriented language will need to identify the means of transmission control (function calls, conditional transitions, cycles, etc.), the principles of evaluation of expressions (a list of operations, their priority), etc.
Fully describe the syntax of the language. Based on the knowledge obtained in the previous stages of design, formal specificerede syntax for all possible structures. For example, the syntax for defining data types and structures, control structures, records, arithmetic expressions, literal definition of data objects. Use the entry in the form of bekus-Naur form (BNF) or the rules of regular grammar.
Determine the document character set with the source code in the generated language programming. Specify the possible rules and restrictions in the use of symbols. For example, the recording of the languages'structures may be limited to only ASCII characters, but in comments and string literals be allowed the use of the symbols of the full range of UTF.
Create a set of specifications, fully describing the language programming. Include information about the syntax and semantics of all designs. Use formal methods of recording and detailed explanations.
Advice 4: How to learn a programming language
Knowledge of language programming is useful even if you are not going to become a professional programmer. Learning to program, you will not only be more competent in computer technologies, but also will be able to create the applications you need.
You will need
- - programming environment;
- - reference materials.
First select the language of programming, which you will study. Approach very responsibly, on the basis of the tasks that you wish to solve. For example, if you want in the shortest possible time to master the language and learn to write simple apps, then the best choice would be Delphi. It is quite common, for it is the environment of programming Borland Delphi. The commands in this language is simple and intuitive.
In Delphi you can write different programs, but most of the serious software is written in other languagex in particular, C++. It should be noted that this language is very fond of hackers, because it can be used to create a very small program size to a few kilobytes. C++ is universal, it is possible to write almost any application. To work with it, there are two main development environments: Borland C++ Builder and Microsoft Visual Studio. Latest environment allows you to work with languagemi C, C#, VB.
The language of programming selected. Now try it with one of the above-mentioned programming environments. This is a special program in which you generate code your applications. It should be noted that products from Borland to master is much easier than Visual Studio from Microsoft. At the same time, Visual Studio is a more flexible program that allows you to program in different languageX.
No matter what environment programming you choose, the further stage of the study language is the same. First of all, you will need various reference books and books on the chosen language, describing its syntax and rules of programming. But do not just go into the literature to learn the language much easier with specific examples.
Find online step-by-step description of creating simple programs in the language you selected. It can be text editors, media players, conductors, etc. Repeating step by step the process of creating a program, you will know more about the capabilities of the software environment and the rules of writing and compiling programs.
Be sure to teach yourself the correct style of programming. By creating a program first on a piece of paper carefully work through an algorithm of its work. The more accurate the algorithm, the easier it will be to translate it to the language code. While writing code don't be lazy to insert comments, without them you after a couple of months will be hard to understand in the source application. What now seems simple and clear, will eventually become completely incomprehensible. Comments help you to understand the code in your program.
One of the errors novice programmers is rote learning of some programming constructs without understanding their essence. If you do not understand something, to understand, looking for answers. Uncertainties tend to accumulate: the more you have, the harder it is to program. Few know that "here this one like this" - you have to understand why used this code and how it works. You will have the right to say that you know how to program when I can, taking a pen and a sheet of paper, without recourse to reference books to translate some algorithm into code.