Visual studio си шарп
Работа с Visual Studio
Профессиональные разработчики программного обеспечения .NET наверняка располагают самым серьезным в этой сфере продуктом производства Microsoft, который называется Visual Studio и доступен по адресу www.visualstudio.com. Этот продукт представляет собой самую функционально насыщенную и наиболее приспособленную под использование на предприятиях IDE-среду. Такая мощь, несомненно, имеет свою цену, которая варьируется в зависимости от версии Visual Studio. Как не трудно догадаться, каждая версия поставляется со своим уникальным набором функциональных возможностей.
Visual Studio представляет собой полностью интегрированную среду разработки. Она спроектирована таким образом, чтобы делать процесс написания кода, его отладки и компиляции в сборку для поставки конечным потребителям как можно более простым. На практике это означает, что Visual Studio является очень сложным приложением с многодокументным интерфейсом, в котором можно делать практически все, что касается разработки кода. Ниже перечислены основные возможности Visual Studio:
Текстовый редактор
С помощью этого редактора можно подготавливать тексты программ на языке C# (а также Visual Basic и С++). Текстовый редактор обладает довольно мощными возможностями. Например, при вводе текста программы он автоматически компонует его на странице, создавая между строками необходимые отступы, выравнивая открывающие и закрывающие фигурные скобки блоков кода и выделяя ключевые слова цветом. Кроме того, по мере ввода кода он выполняет его проверку на предмет синтаксических ошибок и подчеркивает фрагменты, которые будут вызывать ошибки при компиляции, что также называется отладкой на стадии проектирования. В редакторе реализовано средство IntelliSense, которое обеспечивает автоматическое отображение имен классов, полей или методов при начале их ввода, а также списки параметров, которые поддерживают все доступные перегруженные версии методов при начале ввода параметров для методов.
Визуальный редактор форм
Этот редактор позволяет размещать желаемые элементы управления для пользовательского интерфейса и доступа к данным в проекте, a Visual Studio затем автоматически добавляет в исходные файлы код на языке C#, который необходим для создания экземпляров этих элементов в проекте. (Это возможно потому, что все элементы управления в .NET представляют собой экземпляры определенных базовых классов.)
Вспомогательные окна
Эти окна позволяют просматривать и изменять различные аспекты проекта, вроде классов в исходном коде, а также свойства (и их начальные значения), которые доступны для классов Windows Forms и Web Forms. Вдобавок такие окна могут применяться для указания параметров компиляции, например, того, на какие сборки должен ссылаться код.
Возможность компиляции прямо в среде разработки
Вместо того чтобы выполнять компиляцию проекта, запуская компилятор C# из командной строки, можно выбрать соответствующий пункт меню в среде разработки. Visual Studio самостоятельно вызывает компилятор и передает ему все необходимые параметры командной строки, указывающие, на какие сборки должен ссылаться код и какой вид должна иметь сборка на выходе (например, исполняемый файл или библиотека *.dll). При желании Visual Studio может также автоматически запускать скомпилированный исполняемый файл на выполнение, позволяя проверить его работу.
Интегрированный отладчик
Из-за природы программирования код редко когда выполняется правильно с первого раза. Visual Studio обеспечивает гладкое подключение отладчика, позволяя создавать точки останова и отслеживать значения переменных, не покидая среду разработки.
Доступ к другим программам
Visual Studio предоставляет доступ к целому ряду других утилит, которые позволяют просматривать и изменять различные аспекты компьютера или сети, не покидая среды разработки. Благодаря этим инструментам, можно просматривать выполняющиеся службы и активные соединения с базами данных, заглядывать в таблицы на сервере SQL Server и даже посещать веб-сайты с использованием окна Internet Explorer.
Интегрированная справочная система MSDN
Visual Studio позволяет получать доступ к документации MSDN прямо из среды IDE. В случае, например, возникновения сомнений по поводу предназначения того или иного ключевого слова во время работы с текстовым редактором, можно выделить это ключевое слово и нажать клавишу , в результате чего Visual Studio автоматически подключится к MSDN и отобразит подходящие разделы справки. Аналогично, если нужно посмотреть, что означает та или иная ошибка компиляции, потребуется выделять сообщение с ошибкой и нажать .
Также Visual Studio содержит графические редакторы и конструкторы XML, обеспечивает поддержку разработки программ Windows, ориентированных на мобильные устройства, поддержку разработки программ Microsoft Office и Windows Workflow Foundation, содержит встроенную поддержку рефакторинга кода и инструменты визуального конструирования классов.
C# и Я
Работа с формами в Visual Studio C#.
В принципе, чтобы понять основы программирования в C# после изучения какого-либо объектно-ориентированного языка программирования много времени не требуется. Основные принципы ООП никто не отменял, а если понять их логику, то на изучения правил языка потребуется немного времени, а дальше – оттачивание навыков, углубленное изучение отдельных вопросов программирования и т.д., в общем, все как обычно. Проблемы начинаются, когда приходится избавляться от “вредных” привычек при переходе на C#, например от привычки работы с формами. Попробую пояснить это на простом примере, в котором рассмотрим работу с формами в Visual Studio Express C#.
Давайте создадим новый проект в Visual Studio. Для этого в главном меню студии выбираем “Файл – Создать проект” и в открывшемся окне выбираем “Приложение для Windows Forms”:
Зададим имя проекту, например, “TestApp” и нажмем кнопку “Ok”. Студия создаст нам пустое приложение, состоящее из одной формы и услужливо покажет нам её конструктор:
Теперь создадим ещё одну форму – её мы будем вызывать по какому-либо событию. Для добавления новой формы выбираем в меню Visual Studio: “Проект – Добавить форму Windows…” в открывшемся оке необходимо выбрать “Форма Windows Forms” и задать её имя:
Т.к. сегодня рассматриваем пример, то я не стал менять названия форм (думаю, так будет проще понять что и как делается), но в нормальных проектах следует сразу задавать всем элементам осмысленные названия. Итак, добавили вторую форму в наше приложение.
Теперь разберемся как показать вторую форму пользователю. Те, кто немного знают Delphi могут сказать “Что может быть проще – добавил в uses модуль и вызывай”. Действительно проще некуда, но не совсем так просто как в Delphi. Объясню на примере.
Бросаем на первую форму кнопку Button. Затем переходим в окно “Свойства”, выбираем “События” и двойным кликом мышки, напротив события Click создаем новый обработчик:
Вначале, попробуем написать в обработчике следующий код:
Сразу же получим внятное сообщение об ошибке:
» Ошибка 1 Для нестатического поля, метода или свойства «System.Windows.Forms.Control.Show()» требуется ссылка на объект … «
Почему так? Дело в том, что, работая в Delphi мы могли не задумываться над тем почему, приведенный выше код мог работать без проблем – там Form2 – глобальная переменная класса TForm2. И эта переменная уже проинициализирована. Тут может быть несколько мнений, кто-то скажет «Это удобно, быстро», другой – «Глобальные переменные – зло». Разработчики С# относятся как раз к «другим» и я с ними согласен – где возможно следует избавляться от использования глобальных переменных. Второй момент – в C# Form2 – это название класса, а мы, следуя “вредной” привычке из Delphi могли предположить, что это переменная. Отсюда и ошибка. Добрались до сути. Осталось найти решение. А решение довольно простое – надо создать переменную и работать с ней:
Теперь все заработает нормально. Запускаем приложение, жмем кнопку и получаем вторую форму:
Как открыть вторую форму в модальном режиме, т.е., чтобы нельзя было переключиться на первую, пока вторая открыта. Для этого необходимо вызвать метод ShowDialog(). Можно так:
IndigoBits
Первая программа на языке C#
Итак, вы решили написать свою первую программу на языке C#. Однако, прежде чем приступить к изучению C# и непосредственному написанию кода, нам понадобится некоторый инструментарий.
Для написания C# кода можно использовать простой текстовый редактор (практически любой на ваш выбор), например, встроенный в OS Windows, блокнот. Или же более продвинутый, с точки зрения функциональности, NotePad++. Однако, намного удобнее разрабатывать программы (как маленькие, так и очень большие) в так называемой среде разработки.
Интегрированная среда разработки (IDE — Integrated development environment) – это многофункциональная система (набор программных средств), используемая программистами для разработки программного обеспечения. Обычно, в среду разработки встроено множество инструментов, необходимых для написания, компиляции, запуска, отладки кода и прочих действий, связанных с разработкой ПО. Если говорить проще, то:
IDE – это программа для написания программ.
Вот несколько самых известных сред разработки, которые используются для программирования на C#:
- Microsoft Visual Studio
- SharpDevelop
- MonoDevelop
Для того, чтобы написать программу на языке C# удобнее всего использовать среду разработки.
Самой лучшей и наиболее функциональной считается Microsoft Visual Studio. Это не случайность, ведь Майкрософт и является разработчиком языка «Си Шарп». Именно Visual Studio мы будем использовать в наших уроках. Однако, мы можете скачать и установить любую среду (благо, они бесплатны и свободно распространяются). Можете перепробовать все и выбрать, которая из сред более вам по душе.
Среда разработки Visual Studio от компании Microsoft бывает нескольких редакций:
- Visual Studio Express
- Visual Studio Professional
- Visual Studio Premium
- Visual Studio Ultimate
В этом списке представлены лишь самые основные редакции. Они расположены в порядке возрастания количества встроенных возможностей и функций, а также стоимости лицензии. Нас будет интересовать прежде всего Microsoft Visual Studio Express.
Visual Studio Express ( «Визуал Cтудио Экспресс») — это бесплатная среда разработки, доступная любому желающему.
Также, нужно отметить, что Visual Studio отличаются по версии (т.е. по году выпуска). К примеру, на момент написания данной статьи, существуют:
- Visual Studio 2013
- Visual Studio 2012
- Visual Studio 2010
- Visual Studio 2008
- более ранние версии
Соответственно, в каждой версии существуют свои редакции Express, Professional и т.д.
Стоит упомянуть, что также, бывают как десктоп (desktop) версии, так и онлайн (online). Десктоп версия устанавливается на ваш компьютер, как и любая другая программа. Онлайн версией пользуются через браузер, как обычными сайтами. Проще и удобнее, на мой взгляд, использовать десктоп, т.е. просто скачать и установить Visual Studio к себе на компьютер. Итак, пришло время начать делать первые шаги к написанию нашей первой программы.
3 простых шага к написанию первой программы на языке C#:
- Cкачать Visual Studio Express;
Если вы только начинаете изучать C# и не хотите углубляться в проблему выбора среды разработки, её версии и редакции, скажу просто: скачайте и установите самую свежую версию Visual Studio Express с официального сайта Microsoft. Вот актуальные ссылки:
- visualstudio.microsoft.com — официальный сайт Visual Studio от компании Майкрософт;
- Downloads — здесь доступны все редакции самой свежей версии Визуал Студии;
В наших уроках я использую версию под названием:
Microsoft Visual Studio Express 2013 с обновлением 3 для Windows Desktop
На данный момент эта версия является самой свежей, однако, новые версии студии появляются довольно часто, поэтому, если на данной страничке вы найдете версию свежее, смело скачивайте и устанавливайте.
Кроме установочных образов и обновлений, на этом сайте вы найдете множество полезной информации по разработке приложений с помощью Визуал Студии.
Итак, вы скачали ISO-образ (у меня это файл vs2013.3_dskexp_RUS.iso). Теперь необходимо установить студию. Для этого смонтируйте данный файл в виртуальный привод (например, с помощью таких программ как DAEMON Tools или UltraISO). Инструкция о том, как это сделать выходит за рамки данного курса (можно также записать этот образ на диск, а затем произвести установку с диска на любом ПК).
Установка Визуал Студии Экспресс со скриншотами:
если диск автоматически не запускается – заходим на него и запускаем установочный exe файл, у меня это – wdexpress_full.exe.
- ставим галочку «Я принимаю Условия лицензии и Политику конфиденциальности»;
Также можно снять галочку (снимать или нет – дело ваше) «Присоединяйтесь к программе улучшения качества программного обеспечения Visual studio …».
Всё, установка начата. Происходит она в автоматическом режиме, т.е. более ничего делать не нужно!
Когда установка закончится, вы увидите следующее:
после чего появится следующее окошко:
Здесь необходимо нажать на ссылку «Не сейчас! Возможно позже».
Спустя некоторое время «Визуал Студио» загрузится и перед нами предстанет следующий экран:
Возможно, вы увидите несколько другое представление Студии, особенно, если ваша версия отличается (возможно новее) от представленной в этих уроках. Однако, это не критично для нас. Главное то, что теперь мы наконец-то можем приступить к написанию нашей первой программы на C#!
Чтобы написать нашу первую программу нам понадобится создать новый проект в Visual Studio. Для этого щелкните на ссылке «Создать проект…» (New Project…) слева на начальной странице, либо нажмите Файл->Создать проект (Ctrl+Shift+N) (File-> New Project). В появившемся окне выберите раздел «Visual C#», а в списке шаблонов: «Консольное приложение» Visual C#.
Слева, вы видите список локально установленных шаблонов для создания приложений на различных языках программирования, которые поддерживает среда Visual Studio. В шаблоне содержится минимально необходимый программный код, который создает за вас среда разработки.
Каждый проект в среде разработки Visual Studio должен содержаться в так называемом «решении» (Slution).
Сейчас возможно есть некоторые вещи, которые могут быть непонятны новичку, например, что такое «решение» или же зачем нужны шаблоны, как ими пользоваться и т.п. Все ответы на ваши вопросы вы получите немного позже. Сейчас нам важно создать нашу первую программу, дабы на её примере по порядку начать изучать C#.
В строке «Имя» задайте осмысленное имя на английском языке для своего проекта. Среда разработки нам предлагает стандартное имя «ConsoleApplication1″. Всегда задавайте имена, которые будут соответствовать вашей программе. Я выбрал «MyFirstConsoleApp». Строка «Расположение» отвечает за путь, где будет сохранён наш проект с программой. При этом будет создан отдельный каталог (если отмечена соответствующая галочка «Создать каталог для решения»). После всех необходимых настроек жмем на «OK». Наша студия создаст новое приложение из выбранного шаблона.
Практически общепринятой практикой большинства книг и уроков по программированию является пример первой программы, которая выводит на экран сообщение «Hello, World!». Давайте и мы не будем отступать от этой традиции.
В сущности, на этапе создания нового проекта среда разработки «Визуал Студио» создала за нас большую часть кода, который необходим для начального запуска и функционирования консольного приложения. Данный код, обычно выглядит следующим образом:
Выше представлено содержание файла «Program.cs». Вы всегда можете открыть его, щелкнув два раза на имени файла в окошке «Обозреватель решений» (Solution explorer).
Давайте добавим к этому коду одну строку:
Добавлять её необходимо между двумя кавычками в метод Main, чтобы получилось вот так:
Данная строка предназначена для вывода сообщения на экран консоли, в нашем случае выведется сообщение — Hello, World! (т.е. та часть, которая находится между кавычками). Если теперь нажать кнопку «Запуск» на верхней панели Студии, наша программа запустится и мы увидим наше сообщение. Однако, окно нашей программы очень быстро исчезает с экрана, так что заметить это сообщение практически невозможно. Давайте добавим еще одну строку сразу после предыдущей, дабы консоль нашей программы не закрывалась так быстро:
Эта команда ожидает нажатия клавиши пользователем, следовательно, окно нашей консоли не закроется, пока мы не нажмем любую клавишу и теперь мы сможем увидеть наше приветственное сообщение » Hello, World!». Весь код нашей первой программы на языке C# будет выглядеть следующим образом:
Вот так это окно выглядит у меня:
Если программа не запустилась, а вместо этого Визуал Студия выдала какую-либо ошибку — значит, скорее всего вы не верно набрали одну из выше представленных строк. Однако, если вы все-таки видите у себя данное окно с приветствием, Поздравляю Вас — вы написали своё первое приложение на языке C#! Пусть это не самая полезная из программ, однако с её помощью мы познакомимся с основами программирования на C#. Но, займемся этим мы уже в следующем уроке. Не останавливайтесь, пока не достигните результата, удачи!
Visual studio си шарп
Урок № 3. Создание первого проекта в MS Visual Studio
Создание первой программы
И так, пришло время создать свою первую программу на языке C# в MS Visual Studio. Так что, не будем терять время и запустим нашу IDE. При первом запуске MS Visual Studio появится окно, приведенное на рисунке ниже, в нем нужно нажать на ссылку «Не сейчас, возможно позже» (хотя, можете и осуществить вход, но для этого нужна учетная запись Microsoft), если Вы скачали русскоязычную версию Visual Studio (для простоты я буду показывать на такой версии, хотя сам использую английскую версию).
Окно приветствия, при первом запуске MS Visual Studio
В следующем окне (представлено на рисунке ниже), укажите в пункте «Параметры разработки» значение «Visual C#» и выберите подходящую Вам цветовую схему.
Настройка Visual Studio при первом запуске
Когда все действия выполнены, нужно нажать на кнопку «Запуск Visual Studio», после чего, Вы увидите окно, подобное тому что приведено ниже.
Завершение первого запуска Visual Studio
Теперь нужно немного подождать, пока выполниться инициализация Visual Studio и можно приступать к созданию первого проекта!
Дождались? Тогда переходим к созданию проекта. Для этого переходим в главное меню Visual Studio и выбираем пункт «Файл — Создать — Проект» (или «File — New — Project» в английской версии), как показано на рисунке ниже.
Создание нового проекта в VisualStudio через главное меню
Должно открыться окно «Создание проекта» (показано на рисунке ниже), в котором нужно:
- в левой области выбрать «Шаблоны — Visual C# — Windows»;
- в главной рабочей области выбрать «Консольное приложение»;
- в текстовом поле «Имя» указать название проекта (в нашем случае это будет «FirstProject»);
- в текстовом поле «Расположение» указать папку, где будут храниться проекты приложений (в моё случае это «D:ПрограммированиеProjects»);
- нажать на кнопку «OK».
Окно создания нового проекта в Visual Studio
Дождавшись завершения процесса создания нового проекта, еще раз посмотрим на главное окно IDE Visual Studio. Пример я привел на рисунке ниже, где обозначил самые важные на данном этапе рабочие области.
Главное окно Visual Studio
В главной рабочей области уже есть код программы, это так сказать стандартная заготовка, которую создает Visual Studio по умолчанию. Эта заготовка пока ничего не делает, и нам нужно её доработать… Для этого в рабоче области найдем основной «метод» (сточки зрения объектно ориентированного программирования), этот метод называется Main (как не странно, главный метод называет именно так 🙂 ). Метод Main — это так называемая точка входы программы, будем считать, что это первое место, которое будет выполняться в программе!
А теперь давайте дополним наш код, так как показано ниже (добавленная строка выделена):
А теперь давайте посмотрим на результат! Для этого нужно «собрать» и запустить наше приложение. Идем в главное меню Visual Studo и выбираем пункт «Сборка — Собрать решение» (или как в английской версии Visual Studio «Build — Build Solution»).
Сборка первого проекта в Visual Stuio
Теперь осталось только запустить наше приложение, для этого снова идем в главное меню и выбираем пункт «Отладка — Запуск без отладки» (или «Debug — Start Without Debugging» в английской версии студии).
Запуск приложения через главное меню Visual Studio
В результате должно появиться окно следующего вида:
Первое консольное приложение
Вот это есть наша первая программа, она всего лишь осуществляет вывод строки «Hello, World!» в консоль… Но дальше будет интереснее! А пока, закройте окно в котором запущена наша первая программа, для этого, можно нажать в нем на любую клавишу, и оно должно закрыться.
В следующем уроке мы поговорим о том, что же представляю из себя компьютерные программы с точки зрения программиста. А пока, попробуйте заменить строку «Hello, World!» в рабочей области Visual Studio на строку «Привет, Вася!», снова собрать и запустить приложение.
Теоретические основы программирования на C#
Существует огромное количество людей, которые интересуются компьютерными технологиями, их еще можно назвать гиками. Рано или поздно такому энтузиасту приходит в голову мысль о создании своих собственных прикладных программ, конечно в этом случае речь не идет о новой операционной системе, скорее о простеньком приложении а-ля математический калькулятор. Многие школьники, которые только начали изучать Visual Basic на уроках информатики, мечтают создать собственную игру и т.п. Конечно можно начать с логарифмической линейки и пройти весь путь матерого программиста, но можно и почти мгновенно окунуться в мир программирования, естественно, не для практического опыта а для ознакомления с целью вовлечения! Существуют языки программирования традиционно наиболее подходящие для обучения, но в процессе освоения обучающихся отпугивает большой, непонятный исходный код примеров программ, сложности с настройкой инструментария, непривычные среды исполнения программы, такие как запуск в интерпретаторе команд. Исходя из этих соображений многие педагоги рекомендуют делать первые шаги с современным и активно развивающимся языком C# или C Sharp, который базируется на программной платформе .NET Framework.
В этой статье я коротко изложу теорию предназначения и работы с языком C Sharp, а так же суть работы с программой для создания проектов на различных языках программирования — Visual Studio. Вы спросите, почему именно Visual Studio, потому что это наиболее оптимальная программа для создания подобных проектов. Надо сказать, что программировать на всех представленных в VS языках можно и в других средах или редакторах, но в качестве IDE для C# программирования явных конкурентов у VS пока не существует или они находятся на «незрелой» стадии развития. Благодаря Visual Studio мы без всяких затруднений можем создать любой интерфейс программы (GUI или UI), любые параметры обработки информации. В этой статье также будет приведен пример работы в этой IDE. А в моих следующих статьях я помогу вам создать свои первые программы — такие как калькулятор, простые игры и многое другое. Но для начала давайте рассмотрим возможности Visual Studio.
Возможности Visual Studio
Приступив к изучению C# мы получаем целую связку готовых для работы решений, многие из них предоставляются бесплатно, например, одна из современных версий Visual Studio. Благодаря простому интерфейсу программы, с ней не тяжело разобраться. С помощью VS мы можем создавать программы на таких известных языках программирования как: C, C++, C#, Visual Basic и т.д. На всех этих языках в VS мы можем создать любое приложение, любого формата — консольное приложение, обычную Windows форму, приложение для Windows Phone смартфона, библиотеку классов и тому подобные приложения. Студия очень удобна тем, что там не нужно прописывать абсолютно все коды элементов в ручном режиме (как в простом текстовом редакторе), в среде уже готовы все коды элементов управления (кнопки, чек-боксы, текстовые окна и тому подобные элементы). Что же из себя представляет C# (произносится как си шарп) непосредственно как язык?
- C# — является наследственным сыном двух мощных языков — C++ и Java,
- C# — очень удобен в использовании (написании программ), у него достаточно простой синтаксис и мощные сигнатуры, благодаря которым мы можем создать базы данных не хуже чем SQL или LINQ,
- C# — сейчас очень распространен и является одним из самых оптимальных языков программирования.
История появления C#
История си шарп — является недавней. Язык появился на свет в июне 2000 г. в результате кропотливой работы большой группы разработчиков компании Microsoft, возглавляемой Андерсом Хейлсбергом (Anders Hejlsberg). Этот человек известен как автор одного из первых компилируемых языков программирования для персональных компьютеров IBM — Turbo Pascal. Наверное, на территории бывшего Советского Союза многие разработчики со стажем, да и просто люди, обучавшиеся в той или иной форме программированию в вузах, испытали на себе очарование и удобство использования этого продукта. Кроме того, во время работы в корпорации Borland Андерс Хейлсберг прославился созданием интегрированной среды Delphi (он руководил этим проектом вплоть до выхода версии 4.0).
Появление языка си шарп и инициативы .NET отнюдь не случайно пришлось на начало лета 2000 г. Именно к этому моменту компания Microsoft подготовила промышленные версии новых компонентных технологий и решений в области обмена сообщениями и данными, а также создания Интернет-приложений (COM+, ASP+, ADO+, SOAP, Biztalk Framework). Несомненно, лучшим способом продвижения этих новинок является создание инструментария для разработчиков с их полноценной поддержкой. В этом и заключается одна из главных задач нового языка. Кроме того Microsoft не могла больше расширять одни и те же инструменты и языки разработки, делая их все более и более сложными для удовлетворения конфликтующих между собой требований поддержки современного оборудования и обеспечения обратной совместимости с теми продуктами, которые были созданы в начале 1990-х гг. во время первого появления Windows. Наступает момент, когда необходимо начать с чистого листа для того, чтобы создать простой, но имеющий сложную структуру набор языков, сред и средств разработки, которые позволят разработчику легко создавать современные программные продукты.
С# и .NET являются той самой отправной точкой. Если говорить упрощенно, то .NET представляет собой новую платформу, новый API для программирования в Windows, а С# ее новый язык, созданный с нуля, для работы с этой платформой, а также для извлечения всех выгод из прогресса сред разработки и нашего понимания принципов объектно-ориентированного программирования в течение последних 20 лет.
Необходимо отметить, что обратная совместимость не потеряна. Существующие программы будут выполняться, а платформа .NET была спроектирована таким образом, чтобы она могла работать с имеющимся программным обеспечением. Связь между компонентами в Windows сейчас почти целиком осуществляется при помощи СОМ. С учетом этого .NET обладает способностью создавать оболочки (wrappers) вокруг существующих компонентов СОМ, так что компоненты .NET могут общаться с ними, и создавать оболочки вокруг компонентов .NET, что позволяет им выглядеть как обычные СОМ-компоненты.
Авторы C# стремились создать язык, сочетающий простоту и выразительность современных объектно-ориентированных языков (вроде Java) c богатством возможностей и мощью C++. По словам Андерса Хейлсберга, C# позаимствовал большинство своих синтаксических конструкций из C++. В частности, в нем присутствуют такие удобные типы данных, как структуры и перечисления (другой потомок C++ — Java лишен этих элементов, что создает определенные неудобства при программировании). Синтаксические конструкции С# унаследованы не только от C++, но и от Visual Basic. Например, в С#, как и в Visual Basic, используются свойства классов. Как и C++ позволяет производить перегрузку операторов для созданных вами типов, Java не поддерживает ни ту, ни другую возможность. С# — это фактически гибрид разных языков, при этом синтаксически не менее (если не более) чист чем Java, так же прост как Visual Basic, и обладает практически той же мощью и гибкостью, что и C++.
Особенности С#
Одной из областей, для которых не предназначен этот язык, являются критичные по времени и высокопроизводительные программы, когда имеет значение, занимать исполнение цикла 1000 или 1050 машинных циклов, и освобождать ресурсы требуется немедленно. C++ остается в этой области наилучшим из языков низкого уровня. В С# отсутствуют некоторые ключевые моменты, необходимые для создания высокопроизводительных приложений, в частности подставляемые функции и деструкторы, выполнение которых гарантируется в определенных точках кода.