Файл: Программные средства создания клиентских программ (на примере платформы «1С:Предприятие 8»).pdf
Добавлен: 28.03.2023
Просмотров: 106
Скачиваний: 2
СОДЕРЖАНИЕ
1. Теоретические особенности разработки клиентских программ
1.1. Понятие клиентских программ
1.2. Виды клиентских приложений (на примере платформы «1С:Предприятие 8»)
2. Программные продукты и средства для разработки клиентских приложений
2.1. Средства управления требованиями
2.2. Средства моделирования бизнес-процессов, приложений и данных
2.3. Средства разработки приложений
2.4. Средства тестирования и оптимизации приложений
2.5. Средства управления коллективной работой и контроля версий
3.1 Анализ языков программирования для создания клиентских приложений
3.2. Анализ распространённых средств разработки клиентских приложений
3. Классификация и распространённость языков программирования и средств разработки клиентских приложений
3.1 Анализ языков программирования для создания клиентских приложений
Любой, кто заинтересован в разработке программного обеспечения, например, программы, игры или онлайн-сервиса, должен начать с изучения языка программирования. Существует много разных языков, и создание новой программы требует время на обучение и больше информации, чем может предоставить одна эта страница.
Выбор языка для изучения может быть проблемой сам по себе. Создание программы с большим количеством функций часто требует достаточного владения одним или несколькими языками программирования.
При этом базовое понимание концепций практически любого языка программирования может помочь вам начать работу. Список языков программирования включает примеры различных типов программного обеспечения, которые может создать каждый язык.
Например, одним из первых языков программирования, которые я начал изучать была Java. Потому, что с помощью его можно было создавать программы для мобильных – на J2ME. Сейчас J2ME уже не так актуально, так как рынок заполонили смартфоны на андроиде и айфоны.
Для того, чтобы создавать сайты, часто используют HTML, JavaScript и PHP. На самом деле сайт можно создать на той же Java или C#, но все же гораздо проще и уместно для большинства проектов будет использовать именно PHP, Perl или Python.
В общем плане выбор языка программирования зависит от типа программы или сценария, который вы хотите создать. Например, Visual Basic является популярным из-за его относительной легкости. Основы программирования можно изучить с помощью Pascal.
Другие популярные языки - C, C ++ и C # используются для создания игр, приложений, драйверов, операционных систем, а также многих программ, которые запускаются на компьютере. Java и инструментарий Qt подойдет тем, цель кого создавать кроссплатформенное ПО – не только для Windows, но и Linux, Mac.
Важно определить, какой язык программирования выбрать исходя из требований к проекту.
Выбор языка, на котором пишут программы, невероятно важен - он поможет определить, будет ли проект успешным или нет, а ошибки часто приводят к неудачному итогу. Такие ошибки, которые могут привести к отсутствию планирования, включают:
- потраченное время на обучение,
- неправильное проектирование,
- увеличение форм-фактора,
- постоянные правки,
- повреждение деталей.
Ниже приведен метод оценки требований проекта, чтобы определить, какой язык может быть лучше для того или иного приложения.
В таблице 2 приведены некоторые из наиболее распространенных языков, их преимущества, а также области, которые создают больше проблем.
Скорость обработки |
Читабельность |
Простота |
GUI (графический интерфейс) |
Графика 2D |
Графика 3D |
Кросс-платформенность |
|
С |
8 |
6 |
2 |
3 |
5 |
8 |
7 |
С++ |
8 |
6 |
3 |
4 |
6 |
8 |
7 |
С# |
7 |
7 |
5 |
6 |
7 |
7 |
2 |
Java |
6 |
7 |
6 |
7 |
7 |
6 |
10 |
Python |
2 |
5 |
10 |
8 |
10 |
1 |
10 |
VB.net |
6 |
10 |
8 |
10 |
5 |
2 |
2 |
Assembler |
10 |
0 |
0 |
0 |
0 |
0 |
0 |
Первой задачей при выборе языка является перечисление основных требований проекта, за которым следуют второстепенные требования.
Затем, используя таблицу, оценивают каждый язык в соответствии с требованиями проекта, а язык с наивысшим баллом, скорее всего, будет оптимальным. Опытные программисты знают, как заставить язык работать под требования[14].
Оценка языка программирования производится по следующим показателям:
Скорость обработки: как быстро программа будет выполнена.
Читаемость: насколько сложно будет читать код.
Простота: насколько легко будет работать и использовать библиотеки.
GUI (графический интерфейс пользователя): как легко будет работать с приложением графического интерфейса пользователя.
Графика (2D): простота использования 2D-графики и ее скорости.
Графика (3D): простота использования 3D-графики и ее скорости.
Кросс-платформенность: как легко будет запускать программу на разных платформах (Windows, Mac).
Самый простой метод использования таблицы включает в себя поиск требований, а затем суммирование баллов, чтобы посмотреть, какой язык выходит на первое место.
Однако некоторые требования могут быть более важными, чем другие, поэтому можно также добавить вес к значениям оценки в зависимости от важности критериев.
Например, если скорость обработки в два раза важнее, чем читаемость, умножают показатели скорости обработки на 2.
Так, например, многие языки программирования используют фигурные скобки для разделения кода и имеют четкие точки входа (например, main()). Однако Python этого не делает, и это может сделать код похожим на блоки текста, которые гораздо труднее прочитать. Скобки четко показывают код-блок, а точка с запятой в конце строк, указывают, что код на этой строке является инструкцией вместо описания. В то время как Python гордится своей читабельностью, важно понимать, что большие программы на Python могут стать сложными для чтения[15].
Так, Яндекс провел опрос своих разработчиков, чтобы выяснить на каких языках программирования они пишут. Об этом сообщается в блоге Яндекса, где говорится следующее: спрашивали у разработчиков, на чём они пишут, чтобы выяснить — какие языки программирования в Яндексе самые популярные. В опросе приняли участие больше половины разработчиков компании, расклад получился такой:
Рисунок 2 – Результаты опроса работников Яндекс об используемом языке программирования[16]
Многие разработчики используют в работе несколько языков, поэтому мы просили их выбрать один — тот, на котором они пишут больше всего. В лидерах оказались пять языков: C++, JavaScript, Java, Python и Perl. Все эти языки разные, и каждый лучше решает свою задачу. Поэтому они по-разному используются в Яндексе.
C++ — классический язык для больших и сложных систем, где критически важна производительность. На нём обычно пишутся самые важные, базовые компоненты приложений. Например, на C++ написано ядро поиска Яндекса, Браузер и Карты.
На JavaScript в основном пишут интерактивные элементы сайтов, такие как анимация или браузерные игры. Этот язык очень широко используется в браузерах для написания интерфейсов — того, с чем напрямую взаимодействуют пользователи. На JavaScript написаны веб-интерфейсы всех сервисов Яндекса.
Java — это универсальный язык, на котором можно написать любое приложение, будь то игра Flappy Bird или веб-сервер, обрабатывающий миллионы запросов в минуту. Несмотря на название имеет мало общего с JavaScript. Разработка на нём пойдёт быстрее, чем на C++, однако программа может получиться чуть медленнее. Особенности Java позволяют создавать программы, которые работают практически на любом устройстве — от телефона до микроволновки. На Java у нас написаны, например, Маркет и Музыка.
Python — это дружелюбный к программисту язык с простым синтаксисом. С него хорошо начинать изучение программирования. Python широко используется в системном администрировании, но подходит для решения почти любых задач, кроме обработки больших объёмов данных. На Python многое делать проще и быстрее, чем на C++, но программа будет не такой производительной. Это разумный выбор, когда производительность не очень важна или задачу нужно сделать быстро. На Python написана серверная часть Диска, а ещё он используется в Директе, внутренних сервисах и многих других проектах.
Perl был создан для обработки текстов — например, для извлечения фактов из текстаЭто лаконичный, но непростой язык, который, однако, хорошо решает свою задачу. В Яндексе его используют, например, для анализа данных в баннерной системе и в разработке серверной части некоторых сервисов — например, Директа.
С точки зрения задачи выбор языка — это поиск равновесия между эффективностью программы, квалификацией программиста и временем, потраченным на работу.
С точки зрения разработчика, выбор языка — это вопрос предпочтений. Кому-то действительно нравится сам язык, кому-то — задачи, которые он решает. Например, одни предпочитают фундаментальные задачи и пишут базу поиска на C++, а другие любят делать то, что видно пользователям, и пишут интерфейсы на JavaScript. Третьи пишут на каком-то языке просто потому, что знают его досконально. А некоторые, наоборот, готовы пробовать новое и участвуют в разных проектах[17].
3.2. Анализ распространённых средств разработки клиентских приложений
Сред разработки на C++ очень много, и для каждой цели есть своя, особенная IDE. Рассмотрим несколько самых популярных сред разработки и редакторов исходного кода для C++.
Visual Studio – это среда разработки от Microsoft. Visual Studio в основном известна для написания приложений, включающих в себя .NET. Это полный набор инструментов, позволяющий произвести точную отладку и настройку приложения. Есть как Community-версия, так и PRO.
Visual Studio предназначена не только для разработчиков на C++, но также поддерживает многие другие популярные языки, такие как C#, Visual Basic и F#.
Visual Studio предлагает множество функций, некоторые из которых:
- интеллектуальное автодополнение кода;
- дизайнер графических форм (GUI);
- простая в использовании навигационная система.
Можно использовать IDE для разработки компьютерных программ для Microsoft Windows, а также веб-сайтов, веб-приложений и веб-сервисов.
Xcode – это интегрированная среда разработки, полный набор инструментов для разработки программного обеспечения, созданных Apple для разработки программного обеспечения для MacOS, iOS, WatchOS и tvOS.
Xcode создана разработчиками операционной системы.
Функции Xcode:
- создание приложений под все Apple платформы;
- автодополнение кода;
- удобная работа с GUI[18].
Это среда разработки на C++ как для Windows, так и для Mac с Linux.
У NetBeans также есть много готовых шаблонных проектов для C и C++, которые можно использовать в качестве основы для ваших приложений. NetBeans был написан с использованием Java, он также может быть использован для проектов PHP и HTML5.
Плюсы NetBeans:
- это ПО о открытым исходным кодом;
- разработан и поддерживается компанией Oracle;
- мультиплатформенная поддержка;
- поддержка визуализированного создания GUI-имнтерфейсов;
- простота установки и использования;
- поддержка Qt Toolkit;
- поддержка удаленного развития;
- легкая файловая навигация.
Eclipse –простая в использовании и при этом мощная IDE для C и C++. Между Eclipse и NetBeans мало различий, но все же Eclipse является более быстрой средой разработки.
Плюсы Eclipse:
- простота установки и использования;
- бесплатный и открытый источник;
- поддержка нескольких платформ;
- мощный движок создания GUI-интерфейсов;
- удаленный системный проводник.
CodeLite – это еще одна бесплатная и быстрая IDE для программирования на C и C ++. CodeLite также поддерживает разработку на PHP и JavaScript.
Функции CodeLite:
- мультиплатформенная поддержка;
- встроенная поддержка GCC/clang/VC++;
- CodeLite обладает удивительно быстрым и мощным инструментом завершения кода из-за собственного анализатора;
- поддержка профилирования, рефакторинга;
- анализ статического кода и браузер классов[19].