12
Seyon Guru SOFTWARE TRAINING & DEVELOPMENT C# - Introduction [email protected] @copyright 2013 Seyon Guru

Introduction to C# - .Net

Embed Size (px)

DESCRIPTION

An Introduction on why C# was created.

Citation preview

  • 1. Seyon Guru SOFTWARE TRAINING & DEVELOPMENT C# - Introduction [email protected] @copyright 2013 Seyon Guru
  • 2. History of Programming Language. Programming languages has a history and they have a lineage. There is a reason for existence and survival of each programming language. Spaghetti code - before C the prominent language was Pascal on UNIX operating system, the problem with that language it is not structured and it has the problem of something called spaghetti code [email protected] @copyright 2013 Seyon Guru
  • 3. What is the problem in the spaghetti code? Spaghetti code means lot of confusion. The code is difficult to manage after a considerable size and created lot of confusion. Functional programming C was invented by Dennis ritche and it became the most widely used program in 1980. It has well defined control statements and sub routines again it is also not manageable after some size. [email protected] @copyright 2013 Seyon Guru
  • 4. Objects oriented C++ C++ was invented at Bell Laboratories by Bjarne Stroustrup beginning in 1979. C++ is an object oriented language. By supporting OOPS concepts C++ was able to handle large programs comfortably. What is oops? OOPS treats everything as objects so it was easy to handle huge and complex code. We get inspiration for most of the things from nature. When there is abundance the nature has answers to handle it. Count the number of living things and their characters. The anomaly learnt from the nature is when there is lot of things has to be created we have to group them and treat them as common objects with general characters.. [email protected] @copyright 2013 Seyon Guru
  • 5. Generalization Example from nature [email protected] @copyright 2013 Seyon Guru
  • 6. Generalization Example from nature. Animals are grouped based on their common characters. Again they have some common attributes as well individual attributes. For example tigers have some common characters like their distinguished claws, body type and skin color. However all tigers are not same they have their individual characters also. Oops helps us to make use of common attributes and use the individual attributes whenever needed. What is the benefit when we use common attributes? We can come to some conclusions very easy and we can proceed with certain assumptions. In the case of tigers some of the common attributes are They have stripes on their skin so they are different from lioness. They are carnivores. They sometimes attack humans. So we know they are not domestic animal and sometimes dangerous and we will keep us away from tigers. We will deal with oops separately. Long story short oops is a better way to handle huge and complex programs.. [email protected] @copyright 2013 Seyon Guru
  • 7. Platform Independent. Java was originally called as Oak. It was developed by James Gosling. Java is a structured and object-oriented language with syntax similar to C++. So what is new in java? Why should people use it? Most programs were written, compiled, and targeted for a specific CPU. Java introduces language portability which is the new concept introduced at that time. The programmer can develop in java language and the java environment makes the code understandable by most of the CPU. Let us not get into how it does it; we will look much deeper in C#. [email protected] @copyright 2013 Seyon Guru
  • 8. Translator. [email protected] @copyright 2013 Seyon Guru
  • 9. Translator. We all know to speak and understand some languages; however, we still do not know most of the languages spoken by many other people in this world. Assume a speakers language of communication is X and he has won a very prestigious award and have to deliver a speech in many countries about his achievement. The speaker is going to deliver the same speech in all the countries which has to be understood properly by the audience in each country. The speaker now uses a translator who can translate his speech properly to the native language of the audience. For each language the user might use a translator who can do the translation job properly. JAVA uses the translator concept and here the speech is the JAVA program and the translator is the Java Virtual Machine. The audience is the platform in which the JAVA program runs. The platform independency is achieved by introducing the JVM and JAVA will work in any platform which has a JVM. [email protected] @copyright 2013 Seyon Guru
  • 10. What will happen if someone finds a new platform tomorrow and will java program work on it automatically? Yes, If the platform is designed in a way to work for an already existing JVM. No, If there is no JVM exists and the java has to create an environment in that platform which will eventually make java program understandable to it and will work on that platform. It means a JVM should be created for the new platform. [email protected] @copyright 2013 Seyon Guru
  • 11. Why C#? Java is very successful due to internet and its platform independency, however Java is not supported much on windows platform and in fact windows had its own specialists for handling their environment. Microsoft has a constant strategy of developing their products to meet market requirements and improvements and enhancements where made to the existing products. Even though, Microsoft had almost all answers to any programming language for the oops compatibility with its VC++, they want to unite all the developers who are experts in their own language. Basically, Microsoft does want their wide range of developers using languages like VB, VC++ to develop components in their own language and which will work in the Microsoft platform. [email protected] @copyright 2013 Seyon Guru
  • 12. Why C# Microsoft now needs the translator guy something similar to Java but the translator for Microsoft platform and their different languages. The language independent code concept is introduced which is very unique in the programming world. A new language called C# is born to accompany this concept along with other programming languages based on Microsoft platforms. [email protected] @copyright 2013 Seyon Guru