1 / 23

Exploring C# Programming: From Basics to Benefits for Future Developers

This technical presentation delves into the history and evolution of computer programming, focusing on the fundamentals of C# programming language. From the basics of syntax and semantics to the practical applications in Object-Oriented Programming (OOP) and memory management, this session provides insights into the key features, benefits, and tools available for C# developers. Explore the advantages of using C# for building applications across various platforms such as Windows, Windows Phone, web, and more. Discover the ease of development with Visual Studio and the .NET Framework, along with the seamless integration of C# for creating modern applications and web services. Learn about the Visual Designers and their role in simplifying UI design, database schema editing, and class modeling. Get an overview of the evolving landscape of C# programming and how it aligns with the future technologies. Join us for a comprehensive overview of C# programming and its potential for future developers.

gmroz
Download Presentation

Exploring C# Programming: From Basics to Benefits for Future Developers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Microsoft Visual Studio and C# Programming A Team 2 Technical Presentation Vadim Kim Kirk Guotana Adam Partlo ShreyasThiagarajasubramanian

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

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

  4. Program Example

  5. Program Major Components • Syntax • Semantics

  6. 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)

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

  8. Example Object: Jeep SUV • Methods: • Speed Up / Apply Brakes • Change Gear • Change Transmission (4x2 / 4x4) • Fields: • Current Speed • Current Gear • Current Transmission

  9. Example (cont.) Object Definition: class SUV { private: intcurrentSpeed; intcurrentGear; intcurrentTransmission; public: void SpeedUp(int); void ApplyBrakes(int); void Change Transmission(int); void PrintStates(void); } How to use object: // Define objects SUV Jeep = new SUV(); // Methods on object Jeep.SpeedUp(10); Jeep.ChangeGear(2); Jeep.ChangeTransmission(4); Jeep.PrintStates();

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

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

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

  13. Visual Designers • Windows Forms Designer

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

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

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

  17. .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 XBox360

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

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

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

  21. Video App Demo

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

  23. Questions?

More Related