Microsoft Visual Studio and C Programming A Team

  • Slides: 23
Download presentation
Microsoft Visual Studio and C# Programming A Team 2 Technical Presentation Vadim Kirk Guotana

Microsoft Visual Studio and C# Programming A Team 2 Technical Presentation Vadim Kirk Guotana Adam Partlo Shreyas Thiagarajasubramanian

History of Computer Programming First program and algorithm Analytical engine Difference Engine Charles Babbage

History of Computer Programming First program and algorithm Analytical engine Difference Engine Charles Babbage (1791 -1871)

What is a Program? Artificial language with instruction Manipulation of variables Input and output

What is a Program? Artificial language with instruction Manipulation of variables Input and output

Program Example

Program Example

Program Major Components Syntax Semantics

Program Major Components Syntax Semantics

Introduction to C# Started in 1999 C. O. O. L. Led by Anders Hejlsberg

Introduction to C# Started in 1999 C. O. O. L. Led by Anders Hejlsberg Direct competitor with Java Readable Current version: C# 4. 0 C# 5. 0 expected OOP Andy C#’s Mascot (Retired in 2004)

What Is OOP? Object oriented programming Defined by objects State (Fields) Behavior (Methods) Classes

What Is OOP? Object oriented programming Defined by objects State (Fields) Behavior (Methods) Classes

Example Object: Jeep SUV Fields: • Current Speed • Current Gear • Current Transmission

Example Object: Jeep SUV Fields: • Current Speed • Current Gear • Current Transmission Methods: • Speed Up / Apply Brakes • Change Gear • Change Transmission (4 x 2 / 4 x 4)

Example (cont. ) Object Definition: class SUV { private: int current. Speed; int current.

Example (cont. ) Object Definition: class SUV { private: int current. Speed; int current. Gear; int current. Transmission; public: void Speed. Up(int); void Apply. Brakes(int); void Change Transmission(int); void Print. States(void); } How to use object: // Define objects SUV Jeep = new SUV(); // Methods on object Jeep. Speed. Up(10); Jeep. Change. Gear(2); Jeep. Change. Transmission(4); Jeep. Print. States();

Benefits of C# Managing memory in C/C++ Responsibility of the programmer Need to allocate

Benefits of C# Managing memory in C/C++ Responsibility of the programmer Need to allocate resources for objects Resources must be released when finished Garbage Collection in C# Handled by common language runtime (CLR) Provided by. Net Framework Runs code and provides services Periodically checks memory heap Releases resources held by unreferenced objects

Benefits of C# (cont. ) . Net Framework Consistent programming model Supports building and

Benefits of C# (cont. ) . Net Framework Consistent programming model Supports building and running the next generation of applications and XML web services Extremely easy to write C# in visual studio (VS) Visual designers to create applications with GUI’s

. Net Framework Six Major Objectives 1) Consistent object-oriented programming environment Code-execution environment that…

. Net Framework Six Major Objectives 1) Consistent object-oriented programming environment Code-execution environment that… 2) Minimizes software deployment 3) Promotes safe execution of code 4) Eliminates the performance problems of scripted environments 5) Developer experience consistent across widely varying types of applications 6) Build all communication on industry standards

Visual Designers • Windows Forms Designer

Visual Designers • Windows Forms Designer

Visual Designers (cont. ) • Windows Presentation Foundation (WPF) Designer Introduced with Visual Studio

Visual Designers (cont. ) • Windows Presentation Foundation (WPF) Designer Introduced with Visual Studio 2008 Supports Drag and Drop Provides flexibility by using XAML An XML based markup language to describe the UI C# code is separated from the XAML markup

Visual Designers (cont. ) • Class designer Author and edit the classes using UML

Visual Designers (cont. ) • Class designer Author and edit the classes using UML modeling

Visual Designers (cont. ) • Data designer Graphically edit database schemas Design queries from

Visual Designers (cont. ) • Data designer Graphically edit database schemas Design queries from the graphical view Web designer/development ASP. NET applications

. NET Framework A framework with which applications can be made for a variety

. NET Framework A framework with which applications can be made for a variety of Microsoft platforms Very easy to use, and code can be shared between platforms Example: A game built for Windows can be very easily ported to XBox 360

Windows Phone 7 apps can be made with Visual Studio and C#

Windows Phone 7 apps can be made with Visual Studio and C#

Web Applications ASP. NET, Microsoft’s web application framework, is also integrated with C# and

Web Applications ASP. NET, Microsoft’s web application framework, is also integrated with C# and VS

Netduino Applications can be made with C#, VS, and the. NET Micro framework

Netduino Applications can be made with C#, VS, and the. NET Micro framework

Video App Demo

Video App Demo

Conclusion C# is a very popular and rapidly growing language Backed by a large

Conclusion C# is a very popular and rapidly growing language Backed by a large company, it will continue to evolve alongside the technologies of the future It is very easy to learn, very fast to develop in, and very well integrated with a variety of platforms through. NET and VS Windows, Windows Phone, Web, Xbox, Netduino, etc.

Questions?

Questions?