| В современном мире программирования, проблемы над которыми трудятся разработчики, настолько разнообразны,
насколько разнообразны и сами разработчики. Они простираются от медицинских приложений до программного
обеспечения нефтедобывающего оборудования, от мультимедийных приложений до программ обработки звука и
изображения. Развитие языка C# практически повторяет эволюцию проблем, с которыми сталкиваются разработчики.
По мере усложнения проблем в области программирования, происходило упрощение и повышения мощности языка C#
в отличии от аналогичных языков программирования, что позволяет справляться с возрастающей сложностью
проблем в программировании.
Изучить C# относительно легко, обладая даже начальными знаниями по одному из объектно-ориентированных языков.
Однако, несмотря на то, что C# вместе с .NET Framework относительно легки в изучении и представляют легкий
путь создания простых приложений, все же вам понадобится огромное желание и самообладание, чтобы освоить
этот курс.
Скачать
бесплатно первые два урока курса
Программа курса
Урок 1.
Введение в С#
В этом уроке кратко ознакомимся с описанием языка, управляемой средой, внутри которой выполняется
приложение С#. Сравним язык С# с другими языками, что поможет нам понять преимущества языка. Я расскажу о сборках- базовых строительных блоках приложений, в которые компилируются файлы кода
С#. Вдобавок вы познакомитесь со средой разработки Visual Studio 2008 Express.
Урок 2. Основы и обзор синтаксиса C#
Обзор синтаксиса С# предоставит описание синтаксиса языка С#. Мы рассмотрим фундаментальных группы:
типы значений, ссылочные типы, переменные, массивы, так же рассмотрим управляющие конструкции. Также узнаем об пространствах имен и о том как вы можете использовать их для логического
разбиения типов и функциональности внутри ваших приложений.
Урок 3.
ООП и С#: классы, структуры и объекты
Данный урок содержит подробности определения типов в С#. Мы узнаем больше о типах значений и ссылочных типах в CLR.
Также коснемся "родной" поддержки интерфейсов внутри CLR и С#. Вы увидите, как работает наследование в С#, а также
каким образом каждый объект наследуется от типа System. Object. Урок также содержит богатую информацию об управляемой
среде и о том, что вам нужно знать, чтобы определять типы, удобныe для нее.
Урок 4.
Пользовательские преобразования типов
Очень часто возникает необходимость преобразовывать экземпляры одного типа в другой. В некоторых случаях компилятор выполняет такое преобразование неявно - когда значение одного типа присваивается переменной другого типа, и при этом не теряется точность и значение. В случае, если точность может быть yтеряна, требуется явное преобразование, об этом мы поговорим в этом уроке.
Урок 5.
Атрибуты и перегрузка функций
"Перегрузка операций", детализирует способы создания специальной фунКциональности встроенных операций языка С#,
когда они применяются к вашим собственным типам. Вы увидите, как перегрузить функцию, хотя не
все управляемые языки, которые компилируются в код для CLR, способны использовать перегруженные функции.
Урок 6. Исключения: безопасность и обработка
"Исключения: безопасность и обработка", посвящена средствам обработки исключениЙ языка С# и CLR. Хотя синтаксис
подобен С++, создание безопасного и нейтрального в отношении исключений кода не так просто - даже сложнее
создания безопасного к исключениям кода на С++. Вы увидите, что написание устойчивого к сбоям, безопасного к
исключениям кода вообще не требует npименения конструкций try, catch или finally. Рассмотрим некоторые новые
возможности, добавленные в исполняющую систему .NEТ 2.0, которые позволят вам создавать более устойчивый к сбоям
код, чем это было возможно в .NEТ 1.1.
Урок 7. События и дерективы препроцессора
Событийная модель становится неотъемлемой частью современного программирования. Она применяется повсеместно, но наиболее часто при создании интерфейса пользователя, когда каждое действие пользователя представляется в виде события и передается определенному объекту. Так же разграничем наш код с помощью деректив предпроцессора и посмотрим что это нам дает.
Урок 8. Делегаты, пространства имен
Этот урок продемонстрирует механизмы, используемые внутри С# для обеспечения обратных вызовов. С# пошел на один шаг
дальше, и инкапсулирует обратные вызовы в вызываемые объекты, называемые делегamaмu. Вдобавок С# 2.0 позволяет
создавать делегаты с сокращенным синтаксисом, называемые aнонимеыми функциями. Анонимные функции подобны
Лямбда-функциям в функциональном программировании. К тому же вы увидите, как на основе делегатов каркас реализует
механизм уведомления публикации/подписки на события, позволяя отделять источник события от его потребителя.
Урок 9. Расширяющие методы
Раскроем средство, новое для С# 3.0. Поскольку вы можете вызывать расширяющие методы как обычные методы экземпляра
с типом, который они расширяют, их можно воспринимать как развитие контракта типов. Но на самом деле они представляют
собой нечто большее. Мы увидем, как расширяющие методы могут открыть мир функционального программированияна С#.
Урок 10. Программирование многопоточности
С формальной точки зрения потоки не являются чем-то характерным для С#; поэтому часто стремятся обойти этот вопрос. Хотя я старался не отклоняться от рассмотрения С#, многопоточность — это один из общих предметов, который должен быть хорошо знаком программисту при изучении этого нового языка. Конечно, в одном уроке мы не сможем раскрыть все вопросы, связанные с организацией потоков, но дадим основы и даже расскажем о несколько более продвинутых вещах, касающихся аварийного завершения, планирования и управления временем жизни потоков.
Объем курса: 40 ак.ч.

|