• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Подбельский В.В. Язык С#. Базовый курс. М.: Финансы и статистика, 2010

Для программистов, переходящих с других языков программирования на язык C#, для студентов и преподавателей, связанных с разработкой программ для платформы .NET.

Вадим Валериевич Подбельский — доктор технических наук, профессор, ведущий специалист в области математического и программного обеспечения систем автоматизации и проектирования компьютерных сетей. Стаж научно-педагогической деятельности — около 40 лет. В настоящее время профессор отделения программной инженерии факультета бизнес-информатики Государственного университета — Высшей школы экономики. Из публикаций наиболее известны учебные пособия «Язык Си++», «Программирование на языке Си» (в соавторстве с С.С. Фоминым), «Начала сайтостроения» (в соавторстве с П.Г. Мейксоном), «Практикум по программированию на языке Си», «Стандартный Си++».

Доступно для первоначального знакомства и с нужной строгостью представлены классы и интерфейсы, строки и массивы, индексаторы и свойства, делегаты и события, исключения и такие основополагающие принципы, объектно-ориентированного программирования, как наследование, полиморфизм, инкапсуляция. Примеры программ позволяют читателю не только глубоко изучить синтаксис и семантику языка, но и получить практические навыки программирования на С#. С этой целью рассмотрены основные особенности платформы .NET Framework и возможности ее библиотек. Для программистов, переходящих с других языков программирования на язык C#, для студентов и преподавателей, связанных с разработкой программ для платформы .NET.

Оглавление

Предисловие

Глава 1. Объектная ориентация программ на C#

  • 1.1. Типы, классы, объекты
  • 1.2. Программа на C#
  • 1.3. Пространство имен
  • 1.4. Создание консольного приложения

Глава 2. Типы в языке C#

  • 2.1. Типы ссылок и типы значений
  • 2.2. Классификация типов C#
  • 2.3. Простые типы. Константы-литералы
  • 2.4. Объявления переменных и констант базовых типов

Глава 3. Операции и целочисленные выражения

  • 3.1. Операции языка C#
  • 3.2. Операции присваивания и оператор присваивания
  • 3.3. Операции инкремента (++) и декремента
  • 3.4. Выражения с арифметическими операциями
  • 3.5. Поразрядные операции
  • 3.6. Переполнения при операциях с целыми

Глава 4. Выражения с операндами базовых типов

  • 4.1. Автоматическое и явное приведение арифметических типов
  • 4.2. Особые ситуации в арифметических выражениях
  • 4.3. Логический тип и логические выражения
  • 4.4. Выражения с символьными операндами
  • 4.5. Тернарная (условная) операция

Глава 5. Типы С# как классы платформы .NET Framework

  • 5.1. Платформа .NET Framework и спецификация CTS
  • 5.2. Простые (базовые) типы C# как классы
  • 5.3. Специфические методы и поля простых типов

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

  • 6.1. Общие сведения об операторах
  • 6.2. Метки и оператор безусловного перехода
  • 6.3. Условный оператор
  • 6.4. Операторы цикла
  • 6.5. Операторы передачи управления
  • 6.6. Переключатель

Глава 7. Массивы

  • 7.1. Одномерные массивы
  • 7.2. Массивы как наследники класса Array
  • 7.3. Виды массивов и массивы многомерные
  • 7.4. Массивы массивов и непрямоугольные массивы
  • 7.5. Массивы массивов и поверхностное копирование

Глава 8. Строки — объекты класса string

  • 8.1. Строковые литералы
  • 8.2. Строковые объекты и ссылки типа string
  • 8.3. Операции над строками
  • 8.4. Некоторые методы и свойства класса String
  • 8.5. Форматирование строк
  • 8.6.Строка как контейнер
  • 8.7. Применение строк в переключателях
  • 8.8. Массивы строк
  • 8.8. Сравнение строк
  • 8.9. Преобразования с участием строкового типа
  • 8.10. Аргументы метода Main()
  • 8.11. Неизменяемость объектов класса String

Глава 9. Методы C#

  • 9.1. Методы-процедуры и методы-функции
  • 9.2. Соотношение фиксированных параметров и аргументов
  • 9.3. Параметры с типами ссылок
  • 9.4. Методы с переменным числом аргументов
  • 9.5. Перегрузка методов
  • 9.6. Рекурсивные методы
  • 9.7. Применение метода Array.Sort()

Глава 10. Класс как совокупность статических членов

  • 10.1. Статические члены класса
  • 10.2. Поля классов (статические поля)
  • 10.3. Статические константы
  • 10.4. Статические методы
  • 10.5. Статический конструктор
  • 10.6. Статические классы

Глава 11. Классы как типы

  • 11.1. Объявление класса
  • 11.2. Поля объектов
  • 11.3. Объявления методов объектов
  • 11.4. Пример класса и его объектов
  • 11.5. Ссылка this
  • 11.6. Конструкторы объектов класса
  • 11.7. Деструкторы и финализаторы

Глава 12. Средства взаимодействия с объектами

  • 12.1. Принцип инкапсуляции и методы объектов
  • 12.2. Свойства классов
  • 12.3. Автореализуемые свойства
  • 12.4. Индексаторы
  • 12.5. Индексаторы, имитирующие наличие контейнера

