средства разработки приложений примеры

Инструменты программирования. Современные средства разработки

средства разработки приложений примеры. programming code 1STVFMTBJY.bf312bfd57d5a48faec0ab9ddbc2ef9a. средства разработки приложений примеры фото. средства разработки приложений примеры-programming code 1STVFMTBJY.bf312bfd57d5a48faec0ab9ddbc2ef9a. картинка средства разработки приложений примеры. картинка programming code 1STVFMTBJY.bf312bfd57d5a48faec0ab9ddbc2ef9a.

Инструменты программиста

Инструменты программиста обильно разнообразны, но даже среди них можно выделить несколько основных категорий:

Системы контроля версий.

Редакторы баз данных.

Инструменты программиста для тестирования.

Среда разработки

редактор кода с подсветкой синтаксиса;

возможность управлять разными проектами;

Среда разработки может быть ориентирована на конкретный язык или быть многофункциональной и давать возможность работать на разных языках. Среди таких универсальных IDE можно выделить:

Система контроля версий

Самые известные системы контроля версий:

Перечисленные программы — это «стационарные» системы, которые устанавливаются на компьютер разработчика. Но в последнее время в моду вошли веб-ресурсы, которые выполняют такую же функцию контроля. Самые известные:

Редактор интерфейсов

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

Редактор интерфейсов, он же GUI-конструктор — если он в виде программы или плагина, поможет быстро «накидать» внешний вид программы путем простого перетаскивания нужных блоков.

Редактор баз данных

Самыми популярными редакторами БД являются:

Инструменты программиста для тестирования ПО

Когда программы были не слишком сложными, проводить тестирование было довольно просто. Были специальные инструменты для «исчерпывающего тестирования» — когда сразу проверялись все возможные варианты выполнения программы. Теперь программы усложнились. Поэтому найти универсальный инструмент автоматического тестирования не представляется возможным. Искать подобные инструменты нужно под конкретную задачу или же писать их самостоятельно.

Фреймворки

На сегодняшний день обилие фреймворков зашкаливает — они есть у многих популярных языков и технологий разработки. Они дают возможность не разрабатывать программы с нуля, а использовать уже готовые модули и каркасы. То есть фреймворк способен генерировать основную часть программы, а программист уже доводит эту программу до нужного состояния.

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

Заключение

Выучить соответствующий язык и/или фреймворк.

Подобрать удобную среду разработки: IDE или облачный сервис.

Если игра большая, то использовать в разработке систему контроля версий, тот же GitHub.

Подобрать подходящий редактор интерфейса: плагин к IDE, отдельная программа или вообще отдельный фреймворк.

Подобрать подходящее средство для тестирования.

Если же нужно разработать веб-сайт, то там совсем другой путь и другие инструменты программиста.

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Источник

Инструменты создания мобильных приложений

Вы когда-нибудь задумывались как пишутся приложения которыми вы пользуетесь каждый день? На самом деле создать собственное мобильное приложение это не такая сложная задача, и в данной статье я покажу где и как можно это сделать.

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

