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
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