Презентация на тему: » Основные принципы к построению пользовательского интерфейса.» — Транскрипт:
1 Основные принципы к построению пользовательского интерфейса
2 Пользовательский интерфейс – система правил, принципов, средств, регламентирующая и обеспечивающая взаимодействие программного продукта с пользователем. Дизайн пользовательского интерфейса – проектирование программных продуктов, соответствующих практическим, физическим и эмоциональным потребностям широкого круга пользователей.
3 Принцип простоты и адекватности К пользовательскому интерфейсу предъявляются два противоречивых требования: простота и адекватность предметной области. Основная проблема при разработке пользовательского интерфейса состоит в нахождении компромисса между его простотой и необходимостью учета многочисленных особенностей. Попытка построить единый универсальный пользовательский интерфейс с большим количеством нагрузочных параметров, несомненно, обречена на неудачу. Для достижения компромисса между простотой, и в тоже время его адекватности, необходимо однозначно определить какие подсистемы, элементы и взаимосвязи между ними войдут в пользовательский интерфейс, а какие будут носить затемняющий понимание характер. Продуманный и не продуманный пользовательский интерфейс
MatLab. Урок 1. Основы программирования.
4 Принцип стилистической целостности Стилистическая целостность пользовательского интерфейса достигается единообразием оформления, под которым подразумевается ограничения в выборе гарнитур и размеров шрифта, а также равномерное распределение свободного пространства.
5 Принцип выравнивания Ни один элемент пользовательского интерфейса не должен располагаться случайным образом, т.е. нельзя располагать элементы или подсистемы где-либо только потому, что там присутствует свободное пространство. Принцип выравнивания помогает создать визуально уравновешенный дизайн пользовательского интерфейса
6 Принцип уменьшения визуального шума Визуальный шум является одним из основных препятствий для получения комплексного информационного представления о системе. Можно выделить два типа визуального шума. 1) Перегруженность.
При работе с пользовательскими интерфейсами, имеющими значительные размеры, большое количество всевозможных подсистем, элементов и бесчисленное множество различных цветов и яркостей, зрительная система пользователя испытывает повышенную нагрузку. 2) Фоновый шум. В качестве фона пользовательского интерфейса рекомендуется применять малонасыщенные и нейтральные цвета средней частоты спектра. Не допускается использование в большом количестве цветов, которые затрудняют восприятие.
7 Принцип использования привычных ассоциаций и стереотипов Сущность данного принципа состоит в применении для пользовательских интерфейсов таких условных обозначений элементов, которые ассоциируются с общепринятыми буквенными обозначениями данных элементов. Желательно использовать, если это возможно, вместо абстрактных знаков и символов, графические образы, которые ассоциируются с элементами. Если изображение или его часть знакомо пользователю, то он сможет идентифицировать его даже по его фрагменту. Любые образы должны давать однозначное представление о функции. Неграмотное использование графики может дезориентировать пользователя в программе, исказить восприятие.
Диаграмма Ганта — Что это? Как строить? Зачем она вообще нужна?!
8 Принцип избыточности Для улучшения восприятия структуры системы иногда бывает необходимо параллельное представление наиболее важных компонентов или взаимосвязей. Повтор панели навигации внизу экрана более простом оформлении Названия элементов продублированы графическими образами
10 Принцип визуальной иерархии Элементы, являющиеся частями друг друга, представляются в виде вложений. Необходимо организовать внешний вид элементов таким образом, чтобы пользовательский интерфейс ясно и четко отображал отношения между элементами – какие элементы связаны между собой, какие являются частями других элементов (подсистем). Очевидно, что данный список элементов необходимо сделать понятнее. Тот же список, визуально разбитый на группы.
11 Принцип удобства использования Важным моментом при создании интерфейсов является «usability» (usability удобство и простота использования). При организации пользовательского интерфейса необходимо руководствоваться не только аспектами красоты, но и практическим удобством расположения управляющих элементов. Пользователь не должен долго искать необходимую ему функцию. Управляющие элементы пользовательского интерфейса должны располагаться там, где пользователь ожидает их увидеть.
12 Принцип визуальной иерархии Каждый элемент пользовательского интерфейса необходимо взвешивать по его способности помочь пользователю воспринять структуру приложения. Пользовательский интерфейс не должен содержать лишних, затемняющих его элементов. Применять элементы, обозначающие несущественные особенности приложения, не следует.
Необходимо определить относительную важность каждого из элементов модели по отношению к поставленной системной цели. Необходимо обособить элементы пользовательского интерфейса, обладающие относительной автономностью. Эти обособленные участки должны быть четко отграничены от других и согласно принципу структурности должны иметь завершенную, легко запоминающуюся и отличающуюся структуру.
13 Принцип визуальной иерархии Равнозначные элементы необходимо обозначать одинаковыми графическими объектами, сгруппировывать под одним заголовком, применять к ним одинаковый стиль оформления или размещать их в единую четко определенную область пользовательского интерфейса. Чем более важен элемент, тем более он заметен. Элементы, логически связанные между собой, должны быть связаны и визуально.
14 Принцип визуальной иерархии Значение графического элемента должно определяться его окружением. Желательно выделять размером, формой или цветом элементы, наиболее существенные для принятия решений.
Например, важные элементы отображаются несколько крупнее, выделяются цветом, отделяются свободным пространством, размещаются ближе к верхней части или центру или используются различные комбинации данных способов. Кроме того, желательно снизить нагрузки (особенно когнитивную и визуальную) для облегчения восприятия и использования пользовательского интерфейса. Но иногда необходимо увеличить ту или иную нагрузку. Например, чтобы акцентировать внимание, можно расширить интерфейс дополнительной визуальной информацией и тем самым повысить его нагруженность (основные факторы визуального веса: цвет, контраст, яркость, размер, плотность и т.п.).
15 Принцип визуальной иерархии Логически связанные между собой элементы должны быть связаны визуально. Связанные элементы обычно объединяют в группы, тогда они воспринимаются как единое целое, а не как скопление артефактов.
Сбалансированная иерархия помогает не только задать порядок восприятия пользовательского интерфейса, но также помогает объединять отдельные элементы в единое целое. Ни один элемент приложения не должен занимать случайную область пространства, тогда они образуют один визуальный компонент. Это способствует организации информации, уменьшению визуального шума и повышает восприятие приложения в целом. Но если структурных элементов большое количество, то структурировать необходимо лишь те элементы, между которым можно установить четкую связь. Таким образом, в компонентном составе должны присутствовать ясно выделенные подсистемы элементов, которые желательно ассоциировать с некоторым заголовком.
16 Принцип визуальной иерархии Американский ученый-психолог Джордж Миллер обнаружил закономерность, суть которой состоит в том, что кратковременная человеческая память может запомнить и повторить только 7 ± 2 элемента. Соответственно группировать элементы системы желательно с учетом этого правила – то есть не более семи в группе, в крайнем случае – девяти. Такие небольшие группы объектов наиболее хорошо воспринимаются пользователями без использования каких-либо специальных приемов. При этом группировка, естественно, должна быть осмысленной.
17 Принцип перевернутой пирамиды Смысл этого принципа состоит в том, чтобы вынести самую важную информацию и элементы управления на первый план и сделать их легкодоступными пользователю. Только небольшая часть посетителей просматривают информацию за пределами окна браузера, в котором они первоначально увидели содержимое. Исходя из этого, желательно размещать содержимое в виде перевернутой пирамиды: 1. Начать с того, что быстро даст пользователю представление о сути содержимого страницы. В данном случае пользователи могут завершить сеанс взаимодействия в любой момент и будут уверенны, что узнали главное. 2. Содержимое, которое менее важно или не существенно для понимания располагается внизу.
18 Принцип перевернутой пирамиды
19 Принцип эмоционального воздействия Цвет вызывает эмоции. Например, красный цвет – волнующий, желтый – веселый и т.п. Разрабатывая пользовательский интерфейс в ярких цветах, необходимо подумать об эмоциях, которые они будут вызывать у пользователя. Цвет является элементом, который так же важен, как навигация, изображения или содержимое. Интерфейс с грамотно подобранной цветовой гаммой создают ощущение, которое не возможно получить от интерфейса, где цвета не используются в качестве элемента дизайна или просто плохо подобранны.
22 Заголовки могут несколько удлинить страницу, но для пользователей не составит труда прокрутить ее вниз, если им интересно ее содержимое. Если контентная часть отредактирована в соответствии с правилом перевернутой пирамиды, то пользователи быстро определят, нужен ли им данный контент.
23 Принцип контроля Пользователи чувствуют себя уверенно, когда владеют ситуацией. Плохо спроектированные пользовательские интерфейсы вынуждают пользователя выполнять незапланированные действия, которые мешают достижению конечной цели. Необходимо сообщать пользователю о текущем состоянии, в которой он (или программное приложение) находится в данный момент, периодически отображая системный статус, объясняя что произойдет, если он сделает то или иное действие.
Источник: www.myshared.ru
Искусство программирования для Unix [Эрик Стивен Реймонд] (fb2) читать постранично, страница — 11
выбраны правильные структуры данных и все организовано хорошо, то алгоритмы почти всегда будут очевидными. Для программирования центральными являются структуры данных, а не алгоритмы [8] .
Правило 6. Правила 6 нет.
Кен Томпсон, спроектировавший и реализовавший первую Unix, усилил четвертое правило Пайка афористичным принципом, достойным Дзэн-патриарха:
В случае сомнений используйте грубую силу.
Гораздо сильнее Unix-философия была выражена не высказываниями старейшин, а их действиями, которые воплощает сама Unix. В целом, можно выделить ряд идей.
1. Правило модульности: следует писать простые части, связанные ясными интерфейсами.
2. Правило ясности: ясность лучше, чем мастерство.
3. Правило композиции: следует разрабатывать программы, которые будут взаимодействовать с другими программами.
4. Правило разделения: следует отделять политику от механизма и интерфейсы от основных модулей.
5. Правило простоты: необходимо проектировать простые программы и «добавлять сложность» только там, где это необходимо.
6. Правило расчетливости: пишите большие программы, только если после демонстрации становится ясно, что ничего другого не остается.
7. Правило прозрачности: для того чтобы упростить проверку и отладку программы, ее конструкция должна быть обозримой.
8. Правило устойчивости: устойчивость— следствие прозрачности и простоты.
9. Правило представления: знания следует оставлять в данных, чтобы логика программы могла быть примитивной и устойчивой.
10. Правило наименьшей неожиданности: при проектировании интерфейсов всегда следует использовать наименее неожиданные элементы.
11. Правило тишины: если программа не может «сказать» что-либо неожиданное, то ей вообще не следует «говорить».
12. Правило исправности: когда программа завершается аварийно, это должно происходить явно и по возможности быстро.
13. Правило экономии: время программиста стоит дорого; поэтому экономия его времени более приоритетна по сравнению с экономией машинного времени.
14. Правило генерации: избегайте кодирования вручную; если есть возможность, пишите программы для создания программ.
15. Правило оптимизации: создайте опытные образцы, заставьте их работать, прежде чем перейти к оптимизации.
16. Правило разнообразия: не следует доверять утверждениям о «единственно верном пути».
17. Правило расширяемости: проектируйте с учетом изменений в будущем, поскольку будущее придет скорее, чем кажется.
Новичкам в Unix стоит поразмышлять над данными принципами. Технические тексты по разработке программного обеспечения рекомендуют большую их часть, однако в других операционных системах, как правило, имеется недостаток необходимых средств и традиций для их внедрения, поэтому большинство программистов не могут применять их последовательно. Они принимают несовершенные инструменты, плохие конструкции, перенапряжение и распухший код как должное, а впоследствии удивляются, почему все это раздражает поклонников Unix.
1.6.1. Правило модульности: следует писать простые части, связанные ясными интерфейсами
Как однажды заметил Браян Керниган, «управление сложностью является сущностью компьютерного программирования» [41]. Отладка занимает большую часть времени разработки, и выпуск работающей системы обычно в меньшей степени является результатом талантливого проектирования, и в большей — результатом должного управления, исключающего многократное повторение ошибок.
Трансляторы, компиляторы, блок-схемы, процедурное программирование, структурное программирование, «искусственный интеллект», языки четвертого поколения, объектно-ориентированные языки и бесчисленные методологии разработки программного обеспечения рекламировались и продавались как средство борьбы с этой проблемой. Все они потерпели неудачу, если только их успех заключался в повышении обычного уровня сложности программы до той точки, где (вновь) человеческий мозг едва ли мог справиться. Как заметил Фред Брукс [8], «серебряной пули не существует».
Единственным способом создания сложной программы, не обреченной заранее на провал, является сдерживание ее глобальной сложности, т.е. построение программы из простых частей, соединенных четко определенными интерфейсами, так что большинство проблем являются локальными, и можно рассчитывать на обновление одной из частей без разрушения целого.
1.6.2. Правило ясности: ясность лучше, чем мастерство
Поскольку обслуживание является важным и дорогостоящим, следует писать такие программы, как если бы обмен наиболее важной информацией, осуществляемый программой, был связан не с компьютером, выполняющим данную программу, а с людьми, которые будут читать и поддерживать исходный код в будущем (включая и самого создателя программы).
Источник: coollib.net
Начальные сведения
Аннотация: Первое представление об основных понятиях объектно-ориентированного программирования, платформе .NET и входящей в ее состав среде разработки Visual Studio .NET.
Предисловие
Этот курс лекций построен на основе учебника автора «C#. Программирование на языке высокого уровня», который выпускается издательством ПИТЕР с 2007 года. Учебник имеет гриф Министерства образования Российской федерации и удостоен в 2010 году премии Правительства Санкт-Петербурга «За выдающиеся достижения в сфере высшего и профессионального образования» в составе учебно-методического комплекса по языкам программирования.
В этот комплекс входят также учебники и практикумы по языкам C/C++ и Паскаль , построенные по единому принципу. Соответствующие учебные курсы можно найти на этом сайте. В комплекс входит более 250 индивидуальных вариантов заданий на лабораторные работы в расчете на учебную группу из 20 человек (все варианты можно найти в учебнике [4]) и более 1000 тестовых вопросов. Преподавателям будут полезны презентации лекций. На сайте интернет-школы программирования http://ips.ifmo.ru можно проверить правильность выполнения некоторых лабораторных работ с помощью системы автоматического тестирования программ.
Знакомство с платформой .NET и средой Visual Studio .NET
Презентацию к данной лекции Вы можете скачать здесь.
Совокупность средств, с помощью которых программы пишут, корректируют, преобразуют в машинные коды, отлаживают и запускают, называют средой разработки, или оболочкой. Среда разработки обычно содержит:
- текстовый редактор, предназначенный для ввода и корректировки текста программы;
- компилятор, с помощью которого программа переводится с языка, на котором она написана, в машинные коды;
- средства отладки и запуска программ ;
- общие библиотеки, содержащие многократно используемые элементы программ;
- справочную систему и другие элементы.
Под платформой понимается нечто большее, чем среда разработки для одного языка. Платформа . NET (произносится «дотнет») включает не только среду разработки для нескольких языков программирования, называемую Visual Studio. NET , но и множество других средств, например, механизмы поддержки баз данных, электронной почты и коммерции.
Среда разработки Visual Studio. NET предоставляет мощные и удобные средства написания, корректировки, компиляции, отладки и запуска приложений, использующих . NET -совместимые языки. Корпорация Microsoft включила в платформу средства разработки для четырех языков: C#, VB. NET , C++ и J#.
Платформа . NET является открытой средой . Это значит, что компиляторы для нее могут поставляться и сторонними разработчиками. Для обеспечения переносимости компиляторы, входящие в состав платформы, переводят программу не в машинные коды, а в промежуточный язык (Common Intermediate Language , CIL, или просто IL), который не содержит команд, зависящих от языка, операционной системы и типа компьютера. Программа на этом языке выполняется не самостоятельно, а под управлением системы, которая называется общеязыковой средой выполнения (Common Language Runtime, CLR ).
Среда CLR может быть реализована для любой операционной системы. При выполнении программы CLR вызывает так называемый JIT — компилятор , переводящий код с языка IL в машинные команды конкретного процессора, которые немедленно выполняются. JIT означает «just in time «, что можно перевести как «вовремя», то есть компилируются только те части программы, которые требуется выполнить в данный момент. Каждая часть программы компилируется один раз и сохраняется в кэше 1 Кэш— область оперативной памяти, предназначенная для временного хранения информации. для дальнейшего использования.
Компилятор в качестве результата своего выполнения создает так называемую сборку — файл с расширением exe или dll, который содержит код на языке IL и метаданные . Метаданные представляют собой сведения об объектах, используемых в программе, а также сведения о самой сборке. Они позволяют организовать межъязыковое взаимодействие, обеспечивают безопасность и облегчают развертывание приложений, то есть установку программ на компьютеры пользователей.
Во время работы программы среда CLR следит за тем, чтобы выполнялись только разрешенные операции , осуществляет распределение и очистку памяти и обрабатывает возникающие ошибки. Это многократно повышает безопасность и надежность программ.
Платформа . NET содержит огромную библиотеку классов, которые можно использовать при программировании на любом языке . NET . Подробное изучение библиотеки классов . NET — необходимая, но и наиболее трудоемкая задача программиста при освоении этой платформы. Библиотека классов вместе с CLR образуют каркас (framework), то есть основу платформы.
Все . NET -совместимые языки должны отвечать требованиям общеязыковой спецификации (Common Language Specification , CLS ), в которой описывается набор общих для всех языков характеристик. Это позволяет использовать для разработки приложения несколько языков программирования и вести полноценную межъязыковую отладку. Все программы независимо от языка используют одни и те же базовые классы библиотеки . NET .
Приложение в процессе разработки называется проектом. Проект объединяет все необходимое для создания приложения: файлы, папки, ссылки и прочие ресурсы. Среда Visual Studio. NET позволяет создавать проекты различных типов, например:
- Windows-приложение использует элементы интерфейса Windows, включая формы, кнопки, флажки и прочее;
- консольное приложение выполняет вывод «на консоль», то есть в окно командного процессора;
- библиотека классов объединяет классы, которые предназначены для использования в других приложениях;
- веб-приложение — это приложение, доступ к которому выполняется через браузер (например, Internet Explorer) и которое по запросу формирует веб-страницу и отправляет ее клиенту по сети;
Несколько проектов можно объединить в решение (solution). Это облегчает совместную разработку проектов
Платформа . NET рассчитана на объектно-ориентированную технологию создания программ, поэтому прежде чем начинать изучение языка C#, необходимо познакомиться с основными понятиями объектно-ориентированного программирования ( ООП ).
Введение в объектно-ориентированное программирование
Принципы ООП проще всего понять на примере программ моделирования. В реальном мире каждый предмет или процесс обладает набором статических и динамических характеристик, иными словами, свойствами и поведением. Поведение объекта зависит от его состояния и внешних воздействий. Например, объект «автомобиль» никуда не поедет, если в баке нет бензина, а если повернуть руль, изменится положение колес.
Понятие объекта в программе совпадает с обыденным смыслом этого слова: объект представляется как совокупность данных, характеризующих его состояние, и функций их обработки, моделирующих его поведение. Вызов функции на выполнение часто называют посылкой сообщения объекту. Например, вызов функции «повернуть руль» интерпретируется как посылка сообщения «автомобиль, поверни руль!».
При создании объектно-ориентированной программы предметная область представляется в виде совокупности объектов. Выполнение программы состоит в том, что объекты обмениваются сообщениями. Это позволяет использовать при программировании понятия, более адекватно отражающие предметную область.
При представлении реального объекта с помощью программного необходимо выделить в первом его существенные особенности. Их список зависит от цели моделирования. Например, объект «крыса» с точки зрения биолога, изучающего миграции, ветеринара или, скажем, повара будет иметь совершенно разные характеристики. Выделение существенных с той или иной точки зрения свойств называется абстрагированием. Таким образом, программный объект — это абстракция .
Важным свойством объекта является его обособленность. Детали реализации объекта, то есть внутренние структуры данных и алгоритмы их обработки, скрыты от пользователя объекта и недоступны для непреднамеренных изменений. Объект используется через его интерфейс — совокупность правил доступа.
Скрытие деталей реализации называется инкапсуляцией (от слова «капсула»). Ничего сложного в этом понятии нет: ведь и в обычной жизни мы пользуемся объектами через их интерфейсы. Сколько информации пришлось бы держать в голове, если бы для просмотра новостей надо было знать устройство телевизора!
Таким образом, объект является «черным ящиком», замкнутым по отношению к внешнему миру. Это позволяет представить программу в укрупненном виде — на уровне объектов и их взаимосвязей, а следовательно, управлять большим объемом информации и успешно отлаживать сложные программы.
Сказанное можно сформулировать более кратко и строго: объект — это инкапсулированная абстракция с четко определенным интерфейсом.
Инкапсуляция позволяет изменить реализацию объекта без модификации основной части программы, если его интерфейс остался прежним. Простота модификации является очень важным критерием качества программы: ведь любой программный продукт в течение своего жизненного цикла претерпевает множество изменений и дополнений.
Кроме того, инкапсуляция позволяет использовать объект в другом окружении и быть уверенным, что он не испортит не принадлежащие ему области памяти, а также создавать библиотеки объектов для применения во многих программах. Инкапсуляция наряду с наследованием и полиморфизмом считаются тремя «китами», на которых стоит ООП .
Каждый год в мире пишется огромное количество новых программ, и важнейшее значение приобретает возможность многократного использования кода. Преимущество объектно-ориентированного программирования состоит в том, что для объекта можно определить наследников, корректирующих или дополняющих его поведение. При этом нет необходимости не только повторять исходный код родительского объекта, но даже иметь к нему доступ .
Наследование является мощнейшим инструментом ООП и применяется для следующих взаимосвязанных целей:
- исключения из программы повторяющихся фрагментов кода;
- упрощения модификации программы;
- упрощения создания новых программ на основе существующих.
Кроме того, только благодаря наследованию появляется возможность использовать объекты, исходный код которых недоступен, но в которые требуется внести изменения.
Наследование позволяет создавать иерархии объектов. Иерархия представляется в виде дерева, в котором более общие объекты располагаются ближе к корню, а более специализированные — на ветвях и листьях. Наследование облегчает использование библиотек объектов, поскольку программист может взять за основу объекты, разработанные кем-то другим, и создать наследников с требуемыми свойствами.
Объект , на основании которого строится новый объект , называется родительским объектом, объектом-предком, базовым классом, или суперклассом, а унаследованный от него объект — потомком, подклассом, или производным классом.
ООП позволяет писать гибкие, расширяемые и читабельные программы. Во многом это обеспечивается благодаря полиморфизму, под которым понимается возможность во время выполнения программы с помощью одного и того же имени выполнять разные действия или обращаться к объектам разного типа. Чаще всего понятие полиморфизма связывают с механизмом виртуальных методов.
Подводя итог сказанному, сформулирую достоинства ООП:
- использование при программировании понятий, близких к предметной области;
- возможность успешно управлять большими объемами исходного кода благодаря инкапсуляции, то есть скрытию деталей реализации объектов и упрощению структуры программы;
- возможность многократного использования кода за счет наследования;
- сравнительно простая возможность модификации программ;
- возможность создания и использования библиотек объектов.
Эти преимущества особенно явно проявляются при разработке программ большого объема и классов программ. Однако ничто не дается даром: создание объектно-ориентированной программы представляет собой весьма непростую задачу. Чтобы эффективно использовать готовые объекты из библиотек, необходимо освоить большой объем достаточно сложной информации. Неграмотное же применение ООП способно привести к созданию излишне сложных программ, которые невозможно отлаживать и усовершенствовать.
Понятие класса
Для представления объектов в языках C#, Java, С++, Delphi и т. п. используется понятие класс, аналогичное обыденному смыслу этого слова в контексте «класс членистоногих», «класс млекопитающих», «класс задач» и т. п. Класс является обобщенным понятием, определяющим характеристики и поведение некоторого множества конкретных объектов этого класса, называемых экземплярами класса.
«Классический» класс содержит данные, задающие свойства объектов класса , и функции, определяющие их поведение. В последнее время в класс часто добавляется третья составляющая — события, на которые может реагировать объект класса 2 Это оправдано для классов, использующихся в программах, построенных на основе событийно-управляемой модели, например, при программировании для Windows. .
Все классы библиотеки .NET, а также все классы, которые создает программист в среде .NET, имеют одного общего предка — класс object , и организованы в единую иерархическую структуру. Внутри нее классы логически сгруппированы в так называемые пространства имен, которые служат для упорядочивания имен классов и предотвращения конфликтов имен: в разных пространствах имена могут совпадать. Пространства имен могут быть вложенными, их идея аналогична знакомой вам иерархической структуре каталогов на компьютере.
Любая программа, создаваемая в .NET, использует пространство имен System . В нем определены классы, которые обеспечивают базовую функциональность, например, поддерживают выполнение математических операций, управление памятью и ввод-вывод.
Обычно в одно пространство имен объединяют взаимосвязанные классы. Например,пространство System.Net содержит классы, относящиеся к передаче данных по сети, System.Windows.Forms — элементы графического интерфейса пользователя, такие как формы, кнопки и т. д. Имя каждого пространства имен представляет собой неделимую сущность, однозначно его определяющую.
Последнее, о чем необходимо поговорить, прежде чем начать последовательное изучение языка C#, — как создать простейшее приложение в среде Visual Studio.NET. Для того чтобы изучать именно язык программирования, а не сопутствующую информацию, мы будем работать с консольными приложениями. При запуске консольного приложения операционная система создает так называемое консольное окно, через которое идет весь ввод-вывод программы. Внешне это напоминает работу в операционной системе в режиме командной строки, когда ввод-вывод представляет собой поток символов.
Источник: intuit.ru