Глава 1. Введение в программирование
Язык программирования С#
Объектно-ориентированный язык программирования C# разработан в компании Microsoft в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга как средство разработки приложений для платформы Microsoft .NET Framework.
Синтаксис C# близок к синтаксису языков C++ и Java. Язык C# имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов, делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий.
Как научиться программировать на С#
Чтобы научиться программировать на том или ином языке, надо на этом языке программировать. Однако язык С#, вследствие своей объектной ориентированности а также того, что язык создавался как средство для профессионалов, является довольно сложным языком. Изучение объектно-ориентированных возможностей С# предполагает наличие довольно серьезной подготовки, опыта практического программирования. Так что же делать, не подступать к С# до тех пор пока не научишься программировать на другом, более доступном для новичка языке, например на Паскале? Ответ на этот вопрос подсказал, Бьярн Страуструп, создатель языка C++. Хотя Бьярн Страуструп говорит о C++, тем не менее его рецепт применим и к C#:
По моему опыту, наиболее безопасный путь – изучать С++ снизу вверх, то есть вначале изучить те возможности, которые С++ предлагает для традиционного процедурного программирования (так называемый "улучшенный С"), затем научиться использовать и понимать средства абстрагирования данных, а потом освоить использование классовых иерархий для организации наборов взаимосвязанных классов.
Основы
Программа
Программа, работающая на компьютере, зачастую отождествляется с самим компьютером, так как пользователь "вводит в компьютер" исходные данные (при помощи клавиатуры или мыши), а "компьютер выдает результат" на экран, на принтер или в файл. На самом деле ввод исходных данных, преобразование исходных данных в результат и вывод результата выполняет процессор. Процессор делает всю работу в соответствии с определенным алгоритмом, который будучи записан на специальном языке, называют программой. Таким образом, чтобы компьютер выполнил некоторую работу, необходимо составить последовательность команд, обеспечивающую выполнение этой работы, или, как говорят, написать программу.
Следует различать исходную и выполняемую программы.
Исходная программа представляет собой последовательность команд (инструкций) на языке программирования. Исходная программа это обычный текст. Исходная программа понятна человеку (программисту), но не понятна процессору, который может "понимать” (воспринимать, выполнять) только двоичный код.
Выполняемая программа это последовательность двоичных чисел, кодирующих данные и команды, которые может выполнить процессор.
Преобразование исходной программы в выполняемую осуществляет специальная программа – транслятор (компилятор).
Компиляция и интерпретация
Существует два подхода к выполнению программы: компиляция и интерпретация.
При компиляции исходная программа преобразуется компилятором (средой разработки) в выполняемую, после чего выполняемая программа может быть выполнена процессором, причем, для запуска и выполнения программы среда разработки не требуется, программа может быть запущена из операционной системы. C#, как и C++, компилируемый язык.
При интерпретации инструкции программы выполняет входящий в среду разработки интерпретатор. Программа, представленная на интерпретируемом языке программирования, может быть запущена только из соответствующей среды разработки. Примерами интерпретируемых языков являются Visual Basic for Application (VBA), Python а также язык R – специализированный язык статистической обработки данных.