Файл: Обзор языков программирования высокого уровня ( Классификация языков программирования).pdf
Добавлен: 30.06.2023
Просмотров: 60
Скачиваний: 2
СОДЕРЖАНИЕ
1 Классификация языков программирования
2 Обзор языков по востребованности и популярности
3 Краткая характеристика выбранных языков
3.1 Язык С++ и среда C++Builder
3.2 Язык программирования С# и среда VisualStudio
3.3 Веб ориентированные языки и инструменты
4 Примеры реализации кода на языке C#
CBuilder сочетает простоту среды быстрой разработки программ, или RAD - среды (Rapid Application Development - RAD), с мощью и производительностью языка C + +, совместимому со стандартом ANSI.
Язык программирования C + + остается наиболее распространенным. Он применяется для разработки самых разных программ - от сложных многоуровневых бизнес-систем до высокопроизводительных программ визуализации данных и систем реального времени. CBuilder является отличным средством для реализации любых программ.
Язык C + + является ядром среды CBuilder, что обеспечивает очень высокую степень поддержки этого стандартизированного языка программирования.
Основными компонентами программы являются объекты базовых классов, для работы с которыми были разработаны все необходимые сопроводительные интерфейсы. При построении программного обеспечения использовании стандартные модули которые выполняют следующие функции:
- VCL - модуль, обеспечивающий (обслуживает) все объекты и процедуры системы меню C + + Builder, а также выпадающее меню и активные элементы сроки статуса, работа с меню и модули, обеспечивающие процедуры и функции отображения диалоговых окон;
- PROCESS - модуль для отображения процесса работы программы;
- GLOBAL - модуль который включает в себя глобальные, для всей программы функции, процедуры и константные значения;
- FORMS - процедуры и функции по работе с формами, подключаемых и обеспечивают возможность использования стандартных библиотечных функций, а именно: подключение диалоговых окон, меню пользователя, организации функции нажима кнопок для получения с клавиатуры режима работы системы в текущий момент времени, вывода на экран информации о текущем состоянии базы данных, подготовки экрана к диалогу с пользователем и т.д.. Использование стандартных библиотек также позволит облегчить построение некоторых частей программы.
Вместо отдельного инструментария, оперирующего визуальными элементами управления, в C + + Builder интегрирована так называемая палитра компонентов, разделена картотечными вкладками на несколько функциональных групп. Функциональные возможности компонентов можно достаточно просто модифицировать, а также разрабатывать компоненты, обладающие совершенно новым оригинальным поведением.
Система содержит библиотеку с более 100 повторно используемых визуальных компонентов, перетаскиваются мышью на форму и сразу становятся элементами управления прототипа вашей программы. Кроме известных элементов управления Windows (кнопки, линейки прокрутки, поля редактирования, простые и комбинированные списки и т.д.) Библиотека содержит новые компоненты поддержки диалогов, обслуживания баз данных и многие другие.
После размещения компонентов на форме. Инспектор объектов поможет устанавливать их свойства и предлагать событиям коды обработки. Проект будет строиться постепенно, на фоне производимых вами изменений в свойствах, событиях и функциях используемых элементов. Хорошо продуманный разделение и редактирование программного модуля по двум его частям: интерфейсной и собственно кодовой.
Среда Borland C++ Builder 6 является RAD-инструментом, предоставляющим возможность программирования в стиле drag-and-drop, основанного на компонентах. Этот стиль программирования получил широкое распространение, практически вытеснив концепцию каркасов. Каркас это основа, скелет вашего приложения, который объединяет в себе все его части. Однако у каркасов есть существенный недостаток – вместо того чтобы сделать программирование более простым и гибким, каркасы вынуждают писать программы по заранее определенным жестким правилам. Несмотря на то, что каркасы действительно ускоряют разработку приложения, предоставляя в распоряжение разработчика многие из основных функций нормального Windows приложения, они сразу же встают на пути создания нестандартных программ, то есть практически невозможно сделать то, что каркас не предоставляет или изменить сам каркас. В отличие от каркасов компоненты никакой структуры не навязывают [2]. Есть ещё один аспект, на который необходимо обратить внимание: в С++Builder зашита невероятно мощная и чрезвычайно гибкая среда программирования баз данных, что немаловажно для разрабатываемой программы. По сути дела это первая среда программирования баз данных для C++. Интерфейс с базами данных во многих других системах С++ состоит из набора объектов которые являются лишь тонкими оболочками скрывающими под собой низкоуровневые функции баз данных.
Можно написать вполне законченный редактор баз данных не написав ни единой строчки кода на С++. Ближайшим конкурентом Borland C++ Builder является не Microsoft Visual C++, которая построена по другой технологии и не является RAD-системой, а Microsoft Visual Basic [3]. Наряду с Borland C++ Builder 6, также распространена IDE-среда Borland Delphi, но объектно-ориентированные возможности значительно уступают Borland C++ Builder 6.
C++Builder поддерживает основные принципы объектно-ориентированного программирования-инкапсуляцию, полиморфизм и множественное наследование, а также введенные спецификации и ключевые слова в стандарте языка.
Опытным C++ программистам нравится синтаксис и структура кода разрабатываемых на C++Builder программ , хотя его графическое обрамление заметно отличается от традиционных оболочек систем разработки.
C++Builder обеспечивает высокое быстродействие при компиляции и сборке 32-разрядных программ для современных операционных систем Windows, включая OLE взаимодействие клиент-сервер. Система даже отображает время, затраченное на основные этапы построения программ. Результирующие программы хорошо оптимизированы по скорости исполнения и затратам памяти. Хотя режим отладки низкого уровня полностью интегрирован в среду C + + Builder. Дизайнер форм. Инспектор объектов и других средств остаются доступными во время работы программы, поэтому вносить изменения можно в процессе отладки.
C + + Builder поставляется в трех вариантах: Standard (стандартный). Professional (для профессионалов разработчиков, ориентированных на сетевую архитектуру) и Client/Server Suite (для разработки систем в архитектуре клиент/сервер). Последние два варианта дополняют стандартный исходными текстами визуальных компонентов, разным словарем данных, новыми функциями языка запросов SQL для баз данных, пакетом поддержки систем Internet, службой мониторинга программ, а также множеством других средств. Пользовательский интерфейс программ приобрел законченный профессиональный вид.
3.2 Язык программирования С# и среда VisualStudio
Как показывают обзоры ‑ достаточно популярным в последние годы является язык C#, а в качестве среды разработки под этот язык часто используется очень мощная среда ‑ VisualStudio, разработчиком которых является фирма Microsoft. Ввиду такой популярности язык и среда очень хорошо документированы, по нему достаточно легко можно найти примеры и справочную информацию как в электронном (http://msdn.microsoft.com), так и в бумажном виде.
В корпорации Microsoft специально под платформу .NET был разработан новый язык программирования С#. Синтаксис этого языка программирования очень похож на синтаксис языка Java. Однако сказать, что С# просто переписан с Java, будет неточно. И язык С#, и язык Java просто оба являются членами семейства языков программирования С (в которое также входят языки С, Objective С, C++ и т.д.) и потому имеют схожий синтаксис[13].
Многие синтаксические конструкции в С# моделируются согласно различным особенностям Visual Basic 6.0 и C++. Например, как и в VB6, в С# поддерживается понятие формальных свойств типов (в противоположность традиционным методам get и set) и возможность объявлять методы, принимающие переменное количество аргументов (через массивы параметров). Как и в C++, в С# допускается перегружать операции, а также создавать структуры, перечисления и функции обратного вызова (посредством делегатов).
В С# поддерживается целый ряд функциональных возможностей, которые традиционно встречаются в различных функциональных языках программирования (например, LISP или Haskell) и к числу которых относятся лямбда-выражения и анонимные типы. Кроме того, с появлением технологии LINQ в С# стали поддерживаться еще и конструкции, которые делают его довольно уникальным в мире программирования. Несмотря на все это, наибольшее влияние на него все-таки оказали именно языки на базе С.
С# представляет собой собранный из нескольких языков гибрид, он является таким же «чистым» с синтаксической точки зрения, как и язык Java, почти столь же простым, как язык VB6, и практически таким же мощным и гибким как C++ (только без ассоциируемых с ним громоздких элементов).
Ниже приведен неполный список ключевых функциональных возможностей языка С#, которые присутствуют во всех его версиях.
- Никаких указателей использовать не требуется. В программах на С# обычно не возникает необходимости в манипулировании указателями напрямую.
- Управление памятью осуществляется автоматически посредством сборки мусора. По этой причине ключевое слово delete в С# не поддерживается.
- Предлагаются формальные синтаксические конструкции для классов, интерфейсов, структур, перечислений и делегатов.
- Предоставляется аналогичная C++ возможность перегружать операции для пользовательских типов, но без лишних сложностей.
- Предлагается поддержка для программирования с использованием атрибутов. Такой подход в сфере разработки позволяет снабжать типы и их членов аннотациями и тем самым еще больше уточнять их поведение.
С выходом версии .NET 2.0 (примерно в 2005 г.), язык программирования С# был обновлен и стал поддерживать многочисленные новые функциональные возможности, наиболее заслуживающие внимания из которых перечислены ниже.
- Возможность создавать обобщенные типы и обобщенные элементы-члены. За счет применения обобщений можно создавать очень эффективный и безопасный для типов код с многочисленными метками-заполнителями, подстановка значений в которые будет происходить в момент непосредственного взаимодействия с данным обобщенным элементом.
- Поддержка для анонимных методов, каковые позволяют предоставлять встраиваемую функцию везде, где требуется использовать тип делегата.
- Многочисленные упрощения в модели "делегат-событие", в том числе возможность применения ковариантности, контравариантности и преобразования групп методов.
- Возможность определять один тип в нескольких файлах кода (или, если необходимо, в виде представления в памяти) с помощью ключевого слова partial.
В версии .NET 3.5 (которая вышла примерно в 2008 г.) в язык программирования С# снова были добавлены новые функциональные возможности, наиболее важные из которых описаны ниже.
- Поддержка для строго типизированных запросов (также называемых запросами LINQ), которые применяются для взаимодействия с различными видами данных.
- Поддержка для анонимных типов, которые позволяют моделировать форму типа, а не его поведение.
- Возможность расширять функциональные возможности существующего типа с помощью методов расширения.
- Возможность использовать лямбда-операцию (=>), которая даже еще больше упрощает работу с типами делегатов в .NET.
- Новый синтаксис для инициализации объектов, который позволяет устанавливать значения свойств во время создания объектов.
- В текущем выпуске платформы .NET версии 4.0 язык С# был опять обновлен и дополнен рядом новых функциональных возможностей.
- Поддержка необязательных параметров в методах, а также именованных аргументов.
- Поддержка динамического поиска членов во время выполнения посредством ключевого слова dynamic.
- Вместе с предыдущей возможностью в .NET 4.0 значительно упрощается обеспечение взаимодействия приложений на С# с унаследованными серверами СОМ, благодаря устранению зависимости от сборок взаимодействия (interop assemblies) и предоставлению поддержки необязательных аргументов ref.
- Работа с обобщенными типами стала гораздо понятнее, благодаря появлению возможности легко отображать обобщенные данные из общих коллекций System.Object с помощью ковариантности и контравариантности.
- Профессиональные разработчики программного обеспечения .NET как правило располагают самым серьезным в этой сфере продуктом производства Microsoft, который называется Visual Studio 2010 и доступен по адресу http: //msdn.microsoft.com/vstudio. Этот продукт представляет собой самую функционально насыщенную и наиболее приспособленную под использование на предприятиях IDE-среду.
Visual Studio 2012 также поставляется с графическими конструкторами, поддержкой использования отдельных фрагментов кода, средствами для работы с базами данных, утилитами для просмотра объектов и проектов, а также встроенной справочной системой. В Visual Studio 2012 предлагается множество дополнительных возможностей, наиболее важные из которых перечислены ниже:
- графические редакторы и конструкторы XML;
- поддержка разработки программ Windows, ориентированных на мобильные устройства;
- поддержка разработки программ Microsoft Office;
- поддержка разработки проектов Windows Workflow Foundation;
- встроенная поддержка рефакторинга кода;
- инструменты визуального конструирования классов.