Полное руководство. С# 4.0

Шилдт Герберт

Закладки
Размер шрифта
A   A+   A++
Cкачать
Читать
Полное руководство. С# 4.0 (Шилдт Герберт)

Table of Contents

Introduction

Создание C#

Краткий обзор элементов C#

Типы данных, литералы и переменные

Операторы

Управляющие операторы

Введение в классы, объекты и методы

Массивы и строки

Подробнее о методах и классах

Перегрузка операторов

Индексаторы и свойства

Наследование

Интерфейсы, структуры и перечисления

Обработка исключительных ситуаций

Применение средств ввода-вывода

Делегаты, события и лямбда-выражения

Пространства имен, препроцессор и сборки

Динамическая идентификация типов, рефлексия и атрибуты

Обобщения

LINQ

Небезопасный код, указатели, обнуляемые типы и разные ключевые слова

Пространство имен System

Строки и форматирование

Многопоточное программирование. Часть первая: основы

Многопоточное программирование. Часть вторая: библиотека TPL

Коллекции, перечислители и итераторы

Сетевые средства подключения к Интернету

Приложение. Краткий справочник по составлению документирующих комментариев

ПОЛНОЕ РУКОВОДСТВО. С# 4.0

Герберт Шилдт

Глава 1. Создание C#

Глава 2. Краткий обзор элементов C#

Глава 3. Типы данных, литералы и переменные

Глава 4. Операторы

Глава 5. Управляющие операторы

Глава 6. Введение в классы, объекты и методы

Глава 7. Массивы и строки

Глава 8. Подробнее о методах и классах

Глава 9. Перегрузка операторов

Глава 10. Индексаторы и свойства

Глава 11. Наследование

Глава 12. Интерфейсы, структуры и перечисления

Глава 13. Обработка исключительных ситуаций

Глава 14. Применение средств ввода-вывода

Глава 15. Делегаты, события и лямбда-выражения

Глава 16. Пространства имен, препроцессор и сборки

Глава 17. Динамическая идентификация типов, рефлексия и атрибуты

Глава 18. Обобщения

Глава 19. LINQ

Глава 20. Небезопасный код, указатели, обнуляемые типы и разные ключевые слова

Глава 21. Пространство имен System

Глава 22. Строки и форматирование

Глава 23. Многопоточное программирование. Часть первая: основы

Глава 24. Многопоточное программирование. Часть вторая: библиотека TPL

Глава 25. Коллекции, перечислители и итераторы

Глава 26. Сетевые средства подключения к Интернету

Приложение. Краткий справочник по составлению документирующих комментариев

ГЛАВА 1. Создание C

C# является основным языком разработки про грамм на платформе .NET корпорации Microsoft. В нем удачно сочетаются испытанные средства программирования с самыми последними новше ствами и предоставляется возможность для эффективного и очень практичного написания программ, предназначен ных для вычислительной среды современных предприятий. Это, без сомнения, один из самых важных языков програм мирования XXI века.

Назначение этой главы — представить C# в его истори ческом контексте, упомянув и те движущие силы, которые способствовали его созданию, выработке его конструктив ных особенностей и определили его влияние на другие язы ки программирования. Кроме того, в этой главе поясняется взаимосвязь С# со средой .NET Framework. Как станет ясно из дальнейшего материала, C# и .NET Framework совместно образуют весьма изящную среду программирования. Генеалогическое дерево C

Языки программирования не существуют в пустоте. Напротив, они тесно связаны друг с другом таким образом, что на каждый новый язык оказывают в той или иной форме влияние его предшественники. Этот процесс сродни перекрестному опылению, в ходе которого свойства одного языка приспосабливаются к другому языку, полезные нововведения внедряются в существующий контекст, а устаревшие конструкции уда ляются. Таким путем развиваются языки программирования и совершенствуется ис кусство программирования. И в этом отношении C# не является исключением.

У языка программирования C# "богатое наследство". Он является прямым наслед ником двух самых удачных языков программирования: С и C++. Он также имеет тесные родственные связи с еще одним языком: Java. Ясное представление об этих взаимосвя зях имеет решающее значение для понимания С#. Поэтому сначала определим, какое место занимает C# среди этих трех языков. Язык С - начало современной эпохи программирования

Создание С знаменует собой начало современной эпохи программирования. Язык С был разработан Деннисом Ритчи (Dennis Ritchie) в 1970-е годы для программирова ния на мини-ЭВМ DEC PDP-11 под управлением операционной системы Unix. Несмо тря на то что в ряде предшествовавших языков, в особенности Pascal, был достигнут значительный прогресс, именно С установил тот образец, которому до сих пор следу ют в программировании.

Язык С появился в результате революции в структурном программировании в 1960-е годы. До появления структурного программирования писать большие про граммы было трудно, поскольку логика программы постепенно вырождалась в так на зываемый "макаронный" код — запутанный клубок безусловных переходов, вызовов и возвратов, которые трудно отследить. В структурированных языках программирования этот недостаток устранялся путем ввода строго определенных управляющих операто ров, подпрограмм с локальными переменными и других усовершенствований. Благо даря применению методов структурного программирования сами программы стали более организованными, надежными и управляемыми.

И хотя в то время существовали и другие структурированные языки программи рования, именно в С впервые удалось добиться удачного сочетания эффективности, изящества и выразительности. Благодаря своему краткому, но простому синтаксису в сочетании с принципом, ставившим во главу угла программиста, а не сам язык, С бы стро завоевал многих сторонников. Сейчас уже нелегко представить себе, что С ока зался своего рода "струей свежего воздуха", которого так не хватало программистам. В итоге С стал самым распространенным языком структурного программирования в 1980-е годы.

Но даже у такого достойного языка, как С, имелись свои ограничения. К числу са мых труднопреодолимых его ограничений относится неспособность справиться с боль шими программами. Как только проект достигает определенного масштаба, язык С тут же ставит предел, затрудняющий понимание и сопровождение программ при их последующем разрастании. Конкретный предел зависит от самой программы, про граммиста и применяемых инструментальных средств, тем не менее, всегда существует "порог", за которым программа на С становится неуправляемой. Появление ООП и C++

К концу 1970-х годов масштабы многих проектов приблизились к пределам, с ко торыми уже не могли справиться методики структурного программирования вообще и язык С в частности. Для решения этой проблемы было открыто новое направление в программировании — так называемое объектно-ориентированное программирова ние (ООП). Применяя метод ООП, программист мог работать с более "крупными" программами. Но главная трудность заключалась в том, что С, самый распростра ненный в то время язык, не поддерживал ООП. Стремление к созданию объектно- ориентированного варианта С в конечном итоге привело к появлению C++.

Язык C++ был разработан в 1979 году Бьярне Страуструпом (Bjarne Stroustrup), ра ботавшим в компании Bell Laboratories, базировавшейся в Мюррей-Хилл, шт. Нью- Джерси. Первоначально новый язык назывался "С с классами", но в 1983 году он был переименован в C++. Язык С полностью входит в состав C++, а следовательно, С служит основанием, на котором зиждется C++. Большая часть дополнений, введенных Страу струпом, обеспечивала плавный переход к ООП. И вместо того чтобы изучать совер шенно новый язык, программирующему на С требовалось лишь освоить ряд новых свойств, чтобы воспользоваться преимуществами методики ООП.

Copyrights and trademarks for the book, and other promotional materials are the property of their respective owners. Use of these materials are allowed under the fair use clause of the Copyright Law.