СОДЕРЖАНИЕ
1. Введение в языки программирования высокого уровня
1.1. Основные понятия и определения
1.2. Классификация языков программирования
1.4. Развитие среды программирования MS Visual Studio
2. Создание графических приложений в языках программирования высокого уровня
2.1. Принципы разработки пользовательского интерфейса
2.2. Этапы проектирования пользовательского интерфейса
2.3. Язык программирования высокого уровня C#
2.4. Использование языка C# при разработке графического интерфейса
- языки прикладного программирования (позволяют разработать программы, которые помогают пользователю решать задачи в разных сферах деятельности).
Вид информации, представленный каждым словом данных в памяти ЭВМ, может быть различен. Например, некоторые слова могут содержать целые числа, в то время как другие могут содержать символы. Программирование на машинном уровне требует точного знания того, как эти данные представлены в виде последовательности битов и какие машинные команды должны применяться для реализации требуемых операций. Это трудоемкий и чреватый ошибками процесс, обойтись без которого можно путем применения языка высокого уровня, дающего программисту абстрактную модель, в которой данные и операции над ними можно специфицировать в проблемно-ориентированных, а не в машинно-ориентированных терминах. [1]
Основой любого языка программирования является система его типов данных. Тип данных специфицирует структуру объектов, область значений, которые могут принимать элементы объектов этого типа, и множество операций, применимых к элементам объектов этого типа. Поэтому тип данных определяет, что представляет собой объект, и накладывает ограничения на то, как он может использоваться.
Простыми словами, тип данных – это допустимое множество значений.
Встроенные – типы данных, которые заранее определены в конкретном языке программирования. Помимо значений этих типов обычно описываются и операции над ними. Сюда можно отнести целые числа (int), числа с плавающей точкой (float), логический тип (bool) и другие.
Уточняемые – типы данных, позволяющие ограничить значения базового типа в пределах диапазона. Суть состоит в том, что для любого значения любого встроенного (и перечисляемого) типа существует его внешнее литеральное представление. Более того, по литеральному представлению константы можно однозначно определить тип, к которому она относится. Если к тому же на множестве значений типа задано отношение порядка (определены операции сравнения), то иногда возникает потребность сказать, что в данном приложении нас интересует подмножество значений такого типа, ограниченное некоторым специфицированным диапазоном. Сюда относят тип поддиапазона целых чисел в языках линии Паскаль. [17]
Перечисляемые – типы данных, представляющие собой конечное число значений, которые задаются перечислением. Обычно для любого перечисляемого типа предопределяются операции получения значения по его номеру и получения номера по значению. Кроме того, для перечисляемого типа предопределяются операции сравнения и получения следующего и предыдущего значения. По причине однозначного сопоставления значению перечисляемого типа натурального числа, возможно неявное преобразование этих значений к значению любого числового типа данных. Сюда можно отнести, например, тип Color = (red, blue, green).
Конструируемые (составные) – типы данных, которые состоят из значений одного или нескольких других типов. Сюда можно отнести массивы и списки. В сильно типизированных языках для любого значения типа массива известно число элементов базового типа. Поэтому в принципе всегда возможен контроль значения индекса, хотя на практике такой контроль обычно отменяется при использовании программы в производственном режиме. Типы массивов позволяют работать с регулярными структурами данных, каждый элемент которых относится к одному и тому же базовому типу. Существует другая разновидность составных конструируемых типов данных, которые позволяют определять и использовать нерегулярные структуры данных, элементы которых могут относиться к разным встроенным или явно определенным типам данных. Собирательно типы этой разновидности называются типами записи. [17]
Среда разработки MS Visual Studio начинает свое развитие с 1995 года, когда была выпущена первая версия продукта под таким названием. До этого в начале 1990-х гг. компанией Microsoft были выпущены отдельные продукты для программирования на языках высокого уровня – это MS Visual C++, MS Visual Basic, MS Visual FoxPro, MS Visual SourceSafe. И уже с 1995 г. все эти продукты были объединены под одним названием – Visual Studio. Эта среда программирования была выпущена в версии 4.0, видимо, потому, что в отдельном виде описанные выше компоненты среды уже выпускались до этого в течение нескольких лет.
Среда программирования Visual Studio довольно быстро стала популярной. Компания Sun Microsystems, которая в то время работала над собственной технологией – Java, использовала именно среду Visual Studio и реализованный в ней язык Visual C++ как основу для реализации своих Java-библиотек Abstract Windows Toolkit (AWT) под платформу Windows. [22]
Важную роль в широком распространении среды Visual Studio внесла подписка на MSDN (Microsoft Developers' Network), благодаря которой стало возможным получать новейшие программные разработки Microsoft.
В 1997 году была выпущена новая версия Visual Studio 5.0 под кодовым названием Boston. Именно в этой версии появились такие инструменты как:
Именно технология ASP до сих пор используется на многих сайтах. Она была предназначена для разработки WEB-страниц, и позже на ее основе разработана технология ASP.NET.
В 1998 году вышла версия Visual Studio 6.0. (под кодовым названием Aspen). В нее вошли следующие новые компоненты для поддержки визуального моделирования и анализа производительности программ:
- система проектирования распределенных приложений (Application Performance Explorer);
- инструмент для создания моделей из классов и настройки взаимосвязей между ними (MS Visual Modeler);
- инструмент авто-подключения удаленного доступа (Remote Auto Connection Manager);
- система визуального представления структуры создаваемой программы (Visual Studio Analyzer). [22]
В 2002 году была выпущена новая версия Visual Studio 7.0 (кодовое название - Rainier), или просто Visual Studio.NET. Главным нововведением этой версии является реализация многоязыковой платформы .NET Framework, обеспечивающей надежное и безопасное программирование с полным контролем типов и безопасности на базе управляемого кода (managed code), общей инфраструктуры языков (Common Language Infrastructure - CLI), единого промежуточного языка (Common Intermediate Language - CIL), общей системы типов (Common Type System - CTS). В этой версии был разработан и реализован новый мощный и современный язык программирования – C#.
В 2003 году была выпущена версия Visual Studio.NET под кодовым названием Everett. Данная версия не внесла каких-либо существенных изменений, а главной целью выпуска новой версии было обеспечение обновления до версии .NET Framework 1.1. Хотя можно выделить реализацию версии .NET для мобильных устройств – .NET Compact Framework. А это значит – поддержка разработки приложений для мобильных устройств средствами Visual Studio.
Следующая версия интегрированной среды Visual Studio 2005 (под кодовым названием Whidbey) вышла в 2005 году. Основными нововведениями версии являются параметризованные типы данных и развитие технологии ASP, предназначенной для реализации активных Web-страниц, в сочетании с надежностью и безопасностью кода, присущими платформе .NET.
В 2008 году была выпущена следующая версия Visual Studio - Visual Studio.NET 2008 (Orcas). Целевой операционной системой была ОС Windows Vista. Эта версия содержит развитые средства поддержки Web-программирования.
Особенности версии Visual Studio 2008:
- новый визуальный дизайнер приложений, использующих Windows Presentation Foundation (WPF) – API для поддержки GUI;
- поддержка отладки многопоточных приложений.
В апреле 2010 г. была выпущена версия Visual Studio 2010 (кодовое название Dev10) особенностями которой стали:
- появление нового функционального языка F#, сочетающего в себе возможности чисто функционального программирования со средствами объектно-ориентированного программирования, параллельного программирования и средствами интеграции со всеми остальными возможностями .NET Framework и Visual Studio; [22]
- поддержка облачных технологий средствами Microsoft Azure, а именно возможность разработки и запуска приложений на распределенных серверах. Для этого был разработан специальный инструмент – Microsoft Azure SDK.
В августе 2012 года вышла версия Visual Studio 2012 под кодовым названием Metro Theme, особенностями которого стали:
- улучшение пользовательского интерфейса;
- разработка инструмента просмотра проектов (Solution explorer);
- улучшена поддержка цветов для выделения фрагментов кода.
Как отмечает Microsoft, общий размер исходного кода для Visual Studio 2012 достиг 50 миллионов строк. [22]
Сделаем некоторые выводы:
- компьютерные технологии постоянно развиваются, а это в свою очередь является почвой для появления новых разнообразных знаковых систем для записи алгоритмов – языков программирования.
- язык программирования – это формальная знаковая система, которая предназначена для описания алгоритмов в форме, наиболее удобной для программиста.
- целью появления таких языков является упрощение разработки программного кода.
- одним из основных в программировании является понятие алгоритма. Алгоритм – это совокупность команд или инструкций, которые описывают порядок действий, а результатом их выполнения является решение поставленной задачи.
- основой любого языка программирования является система его типов данных. Тип данных специфицирует структуру объектов, область значений, которые могут принимать элементы объектов этого типа
В настоящее время часто используют два вида интерфейса: программный и пользовательский. Исследования показывают, что пользовательский интерфейс должен обеспечить выполнение следующих функций:
- управление компьютером пользователем: инициация, прерывание, отмена компьютерных процессов и т.д.
- ввод данных пользователем с последующим откликом системы.
- отображение данных, включаю те, что ввел пользователь.
- получение пользователем информации об ошибках и иных действиях через каналы обратной связи.
Пользовательский интерфейс – это совокупность средств и способов передачи информации между пользователем и программно-аппаратными средствами информационной системы. Основой взаимодействия пользователя с программно-аппаратными средствами являются диалоги, то есть вариант обмена информацией в реальном времени с целью решения задачи. Диалоги свою очередь состоят из нескольких процессов ввода и вывода информации.
Пользовательский интерфейс состоит из следующих частей:
- визуальное представление.
- набор функций для выполнения деятельности.
- техники взаимодействия пользователя с информационной системой. [23]
Любое современное программное обеспечение должно отвечать определенным требованиям, одним их которых является наличие качественного интерфейса. Независимо от уровня сложности программного обеспечения, пользователь не должен быстро уставать, раздражаться и вообще чувствовать дискомфорт при работе с программой. Именно качественный, дружелюбный интерфейс позволяет обеспечить удобство пользователя. Создание такого интерфейса подкрепляется несколькими принципами: