Menu
Welcome to the E-Books section of C# Corner. All of the E-Books listed in this section are reviewed and recommended by our experts and authors. CSharp Books This section contains free e-books and guides on CSharp, some of the resources in this section can be viewed online and some of them can be downloadable.
C# Programming
Cover | Introduction | Basics | Classes | Advanced Topics | The .NET Framework | Index
Cover | Introduction | Basics | Classes | Advanced Topics | The .NET Framework | Index
C sharp musical note
C# (pronounced 'See Sharp') is a multi-purpose computer programming language suitable for a wide variety of development needs. This Wikibook introduces C# language fundamentals and covers a variety of the base class libraries (BCL) provided by the Microsoft .NET Framework.
Introduction[edit]
- Main introduction: C Sharp Programming/Foreword
Wikipedia has related information at C Sharp (programming language) |
A PDF version is available. (info) |
Although C# is derived from the C programming language, it introduces some unique and powerful features, such as delegates (which can be viewed as type-safe function pointers) and lambda expressions which introduce elements of functional programming languages, as well as a simpler single class inheritance model (than C++) and, for those of you with experience in 'C-like' languages, a very familiar syntax that may help beginners become proficient faster than its predecessors. Similar to Java, it is object-oriented, comes with an extensive class library, and supports exception handling, multiple types of polymorphism, and separation of interfaces from implementations. Those features, combined with its powerful development tools, multi-platform support, and generics, make C# a good choice for many types of software development projects: rapid application development projects, projects implemented by individuals or large or small teams, Internet applications, and projects with strict reliability requirements. Testing frameworks such as NUnit make C# amenable to test-driven development and thus a good language for use with Extreme Programming (XP). Its strong typing helps to prevent many programming errors that are common in weakly typed languages.
- Foreword
- A description of the C# language and introduction to this Wikibook.
- Getting started with C#
- A simple C# program and where to get tools to compile it.
Basics[edit]
A printable version of C Sharp Programming is available. (edit it) |
- Basic syntax
- Describes the basics in how the applications you write will be interpreted.
- Naming conventions
- Quickly describes the generally accepted naming conventions for C#.
- Variables
- The entities used to store data of various shapes.
- Operators
- Summarizes the operators, such as the '+' in addition, available in C#.
- Data structures
- Enumerations, structs, and more.
- Control statements
- Loops, conditions, and more. How the program flow is controlled.
- Exceptions
- Responding to errors that can occur.
Classes[edit]
- Namespaces
- Giving your code its own space to live in.
- Classes
- The blueprints of objects that describes how they should work.
- Objects
- Cornerstones of any object-oriented programming language, objects are the tools you use to perform work.
- Encapsulation and accessor levels
- Explains protection of object states by encapsulation, or the bundling of an object's data and functionality.
Advanced Topics[edit]
- Inheritance
- Re-using existing code to improve or specialize the functionality of an object.
- Interfaces
- Define a template, on which to base sub-classes.
- Delegates and Events
- Learn about delegates, anonymous delegates, lambda expressions, and events.
- Abstract classes
- Build partially implemented classes.
- Partial classes
- Split a class over several files to allow multiple users to develop, but also to stop code generators interfering with source code.
- Generics
- Allow commonly used collections and classes to appear to have specialization for your custom class.
- Extension methods
- Extend the functionality of existing types.
- Object Lifetime
- Learn about the lifetime of objects, where they are allocated and learn about garbage collection.
- Design Patterns
- Learn commonly used design methodologies to simplify and/or improve your development framework.
The .NET Framework[edit]
- .NET Framework Overview
- An overview of the .NET class library used in C#.
- Console Programming
- Input and Output using the console.
- Windows Forms
- GUI Programming with Windows Forms.
- Collections
- Effectively manage (add, remove, find, iterate, etc.) large sets of data.
- Threading
- Learn how to run code concurrently and how to synchronize code.
- Marshalling
- Communicating with unmanaged code
Examples[edit]
- K-Means++
Keywords[edit]
C# Keywords | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Special C# Identifiers (Contextual Keywords) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Contextual Keywords (Used in Queries) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
External links[edit]
- An Introduction to Mono Development by Andrew Troelsen
- C# Environment setup Visual C# environment setup details from MSDN
- C# FAQ C# FAQ, Blogs and Forums.
- C# Language Specification download page at ECMA
- Microsoft Visual Studio Community Edition : A free development environment created by Microsoft.
- Mono Project : C# Development Environment for Linux, Windows, and other platforms.
C# Books Pdf
Retrieved from 'https://en.wikibooks.org/w/index.php?title=C_Sharp_Programming&oldid=3569902'