Глава 13. Включение, вложение и наследование классов

  • 13.1. Включение объектов классов
  • 13.2. Вложение классов
  • 13.3. Наследование классов
  • 13.4. Доступность членов класса при наследовании
  • 13.5. Методы при наследовании
  • 13.6. Абстрактные методы и абстрактные классы
  • 13.7. Опечатанные классы и методы
  • 13.8. Применение абстрактых классов

Глава 14. Интерфейсы

  • 14.1. Два вида наследования в ООП
  • 14.2. Объявления интерфейсов
  • 14.3. Реализация интерфейсов
  • 14.4. Интерфейс как тип
  • 14.5. Интерфейсы и наследование

Глава 15. Перечисления и структуры

  • 15.1. Перечисления
  • 15.2. Базовый класс перечислений
  • 15.3. Структуры
  • 15.4. Упаковка и распаковка
  • 15.5. Реализация структурами интерфейсов

Глава 16. Исключения

  • 16.1. О механизме исключений
  • 16.2. Системные исключения и их обработка
  • 16.3. Свойства исключений
  • 16.4. Управление программой с помощью исключений
  • 16.5. Исключения в арифметических выражениях
  • 16.6. Генерация исключений
  • 16.7. Пользовательские классы исключений

Глава 17. Делегаты и события

  • 17.1. Синтаксис делегатов
  • 17.2. Массивы делегатов
  • 17.3. Многоадресные экземпляры делегатов
  • 17.4. Делегаты и обратные вызовы
  • 17.5. Анонимные методы
  • 17.6. События

Литература

Предметный указатель

Вам также может быть интересно:

На ФКН в третий раз прошла зимняя школа по программной инженерии

Факультет компьютерных наук НИУ ВШЭ в третий раз провелзимнюю школу по программной инженерии, на которую в этом году зарегистрировалось более тысячи человек. Преподавателями школы стали представители ФКН и его компаний-партнеров — «Яндекса», Сбера, «Тинькофф», МТС.

ФКН проведет для старшеклассников летние школы по анализу данных и программной инженерии

Факультет компьютерных наук Высшей школы экономики организует летние школы для учащихся 8–11-х классов на бесплатной основе. Первая — по анализу данных — состоится с 26 по 30 июня. Вторая — по программной инженерии — пройдет с 3 по 14 июля. Для участия необходимо зарегистрироваться и пройти отбор.

На ФКН Вышки прошла вторая зимняя школа по программной инженерии

В этом году для участия во второй зимней школе по программной инженерии на факультете компьютерных наук ВШЭ было подано 625 заявок из 90 городов. Основными темами стали архитектура ПО, мобильная разработка, цифровые двойники, искусственный интеллект, разработка облачных сервисов, API, техдолг, QA, программные системы, Flutter, распределенные системы.

«Когда я научился воплощать свои идеи в программы, понял: вот ради чего стоило поступать в университет»

15–17 февраля 2023 года факультет компьютерных наук ВШЭ проводит зимнюю школу по программной инженерии, направленную на распространение и обмен знаниями о современных инструментах и методах разработки программного обеспечения. Регистрация доступна до 12 февраля. Студенты ФКН рассказали новостной службе «Вышка.Главное» об учебе на образовательной программе «Программная инженерия».

ФКН Вышки провел первую зимнюю школу по программной инженерии

14–18 февраля факультет компьютерных наук Высшей школы экономики организовал первую международную зимнюю школу по программной инженерии. Мероприятие состоялось при поддержке компании JetBrains, Университета Иннополис и Технологического института Шаффхаузена.

Бакалаврская программа «Программная инженерия» получила престижную международную аккредитацию

Высокое качество подготовки студентов этой программы подтвердили эксперты Совета по аккредитации программ в области техники и технологий со штаб-квартирой в США. ABET более 85 лет занимается аккредитацией образовательных программ в области информатики, прикладных наук, техники и технологий. На сегодняшний день «Программная инженерия» — единственная в России программа, имеющая эту аккредитацию.

Нетипичный программист: как посмотреть мир, разрабатывая мобильные приложения

Вадим Дробинин в прошлом году окончил бакалаврскую программу «Программная инженерия». Сейчас он работает в Лондоне в амбициозном стартапе, который обещает перевернуть современные представления о поиске в интернете. Вопреки стереотипу о программисте-интроверте в растянутом свитере, который «прогает» ночи напролет, Вадим много путешествует, ведет блог с рецептами блюд из разных стран, преподает и участвует в крупных международных конференциях.

На факультете компьютерных наук открывается базовая кафедра ИСП РАН

22 сентября состоится презентация новой кафедры, созданной в составе Департамента программной инженерии факультета компьютерных наук на базе Института системного программирования РАН (ИСП РАН). Кафедра будет дополнять научную и педагогическую деятельность факультета основополагающей для программирования областью исследований — системным программированием.

Студенческая команда ВШЭ вышла в финал чемпионата мира по программированию

Команда по спортивному программированию «Viral Team» в составе студентов отделения прикладной математики и информатики ВШЭ Вячеслава Алипова, Михаила Колупаева и Александра Куприна вышла в финал соревнований NEERC чемпионата мира по программированию ACM ICPC.

Студенты ВШЭ стали победителями всемирного хакатона PayPal

17 ноября команда российских программистов с участием двух представителей ВШЭ, студентов Сергея Пронина и Александра Балабана, выиграла международный конкурс PayPal Battle Hack, проходивший в американском Сан-Хосе. Победители получили чек на 100 тысяч долларов.