C Sharp
C# (произносится си-шарп) — объектно-ориентированный язык программирования, пригодный для решения широкого круга задач. Данный учебник ориентирован на обучение основам программирования на C#. За основу взята английская версия викиучебника. По мере готовности перевода будет добавляться информация из сторонних источников.
Введение
[править]C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.
Переняв многое от своих предшественников — языков C++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++).
- Вступление
- Краткое описание C# и введение в эту викикнигу.
- Введение в C#
- Создадим первую программу и узнаем, где найти необходимые инструменты.
- Соглашения по именованию
- Краткое описание соглашений по именованию, принятых в C#.
- Синтаксис
- Описание основ синтаксиса.
- Переменные
- Объекты, используемые для хранения различных форм данных.
- Операторы
- Обобщает операторы, похожие на '+' и имеющиеся в C#.
- Структуры данныx (Data structures)
- Перечисления, структуры и т.д.
- Control statements
- Циклы, условия и многое другое. Контролируется как поток программы.
- Исключения (Exceptions)
- Ответы на ошибки, которые могут возникнуть.
Классы
[править]- Пространства имён (Namespaces)
- (Giving your code its own space to live in.) (namespace) Предоставляет вашему коду его собственное "место для жизни", внутри которого классы знают о существовании друг друга и могут взаимодействовать в зависимости от модификаторов доступа.
- Классы (Classes)
- (The blueprints of objects that describes how they should work.) "Класс" - является подобием чертежа (или схемы) для объекта, в котором описывается как должен действовать объект.
- Объекты (Objects)
- Основа любого объектно ориентированного языка.
- Инкапсуляция и модификаторы доступа
- Explains protection of object states by encapsulation.
Модификаторы доступа
[править]public - означает свободный доступ. Позволяет получать доступ к внутренним полям, методам, свойствам класса вне его описания.
private - означает доступ только для других членов одного класса. Класс можно пометить закрытым только если он находится внутри другого класса, тогда доступ к нему будет для только внешнего класса.
protected - защищенный доступ, означает доступность только для производных классов.
internal - означает доступность для других классов в сборке.
sealed - означает, что от данного класса нельзя наследовать(ставится после другого модификатора доступа)
Продвинутые концепты
[править]- Inheritance
- Re-using existing code to improve or specialize the functionality of an object.
- Интерфейсы
- Define a template, on which to base sub-classes.
- Делегаты и События
- 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.
- Методы расширения
- Расширение функциональности существующих типов.
- Время жизни объектов
- Learn about the lifetime of objects, where they are allocated and learn about garbage collection.
- Паттерны разработки
- Узнайте о основных паттернах\методиках разработки, для уменьшения времени разработки и повышения качества кода.
.NET Framework
[править]- .NET Framework Overview
- An overview of the .NET class library used in C#.
- Console Programming
- Ввод и вывод используя консоль.
- Windows Forms
- Программирование GUI с использованием Windows Forms.
- Windows Presentation Foundation
- Программирование GUI с использованием Windows Presentation Foundation.
- 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
C# Ключевые слова | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
C# Специальные идентификаторы | ||||||||||
|