Android Studio (https://developer.android.com/studio) – это IDE для работы с платформой Android, позволяющая разрабатывать мобильные приложения на различных языках программирования, таких как Java, С++ и Kotlin. Обладает большим количеством инструментов и функций для любых потребностей разработчика.

Apache Cordova ( https://cordova.apache.org/) – это среда разработки мобильных приложений. Apache Cordova обладает необходимыми функциями для создания приложений предназначенных для мобильных устройств. Отличительной особенностью этого решения является то, что приложение пишется с помощью CSS3, HTML5 и JavaScript. Кроссплатформенность обеспечивает возможность компиляции одного кода для разных платформ, таких как Windows Phone, iOS и Android.

Xamarin ( https://docs.microsoft.com/ru-ru/xamarin/) – это фреймворк для кроссплатформенной разработки мобильных приложений для платформ iOS, Android и Windows Phone. Основным плюсом этого решения является то, что разработка осуществляется на языке C#, который имеет много русскоязычной документации и довольно прост в изучении.

Фреймворк Xamarin поддерживается средой разработки Visual Studio, которая обладает множеством преимуществ и удобных функций, например простой импорт библиотек и технологией автодополнения IntelliSense. Поэтому при выборе инструментов разработки мобильного приложения наш выбор пал именно на Xamarin.

Рассмотрим пример создания простого приложения для Android, которое складывает числа и отправляет результат на почту. Часть функциональности этого примера мы использовали в одном из прошлых своих проектов по созданию мобильного приложения.

Интерфейс в приложениях Xamarin создается при помощи языка XAML, который основан на языке разметки XML. Добавим на экран три поля ввода и две кнопки.

Напишем код обработчиков событий двух кнопок, первый из которых будет получать введенные числа в поля и считать их сумму, а второй отправлять результат на указанную почту.

В итоге получился калькулятор с функцией сложения чисел и возможностью отправить результат на почту.

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

Источник

Технология разработки ПО

2.14. Выбор и обоснование средств реализации проекта

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

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

С учетом данного определения термин «Разработка программ» будет звучать следующим образом:

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

Основные средства, используемые на разных этапах разработки программ

При анализе возможностей средств разработки программного обеспечения в качестве критериев оценки могут применяться такие критерии как:

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

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

Средства проектирования приложений

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

Результатом проектирования обычно является «Эскизный проект» (Software Design Document) или «Технический проект» (Software Architecture Document). Задача «Анализ требований» обычно выполняется с использованием методов системологии (анализа и синтеза) с учетом экспертного опыта проектировщика. Результатом анализа обычно является содержательная или формализованная модель процесса функционирования программы. В зависимости от сложности процесса для построения данных моделей могут быть применены различные методы и вспомогательные средства. В общем случае для описания моделей обычно применяются следующие нотации (в скобках приведены программные средства, которые могут быть использованы для получения моделей):

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

Целью второй и третьей задачи из приведенного списка задач является разработка модели (описания) будущей системы, понятной для кодировщика – человека, который пишет код программы. Здесь огромное значение имеет то, какую парадигму программирования (парадигму программирования также необходимо рассматривать как средство разработки) необходимо использовать при написании программы. В качестве примера основных парадигм необходимо привести следующее:

Выбор её во многом зависит от сложившихся привычек, опыта, традиций, инструментальных средств, которыми располагает коллектив разработчиков. Иногда разрабатываемый программный продукт настолько сложен, что для решения ряда задач в разных компонентах системы используются разные парадигмы. Необходимо отметить, что выбор того или иного подхода накладывает ограничения на средства, которые будут применены на этапе реализации программного кода. Результатом решения данной задачи в зависимости от подхода могут быть (в скобках приведены программные средства, которые могут быть использованы для их получения):

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

Средства реализации программного кода

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

Средства тестирования программ

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

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

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

Источник

10 лучших IDE

средства разработки приложений примеры. ab8eb1075f1a2c02cbb57bbc895e7bed. средства разработки приложений примеры фото. средства разработки приложений примеры-ab8eb1075f1a2c02cbb57bbc895e7bed. картинка средства разработки приложений примеры. картинка ab8eb1075f1a2c02cbb57bbc895e7bed.

IDE (Integrated Development Environment) – это интегрированная, единая среда разработки, которая используется разработчиками для создания различного программного обеспечения. IDE представляет собой комплекс из нескольких инструментов, а именно: текстового редактора, компилятора либо интерпретатора, средств автоматизации сборки и отладчика. Помимо этого, IDE может содержать инструменты для интеграции с системами управления версиями и другие полезные утилиты. Есть IDE, которые предназначены для работы только с одним языком программирования, однако большинство современных IDE позволяет работать сразу с несколькими.

Сегодня я расскажу вам о 10 лучших средах разработки как в платном, так и в бесплатном сегменте.

Чем IDE отличается от текстового редактора?

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

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

Какая среда разработки подойдет конкретно для вас? В этом вопросе надо основываться на четырех факторах:

Итак, давайте рассмотрим лучшие среды разработки.

Лучшие платные IDE

PhpStorm

средства разработки приложений примеры. 99b14a606f9a7ab2fce92c9551004019a130f796. средства разработки приложений примеры фото. средства разработки приложений примеры-99b14a606f9a7ab2fce92c9551004019a130f796. картинка средства разработки приложений примеры. картинка 99b14a606f9a7ab2fce92c9551004019a130f796.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: PHP, JavaScript, HTML, CSS, SASS, LESS и т.д.

Стоимость: от 199$ в год (последующие года будут стоить дешевле).

Умная среда от известной компании JetBrains предназначена для разработки на PHP, JavaScript, HTML и CSS и идеально подходит для работы с различными CMS: Drupal, WordPress, Symfony, Joomla и многими другими. Среда разработки глубоко анализирует структуру кода, помогая избегать ошибок, а также поддерживает базы данных и SQL.

Преимущества

Недостатки

CLion

средства разработки приложений примеры. 4cb38fa0a3aa59162d539d3d5ca7012afe455a6f. средства разработки приложений примеры фото. средства разработки приложений примеры-4cb38fa0a3aa59162d539d3d5ca7012afe455a6f. картинка средства разработки приложений примеры. картинка 4cb38fa0a3aa59162d539d3d5ca7012afe455a6f.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: С++, C, Objective C, Kotlin, Python, Swift, Fortran, JavaScript, CSS и другие.

Стоимость: от 199$ в год (последующие года будут стоить дешевле).

И снова продукт JetBrains. CLion – идеальное кроссплатформенное решение для тех, кто работает на C и C++ (и не только). Умный редактор, удобный генератор кода, статический и динамический анализ, безопасный рефакторинг… Особенности данной среды разработки можно перечислять бесконечно.

Преимущества

Недостатки

Лучшие условно-бесплатные IDE

Microsoft Visual Studio

средства разработки приложений примеры. 1d0d230e465129449476c4d4c9cb0a0b52cb1fca. средства разработки приложений примеры фото. средства разработки приложений примеры-1d0d230e465129449476c4d4c9cb0a0b52cb1fca. картинка средства разработки приложений примеры. картинка 1d0d230e465129449476c4d4c9cb0a0b52cb1fca.

Платформы: Windows/macOS (для Linux есть только редактор кода)

Поддерживаемые языки: Ajax, ASP.NET, DHTML, ASP.NET, JavaScript, Visual Basic, Visual C#, Visual C++, Visual F#, XAML и другие.

Стоимость: от 45$ в месяц. Есть бесплатная версия (Community) для частного использования, студентов и создателей опенсорсовых проектов.

Microsoft Visual Studio – это премиум IDE, стоимость которой зависит от редакции и типа подписки. Она позволяет создавать самые разные проекты, начиная с мобильных и веб-приложений и заканчивая видеоиграми. Microsoft Visual Studio включает в себя множество инструментов для тестирования совместимости – вы сможете проверить свое приложение на более чем 300 устройствах и браузерах. Благодаря своей гибкости, эта IDE отлично подойдет как для студентов, так и для профессионалов.

Особенности:

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

PyCharm

средства разработки приложений примеры. b6ac2022a9ea095cbe72b1852e5ab13061a6c53e. средства разработки приложений примеры фото. средства разработки приложений примеры-b6ac2022a9ea095cbe72b1852e5ab13061a6c53e. картинка средства разработки приложений примеры. картинка b6ac2022a9ea095cbe72b1852e5ab13061a6c53e.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: Python, Jython, Cython, IronPython, PyPy, AngularJS, Coffee Script, HTML/CSS, Django/Jinja2 templates, Gql, LESS/SASS/SCSS/HAML, Mako, Puppet, RegExp, Rest, SQL, XML, YAML и т.д.

Стоимость: от 199$ в год. Есть бесплатная версия, но она работает только с Python.

Это интегрированная среда разработки на языке Python, которая была разработана международной компанией JetBrains (да, и снова эти ребята). Эта IDE распространяется под несколькими лицензиями, в том числе как Community Edition, где чуть урезан функционал. Сами разработчики характеризуют свой продукт как «самую интеллектуальную Python IDE с полным набором средств для эффективной разработки на языке Python».

Преимущества

Недостатки

IntelliJ IDEA

средства разработки приложений примеры. 01183a8c19a42a5225407849cbcc844f831857fd. средства разработки приложений примеры фото. средства разработки приложений примеры-01183a8c19a42a5225407849cbcc844f831857fd. картинка средства разработки приложений примеры. картинка 01183a8c19a42a5225407849cbcc844f831857fd.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: Java, AngularJS, Scala, Groovy, AspectJ, CoffeeScript, HTML, Kotlin, JavaScript, LESS, Node JS, PHP, Python, Ruby, Sass,TypeScript, SQL и другие.

Стоимость: от 499$ в год. Бесплатная версия работает только с Java и Android.

Еще одна IDE, разработанная компанией Jet Brains. Здесь тоже есть возможность использовать бесплатную версию Community Edition, а у платной версии есть тестовый 30-дневный период. Изначально IntelliJ IDEA создавалась как среда разработки для Java, но сейчас разработчики определяют эту IDE как «самую умную и удобную среду разработки для Java, включающую поддержку всех последних технологий и фреймворков». Используя плагины, эту IDE можно использовать для работы с другими языками.

Преимущества

Недостатки

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

Лучшие бесплатные IDE

Eclipse

средства разработки приложений примеры. 8e5f092afa1f0aaeedf6b2aaf8d16ed68da92317. средства разработки приложений примеры фото. средства разработки приложений примеры-8e5f092afa1f0aaeedf6b2aaf8d16ed68da92317. картинка средства разработки приложений примеры. картинка 8e5f092afa1f0aaeedf6b2aaf8d16ed68da92317.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: C, C++, Java, Perl, PHP, Python, Ruby и другие.

Это бесплатная опенсорсная среда разработки, которая хорошо подойдет как новичкам, так и опытным разработчикам. Помимо инструментов отладки и поддержки Git/CVS, Eclipse поставляется с Java и инструментом для создания плагинов. Изначально Eclipse использовалась только для Java, но сейчас, благодаря плагинам и расширениям, ее функции значительно расширились. Именно из-за возможности расширить Eclipse своими модулями эта платформа и завоевала свою популярность среди разработчиков. Функционал Eclipse не такой большой, как у IntelliJ IDEA, зато эта среда разработки распространяется с открытым исходным кодом.

Преимущества

Недостатки

NetBeans

средства разработки приложений примеры. d3f2da6d701fe5d08702ed2b551c82b86477e596. средства разработки приложений примеры фото. средства разработки приложений примеры-d3f2da6d701fe5d08702ed2b551c82b86477e596. картинка средства разработки приложений примеры. картинка d3f2da6d701fe5d08702ed2b551c82b86477e596.

Платформы: Windows/Linux/macOS/BSD

Поддерживаемые языки: C, C++, C++ 11, Fortan, HTML 5, Java, PHP и другие.

Это бесплатная опенсорсная IDE. Прекрасно подойдет как для работы с уже имеющимися проектами, так и для создания нового. Это одна из лучших IDE для разработки Java-приложений, в которую можно установить пакеты, обеспечивающие и поддержку других языков.

Преимущества

Недостатки

Xcode

средства разработки приложений примеры. aa30a388aab8e7c9289940835c4ed642dac5d352. средства разработки приложений примеры фото. средства разработки приложений примеры-aa30a388aab8e7c9289940835c4ed642dac5d352. картинка средства разработки приложений примеры. картинка aa30a388aab8e7c9289940835c4ed642dac5d352.

Платформы: macOS

Поддерживаемые языки: AppleScript, C, C++, Java, Objective-C, Swift. ​

Функциональная среда для создания приложений под продукты Apple – iPhone, iPad, Mac, Apple TV и Apple Watch. В IDE могут работать как индивидуальные, так и корпоративные разработчики. Чтобы разместить созданное приложение в App Store, необходимо купить лицензию разработчика.

Преимущества

Недостатки

Code::Blocks

средства разработки приложений примеры. eaff8a4a9e60505fa9718467390d595b19f9550d. средства разработки приложений примеры фото. средства разработки приложений примеры-eaff8a4a9e60505fa9718467390d595b19f9550d. картинка средства разработки приложений примеры. картинка eaff8a4a9e60505fa9718467390d595b19f9550d.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: C, C++, Fortran

Опенсорсная среда разработки – простая, нетребовательная к ресурсам и очень производительная. Поддерживает огромное количество компиляторов и отладчиков. Расширить функционал можно с помощью бесплатных плагинов.

Преимущества

Недостатки

Komodo

средства разработки приложений примеры. 2eabdc397fc1d913c7fa6144fcb93cf731e5563b. средства разработки приложений примеры фото. средства разработки приложений примеры-2eabdc397fc1d913c7fa6144fcb93cf731e5563b. картинка средства разработки приложений примеры. картинка 2eabdc397fc1d913c7fa6144fcb93cf731e5563b.

Платформы: Windows/Linux/macOS

Поддерживаемые языки: CSS, JavaScript, HTML, NodeJS, Perl, PHP, Python, Ruby и другие.

IDE Komodo поддерживает огромное множество языков программирования, что делает ее невероятно популярной для веб и мобильной разработки. Кроме того, с недавних пор среда распространяется бесплатно.

Преимущества

Недостатки

Источник

Введение в базы данных

Алексей Федоров, Наталия Елманова

Предыдущая статья настоящего цикла была посвящена рассмотрению логического и физического проектирования данных и инструментальным средствам, используемым в данном процессе. Мы убедились в том, что проектирование данных играет ключевую роль при разработке информационных систем — ведь от качества выполнения этой работы зависят затраты, связанные с созданием приложений для конечных пользователей, а также с последующим сопровождением и модернизацией созданного продукта. Результатом этого этапа является «пустая» база данных (то есть база данных, таблицы которой по большей части не содержат записей, за исключением, возможно, таблиц справочного характера типа списка субъектов Российской Федерации или телефонных кодов городов).

Следующий этап жизненного цикла информационной системы — разработка клиентских приложений. Результатом этого этапа является готовый продукт, состоящий из ряда приложений, позволяющих пользователям вводить данные в таблицы либо редактировать уже существующие данные, анализировать введенные данные и представлять их в более удобном для восприятия виде — графиков, сводных таблиц или отчетов (в том числе в виде «бумажных» документов).

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

Процесс же создания клиентских приложений, работающих с базами данных, достаточно сложно описать в виде подобной универсальной последовательности действий, поскольку логика конкретного приложения практически полностью зависит от логики моделируемого бизнес-процесса. Средства разработки приложений как категория программных продуктов существуют гораздо дольше, чем средства проектирования данных, и они более разнообразны — от компилятора, запускаемого из командной строки, до инструментов, где готовое приложение собирается «мышью» из готовых компонентов, а код генерируется автоматически. При таком разнообразии средств разработки их следует каким-то образом классифицировать, что мы и постараемся сделать в настоящей статье, попутно рассказав, какие из них удобно применять в том или ином случае.

Классификация средств разработки приложений

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

Практически любое средство разработки, мало-мальски претендующее на универсальность, можно заставить работать с любой базой данных — достаточно поддержки применения в этом средстве разработки сторонних библиотек и наличия у этой базы данных набора клиентских интерфейсов (API) для платформы, на которой должны функционировать созданные приложения. Однако далеко не любая пара продуктов «средство разработки плюс СУБД» привлекательна с точки зрения трудозатрат, связанных с созданием подобных приложений. Можно написать полноценное приложение, вызывающее функции клиентского API и реализующего удобный пользовательский интерфейс с помощью компилятора языка С и простейшей графической библиотеки (например, позволяющей изменять цвет пикселов на экране) для той операционной системы, в которой будет работать данное приложение. Но затраты, связанные с реализацией подобного проекта, могут оказаться совершенно неоправданными — ведь в этом случае разработчикам придется реализовывать функции, которые уже содержатся в библиотеках классов и компонентов средств разработки, более глубоко ориентированных на создание приложений с базами данных или включающих поддержку создания таких приложений.

Средства разработки, ориентированные на конкретные СУБД

Лет десять-двадцать назад во многих приложениях, использующих базы данных, функции клиентского API вызывались из кода, написанного на одном из языков программирования, чаще всего на C. Достаточно взглянуть на описание API клиентской части почти любой серверной СУБД — и вы найдете немало примеров наиболее типичных фрагментов кода, например, для регистрации пользователя, выполнения запросов и т.п. Однако достаточно быстро разработчикам СУБД стало ясно, что трудозатраты, связанные с написанием подобного кода, можно существенно сократить, собрав в библиотеки наиболее типичные фрагменты кода и наиболее часто встречающиеся элементы пользовательского интерфейса (пусть даже и для алфавитно-цифровых терминалов), оформив эти библиотеки в виде отдельного продукта и добавив к нему среду разработки и утилиты проектирования пользовательских форм для просмотра и редактирования данных, а также отчетов. Именно так и появились первые средства разработки, ориентированные на конкретные СУБД, такие, например, как Oracle*Forms (предшественник нынешнего Oracle Forms Developer).

Продукты этого класса на рынке средств разработки имеются и сегодня. Почти все производители серверных СУБД производят и средства разработки приложений. В подавляющем большинстве случаев современные версии этих средств разработки поддерживают доступ к СУБД других производителей как минимум с помощью одного из универсальных механизмов доступа к данным (ODBC, OLE DB, BDE). Однако доступ к «своей» СУБД обычно осуществляется максимально эффективным способом, то есть с помощью клиентских API, объектов, содержащихся в библиотеках клиентской части серверных СУБД, специальных классов для доступа к данным этой СУБД либо за счет реализации драйверов для универсальных механизмов доступа к данным, способной учитывать специфические особенности данной СУБД.

В отдельную категорию можно выделить среды разработки настольных СУБД. В статье данного цикла, посвященной настольным СУБД, мы уже отмечали, что подавляющее большинство настольных СУБД, доживших до сегодняшнего дня, таких как Microsoft Visual FoxPro, Microsoft Access, Corel Paradox, Visual dBase, поддерживают доступ к серверным СУБД, как минимум, с помощью универсальных механизмов доступа к данным, что позволяет условно отнести их и к категории средств разработки. Отметим, однако, что в настоящее время создание приложений в архитектуре «клиент-сервер» с их помощью — явление нечастое. Исключение, пожалуй, составляют пары Microsoft Access — MSDE, Microsoft Access — Microsoft SQL Server и Microsoft Visual FoxPro — Microsoft SQL Server. Здесь налицо результат грамотной политики Microsoft, стремящейся к максимальной совместимости своих продуктов и обеспечивающей наиболее безболезненную для пользователей замену своих настольных СУБД собственными же серверами баз данных (Access->MSDE->Microsoft SQL Server, FoxPro->Visual FoxPro->Microsoft SQL Server).

Средства разработки, универсальные по отношению к СУБД

Средства разработки, универсальные по отношению к СУБД (или претендующие на подобную универсальность), как правило, являются последователями обычных средств разработки приложений, не имеющих прямого отношения к базам данных. Типичные примеры таких средств разработки — Borland Pascal, Borland C++, Microsoft QuickC. Способные использовать библиотеки сторонних производителей, эти средства позволяли обращаться к функциям клиентских API, а с развитием универсальных механизмов доступа к данным (таких как ODBC) — и к функциям API библиотек, реализующих такие механизмы. Отметим, что нередко с помощью этих средств разработки создавались среды настольных СУБД (таких как dBase, FoxBase) или псевдокомпиляторы для языков семейства xBase (например, Clipper).

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

К первой категории относятся средства разработки, обладающие обширными библиотеками классов, большим количеством «мастеров» и кодогенераторов, но ориентированные на «ручное» создание кода и довольно редко применяемые для создания «стандартных» приложений для работы с базами данных (здесь под словосочетанием «стандартное приложение» мы подразумеваем приложение, имеющее непосредственный доступ к базе данных, с которым взаимодействует пользователь, то есть являющееся «классическим» клиентом серверной СУБД). Типичным (и единственным действительно популярным на рынке программного обеспечения) представителем этого класса продуктов является Microsoft Visual C++. С помощью Microsoft Visual C++ и библиотеки MFC (Microsoft Foundation Classes) можно создавать любые приложения, если вы обладаете навыком, знаниями, умением и временем. Тем не менее приложения, обладающие сложным пользовательским интерфейсом (например, использующие базы данных), с его помощью разрабатывают не так часто (хотя примеры подобного его использования можно найти даже в отечественной литературе). В основном этот продукт применяется для создания клиентских приложений в случае предъявления к ним особых требований, таких, например, как высокая производительность, способность осуществлять какие-либо нестандартные операции и пр.

Ко второй категории относятся средства разработки с развитыми визуальными инструментами, позволяющие буквально «рисовать» пользовательский интерфейс, частично стирая различия между работой программиста и пользователя и удешевляя конечный продукт за счет привлечения к проектированию интерфейса разработчиков, обладающих не самой высокой квалификацией (если внимательно изучить программы курсов учебных центров, специализирующихся на обучении средствам разработки Microsoft, Borland и Sybase, то можно обнаружить, что продолжительность курса обучения, прослушав который обычный пользователь Windows должен научиться создавать клиентские приложения для серверных СУБД, составляет от 5 до 10 рабочих дней).

Именно эта категория средств разработки наиболее часто применяется при создании клиентских приложений. К наиболее популярным продуктам подобного класса следует отнести Microsoft Visual Basic, Borland Delphi, Sybase PowerBuilder и Borland C++Builder. Среды разработки подобных продуктов весьма схожи внешне (с точностью до расположения окон на экране, устанавливаемого «по умолчанию»): как правило, среда разработки такого продукта содержит «заготовку» проектируемой формы (аналога окна), отдельную панель с пиктограммами элементов пользовательского интерфейса и иных используемых в приложении объектов, которые можно выбирать и помещать на форму, окно, в котором отображаются и редактируются свойства одного из выбранных на форме элементов (а иногда и список событий, на которые реагирует данный элемент), окно редактора кода, где можно вводить фрагменты кода, связанные с обработкой тех или иных событий, а также код, реализующий логику работы данного приложения. Как правило, современные средства разработки такого класса позволяют создавать простейшие приложения для редактирования данных практически без написания кода.

В последнее время очень популярным стало также создание приложений, использующих доступ к базам данных, но расположенных внутри обычных документов. В основу средств разработки подобных приложений положены макроязыки соответствующих редакторов. Наиболее типичным и практически единственным популярным представителем средств разработки этой категории является Visual Basic for Applications, сходный с перечисленными выше визуальными средствами разработки и отличающийся от них тем, что созданные с его помощью приложения содержатся внутри документов Microsoft Office и не отчуждаются от них.

Отметим, однако, что приведенное деление средств разработки на эти два класса весьма условно. Как мы уже говорили выше, практически все средства разработки приложений с базами данных, в том числе и ориентированные на конкретные СУБД, поддерживают как минимум один из универсальных механизмов доступа к данным. И практически все «универсальные» средства разработки приложений, если они принадлежат производителю каких-либо серверных СУБД, поддерживают «свои» СУБД лучше, чем СУБД сторонних производителей (это может выражаться, например, в особых библиотеках классов или компонентов для доступа к данному серверу, а также в наличии общих репозитариев объектов и моделей данных, а иногда и общих с клиентской частью серверной СУБД редакторов параметров доступа к данным или схем данных).

Классификация приложений, использующих базы данных

Приложения в архитектуре «клиент-сервер»

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

Для создания клиентских приложений в этом случае чаще всего применяются средства разработки, обладающие развитыми визуальными инструментами, такие как Microsoft Visual Basic, Borland Delphi, Sybase PowerBuilder, Borland C++Builder.

Отметим, однако, что выбор архитектур современных приложений в настоящее время достаточно широк и не исчерпывается «классической» архитектурой «клиент-сервер», подразумевающей, что приложение состоит из сервера баз данных и клиентских приложений, взаимодействующих с этим сервером. Поэтому ниже мы обсудим, какие средства разработки удобно применять при создании распределенных приложений.

Распределенные приложения

Распределенные (или многозвенные) приложения обычно состоят из презентационных сервисов (или «тонких» клиентов, с которыми обычно взаимодействуют конечные пользователи), сервисов бизнес-логики, реализуемых в виде бизнес-объектов (или сервисов промежуточного слоя — middle tier; нередко для описания совокупности таких сервисов применяется термин middleware), и сервисов данных (обычно состоящих из сервера баз данных и механизмов доступа к данным). Сервисы бизнес-логики предназначены для получения введенных пользователем данных от презентационных сервисов, взаимодействия с сервисами данных для выполнения бизнес-операций (например, обработки заказов или расчета бухгалтерского баланса) и возврата результатов этих операций презентационным сервисам.

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

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

Для создания бизнес-объектов применяются как средства разработки с развитыми визуальными инструментами, так и средства разработки, ориентированные на «ручное» создание кода приложений (такие как Visual C++). Отметим, что новейшие версии почти всех наиболее популярных средств разработки Windows-приложений (Microsoft Visual Basic, Visual FoxPro и Visual C++, Borland Delphi и C++Builder, Sybase PowerBuilder) поддерживают создание различных типов бизнес-объектов (Web-приложений, ASP-объектов, COM-серверов и др.), за исключением, пожалуй, Microsoft Access — этот продукт рассчитан скорее на квалифицированных пользователей, нежели на разработчиков распределенных систем. Нередко для этой цели используются и средства создания Java-приложений (такие как Borland JBuilder).

Отметим, что, кроме перечисленных выше «универсальных» средств создания как приложений в архитектуре «клиент-сервер», так и бизнес-объектов для распределенных систем, на рынке средств разработки имеются и специализированные средства, предназначенные именно для создания бизнес-объектов (как правило, Web-приложений). Из средств разработки такого класса для платформы Windows наиболее популярен Microsoft Visual InterDev, первая версия которого появилась в 1998 году. Можно также упомянуть еще один интересный продукт, относящийся к той же категории средств разработки, — Borland IntraBuilder, появившийся двумя годами раньше, но почему-то, несмотря на растущую потребность в продуктах такого класса, не получивший дальнейшего развития. Средства разработки подобного класса, как правило, позволяют создавать приложения, динамически генерирующие HTML-код либо код на одном из скриптовых языков (VBScript или JavaScript), который передается Web-сервером в браузер пользователя в составе Web-страницы, и воспринимающие данные, введенные пользователем в HTML-форме и переданные браузером Web-серверу.

Заключение

В настоящей статье мы обсудили процесс создания приложений, использующих базы данных, а также различные категории средств, применяемых при их разработке. Мы убедились, что средства разработки можно условно разделить, с одной стороны, на инструменты, ориентированные на применение конкретных СУБД, инструменты, универсальные по отношению к СУБД, и среды настольных СУБД, применяемые для разработки приложений. С другой стороны, их можно разделить на средства, ориентированные на визуальное проектирование пользовательского интерфейса (к этой категории относятся Microsoft Visual Basic, Borland Delphi, Sybase PowerBuilder, Borland C++Builder), и на средства, ориентированные на написание кода приложения (Visual C++).

Рассмотрев несколько наиболее популярных средств разработки приложений, мы убедились, что большинство подобных продуктов, как правило, поддерживают:

Мы также обсудили, чем приложения в архитектуре «клиент-сервер» отличаются от распределенных систем и какие средства разработки можно применять при создании обоих типов приложений.

Жизненный цикл информационной системы не завершается разработкой приложений. После создания их полагается тестировать, внедрять, обучать пользователей их применению, и наконец, эксплуатировать их в течение ряда лет. В результате подобной эксплуатации накапливаются данные, которые, как правило, являются гораздо более ценными, чем собственно приложения. Эти данные нередко представляют собой необходимый для принятия важных управленческих решений материал, поэтому важно уметь преобразовывать их к виду, пригодному для подобной цели. Для этого существуют средства, относящиеся к категории Business Intelligence — генераторы отчетов, средства аналитической обработки данных и поиска закономерностей. О них мы поговорим в следующей статье данного цикла.

Ознакомительные версии некоторых из рассмотренных в данной статье продуктов вы сможете найти на нашем CD-ROM.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *