SlideShare a Scribd company logo
1 of 233
Download to read offline
Mohammad Shaker 
mohammadshaker.com 
C# Programming Course 
@ZGTRShaker 
2011, 2012, 2013, 2014 
C# Starter 
L01 –Intro and Warm-up
Welcome to a new course!
Take a Look on XNA and my other courses @ http://www.slideshare.net/ZGTRZGTRAvailable courses to the date of this slide: C# Starter, C# Advanced, WPF, C++, C++.NET, XNA, OpenGL
So, what’s this course all about?
What’s this course all about? C# and WPF
WPF and Silverlight
WPF and Silverlight
WPF and Silverlight
WPF and Silverlight
Windows 8
WPF 
Automata 
Project, 
VB.NET
My 3rd Year Projects with.NET! 
WPF 
RFID System 
Project, 
C#
C# and WCF (Windows Communication Foundation)
C# and WCF
C# and WCF
C# and ASP.NET
XNA!
XNA!
XNA! 
XNA
XNA! 
XNA Mobile!
This course will enable you to make something as awesome as Ropossum, NEXT, iNversion, etc.
Games I Made with C#: Ropossum, Next, iNversion
Ropossum 
http://www.mohammadshaker.com/ropossum.html
Ropossumis an authoring tool for procedurally generating playable levels for physics-based games (Cut the Rope as a test case.) It allows the creation of content, editing, and realtimeinteraction with the system to provide immediate feedback on the level design. It’s both for players and designers. 
Read more at: http://www.mohammadshaker.com/ropossum.html 
Watch the trailer: https://www.youtube.com/watch?v=0SJykSZ5cm4
NEXT 
procedurally generated endless puzzle game 
http://www.mohammadshaker.com/next.html
Programming Languages Ranking 
Source: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html-July 2014
“There is no programming language 
-no matter how structured–that will prevent programmers from making bad programs.” 
Programming languages 
(Larry Flon)
“If debugging is the process of removing bugs, then programming must be the process of putting them in.” 
Programming languages 
(EdsgerW. Dijkstra)
New Technique!
So, Learn C# or not?
Let’s Go C#ing!
.NET 3.0.NET 3.5.NET 4.0.NET 4.5
Visual Studio 2008201020122013
How is a C++ ?
C# introIt’s a fully OOP language! Everything is an object!
Everything is an object! 
Object 
Integer 
String 
… 
Car 
Meal 
Enemy
Object 
Integer 
String 
… 
Car 
Meal 
Enemy 
Everything is an object! 
InC#.NETeverything(evenyourclasses)willdirectlyinheritfromclassobject.ThisisessentialforMemoryManagementandGarbageCollection.
An Objector a Class?
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz 
namespaceMyNameSpace{ // nested namespacenamespacetutorial{ classmyExample1{ publicstaticvoidmyPrint1() { Console.WriteLine("First Example of calling another namespace member."); } } } // Program start classclassNamespaceCalling{ // Main begins program execution. publicstaticvoidMain() { // Write to consoletutorial.myExample1.myPrint1(); tutorial.myExample2.myPrint2(); } } }
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz 
namespaceMyNameSpace{ // nested namespacenamespacetutorial{ classmyExample1{ publicstaticvoidmyPrint1() { Console.WriteLine("First Example of calling another namespace member."); } } } // Program start classclassNamespaceCalling{ // Main begins program execution. publicstaticvoidMain() { // Write to consoletutorial.myExample1.myPrint1(); tutorial.myExample2.myPrint2(); } } } 
namespacecsharp_station.tutorial{ classmyExample2{ publicstaticvoidmyPrint2() { Console.WriteLine("Second Example of calling another namespace member."); } } }
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
}
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
Variables! 
•Let’s see what you got!
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
Variables! 
•Let’s see what you got!
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
Variables! 
•Let’s see what you got!
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
Variables! 
•Let’s see what you got!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•Let’s see what you got! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•2 Mains! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
•2 Mains! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine("HiIzZz!"); 
} 
} 
} 
HiIzZz!
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
strings=Console.ReadLine(); 
Console.WriteLine(s); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
strings=Console.ReadLine(); 
Console.WriteLine(s); 
} 
} 
} 
Hello out there! 
Hello out there!
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Console.WriteLine(Console.ReadLine()); 
} 
} 
} 
Hi 
Hi
Variables!
Variables!
Variables!
Variables!
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
Variables! 
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
20 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
Doubled1=10; 
doubled2=10; 
Console.WriteLine(d1+d2); 
} 
} 
}
Variables!
Variables!
Variables!
Variables!
Variables!
Variables!
Variables!
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1.ToString()); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
doubled1=10; 
Console.WriteLine("Am number 4! not "+d1.ToString()); 
} 
} 
} 
Am number 4! Not 10
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
// Write to console/get input 
Console.Write("What is your name? "); 
Console.Write("Hello, {0}! ", Console.ReadLine()); 
Console.WriteLine("Welcome!"); 
} 
} 
}
Variables!
Variables!
Variables! 
>What is your name?<type a string here> [Enter Key] >Hello, <your string here>!Welcome! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
// Write to console/get input 
Console.Write("What is your name? "); 
Console.Write("Hello, {0}! ", Console.ReadLine()); 
Console.WriteLine("Welcome!"); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
// Write to console/get input 
Console.Write("What is your name? "); 
Console.Write("Hello, {0}, {1}, {0}! ", Console.ReadLine(), "Hi!"); 
Console.WriteLine("Welcome!"); 
} 
} 
}
Variables!
Variables!
Variables!
Variables!
Variables!
Variables!
Variables!
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
}
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArr=newint[5]; 
Console.WriteLine(intArr); 
} 
} 
} 
System.Int32[] 
Press any key to continue...
Variables! 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArrAllocator=newint[2] {0,1}; 
int[] intArrTracker; 
Console.WriteLine("Array"); 
intArrTracker=intArrAllocator; 
intArrTracker[0] =1; 
Console.WriteLine("A[0]= {0}"+Environment.NewLine+"A[1]= {1}", intArrTracker[0], intArrTracker[1]); 
} 
} 
}
Variables! 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
int[] intArrAllocator=newint[2] {0,1}; 
int[] intArrTracker; 
Console.WriteLine("Array"); 
intArrTracker=intArrAllocator; 
intArrTracker[0] =1; 
Console.WriteLine("A[0]= {0}"+Environment.NewLine+"A[1]= {1}", intArrTracker[0], intArrTracker[1]); 
} 
} 
} 
Array 
A[0]= 1 
A[1]= 1 
Press any key to continue...
Control Structure
Control Structure 
•The same as c++’s! 
•“switch” now must be followed with “break;” with every bodied “case”
Control Structure 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
intmyInt=0; 
switch(myInt) 
{ 
case1: 
case2: 
case3: 
Console.WriteLine("Your number is {0}.", myInt); 
break; 
default: 
Console.WriteLine("Your number {0} is not between 1 and 3.", myInt); 
break; 
} 
} 
} 
}
Control Structure 
Your number 0 is not between 1 and 3. 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
intmyInt=0; 
switch(myInt) 
{ 
case1: 
case2: 
case3: 
Console.WriteLine("Your number is {0}.", myInt); 
break; 
default: 
Console.WriteLine("Your number {0} is not between 1 and 3.", myInt); 
break; 
} 
} 
} 
}
Control Structure 
Your number 0 is not between 1 and 3. 
namespaceConsoleAppTest 
{ 
classProgram 
{ 
staticvoidMain(string[] args) 
{ 
intmyInt=0; 
switch(myInt) 
{ 
case1: 
case2: 
case3: 
Console.WriteLine("Your number is {0}.", myInt); 
break; 
default: 
Console.WriteLine("Your number {0} is not between 1 and 3.", myInt); 
break; 
} 
} 
} 
}
Passing Arguments ref,out
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(refinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti=0; 
Increment(refi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(refinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti=0; 
Increment(refi); 
Console.WriteLine(i); 
} 
} 
} 
1
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(refinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(refi); 
Console.WriteLine(i); 
} 
} 
} 
Compiler error
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(refinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(refi); 
Console.WriteLine(i); 
} 
} 
} 
Compiler error
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i=1; 
} 
staticvoidMain(string[] args) 
{ 
inti= 0; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
} 
1
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
} 
1
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti= 0; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti= 0; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti= 0; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(outinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti= 0; 
Increment(outi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(refinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti = 0; 
Increment(refi); 
Console.WriteLine(i); 
} 
} 
}
Passing Args 
usingSystem; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
namespaceConsoleTestingApp 
{ 
classProgram 
{ 
publicstaticvoidIncrement(refinti) 
{ 
i+=1; 
} 
staticvoidMain(string[] args) 
{ 
inti = 0; 
Increment(refi); 
Console.WriteLine(i); 
} 
} 
}
Overloading with ref, out 
class MyClass 
{ 
public void MyMethod(inti) {i = 10;} 
public void MyMethod(ref inti) {i = 10;} 
} 
class MyClass 
{ 
public void MyMethod(out inti) {i = 10;} 
public void MyMethod(ref inti) {i = 10;} 
}
Overloading with ref, out 
class MyClass 
{ 
public void MyMethod(inti) {i = 10;} 
public void MyMethod(ref inti) {i = 10;} 
} 
class MyClass 
{ 
public void MyMethod(out inti) {i = 10;} 
public void MyMethod(ref inti) {i = 10;} 
}
Overloading with ref, out 
class MyClass 
{ 
public void MyMethod(inti) {i = 10;} 
public void MyMethod(ref inti) {i = 10;} 
} 
class MyClass 
{ 
public void MyMethod(out inti) {i = 10;} 
public void MyMethod(ref inti) {i = 10;} 
}
params,valuemagical Keywords
paramsmagical Keyword
params magical Keyword 
publicstaticvoidUseIntParams(paramsint[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidUseObjParams(paramsobject[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidMain() 
{ 
UseIntParams(1, 2, 3); 
UseObjParams(1, 'a', "test"); 
int[] myarray=newint[3] { 10, 11, 12}; 
UseIntParams(myarray); 
}
params magical Keyword 
publicstaticvoidUseIntParams(paramsint[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidUseObjParams(paramsobject[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidMain() 
{ 
UseIntParams(1, 2, 3); 
UseObjParams(1, 'a', "test"); 
int[] myarray=newint[3] { 10, 11, 12}; 
UseIntParams(myarray); 
} 
1 
2 
3 
1 
a 
test 
10 
11 
12 
Press any key to continue...
params magical Keyword 
publicstaticvoidUseIntParams(paramsint[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidUseObjParams(paramsobject[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidMain() 
{ 
UseIntParams(1, 2, 3); 
UseObjParams(1, 'a', "test"); 
int[] myarray=newint[3] { 10, 11, 12}; 
UseIntParams(myarray); 
} 
1 
2 
3 
1 
a 
test 
10 
11 
12 
Press any key to continue...
params magical Keyword 
publicstaticvoidUseIntParams(paramsint[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidUseObjParams(paramsobject[] list) 
{ 
for(inti=0; i<list.Length; i++) 
Console.WriteLine(list[i]); 
Console.WriteLine(); 
} 
publicstaticvoidMain() 
{ 
UseIntParams(1, 2, 3); 
UseObjParams(1, 'a', "test"); 
int[] myarray=newint[3] { 10, 11, 12}; 
UseIntParams(myarray); 
} 
1 
2 
3 
1 
a 
test 
10 
11 
12 
Press any key to continue...
valuemagical Keyword(Properties)
value magical Keyword 
•Properties! 
–set 
–get
value magical Keyword 
namespace ConsoleTestingApp 
{ 
class Car 
{ 
private double _weight; 
public void SetWeight(double weight) 
{ 
_weight = weight; 
} 
public double GetWeight() 
{ 
return _weight; 
} 
} 
}
value magical Keyword 
namespace ConsoleTestingApp 
{ 
class Car 
{ 
private double _weight; 
public void SetWeight(double weight) 
{ 
_weight = weight; 
} 
public double GetWeight() 
{ 
return _weight; 
} 
} 
} 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedouble_weight; 
publicdoubleWeight 
{ 
set{_weight =value; } 
get{ return_weight; } 
} 
} 
}
value magical Keyword 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedoubleweight; 
publicdoubleWeight 
{ 
set{ weight=value; } 
get{ returnweight; } 
} 
} 
}
value magical Keyword 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedoubleweight; 
publicdoubleWeight 
{ 
set{ weight=value; } 
get{ returnweight; } 
} 
} 
}
value magical Keyword 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedoubleweight; 
publicdoubleWeight 
{ 
set{ weight=value; } 
get{ returnweight; } 
} 
} 
}
value magical Keyword 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedouble_weight; 
publicdoubleWeight 
{ 
get{ return_weight; } 
} 
} 
} 
class Program 
{ 
public static void Main() 
{ 
Car myCar= new Car(); 
myCar.Weight= 10; 
} 
}
value magical Keyword 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedouble_weight; 
publicdoubleWeight 
{ 
get{ return_weight; } 
} 
} 
} 
class Program 
{ 
public static void Main() 
{ 
Car myCar= new Car(); 
myCar.Weight= 10; 
} 
}
value magical Keyword 
namespaceConsoleTestingApp 
{ 
classCar 
{ 
privatedouble_weight; 
publicdoubleWeight 
{ 
get{ return_weight; } 
} 
} 
} 
class Program 
{ 
public static void Main() 
{ 
Car myCar= new Car(); 
myCar.Weight= 10; 
} 
}
Auto implemented property 
usingSystem; 
publicclassCustomer 
{ 
public intID { get; set; } 
public string Name { get; set; } 
} 
publicclassAutoImplementedCustomerManager 
{ 
staticvoidMain() 
{ 
Customercust=newCustomer(); 
cust.ID=1; 
cust.Name="AmelioRosales"; 
Console.WriteLine( 
"ID: {0}, Name: {1}", 
cust.ID, 
cust.Name); 
Console.ReadKey(); 
} 
}
Code fast and don’t break things 
A ?? B means A!= null ? A : B
Concepts You Should Know
A Look Inside the MemoryStackand Heap
Stackand Heap 
•The Stack 
–is where normal variables are stored (likeints, anddoubles) 
–All of the variables inside of a method are placed on the stack as well. 
•The Heap 
–It is just put in a big pile, hence the "heap" name! 
–Objects (classes instances) are stored in the heap. 
•In order to keep track of your object, a "reference" is used and placed on the stack. So the bulk of the object's information lives in the heap, while you get to keep track of a reference to it on the stack.
Boxing and Unboxinglike Java?
Boxing and Unboxing 
•Boxing: the following assignment wraps up the value 3 into a heap object 
object obj= 3; 
•Unboxing: the following assignment unwraps the value again 
intx = (int) obj; 
3 
obj
Blocks
Blocks
Blocks
References 
•Wroxand Microsoft
Keep in touch and let’s connect 
http://www.mohammadshaker.com 
mohammadshakergtr@gmail.com 
https://twitter.com/ZGTRShaker@ZGTRShakerhttps://de.linkedin.com/pub/mohammad-shaker/30/122/128/ 
http://www.slideshare.net/ZGTRZGTR 
https://www.goodreads.com/user/show/11193121-mohammad-shaker 
https://plus.google.com/u/0/+MohammadShaker/ 
https://www.youtube.com/channel/UCvJUfadMoEaZNWdagdMyCRA 
http://mohammadshakergtr.wordpress.com/
Hope you enjoy your first class (/object?)! :D

More Related Content

More from Mohammad Shaker

Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]Mohammad Shaker
 
Interaction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with PsychologyInteraction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with PsychologyMohammad Shaker
 
Short, Matters, Love - Passioneers Event 2015
Short, Matters, Love -  Passioneers Event 2015Short, Matters, Love -  Passioneers Event 2015
Short, Matters, Love - Passioneers Event 2015Mohammad Shaker
 
Unity L01 - Game Development
Unity L01 - Game DevelopmentUnity L01 - Game Development
Unity L01 - Game DevelopmentMohammad Shaker
 
Android L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and WearablesAndroid L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and WearablesMohammad Shaker
 
Interaction Design L03 - Color
Interaction Design L03 - ColorInteraction Design L03 - Color
Interaction Design L03 - ColorMohammad Shaker
 
Interaction Design L05 - Typography
Interaction Design L05 - TypographyInteraction Design L05 - Typography
Interaction Design L05 - TypographyMohammad Shaker
 
Interaction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and CouplingInteraction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and CouplingMohammad Shaker
 
Android L04 - Notifications and Threading
Android L04 - Notifications and ThreadingAndroid L04 - Notifications and Threading
Android L04 - Notifications and ThreadingMohammad Shaker
 
Android L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOSAndroid L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOSMohammad Shaker
 
Interaction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile ConstraintsInteraction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile ConstraintsMohammad Shaker
 
Interaction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and GridsInteraction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and GridsMohammad Shaker
 
Android L10 - Stores and Gaming
Android L10 - Stores and GamingAndroid L10 - Stores and Gaming
Android L10 - Stores and GamingMohammad Shaker
 
Android L06 - Cloud / Parse
Android L06 - Cloud / ParseAndroid L06 - Cloud / Parse
Android L06 - Cloud / ParseMohammad Shaker
 
Android L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesAndroid L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesMohammad Shaker
 
Android L03 - Styles and Themes
Android L03 - Styles and Themes Android L03 - Styles and Themes
Android L03 - Styles and Themes Mohammad Shaker
 
Android L02 - Activities and Adapters
Android L02 - Activities and AdaptersAndroid L02 - Activities and Adapters
Android L02 - Activities and AdaptersMohammad Shaker
 
Indie Series 03: Becoming an Indie
Indie Series 03: Becoming an IndieIndie Series 03: Becoming an Indie
Indie Series 03: Becoming an IndieMohammad Shaker
 

More from Mohammad Shaker (20)

Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
 
Interaction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with PsychologyInteraction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with Psychology
 
Short, Matters, Love - Passioneers Event 2015
Short, Matters, Love -  Passioneers Event 2015Short, Matters, Love -  Passioneers Event 2015
Short, Matters, Love - Passioneers Event 2015
 
Unity L01 - Game Development
Unity L01 - Game DevelopmentUnity L01 - Game Development
Unity L01 - Game Development
 
Android L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and WearablesAndroid L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and Wearables
 
Interaction Design L03 - Color
Interaction Design L03 - ColorInteraction Design L03 - Color
Interaction Design L03 - Color
 
Interaction Design L05 - Typography
Interaction Design L05 - TypographyInteraction Design L05 - Typography
Interaction Design L05 - Typography
 
Interaction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and CouplingInteraction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and Coupling
 
Android L05 - Storage
Android L05 - StorageAndroid L05 - Storage
Android L05 - Storage
 
Android L04 - Notifications and Threading
Android L04 - Notifications and ThreadingAndroid L04 - Notifications and Threading
Android L04 - Notifications and Threading
 
Android L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOSAndroid L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOS
 
Interaction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile ConstraintsInteraction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile Constraints
 
Interaction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and GridsInteraction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and Grids
 
Android L10 - Stores and Gaming
Android L10 - Stores and GamingAndroid L10 - Stores and Gaming
Android L10 - Stores and Gaming
 
Android L06 - Cloud / Parse
Android L06 - Cloud / ParseAndroid L06 - Cloud / Parse
Android L06 - Cloud / Parse
 
Android L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesAndroid L08 - Google Maps and Utilities
Android L08 - Google Maps and Utilities
 
Android L03 - Styles and Themes
Android L03 - Styles and Themes Android L03 - Styles and Themes
Android L03 - Styles and Themes
 
Android L02 - Activities and Adapters
Android L02 - Activities and AdaptersAndroid L02 - Activities and Adapters
Android L02 - Activities and Adapters
 
Android L01 - Warm Up
Android L01 - Warm UpAndroid L01 - Warm Up
Android L01 - Warm Up
 
Indie Series 03: Becoming an Indie
Indie Series 03: Becoming an IndieIndie Series 03: Becoming an Indie
Indie Series 03: Becoming an Indie
 

C# Starter L01-Intro and Warm-up

  • 1. Mohammad Shaker mohammadshaker.com C# Programming Course @ZGTRShaker 2011, 2012, 2013, 2014 C# Starter L01 –Intro and Warm-up
  • 2. Welcome to a new course!
  • 3. Take a Look on XNA and my other courses @ http://www.slideshare.net/ZGTRZGTRAvailable courses to the date of this slide: C# Starter, C# Advanced, WPF, C++, C++.NET, XNA, OpenGL
  • 4. So, what’s this course all about?
  • 5. What’s this course all about? C# and WPF
  • 12. My 3rd Year Projects with.NET! WPF RFID System Project, C#
  • 13. C# and WCF (Windows Communication Foundation)
  • 17. XNA!
  • 18. XNA!
  • 21. This course will enable you to make something as awesome as Ropossum, NEXT, iNversion, etc.
  • 22. Games I Made with C#: Ropossum, Next, iNversion
  • 24. Ropossumis an authoring tool for procedurally generating playable levels for physics-based games (Cut the Rope as a test case.) It allows the creation of content, editing, and realtimeinteraction with the system to provide immediate feedback on the level design. It’s both for players and designers. Read more at: http://www.mohammadshaker.com/ropossum.html Watch the trailer: https://www.youtube.com/watch?v=0SJykSZ5cm4
  • 25. NEXT procedurally generated endless puzzle game http://www.mohammadshaker.com/next.html
  • 26. Programming Languages Ranking Source: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html-July 2014
  • 27. “There is no programming language -no matter how structured–that will prevent programmers from making bad programs.” Programming languages (Larry Flon)
  • 28. “If debugging is the process of removing bugs, then programming must be the process of putting them in.” Programming languages (EdsgerW. Dijkstra)
  • 30. So, Learn C# or not?
  • 32. .NET 3.0.NET 3.5.NET 4.0.NET 4.5
  • 34. How is a C++ ?
  • 35. C# introIt’s a fully OOP language! Everything is an object!
  • 36. Everything is an object! Object Integer String … Car Meal Enemy
  • 37. Object Integer String … Car Meal Enemy Everything is an object! InC#.NETeverything(evenyourclasses)willdirectlyinheritfromclassobject.ThisisessentialforMemoryManagementandGarbageCollection.
  • 38. An Objector a Class?
  • 39. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 40. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 41. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 42. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 43. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 44. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 45. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 46. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 47. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 48. usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz namespaceMyNameSpace{ // nested namespacenamespacetutorial{ classmyExample1{ publicstaticvoidmyPrint1() { Console.WriteLine("First Example of calling another namespace member."); } } } // Program start classclassNamespaceCalling{ // Main begins program execution. publicstaticvoidMain() { // Write to consoletutorial.myExample1.myPrint1(); tutorial.myExample2.myPrint2(); } } }
  • 49. usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz namespaceMyNameSpace{ // nested namespacenamespacetutorial{ classmyExample1{ publicstaticvoidmyPrint1() { Console.WriteLine("First Example of calling another namespace member."); } } } // Program start classclassNamespaceCalling{ // Main begins program execution. publicstaticvoidMain() { // Write to consoletutorial.myExample1.myPrint1(); tutorial.myExample2.myPrint2(); } } } namespacecsharp_station.tutorial{ classmyExample2{ publicstaticvoidmyPrint2() { Console.WriteLine("Second Example of calling another namespace member."); } } }
  • 50. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 51. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 52. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 53. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 54. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 55. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 56. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 57. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 58. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 59. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 60. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz
  • 61. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 62. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 63. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 64. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 65. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 66. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 67. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 68. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 69. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 70. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } }
  • 71. usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } Variables! •Let’s see what you got!
  • 72. usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } Variables! •Let’s see what you got!
  • 73. usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } Variables! •Let’s see what you got!
  • 74. usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } Variables! •Let’s see what you got!
  • 75. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 76. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 77. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 78. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 79. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 80. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 81. Variables! •Let’s see what you got! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 82. Variables! •2 Mains! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 83. Variables! •2 Mains! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine("HiIzZz!"); } } } HiIzZz!
  • 84.
  • 85.
  • 86. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { strings=Console.ReadLine(); Console.WriteLine(s); } } }
  • 87. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { strings=Console.ReadLine(); Console.WriteLine(s); } } } Hello out there! Hello out there!
  • 88.
  • 89.
  • 90. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } }
  • 91. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 92. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 93. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 94. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 95. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 96. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 97. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 98. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 99. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 100. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 101. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Console.WriteLine(Console.ReadLine()); } } } Hi Hi
  • 106. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 107. Variables! 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 108. 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 109. 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 110. 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 111. 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 112. 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 113. 20 usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { Doubled1=10; doubled2=10; Console.WriteLine(d1+d2); } } }
  • 121. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } }
  • 122. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 123. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 124. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 125. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 126. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 127. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 128. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 129. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 130. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 131. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 132. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 133. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 134. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 135. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 136. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 137. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 138. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 139. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 140. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 141. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 142. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 143. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1); } } } Am number 4! Not 10
  • 144. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1.ToString()); } } }
  • 145. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { doubled1=10; Console.WriteLine("Am number 4! not "+d1.ToString()); } } } Am number 4! Not 10
  • 146. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { // Write to console/get input Console.Write("What is your name? "); Console.Write("Hello, {0}! ", Console.ReadLine()); Console.WriteLine("Welcome!"); } } }
  • 149. Variables! >What is your name?<type a string here> [Enter Key] >Hello, <your string here>!Welcome! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { // Write to console/get input Console.Write("What is your name? "); Console.Write("Hello, {0}! ", Console.ReadLine()); Console.WriteLine("Welcome!"); } } }
  • 150. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { // Write to console/get input Console.Write("What is your name? "); Console.Write("Hello, {0}, {1}, {0}! ", Console.ReadLine(), "Hi!"); Console.WriteLine("Welcome!"); } } }
  • 158. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } }
  • 159. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 160. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 161. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 162. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 163. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } }
  • 164. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 165. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 166. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 167. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 168. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 169. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 170. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 171. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 172. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 173. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 174. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 175. Variables! usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArr=newint[5]; Console.WriteLine(intArr); } } } System.Int32[] Press any key to continue...
  • 176. Variables! namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArrAllocator=newint[2] {0,1}; int[] intArrTracker; Console.WriteLine("Array"); intArrTracker=intArrAllocator; intArrTracker[0] =1; Console.WriteLine("A[0]= {0}"+Environment.NewLine+"A[1]= {1}", intArrTracker[0], intArrTracker[1]); } } }
  • 177. Variables! namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { int[] intArrAllocator=newint[2] {0,1}; int[] intArrTracker; Console.WriteLine("Array"); intArrTracker=intArrAllocator; intArrTracker[0] =1; Console.WriteLine("A[0]= {0}"+Environment.NewLine+"A[1]= {1}", intArrTracker[0], intArrTracker[1]); } } } Array A[0]= 1 A[1]= 1 Press any key to continue...
  • 179. Control Structure •The same as c++’s! •“switch” now must be followed with “break;” with every bodied “case”
  • 180. Control Structure namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { intmyInt=0; switch(myInt) { case1: case2: case3: Console.WriteLine("Your number is {0}.", myInt); break; default: Console.WriteLine("Your number {0} is not between 1 and 3.", myInt); break; } } } }
  • 181. Control Structure Your number 0 is not between 1 and 3. namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { intmyInt=0; switch(myInt) { case1: case2: case3: Console.WriteLine("Your number is {0}.", myInt); break; default: Console.WriteLine("Your number {0} is not between 1 and 3.", myInt); break; } } } }
  • 182. Control Structure Your number 0 is not between 1 and 3. namespaceConsoleAppTest { classProgram { staticvoidMain(string[] args) { intmyInt=0; switch(myInt) { case1: case2: case3: Console.WriteLine("Your number is {0}.", myInt); break; default: Console.WriteLine("Your number {0} is not between 1 and 3.", myInt); break; } } } }
  • 184. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(refinti) { i+=1; } staticvoidMain(string[] args) { inti=0; Increment(refi); Console.WriteLine(i); } } }
  • 185. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(refinti) { i+=1; } staticvoidMain(string[] args) { inti=0; Increment(refi); Console.WriteLine(i); } } } 1
  • 186. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(refinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(refi); Console.WriteLine(i); } } } Compiler error
  • 187. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(refinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(refi); Console.WriteLine(i); } } } Compiler error
  • 188. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i=1; } staticvoidMain(string[] args) { inti= 0; Increment(outi); Console.WriteLine(i); } } } 1
  • 189. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } } 1
  • 190. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } }
  • 191. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } }
  • 192. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } }
  • 193. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } }
  • 194. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } }
  • 195. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti; Increment(outi); Console.WriteLine(i); } } }
  • 196. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti= 0; Increment(outi); Console.WriteLine(i); } } }
  • 197. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti= 0; Increment(outi); Console.WriteLine(i); } } }
  • 198. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti= 0; Increment(outi); Console.WriteLine(i); } } }
  • 199. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(outinti) { i+=1; } staticvoidMain(string[] args) { inti= 0; Increment(outi); Console.WriteLine(i); } } }
  • 200. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(refinti) { i+=1; } staticvoidMain(string[] args) { inti = 0; Increment(refi); Console.WriteLine(i); } } }
  • 201. Passing Args usingSystem; using System.Collections.Generic; using System.Linq; using System.Text; namespaceConsoleTestingApp { classProgram { publicstaticvoidIncrement(refinti) { i+=1; } staticvoidMain(string[] args) { inti = 0; Increment(refi); Console.WriteLine(i); } } }
  • 202. Overloading with ref, out class MyClass { public void MyMethod(inti) {i = 10;} public void MyMethod(ref inti) {i = 10;} } class MyClass { public void MyMethod(out inti) {i = 10;} public void MyMethod(ref inti) {i = 10;} }
  • 203. Overloading with ref, out class MyClass { public void MyMethod(inti) {i = 10;} public void MyMethod(ref inti) {i = 10;} } class MyClass { public void MyMethod(out inti) {i = 10;} public void MyMethod(ref inti) {i = 10;} }
  • 204. Overloading with ref, out class MyClass { public void MyMethod(inti) {i = 10;} public void MyMethod(ref inti) {i = 10;} } class MyClass { public void MyMethod(out inti) {i = 10;} public void MyMethod(ref inti) {i = 10;} }
  • 207. params magical Keyword publicstaticvoidUseIntParams(paramsint[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidUseObjParams(paramsobject[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidMain() { UseIntParams(1, 2, 3); UseObjParams(1, 'a', "test"); int[] myarray=newint[3] { 10, 11, 12}; UseIntParams(myarray); }
  • 208. params magical Keyword publicstaticvoidUseIntParams(paramsint[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidUseObjParams(paramsobject[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidMain() { UseIntParams(1, 2, 3); UseObjParams(1, 'a', "test"); int[] myarray=newint[3] { 10, 11, 12}; UseIntParams(myarray); } 1 2 3 1 a test 10 11 12 Press any key to continue...
  • 209. params magical Keyword publicstaticvoidUseIntParams(paramsint[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidUseObjParams(paramsobject[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidMain() { UseIntParams(1, 2, 3); UseObjParams(1, 'a', "test"); int[] myarray=newint[3] { 10, 11, 12}; UseIntParams(myarray); } 1 2 3 1 a test 10 11 12 Press any key to continue...
  • 210. params magical Keyword publicstaticvoidUseIntParams(paramsint[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidUseObjParams(paramsobject[] list) { for(inti=0; i<list.Length; i++) Console.WriteLine(list[i]); Console.WriteLine(); } publicstaticvoidMain() { UseIntParams(1, 2, 3); UseObjParams(1, 'a', "test"); int[] myarray=newint[3] { 10, 11, 12}; UseIntParams(myarray); } 1 2 3 1 a test 10 11 12 Press any key to continue...
  • 212. value magical Keyword •Properties! –set –get
  • 213. value magical Keyword namespace ConsoleTestingApp { class Car { private double _weight; public void SetWeight(double weight) { _weight = weight; } public double GetWeight() { return _weight; } } }
  • 214. value magical Keyword namespace ConsoleTestingApp { class Car { private double _weight; public void SetWeight(double weight) { _weight = weight; } public double GetWeight() { return _weight; } } } namespaceConsoleTestingApp { classCar { privatedouble_weight; publicdoubleWeight { set{_weight =value; } get{ return_weight; } } } }
  • 215. value magical Keyword namespaceConsoleTestingApp { classCar { privatedoubleweight; publicdoubleWeight { set{ weight=value; } get{ returnweight; } } } }
  • 216. value magical Keyword namespaceConsoleTestingApp { classCar { privatedoubleweight; publicdoubleWeight { set{ weight=value; } get{ returnweight; } } } }
  • 217. value magical Keyword namespaceConsoleTestingApp { classCar { privatedoubleweight; publicdoubleWeight { set{ weight=value; } get{ returnweight; } } } }
  • 218. value magical Keyword namespaceConsoleTestingApp { classCar { privatedouble_weight; publicdoubleWeight { get{ return_weight; } } } } class Program { public static void Main() { Car myCar= new Car(); myCar.Weight= 10; } }
  • 219. value magical Keyword namespaceConsoleTestingApp { classCar { privatedouble_weight; publicdoubleWeight { get{ return_weight; } } } } class Program { public static void Main() { Car myCar= new Car(); myCar.Weight= 10; } }
  • 220. value magical Keyword namespaceConsoleTestingApp { classCar { privatedouble_weight; publicdoubleWeight { get{ return_weight; } } } } class Program { public static void Main() { Car myCar= new Car(); myCar.Weight= 10; } }
  • 221. Auto implemented property usingSystem; publicclassCustomer { public intID { get; set; } public string Name { get; set; } } publicclassAutoImplementedCustomerManager { staticvoidMain() { Customercust=newCustomer(); cust.ID=1; cust.Name="AmelioRosales"; Console.WriteLine( "ID: {0}, Name: {1}", cust.ID, cust.Name); Console.ReadKey(); } }
  • 222. Code fast and don’t break things A ?? B means A!= null ? A : B
  • 224. A Look Inside the MemoryStackand Heap
  • 225. Stackand Heap •The Stack –is where normal variables are stored (likeints, anddoubles) –All of the variables inside of a method are placed on the stack as well. •The Heap –It is just put in a big pile, hence the "heap" name! –Objects (classes instances) are stored in the heap. •In order to keep track of your object, a "reference" is used and placed on the stack. So the bulk of the object's information lives in the heap, while you get to keep track of a reference to it on the stack.
  • 227. Boxing and Unboxing •Boxing: the following assignment wraps up the value 3 into a heap object object obj= 3; •Unboxing: the following assignment unwraps the value again intx = (int) obj; 3 obj
  • 228. Blocks
  • 229. Blocks
  • 230. Blocks
  • 232. Keep in touch and let’s connect http://www.mohammadshaker.com mohammadshakergtr@gmail.com https://twitter.com/ZGTRShaker@ZGTRShakerhttps://de.linkedin.com/pub/mohammad-shaker/30/122/128/ http://www.slideshare.net/ZGTRZGTR https://www.goodreads.com/user/show/11193121-mohammad-shaker https://plus.google.com/u/0/+MohammadShaker/ https://www.youtube.com/channel/UCvJUfadMoEaZNWdagdMyCRA http://mohammadshakergtr.wordpress.com/
  • 233. Hope you enjoy your first class (/object?)! :D