1.6 Выбор методов программной реализации 1.6.1 Задача выбора языка программирования
Несмотря похожесть современных языков программирования высокого уровня и соответствующих сред разработки, они порой сильно отличаются как по функционалу, так и по используемым методам. Выбор языка и среды программирования зависит от задач, которые ставятся перед разработчиком, его личных предпочтений и пожеланий заказчика.
Рассмотрим некоторые из возможных вариантов языков и сред программирования, которые можно использовать при решении поставленной задачи.
В качестве языков программирования рассмотрим языки высокого уровня, имеющие визуальную среду разработки - Visual Basic и C++.
1.6.2 Visual Basic
Microsoft Visual Basic — средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft и включающее язык программирования и среду разработки. Язык Visual Basic (VB) – современная доработанная версия языка Бейсик, имеющего в свою очередь немало разновидностей. Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса[2].
Visual Basic считается хорошим средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционных систем семейства Microsoft Windows.
Достоинства VB:
высокая скорость создания приложений с графическим интерфейсом для MS Windows;
простой синтаксис, позволяющий очень быстро освоить язык;
возможность компиляции как в машинный код, так и в P-код (по выбору программиста);
защита от ошибок, связанных с применением указателей и доступом к памяти. Этот аспект делает Visual Basic приложения более стабильными, но также является объектом критики;
возможность использования большинства WinAPI функций для расширения функциональных возможностей приложения.
Недостатки:
поддержка операционных систем только семейства Windows и Mac OS X;
отсутствие механизма наследования реализации объектов. Существующее в языке наследование позволяет наследовать только интерфейсы, но не их реализацию;
низкая скорость работы, обусловленная тем, что практически все встроенные функции языка реализованы через библиотеку времени исполнения (runtime library), которая, в свою очередь, производит много «лишней» работы по проверке и/или преобразованию типов.
1.6.3 C++
Язык программирования C++ - это универсальный язык программирования, который позволяет разрабатывать программы в соответствии с разными парадигмами: процедурным программированием, объектно-ориентированным, параметрическим. Аналогично можно рассматривать объектно-ориентированный вариант языка в среде программирования Visual C++ от того же разработчика что и Visual Basic. Главной особенностью С++ является его эффективность. Он является самым популярным языком для создания системного программного обеспечения. Существенный аргумент в пользу выбора этого языка программирования — возможность реализовать кроссплатформенность разрабатываемых приложений, для чего его используют совместно с библиотеками Qt.
Qt — кроссплатформенный инструментарий разработки ПО на языке программирования C++. Qt представляет поддержку большого числа операционных систем. Главным преимуществом Qt является то, что он использует API низкого уровня, в связи с чем приложения работают также эффективно, как и приложения, разработанные специально для конкретной платформы[1].
Для ускорения и упрощения создания пользовательских интерфейсов, Qt предоставляет программу Qt Creator, позволяющую делать это в интерактивном режиме.
На сегодняшний день Qt широко используется разработчиками всего мира. Из числа некоторых активных пользователей Qt можно назвать такие известные компании, как: Adobe, AT&T, Cannon, HP, Bosch, IBM, Sony и др[1].
Qt - полный инструментарий для программирования. Этот инструментарий состоит из отдельных модулей и предоставляет:
поддержку двух- и трехмерной графики;
возможность интернационализации, которая позволят значительно расширить рынок сбыта ваших программ;
использование формата XML (eXtensible Markup Language);
STL-совместимую библиотеку контейнеров;
поддержку стандартных протоколов ввода/вывода;
классы для работы с сетью;
поддержка программирования баз данных, включая поддержку Oracle, Microsoft SQL Server, IBM DB2, MySQL, SQLite,Sybase.
Достоинства:
кроссплатформенность;
скорость создания графических пользовательских интерфейсов;
Qt - полностью объектно-ориентированная библиотека;
новая концепция «сигналы и слоты» полностью заменяет былую не вполне надежную модель обратных вызовов;
есть возможность обрабатывать события, например, перемещения мыши, нажатия клавиши клавиатуры;
использование Qt возможно не только в С++, но и в других языках программирования;
Qt отлично документирована, программа Qt Asisstant может предоставить любую информацию об этой библиотеке.
Недостатки:
время компиляции программного кода.
1.6.4 Выводы
Таким образом, учитывая требования по кроссплатформенности, предпочтительным будет сделать выбор в пользу языка С++ и среды Qt, в том числе исходя из совместимости библиотеки Qt с разрабатываемыми на предприятии программами, легкости создания пользовательского интерфейса средствами Qt Creator и отличной документации.
|