Войти
Android, Windows, Apple, Ликбез. Социальные сети. Драйверы
  • Японские телефоны Новый японский смартфон
  • Lenovo G500S: характеристики, основные особенности
  • Определяем серию продукта видеокарт Nvidia Характеристики карты nvidia 9800 gt
  • А конкуренты у смартфона есть
  • Что такое расширение файла TRZ?
  • Не работает динамик в "айфоне"
  • Что такое.NET Framework? Основные понятия платформы.NET Виды net приложений и их базовые концепции.

    Что такое.NET Framework? Основные понятия платформы.NET Виды net приложений и их базовые концепции.

    Платформа.NET Framework - это один из компонентов системы Windows. Он позволяет создавать и использовать приложения нового поколения. Назначение платформы .NET Framework :

    • создание целостной объектно-ориентированной среды программирования допускающей различные варианты реализации: код может храниться и выполняться локально; выполняться локально, а распространяться через Интернет; или выполняться удаленно;
    • предоставление среды выполнения кода, в которой число конфликтов при развертывании программного обеспечения и управлении версиями будет сведено к минимуму;
    • обеспечение безопасности выполнения кода в среде - в том числе кода, созданного неизвестным разработчиком или разработчиком с частичным доверием;
    • предоставление среды выполнения кода, позволяющей устранить проблемы, связанные с производительностью сред на основе сценариев или интерпретации;
    • унификация работы разработчиков в совершенно разных приложениях: как в приложениях Windows, так и в веб-приложениях;
    • использование промышленных стандартов во всех областях обмена данными и, как следствие, обеспечения совместимости кода, созданного в.NET Framework, с другими программами.

    Является одним из самых востребованных, многофункциональных и активно развивающихся языков программирования на данный момент. С его помощью можно разрабатывать практически любое программное обеспечение, начиная от простых win forms приложений, до крупных клиент-серверных веб-приложений или даже мобильные приложения и компьютерных игры. А работает он на базе платформы.NET Framework. Давайте же разберёмся, что это такое.

    Смотрите моё видео на тему платформа.NET Framework и среда выполнения CLR для C#

    Язык программирования C# является относительно свежим, но он уже успел заслужить доверие. Релиз первой версии состоялся в феврале 2002 года. Крайней версией языка на момент написания статьи является C# 7.2, которая вышла 16.08.2017.

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

    Так как C# является объектно-ориентированным языком, то он поддерживает наследование, полиморфизм, инкапсуляцию, строгую типизацию переменных, перегрузку операторов и другое. Все эти понятия будут нами подробно рассмотрены в последующих статьях. Благодаря использованию парадигмы объектно-ориентированного проектирования с помощью языка программирования можно достаточно легко разрабатывать масштабные и при этом гибкие проекты. При всем этом регулярно выходят новые версии языка C#, добавляя новую функциональность для упрощения жизни разработчика, увеличения скорости разработки, повышения производительности и надежности прилоежния.

    Платформа.NET

    .NET Framework – это программная платформа от компании Microsoft позволяющая выполнять разработку на различных языках программирования, так как для всех языков используется единая общеязыковая среда исполнения Common Language Runtime (CLR). Таким образом, основными возможностями платформы.NET являются:

    • Кроссплатформенность – .NET Framework поддерживается большинством современных операционных систем Windows, а также есть возможность создавать приложения поддерживаемые Linux системами, и даже мобильные приложения.
    • Мультиязычность – так как исходный код, написанный на используемом языке программирования, транслируется в общеязыковой Common Intermediate Language (CIL) код, появляется возможность вести разработку на любом поддерживаемом языке программирования, и даже использовать различные языки программирования в одном решении. Наиболее популярными поддерживаемыми языками являются C#, VB.NET, C++, F#.
    • Обширная библиотека классов и технологий – существует огромное количество готовых к использованию библиотек для решения необходимых задач. Зачастую совсем не приходится реализовывать низкоуровневую логику работы приложения, достаточно воспользоваться готовым решением, удобно поставляемым через менеджер пакетов nuget. Кроме того, платформа.NET предусматривает легкую разработку практически любого типа необходимого программного обеспечения.

    Управляемый и неуправляемый код. JIT-компиляция

    Управляемый код (managed code) – это код управляемый общеязыковой средой CLR. Это означает, что что управляющая среда имеет возможность приостановить выполнение приложения и получить специфическую информацию о состоянии приложения в любой момент его исполнения. Исходный код используемого языка программирования транслируется в управляемый код CIL (его еще называют высокоуровневым ассемблером).

    После создания библиотеки классов или приложения, исходный код продолжает храниться на языке CIL. А при запуске приложения или обращении к библиотеке выполняется Just-In-Time (JIT ) компиляция приложения в машинный код, специфичный именно для того окружения, на котором осуществляется исполнение приложения. При этом важной особенностью является то, что выполняется компиляция только той части приложения или библиотеки, к которой выполняется обращение (ну и связей естественно). Это позволяет увеличить производительность работы системы и экономить ресурсы.

    Неуправляемый код (unmanaged code) – это код, транслируемый сразу в машинный исполняемый код и исполняется операционной системой напрямую.

    Кроме того, рекомендую прочитать статью . А также подписывайтесь на группу ВКонтакте, Telegram и YouTube-канал . Там еще больше полезного и интересного для программистов.

    Понятие среды

    Определение понятия среды зависит от теоретических концепций. Все определения можно свести к следующим основным идеям:

    * среда -- это то, что нас окружает, все, что не мы, условия, которые влияют на нас. Дефиниции данного типа ближе к биологическому пониманию формирующей роли среды;

    * среда -- это некоторое соотношение между нами и окружением.

    * среда это элемент сверхсистемы. Вильден сформулировал данный подход следующим образом: "Среда -- открытая система, связанная с сверхсистемой. Между ними существует обмен материей, энергией и информацией".

    Д. Ватсон выделил пять классов определений, данных среде:

    1. среда как процесс;

    2. среда как поле активности человека;

    3. среда как поле семантики;

    4. среда как ресурс;

    5. среда как способ стратификации общества.

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

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

    2. человек формирует среду;

    3. оба способа детерминации существуют одновременно;

    4. взаимопричинная детерминация -- происходит взаимодействие между средой и человеком. Возможные формы: уравновешивающая детерминация (гомеостаз), неустойчивое равновесие;

    5. взаимодействие носит характер борьбы;

    6. среда и человек представляют единую систему;

    7. случайная детерминация, предыдущее событие никак не влияет на последующее, но общий результат может быть предсказан по законам вероятности. (14, с.8)

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

    Целесообразно различать следующие типы пространственной среды:

    * природная (естественный ландшафт, растения, животные);

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

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

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

    Существует другая классификация, согласно которой можно выделить:

    Первичную среду (среду, в которой человек проводит значительную часть времени, лично знаком с окружением и выполняет множество жизненно важных функций, например жилое помещение);

    Вторичную среду (среда, в которой встречи с людьми кратковременны, анонимны и не имеют последствий, например места отдыха).

    В среде выделяется четыре подсистемы:

    1) природная среда - общий фон общества - состояние атмосферы, воды, состав поверхности земли, структура ландшафта, растительный и животный мир, климат, плотность населения;

    2) среда "второй природы" - модификации природной среды, преобразованной людьми: угодья, дороги, зеленые насаждения, домашние животные, культурные растения;

    3) "третья природа" - искусственный мир, созданный человеком, не имеющий аналогов в естественном мире, т.е. "очеловеченная природа": асфальт, бетон городов, пространство жизни и работы, транспорт, технические объекты, культурно- архитектурная среда;

    4) социальная среда - своеобразная интеграция трех предшествующих сред, что дает в итоге определенное качество жизни, проявляющееся, например, в культурной оседлости (1, с.350)

    Жизненная среда города - социокультурно детерминированное пространство-время в котором протекает жизнедеятельность человека. Она обладает определённой структурой, состоящей из объектных (территориальных, организационных, информационных, социально-групповых и др.) и субъектных (личностных значений и смыслов, установок, мотивов и интенций и др.) элементов - всех жизненных стратегий и биографий, создающих континуум сосуществования, взаимодействия, коммуникации.

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

    Среда обитания имеет два измерения: территориальное и пространственное.

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

    Пространство - совокупность субъектных аспектов жизненной среды - место жизни, существования человека как личности, индивидуальности в её социальном, культурном (мировоззренческом, ценностном и т.п.), коммуникативном, ментальном (личностно-историческом), метафизическом (идеально-фантастическом) измерениях. Личности, как субъекты жизненных стратегий, живут в разных измерениях пространства жизнедеятельности: у каждого своя жизнь. Но траектории жизненного пути пересекаются. Одно место социокультурного пространства может быть "населено" больше, другое - меньше. Пространство жизни обладает качественными характеристиками, совокупность которых создаёт колорит места через совокупность специфических ситуаций и проблем: с одной стороны конкретных территорий, с другой стороны - конкретных людей. Специфика конкретного фрагмента городской среды обусловлена как специфической ситуацией территории, так и совокупностью специфических ситуаций людей, проживающих на данной территории. (24)

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

    Несомненно, что по-разному скомпонованная и созданная человеком среда неизбежно влияет на психику, поведение, принятие решения, восприятие, движение и понимание пространства. В действиях разных людей в одной и той же среде есть очень много сходства. Структура среды воздействует на психику и поведение людей консервативно: действие продолжается длительное время, а индивидуальность отдельных действующих лиц иногда даже может заметно не проявляться. Одна и та же среда характером своей структуры как бы предписывает нормы, образ поведения, сходную реакцию. Культурное наследие общества и влияние общественных факторов вписываются в физические координаты созданной человеком искусственной среды и определяют поведение людей независимо от психического развития индивидов. (6, с173)

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

    1. Среда не имеет определенных, твердо фиксированных рамок во времени и пространстве.

    2. Среда воздействует на все чувства, и информацию о среде мы получаем из сочетания данных всех органов.

    3. Среда дает не только главную, но и периферийную информацию.

    4. Среда содержит всегда больше информации, чем мы способны зарегистрировать и понять.

    5. Среда воспринимается в тесной связи с практической деятельностью; восприятие связано с действием и наоборот.

    6. Любая среда наряду с физическими и химическими особенностями обладает психологическими и символическими значениями.

    7. Окружающая среда воздействует как единое целое.

    От соприкосновения со средой у людей постоянно возникают всевозможные чувства. Формируют их следующие факторы:

    1. Уровень стресса (шум, загрязнение, перенаселенность, перенасыщенность импульсами).

    2. Социальные качества среды (роль физической среды в развитии или подавлении взаимодействий социального характера).

    3. Ориентация и подвижность (как горожане используют город в соответствии со своими "образами" и "представлениями" о среде обитания).

    4. Наполненность среды (эстетический уровень импульсов, которые способствуют удовлетворению потребностей и создают чувство удовлетворенности).

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

    6. Возможности принятия решений (как горожане воспринимают отдельные решения об уровне развития среды обитания и в какой степени они активно участвуют в принятии таких решений). (25)

    Среда и эмоции

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

    Чарльз Осгуд исследовал эмоциональные реакции на различные эстетические объекты. Вместе с соавторами он создал методику, позволяющую измерить и сравнить между собой эмоциональное воздействие любых объектов. Эта методика названа семантическим дифференциалом (СД). В качестве экспериментальных стимулов Ч. Осгуд использовал картины, предлагая испытуемым придумывать пары антонимов для их оценки. Обычно пятьдесят человек испытуемых оценивало пятьдесят картин. После математической обработки шкалы, близкие по смыслу, отбрасываются, и остается порядка 20 пар полярных прилагательных. К полученным шкалам был применен факторный анализ. В результате было выделено три фактора, которые Ч. Осгуд интерпретировал как "оценка", "сила", "активность".

    Фактор оценки:

    Приятный - Неприятный

    Красивый - Некрасивый

    Чистый - Грязный

    Добрый - Жестокий

    Фактор силы:

    Властный - Мягкий

    Сильный - Слабый

    Массивный - Миниатюрный

    Прочный - Непрочный

    Фактор активности:

    Возбуждающий - Релаксирующий

    Быстрый - Медленный

    Монотонный - Резкий

    Энергичный - Вялый

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

    NET Framework служит средой для поддержки, разработки и выполнения распределенных приложений, которые базируются на компонентах (элементах управления).

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

    NET Framework обеспечивает:

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

    2. Какие основные составляющие .NET Framework ?

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

    • общеязыковая исполнительная среда CLR (Common Language Runtime );
    • библиотека базовых классов.

    Общеязыковая среда CLR решает задачи автоматического выявления типов .NET , загрузки этих типов и управление ними. Среда CLR осуществляет управление памятью, обслуживание приложения, обработку потоков и реализует многочисленные проверки связанные с безопасностью.

    Библиотека базовых классов включает в себя определение разнообразных примитивов, которыми могут быть: потоки, графические API-интерфейсы, реализация баз данных, файловый ввод-вывод и прочее.

    3. Какой принцип действия общеязыковой среды выполнения CLR (Common Language Runtime )?

    Общеязыковая среда выполнения CLR управляет выполнением кода .NET .

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

    Основное назначение CLR – превратить промежуточный код MSIL в исполнительный код в процессе выполнения программы.

    Любая программа, которая скомпилирована в псевдокод MSIL , может быть выполнена в любой среде, которая содержит реализацию CLR . Это обеспечивает переносность программ в среде .NET Framework .

    Рис. 1. Процесс преобразования исходного кода в код на языке MSIL (CIL или IL ) и создание файла сборки (*.dll или *.exe )

    После этого, псевдокод превращается в исполняемый код. Это осуществляет JIT -компилятор. JIT (Just-in-time ) -компиляция – это компиляция на «лету».

    Исполнительная среда CLR отвечает за определение места размещения сборки (assembly).

    Запрашиваемый тип, который размещается в сборке (например, класс ArrayList или другой тип), определяется в двоичном файле (*.dll или *.exe ) с помощью считывания метаданных этого файла.

    После этого CLR размещает в памяти считанный из сборки тип.

    Затем CLR превращает CIL-код в соответствующие инструкции, которые подстраиваются под конкретную платформу (в зависимости от ПК, операционной системы и т.п.). Кроме того, на этом этапе происходят необходимые проверки на предмет безопасности.

    Последним происходит выполнение запрашиваемого программного кода.

    4. Что такое промежуточный язык MSIL (Microsoft Intermediate Language ) или CIL (Common Intermediate Language )?

    Сперва промежуточный язык псевдокода назывался Microsoft Intermediate Language (MSIL ). Позднее (в последних версиях .NET ) это название было изменено на Common Intermediate Language (CIL — общий промежуточный язык). Аббревиатуры MSIL , CIL и IL (Intermediate Language )означают одно и то же.

    Промежуточный язык CIL (или MSIL ) формируется после компиляции программы на некотором языке программирования, который поддерживает платформу .NET Framework .

    MSIL есть псевдокодом. MSIL определяет набор инструкций, которые:

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

    Фактически, MSIL – это язык переносного ассемблера

    5. Что такое сборка (assembly) с точки зрения технологии .NET ?

    Сборки – это файлы с расширениями *.dll или *.exe , которые содержат независимые от платформы .NET инструкции на промежуточном языке (Intermediate Language – IL ), а также метаданные типов.

    Сборка создается с помощью .NET компилятора. Сборка – это большой двоичный объект.

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

    Сборка может содержать любое количество пространств имен. Любое пространство имен может содержать любое количество типов (классов, интерфейсов, структур, перечислений, делегатов).

    6. Что размещается в сборках?

    В сборках размещается CIL -код (MSIL -код или IL -код) и метаданные.

    CIL -код компилируется под конкретную платформу только тогда, если происходит обращение к нему из исполняющей среды .NET .

    Метаданные детально описывают особенности каждого типа, который есть внутри данной двоичной .NET единицы.

    Например , при создании приложения типа Windows Forms Application в C# создается файл Assembly.info . Этот файл размещается в подпапке Properties относительно основной папки программы. В этом файле указывается общая информация о сборке.

    7. Что такое манифест (manifest )?

    Манифест – это описание самой сборки с помощью метаданных.

    В манифесте размещается информация:

    • о текущей версии сборки;
    • сведения о культуре (локализация строчных и графических ресурсов);
    • перечень ссылок на все внешние сборки, которые нужны для правильного функционирования.

    8. Схема взаимодействия между исходным кодом, компилятором .NET и механизмом выполнения .NET .

    Программист создает исходный код приложения на языке, который поддерживает технологию .NET (языке C# , C++/CLI , Visual Basic .NET и т.д.). Приложение создается в некоторой среде программирования, например Microsoft Visual Studio . Компилятор формирует сборку – файл, который содержит CIL -инструкции, метаданные и манифест.

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

    Если в исходном коде используются библиотеки базовых классов (например из сборки mscorlib.dll ), то они загружаются с помощью загрузчика классов.

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

    После этого приложение выполняется.

    Рисунок 2. Связь между исходным кодом, компилятором и механизмом выполнения .NET

    9. Какие существуют виды сборок?

    Существует два вида сборок:

    • однофайловые сборки;
    • многофайловые сборки.

    Сборка, которая состоит из одного единого модуля (*.dll или *.exe ) называется однофайловой. В однофайловых сборках все необходимые CIL -инструкции, метаданные и манифесты размещаются в одном, четко определенном пакете.

    Сборка, которая состоит из многих файлов двоичного кода .NET , называется многофайловой. Каждый из этих файлов называется модулем.

    В многофайловой сборке один из модулей есть главным (primary ).

    10. В каком файле размещается главная сборка библиотеки MS Visual Studio?

    Главная сборка размещается в файле “mscorlib.dll ”.

    11. Что такое общая система типов CTS ?

    CTS (Common Type System ) – система типов, которая содержит полное описание всех возможных типов данных и программных конструкций, которые поддерживаются общеязыковой исполнительной средой CLR . Также здесь описывается то, как эти сущности могут взаимодействовать между собою.

    Типами могут быть классы, интерфейсы, структуры, перечисления, делегаты.

    12. Какое назначение общеязыковой спецификации CLS?

    Как известно, не все языки программирования, которые являются совместимыми с .NET , могут поддерживать функциональные возможности системы типов CTS . Для этого используется общеязыковая спецификация CLS (Common Language Specification ).

    Задачей CLS есть описание только того подмножества общих типов и программных конструкций, которые воспринимаются абсолютно всеми языками программирования, которые поддерживают .NET .

    13. Какие языки программирования поддерживают технологию .NET ?

    В системе разработки приложений MS Visual Studio технологию .NET поддерживают следующие языки программирования: C# , Visual Basic .NET , C++/CLI , JScript .NET , F# , J# .

    Для того, чтобы можно было использовать технологию .NET нужно установить на компьютере программное обеспечение Microsoft .NET Framework Software Development Kit (SDK ) или Microsoft Visual Studio любой версии.

    14. Что такое пространство имен (namespace )?

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

    Примеры названий пространств имен:

    System System.Data System.IO System.Collections System.Threading.Tasks

    Например, в пространстве имен System.Data размещаются основные типы для работы с базами данных, в пространстве имен System.Collections размещаются основные типы для работы с коллекциями.

    15. Как вывести содержимое сборок, пространств имен и типов в MS Visual Studio ?

    В системе Microsoft Visual Studio есть утилита Object Browser , которая вызывается с меню View (рисунок 3).

    Рис. 3. Вызов утилиты Object Browser

    В результате откроется окно Object Browser , в котором будут отображаться сборки, которые используются в определенной технологии.

    На рисунке 4 отображен список сборок, которые отображаются в технологии “.NET Framework 4 ”. Выделена сборка с именем “mscorlib ”.

    Рис. 4. Окно Object Browser с выделенной сборкой mscorlib.dll

    Если раскрыть содержимое сборки mscorlib (знак “+ ”), то будет отображен список всех пространств имен данной сборки (рисунок 5). Как видно из рисунка, сборка включает пространства имен Microsoft.Win32 , System , System.Collections , System.Collections.Concurrent и много других.

    Рис. 5. Сборка mscorlib и список пространств имен, которые входят в нее

    Аналогично раскрывается любое из пространств имен. В пространствах имен описываются типы. В типах описываются методы, свойства, константы и т.п.

    На рисунке 6 изображен класс BinaryReader из пространства имен System.IO . По всей видимости, в классе реализованы методы с именами BinaryReader() , Close() , Dispose() , FillBuffer() и прочие.

    Рис. 6. Содержимое класса BinaryReader

    16. Как подключить пространство имен в программе на C# ?

    Для подключения пространства имен используется ключевое слово using

    Всем доброго времени суток. На связи Алексей Гулынин. В данной первой статье по C# я бы хотел рассказать о платформе .NET Framework . Язык C# и сама платформа впервые появились в 2002 году. Основной целью их создания было обеспечить более простую, масштабируемую и, главное, более мощную модель программирования, по сравнению с моделью программирования COM. На базе платформы.NET Framework можно строить приложения для семейства операционных систем Windows, также можно строить приложения для Unix, Linux, Mac OS X. Ниже представлен краткий список возможностей, поддерживаемых.NET Framework :

    1) Возможность взаимодействия с существующим кодом . Данная возможность позволяет компилировать, к примеру, двоичные компоненты COM и компоненты.NET.
    2) Поддержка различных языков программирования . Приложения.NET можно создавать с помощью разных языков программирования, к примеру C#, Visual Basic, F#.
    3) Общий исполняющий механизм . Смысл здесь в том, что в.NET существует определенный набор типов, который способен понимать каждый поддерживающий.NET, язык.
    4) Языковая интеграция . Можно написать класс на Visual Basic, а затем расширить его на C#.
    5) Большая библиотека базовых классов . Благодаря данной библиотеке, мы можем забыть о сложностях реализации низкоуровневых обращений к API-интерфейсам и сосредоточиться просто на программировании.
    6) Простая модель развертывания . В отличии от библиотеки COM, .NET не нужно регистрироваться в реестре. Она может существовать в виде сборки.dll.

    Возможно здесь я написал о каких-то непонятных вещах, например классы, API-интерфейсы. Заморачиваться пока с этим не стоит. В принципе, программировать можно и без знания всего это, но так, как мы с вами учимся, давайте будем совсем немного разбавлять практику теорией.
    Чтобы совсем вас добить теорией расскажу об основных строительных блоках платформы.NET:

    1) CLR (Common Language Runtime) — общеязыковая исполняющая среда. Первостепенной задачей данной среды является загрузка и управления объектами.NET (чтобы программист не делал этого вручную). Кроме этого, CLR заботится о ряде низкоуровневых деталей, например, управление памятью, размещение приложения, выполнение проверок, связанных с безопасностью приложения.
    2) CTS (Common Type System) — общая система типов. Здесь описаны все возможные типы данных, поддерживаемые исполняемой средой (CLR). Нужно знать, что отдельно взятый язык, может не поддерживать абсолютно все средства, определенные спецификацией CTS. Поэтому существует:
    3) CLS (Common Language Specification) . Здесь описано подмножество общих типов и программных конструкций, которые обязательно должны поддерживать всеми языками программирования для платформы.NET Framework.

    В дополнение к среде CLR и спецификациям CTS/CLS, платформа.NET предоставляет библиотеку базовых классов , которая доступна всем языкам программирования.NET. Данная библиотека позволяет на высоком уровне (не задумываясь о деталях реализации) управлять, к примеру, файловым вводом-выводом, графикой, различными внешними устройствами, потоками данных, также различными службами.

    Писать теорию я не мастер, поэтому скажу, для тех, кто хочет глубже понять философию.NET, я рекомендую прочитать первую главу книги Эндрю Троелсена «Язык программирования C# 5.0 и платформа.NET 4.5, год издания 2013″. Данная краткая информация о платформе.NET взята из этой книги. Проблема, с которой я столкнулся при изучении этой книги, — это сложность изложения материала для новичка. Возможно, вам так не покажется, это только моё мнение.

    Ну что, друзья мои, у вас ещё не отпала охота изучать C#? Тогда давайте смело идти дальше, обещаю, что в будущем теоретических статей будет по минимуму (если только в начале изучения C# ), только одна практика. Если нужна теория — "курите" книгу Эндрю Троелсена.
    А так, если нужна какая-нибудь информация по классу или его методу, идите сразу на