Введение в язык C#

C# (произносится «си шарп») — язык программирования высокого уровня. Является одним из языков платформы .NET. Близок к языкам C++ и Java.

На языке C# можно программировать индикаторы и торговые стратегии для программ технического анализа Wealth-Lab 5/6, NinjaTrader 7, MultiCharts .NET, TSLab, StockSharp.

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

Платформа .NET

.NET Framework — программная платформа компании Microsoft. Основой платформы является общеязыковая среда исполнения Common Language Runtime (CLR), которая подходит для разных языков программирования (в том числе, C#).

Программы, написанная на C или C++, компилируется в машинный код, который непосредственно выполняется процессором. В отличие от этого, программа, написанная на C#, компилируется в специальный промежуточный байт-код Common Intermediate Language (CIL), который может исполняться только в среде .NET.

Хотя .NET официально рассчитана на работу только в операционных системах семейства Microsoft Windows, существуют независимые проекты Mono и Portable.NET, позволяющие запускать программы .NET в других операционных системах.

Интегрированная среда разработки (IDE)

Для того, чтобы писать автономные программы на языке C#, нам, как минимум, потребуются:

  • редактор исходного текста программ;
  • дизайнер визуальных форм для создания интерфейса пользователя;
  • компилятор;
  • отладчик.

Всё это (и не только) объединено в одно приложение, которое называется интегрированная среда разработки (Integrated Development Environment, IDE).

Большинство программистов используют интегрированную среду Microsoft Visual Studio (имеются бесплатные версии Express и Community), но существуют также и проекты с открытым исходным кодом, например, SharpDevelop и MonoDevelop.

Установка Visual Studio Express

Большинство разработчиков программ для операционной системы Microsoft Windows используют интегрированную среду разработки Microsoft Visual Studio. Начинающему проще всего использовать бесплатные версии этой IDE — Visual Studio Express или Visual Studio Community.

Если вы работаете на операционной системе Microsoft Windows XP, то вам доступен только первый вариант.

Для версий Windows, начиная с 7-й, инсталлятор Visual Studio 2015 Express можно скачать с главной страницы сайта www.visualstudio.com, в разделе Выпуски Express, нажав на ссылку Загрузка в разделе Express для Desktop. Скачанный файл надо будет запустить на выполнение.

Для Windows XP придётся поискать старую версию Visual Studio 2010 Express. Зайдём на сайт www.microsoft.com, перейдём в раздел Разработка (в верхней части страницы), подраздел Инструменты для разработчиков и найдём ссылку Visual Studio 2010 Express. Откроем страницу по этой ссылке и нажмём кнопку Скачать. Размер скачиваемого файла чуть более 1.7 Гбайт. Это файл в формате .ISO, его нужно будет записать на диск DVD или подключить через виртуальный привод.

После запуска инсталлятора выберем диск и каталог установки (лучше всего оставить те, что указаны по умолчанию). Подтвердим все параметры, указанные по умолчанию.

После установки в главном меню Пуск появится группа Microsoft Visual Studio 2010 Express (или 2015).


Видео по установке Visual Studio 2010 Express:


Установка Visual Studio Community

Бесплатная интегрированная среда разработка Visual Studio Community работает на Microsoft Windows, начиная с 7-й версии.

Перейдём на сайт www.visualstudio.com и в разделе Загрузки выберем пункт Visual Studio Community. Будет скачан файл vs_community.exe. Запустим его на выполнение.

Оставим диск и каталог установки, указанные по умолчанию.

После установки в главном меню Пуск появится группа Microsoft Visual Studio Community.

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

Установка SharpSevelop

Вместо Microsoft Visual Studio для разработки программ в системе Microsoft Windows можно использовать IDE SharpDevelop.

Бесплатная интегрированная среда разработка SharpSevelop 5 является работает на Microsoft Windows Vista, 7, 8 и старше.

Если вы используете Windows XP, то придётся установить SharpSevelop версии 4.

Перейдём на сайт www.icsharpcode.net, выберем нужную версию программы и откроем ссылку Setup Download. Будет скачан файл SharpDevelop_x.x.x.xxxx_Setup.msi. Запустим его на выполнение.

Оставим диск и каталог установки, указанные по умолчанию.

После установки в главном меню Пуск появится пункт SharpDevelop.


Видео по установке SharpSevelop:


Простейшая консольная программа на языке C#

Приведём текст простой программы, которая выводит текстовое сообщение на экран, а затем ожидает нажатия любой клавиши на клавиатуре, после чего окно закрывается:

class HelloProg1
{
   static void Main(string[] args)
   {
      System.Console.WriteLine("Hello!\nПривет!");
      System.Console.Write("Press any key... Нажмите любую клавишу... ");
      System.Console.ReadKey(true);
   }
}

Программа на языке C# должна содержать описание хотя бы одного класса. В данном случае это класс HelloProg1. Точкой входа, с которой начинается выполнение программы, является метод Main.

Все программные объекты (классы и их методы, функции, переменные, константы), доступные в .NET, располагаются в различных пространствах имён (namespace). В данной программе мы используем класс Console (консоль) из пространства имён System (система).

WriteLine, Write и ReadKey — это методы класса Console (функции, являющиеся членами этого класса). Функция Write предназначена для вывода строки на экран (курсор после этого не переводится на новую строку и последующий вызов функции Write продолжит писать в той же строке). Функция WriteLine также выводит строку на экран, но после этого переводит курсор на следующую строку. Параметр функции Write и WriteLine — строка (она записывается в кавычках), которая должна быть выведена на экран.

Специальный символ \n делает разрыв строки (оставшаяся часть текста выводится в следующей строке).

Функция ReadKey ожидает нажатия клавиши на клавиатуре. Если указан параметр true (логическое значение Истина), то введённый символ не отображается на экране; если false (Ложь) — то отображается.

Результат работы программы (консольное окно) показан на рис.1.

../_images/scr01.png

Рис. 1. Консольное окно первой программы на языке C#

Создание консольного приложения в Microsoft Visual Studio

Выполним в главном меню команду File ‣ New ‣ Project (Файл ‣ Создать ‣ Проект). В открывшемся окне слева выберем группу Visual C#, подгруппу Windows. Справа выберем пункт Console Application (Консольное приложение). Внизу укажем имя нового проекта и каталог для его размещения. Можно либо создать новое решение с заданным именем, либо добавить новый проект в существующее решение (решение (solution) — это группа проектов). Нажмём кнопку OK.

Заменим имеющийся шаблон текстом нашей программы.

Для запуска программы нажмём клавишу F5 или выполним команду меню Отладка ‣ Начать отладку.

Компиляция из командной строки

Можно написать текст программы в блокноте (или другом текстовом редакторе) и сохранить его в файл с расширением .cs. Для определённости предположим, что мы назвали файл example01.cs и сохранили его в каталоге Work на диске D:.

После этого откроем командную строку, выполнив из меню Пуск команду Программы ‣ Visual Studio 2015 ‣ Visual Studio Tools ‣ Командная строка разработчика для VS2015. В открывшемся окне перейдём на нужный диск (с помощью команды D:) и каталог (команда cd Work), после чего выполним компиляцию: csc example01.cs. Если нет ошибок, в том же каталоге будет создан файл с тем же имененем, но расширением .exe. Его можно запустить на выполнение, дав команду example01.

Пространства имён и директива using

Чтобы не указывать префикс System при каждом обращении, можно использовать директиву using. Тогда мы можем писать сокращённо Console.WriteLine() и Console.ReadKey() вместо того, чтобы указывать полностью System.Console.WriteLine() и System.Console.ReadKey(). Текст нашей первой программы примет следующий вид:

using System;

class HelloProg1
{
   static void Main(string[] args)
   {
      Console.WriteLine("Hello!\nПривет!");
      Console.Write("Press any key... Нажмите любую клавишу... ");
      Console.ReadKey(true);
   }
}

Кроме того, мы можем захотеть, чтобы наши классы располагались в отдельном пространстве имён (например, my1), тогда текст программы примет вид:

using System;

namespace my1
{
   class HelloProg1
   {
      static void Main(string[] args)
      {
         Console.WriteLine("Hello!\nПривет!");
         Console.Write("Press any key... Нажмите любую клавишу... ");
         Console.ReadKey(true);
      }
   }
}

Цвет текста и фона в консоли

Мы можем изменять цвет текста и фона:

using System;

namespace my1
{
   class HelloProg2
   {
      static void Main(string[] args)
      {
         Console.BackgroundColor = ConsoleColor.Green;   // Зелёный фон.
         Console.ForegroundColor = ConsoleColor.Blue;    // Синий текст.
         Console.WriteLine("Hello!\nПривет!");           // Вывели приветствие.
         Console.BackgroundColor = ConsoleColor.Black;   // Чёрный фон.
         Console.ForegroundColor = ConsoleColor.Green;   // Зелёный текст.
         Console.Write("Press Enter... Нажмите Enter... "); // Вывели текст.
         Console.ReadLine();                             // Ждём нажатия Enter.
      }      // Конец описания метода Main.
   }         // Конец описания класса HelloProg2.
}            // Конец пространства имён my1.

Двойной символ слэш (знак деления) используется для написания комментариев. Вся оставшаяся часть строки после // игнорируется компилятором.

В последней программе мы вместо функции ReadKey() использовали функцию ReadLine(), она предназначена для ввода текстовой строки, ввод заканчивается нажатием клавиши Enter. В данном случае нам всё равно, какую строку введёт пользователь (и введёт ли вообще), но клавишу Enter ему нажать придётся.

(продолжение следует...)

Ссылки



Комментарии

Комментариев пока нет.

* Обязательные поля
(Не публикуется)
 
Жирный Курсив Подчеркнутый Перечеркнутый Степень Индекс Код PHP Код Кавычки Вставить линию Вставить маркированный список Вставить нумерованный список Вставить ссылку Вставить e-mail Вставить изображение Вставить видео
 
Улыбка Печаль Удивление Смех Злость Язык Возмущение Ухмылка Подмигнуть Испуг Круто Скука Смущение Несерьёзно Шокирован
 
1000
Captcha
Refresh
 
Введите код:
 
Запомнить информацию введенную в поля формы.