C# для начинающих

на главную - закладки

Жанры

Поделиться:
Шрифт:

Глава 1. Введение в программирование

Язык программирования С#

Объектно-ориентированный язык программирования C# разработан в компании Microsoft в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга как средство разработки приложений для платформы Microsoft .NET Framework.

Синтаксис C# близок к синтаксису языков C++ и Java. Язык C# имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов, делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий.

Как

научиться программировать на С#

Чтобы научиться программировать на том или ином языке, надо на этом языке программировать. Однако язык С#, вследствие своей объектной ориентированности а также того, что язык создавался как средство для профессионалов, является довольно сложным языком. Изучение объектно-ориентированных возможностей С# предполагает наличие довольно серьезной подготовки, опыта практического программирования. Так что же делать, не подступать к С# до тех пор пока не научишься программировать на другом, более доступном для новичка языке, например на Паскале? Ответ на этот вопрос подсказал, Бьярн Страуструп, создатель языка C++. Хотя Бьярн Страуструп говорит о C++, тем не менее его рецепт применим и к C#:

По моему опыту, наиболее безопасный путь – изучать С++ снизу вверх, то есть вначале изучить те возможности, которые С++ предлагает для традиционного процедурного программирования (так называемый "улучшенный С"), затем научиться использовать и понимать средства абстрагирования данных, а потом освоить использование классовых иерархий для организации наборов взаимосвязанных классов.

Основы

Программа

Программа, работающая на компьютере, зачастую отождествляется с самим компьютером, так как пользователь "вводит в компьютер" исходные данные (при помощи клавиатуры или мыши), а "компьютер выдает результат" на экран, на принтер или в файл. На самом деле ввод исходных данных, преобразование исходных данных в результат и вывод результата выполняет процессор. Процессор делает всю работу в соответствии с определенным алгоритмом, который будучи записан на специальном языке, называют программой. Таким образом, чтобы компьютер выполнил некоторую работу, необходимо составить последовательность команд, обеспечивающую выполнение этой работы, или, как говорят, написать программу.

Следует различать исходную и выполняемую программы.

Исходная программа представляет собой последовательность команд (инструкций) на языке программирования. Исходная программа это обычный текст. Исходная программа понятна человеку (программисту), но не понятна процессору, который может "понимать” (воспринимать, выполнять) только двоичный код.

Выполняемая программа это последовательность двоичных чисел, кодирующих данные и команды, которые может выполнить процессор.

Преобразование исходной программы в выполняемую осуществляет специальная программа – транслятор (компилятор).

Компиляция и интерпретация

Существует два подхода к выполнению программы: компиляция и интерпретация.

При компиляции исходная программа преобразуется компилятором (средой разработки) в выполняемую, после чего выполняемая программа может быть выполнена процессором, причем, для запуска и выполнения программы среда разработки не требуется, программа может быть запущена из операционной системы. C#, как и C++, компилируемый язык.

При интерпретации инструкции программы выполняет

входящий в среду разработки интерпретатор. Программа, представленная на интерпретируемом языке программирования, может быть запущена только из соответствующей среды разработки. Примерами интерпретируемых языков являются Visual Basic for Application (VBA), Python а также язык R – специализированный язык статистической обработки данных.

Консольное приложение

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

По способу взаимодействия с пользователем различают оконные и консольные приложения.

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

Консольное приложение также работает в отдельном окне, но в этом окне может отображаться только текстовая информация, а для ввода данных может использоваться только клавиатура.

В качестве примера на рис. приведен вид окна программы пересчета расстояния из миль в километры, реализованной как оконное Windows Forms приложение, а на рис. вид окна этой же программы, реализованной как консольное приложение.

Рис. . Оконное приложение

Рис. . Консольное приложение

Хотя консольные приложения менее симпатичны, чем оконные, но они наилучшим образом подходят изучения языка программирования, так как они не требуют усилий (времени) для создания формы и позволяют сосредоточить внимание на сути рассматриваемой проблемы. Именно поэтому представленные в книге примеры реализованы как консольные приложения.

Этапы разработки программы

Выражение "написать программу" отражает только один из этапов создания компьютерной программы, когда программист действительно пишет команды (инструкции на выбранном языке программирования) на бумаге или в редакторе среды разработки.

Программирование – это процесс создания (разработки) программы, который может быть представлен как последовательность следующих шагов:

*

Определение требований к программе

*

Разработка алгоритма решения задачи

*

Написание команд (кодирование)

*

Отладка

*

Тестирование

Определение требований к программе

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

Книги из серии:

Без серии

Комментарии:
Популярные книги

Магия чистых душ

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.40
рейтинг книги
Магия чистых душ

Здравствуй, 1985-й

Иванов Дмитрий
2. Девяностые
Фантастика:
альтернативная история
5.25
рейтинг книги
Здравствуй, 1985-й

Месть бывшему. Замуж за босса

Россиус Анна
3. Власть. Страсть. Любовь
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Месть бывшему. Замуж за босса

Безымянный раб

Зыков Виталий Валерьевич
1. Дорога домой
Фантастика:
фэнтези
9.31
рейтинг книги
Безымянный раб

Действуй, дядя Доктор!

Юнина Наталья
Любовные романы:
короткие любовные романы
6.83
рейтинг книги
Действуй, дядя Доктор!

#Бояръ-Аниме. Газлайтер. Том 11

Володин Григорий Григорьевич
11. История Телепата
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 11

Невеста вне отбора

Самсонова Наталья
Любовные романы:
любовно-фантастические романы
7.33
рейтинг книги
Невеста вне отбора

Темный Патриарх Светлого Рода 3

Лисицин Евгений
3. Темный Патриарх Светлого Рода
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Патриарх Светлого Рода 3

Черный Маг Императора 13

Герда Александр
13. Черный маг императора
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Черный Маг Императора 13

Воин

Бубела Олег Николаевич
2. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.25
рейтинг книги
Воин

Барон не играет по правилам

Ренгач Евгений
1. Закон сильного
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Барон не играет по правилам

Провинциал. Книга 4

Лопарев Игорь Викторович
4. Провинциал
Фантастика:
космическая фантастика
рпг
аниме
5.00
рейтинг книги
Провинциал. Книга 4

Возвращение Безумного Бога 4

Тесленок Кирилл Геннадьевич
4. Возвращение Безумного Бога
Фантастика:
фэнтези
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Возвращение Безумного Бога 4

Измена. Мой заклятый дракон

Марлин Юлия
Любовные романы:
любовно-фантастические романы
7.50
рейтинг книги
Измена. Мой заклятый дракон