Modern Progrmming
Methodologies
The first step in every software development project should be requirements analysis, followed by modeling, implementation, and failure elimination (debugging).
There exist a lot of differing approaches for each of those tasks. One approach popular for requirements analysis is Use Case analysis.
Popular modeling techniques include Object-Oriented Analysis and Design (OOAD) and Model-Driven Architecture (MDA). The Unified Modeling Language (UML) is a notation used for both OOAD and MDA
A similar technique used for database design is Entity-Relationship Modeling (ER Modeling).
Implementation techniques include imperative languages (object-oriented or procedural), functional languages, and logic languages.
Debugging is most often done with IDEs like Visual Studio, and Eclipse. Separate debuggers like gdb are also used.
Modern Languages
Example of the C languge code
The most popular programming languages in the 21st century are C, C++, ObjectiveC, C#, Cobol, Fortran, Java, PHP and Python. Many languages have evolved from C, such as C++, C#, and Java. Java, C# and Python, are popular because programs written in them are executed in a virtual machine, avoiding many of the problems of lower-level languages such as C, C++ or Assembler, such as buffer overruns and invalid pointers. However, most PC desktop applications such as word processors or image manipulation programs are written in more runtime and memory efficient languages like C, C++, and Delphi. Operating systems are almost exclusively written in low-level programming languages like C, C++, or Assembler, since speed is necessary in components like context switching, process and thread management, and memory management. Scientific applications are often implemented in Fortran because very efficient optimization (using optimizing Compilers) is possible for arithmetic. Cobol is still very strong in the corporate data center, mainly on large Mainframe computers. PHP and Java excel in database-oriented applications which are often delivered over the internet or corporate intranets. Python, while being a general purpose programming language, is mostly used in system administration and web programming.
Debugging
Debugging is a very important task for every programmer, because an erroneous program is often useless. Languages like C++ and Assembler are very challenging even to expert programmers because of failure modes like Buffer overruns, bad pointers or uninitialized memory. A buffer overrun can damage adjacent memory regions and cause a failure in a totally different program line. Because of those memory issues tools like Valgrind, Purify or Boundschecker are virtually a necessity for modern software development in the C++ language. Languages such as Java, PHP and Python protect the programmer from most of these runtime failure modes, but this comes at the price of a dramatically lower execution speed of the resulting program. This is acceptable for a large class of enterprise applications, which spend most of their execution time on database access.
Vote Result










Score: 9.0, Votes: 2
- manoharv2001's blog
- Add new comment
- 49 reads

Technorati Tags: 
Teacher
Believe me when I was reading your article thoroughly then I was thinking that I was getting a rock solid lesson from any good teacher.
Mrinmoy Chakraborty