Лекции по С#

Архитектура программных систем

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

Работа с текстовыми файлами

Работа с текстовыми файлами Программа и данные Каждая программа обрабатывает данные. Программа без данных просто не существует. Данные программы можно  разделить на три группы: входные, выходные и промежуточные. Входные данные – это те данные, которые известны и задаются для того, чтобы можн было решить поставленную задачу. Выходные данные – это результаты решения задачи, данные которые [...]

Лекция 1.7 Символы и строки

Общий взгляд Строкам не повезло. По понятным причинам в первых языках программирования строковому типу уделялось гораздо меньше внимания, чем арифметическому типу или массивам. Поэтому в разных языках строки представлены по-разному и стандарт на строковый тип сложился относительно недавно. Когда говорят о строковом типе, то обычно различают тип, представляющий: отдельные символы, чаще всего, его называют типом [...]

Лекция 1.6 Массивы

Общий взгляд Массив задает способ организации данных. Массивом называют упорядоченную совокупность элементов одного типа. Каждый элемент массива имеет индексы, определяющие порядок элементов. Число индексов характеризует размерность массива. Каждый индекс изменяется в некотором диапазоне [a,b]. В языке C#, как и во многих других языках, индексы задаются целочисленным типом. В других языках, например, в языке Паскаль, индексы [...]

Лекция 1.5 Процедуры и функции – методы класса

Первыми формами модульности, появившимися в языках программирования, были процедуры и функции. Поскольку функции в математике использовались издавна, то появление их в языках программирования было совершенно естественным. Уже с первых шагов программирования  процедуры и функции позволяли решать одну из важнейших задач, стоящих перед программистами, – задачу повторного использования программного кода. Один раз написанную функцию можно многократно [...]

Лекция 1.4 Операторы языка C#

Состав операторов языка C#, их синтаксис и семантика унаследованы от языка С++. Как и положено, потомок частично дополнил состав, переопределил синтаксис и семантику отдельных операторов, постарался улучшить характеристики языка во благо программиста. Посмотрим, насколько это удалось языку C#. Оператор присваивания В лекции 1.3 подробно рассматривались операция и выражение присваивания X = expr и многочисленные вариации, [...]

Лекция 1.3 Выражения и операции

Выражения строятся из операндов – констант, переменных, функций, – объединенных знаками операций и скобками. При вычислении выражения определяется его значение и тип. Эти характеристики выражения однозначно определяются значениями и типами операндов, входящих в выражение, и правилами вычисления выражения. Правила задают: приоритет операций, для операций одного приоритета порядок применения – слева направо или справа налево; преобразование [...]

Лекция 1.2 Типы и классы. Переменные и объекты

Типы и классы. Переменные и объекты Общий взгляд Знакомство с новым языком программирования разумно начинать с изучения системы типов этого языка. Как в нем устроена система типов данных? Какие есть простые типы, как создаются сложные, структурные типы, как определяются собственные типы, динамические типы. Для объектно-ориентированных языков программирования важно понимать, как связаны между собой такие близкие [...]

Лекция 1.1 Язык программирования и среда разработки

Владимир Биллиг Основы объектного программирования на С# (C# 3.0, Visual Studio 2008) Часть 1 Ядро языка   Цели курса   Основной целью этого курса является изучение основ объектного стиля разработки программных проектов. Для программиста, владеющего этими основами, не столь важно, на каком конкретном языке программирования или в какой среде ему необходимо разработать тот или иной [...]