Добавлен: 29.11.2023
Просмотров: 314
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
1 ОБЗОР И СРАВНИТЕЛЬНЫЙ АНАЛИЗ СРЕДСТВ ДЛЯ РАЗРАБОТКИ СЕРВИСА
Преимущества и применение чат-ботов в бизнесе
Выбор программного обеспечения для разработки чат-бота
Описание деятельности компании АО «ПФ СКБ «Контур»
Описание бизнес-процесса AS-IS
Разработка ИТ-проекта по внедрению чат-бота в компанию СКБ Контур
Практическая реализация чат-бота на языке программирования Pyhton
Моделирование алгоритма работы программы в соответствии с требованиями ГОСТ 19.701-90
конструкции, позволяющих производить процесс обработки данных.
Все языки программирования делятся на два вида — языки низкого и высокого уровня [14]:
Языки высокого уровня проще в использовании, поскольку их задача - обслуживать потребности программиста, а не определять возможности компьютера. Программы, написанные на этих языках, должны быть перекодированы - переведены на машинный язык, чтобы перед запуском программ компьютер мог их понять. Поэтому системы программирования на Java включают в себя либо интерпретатор языка, либо компилятор.
Языки низкого уровня, близкие к машинному языку, позволяют создавать программы, которые работают быстрее и позволяют более эффективно использовать ресурсы компьютера.
На сегодняшний день существует большое количество различных языков программирования и у каждого из них своя сфера применения, но всё же для проведения анализа на выбор лучшего языка для написания чат-бота, необходимо выбрать несколько самых популярных языков, чтобы между ними
проводить анализ, итак в этой главе обратимся к статистике по популярности языков [15].
На рисунке 6 показан рейтинг языков 2020 в коммерческих рабочих проектах.
Рисунок 6 – Рейтинг языков программирования в коммерческих проектах, % [15]
По данным можно сделать вывод, что JavaScript значительно опережает Java и сейчас является самым популярным языком программирования. В пятерку лучших языков вошли также: C#, Python, PHP. На рисунке 7 можно посмотреть, как менялись данные с 2012-2020 годы.
Рисунок 7 – График изменения популярности языков программирования, % [15]
По рисунку 7 можно сделать вывод, что популярность языка Java и C# сильно падает, а популярность таких языков как JavaScript, TypeScript и Python продолжает расти.
Далее рассмотрим рейтинг популярности по личным предпочтениям, но для коммерческих проектов, который представлен на рисунке 8.
Рисунок 8 – Рейтинг популярности языков по личным предпочтениям, % [15]
По рисунку 8 можно сделать вывод, что по личным предпочтениям люди выбирают Python, далее C#, а потом JavaScript.
Ещё в этой главе хотелось бы посмотреть статистику использования языков программирования в личных проектах, рисунок 9.
Рисунок 9 – Рейтинг языков программирования в личных проектах, % [15]
По рисунку 9 наглядно видно, что самым популярным языком является JavaScript, Python и
Java.
Вывод: итак, по данным, представленным выше самыми популярными языками на данный момент, являются JavaScript, Python и С#, поэтому для анализа и сравнения выберем именно эти языки.
Python — это высокоуровневый язык программирования общего назначения, который также используется для разработки веб-приложений. Язык нацелен на повышение производительности труда разработчиков и читабельности кода.
Python поддерживает различные парадигмы программирования: структурную, объектно-ориентированную, функциональную, императивную и аспектно-ориентированную. Язык включает в себя динамическую типизацию, автоматическое управление памятью, полное самонаблюдение, механизм обработки исключений, поддержку многопоточных вычислений и практические структуры данных высокого уровня [16].
Преимущества Python [17]:
Недостатки Python:
JavaScript — мультипарадигменный язык программирования. Поддерживает объектно-ориентированный, императивный и функциональный стили [18].
Недостатки JavaScript:
C# — язык программирования, сочетающий объектно-ориентированные и контекстно-ориентированные концепции.
Преимущества:
Сейчас хотелось бы представить наглядно синтаксис языков по написанию равнозначного по результату кода на рисунке 10, рисунке 11 и рисунке 12.
Рисунок 10 – Пример кода на семействе Java [19]
Рисунок 11 – Пример кода на семействе C [20]
Рисунок 12 – Пример кода на Python [20]
По рисункам видно, что, когда семейство «Java» и «С» требуют 4-5 строчек кода, Python использует всего одну.
Чтобы сделать выбор языка программирования для чат-бота, нужно понять, а что такое чат-бот. Чат-бот – это программа, которая выясняет потребности пользователей, а затем помогает удовлетворить их.
По статистике и моему личному анализу и поиску в интернете, я выяснила, что чащу всего в качестве языка программирования для чат-бота выбирают Python. Приведем несколько примеров преимуществ создания бота на Python:
Подведем итоги, у каждого языка программирования есть свои плюсы и минусы, каждый язык хорош для конкретных целей, например если создавать сайт, то по описанным критериям нужно выбрать JavaScript,
Все языки программирования делятся на два вида — языки низкого и высокого уровня [14]:
-
Языки низкого уровня — это способ написания компьютерных инструкций на аппаратном языке, то есть в машинных кодах (в виде последовательности нулей и единиц). Языки низкого уровня жестко ориентированы на конкретный тип оборудования (система управления процессором, каждый тип процессора имеет свой машинный код). -
Языки высокого уровня — это языки программирования, которые позволяют записывать программы в удобной для человека форме. Эти языки ориентированы не на систему инструкций того или иного процессора, а на систему операторов (инструкций), характерную для написания определенного класса алгоритмов.
Языки высокого уровня проще в использовании, поскольку их задача - обслуживать потребности программиста, а не определять возможности компьютера. Программы, написанные на этих языках, должны быть перекодированы - переведены на машинный язык, чтобы перед запуском программ компьютер мог их понять. Поэтому системы программирования на Java включают в себя либо интерпретатор языка, либо компилятор.
Языки низкого уровня, близкие к машинному языку, позволяют создавать программы, которые работают быстрее и позволяют более эффективно использовать ресурсы компьютера.
-
Самые популярные языки программирования
На сегодняшний день существует большое количество различных языков программирования и у каждого из них своя сфера применения, но всё же для проведения анализа на выбор лучшего языка для написания чат-бота, необходимо выбрать несколько самых популярных языков, чтобы между ними
проводить анализ, итак в этой главе обратимся к статистике по популярности языков [15].
На рисунке 6 показан рейтинг языков 2020 в коммерческих рабочих проектах.
Рисунок 6 – Рейтинг языков программирования в коммерческих проектах, % [15]
По данным можно сделать вывод, что JavaScript значительно опережает Java и сейчас является самым популярным языком программирования. В пятерку лучших языков вошли также: C#, Python, PHP. На рисунке 7 можно посмотреть, как менялись данные с 2012-2020 годы.
Рисунок 7 – График изменения популярности языков программирования, % [15]
По рисунку 7 можно сделать вывод, что популярность языка Java и C# сильно падает, а популярность таких языков как JavaScript, TypeScript и Python продолжает расти.
Далее рассмотрим рейтинг популярности по личным предпочтениям, но для коммерческих проектов, который представлен на рисунке 8.
Рисунок 8 – Рейтинг популярности языков по личным предпочтениям, % [15]
По рисунку 8 можно сделать вывод, что по личным предпочтениям люди выбирают Python, далее C#, а потом JavaScript.
Ещё в этой главе хотелось бы посмотреть статистику использования языков программирования в личных проектах, рисунок 9.
Рисунок 9 – Рейтинг языков программирования в личных проектах, % [15]
По рисунку 9 наглядно видно, что самым популярным языком является JavaScript, Python и
Java.
Вывод: итак, по данным, представленным выше самыми популярными языками на данный момент, являются JavaScript, Python и С#, поэтому для анализа и сравнения выберем именно эти языки.
-
Сравнительный анализ языков программирования
Python — это высокоуровневый язык программирования общего назначения, который также используется для разработки веб-приложений. Язык нацелен на повышение производительности труда разработчиков и читабельности кода.
Python поддерживает различные парадигмы программирования: структурную, объектно-ориентированную, функциональную, императивную и аспектно-ориентированную. Язык включает в себя динамическую типизацию, автоматическое управление памятью, полное самонаблюдение, механизм обработки исключений, поддержку многопоточных вычислений и практические структуры данных высокого уровня [16].
Преимущества Python [17]:
-
открытая разработка; -
довольно прост в изучении, особенно на начальном этапе; -
особенности синтаксиса стимулируют программиста писать хорошо читаемый код; -
предоставляет средства быстрого прототипирования и динамической семантики; -
имеет большое сообщество, позитивно настроенное по отношению к новичкам; -
множество полезных библиотек и расширений языка можно легко использовать в своих проектах благодаря предельно унифицированному механизму импорта и программным интерфейсам; -
механизмы модульности хорошо продуманы и могут быть легко использованы; -
абсолютно всё в Python является объектами в смысле ООП, но при этом объектный подход не навязывается программисту.
Недостатки Python:
-
не слишком удачная поддержка многопоточности; -
на Python создано не так уж много качественных программных проектов по сравнению с другими универсальными языками программирования, например, с Java; -
отсутствие коммерческой поддержки средств разработки (хотя эта ситуация со временем меняется); -
изначальная ограниченность средств для работы с базами данных; -
бенчмарки показывают меньшую производительность Python по сравнению с основными Java VM, что создаёт этому языку репутацию медленного.
JavaScript — мультипарадигменный язык программирования. Поддерживает объектно-ориентированный, императивный и функциональный стили [18].
-
Преимущества JavaScript: -
Ни один современный браузер не обходится без поддержки JavaScript. -
С использованием написанных на JavaScript плагинов и скриптов справится даже не специалист. -
Полезные функциональные настройки. -
Постоянно совершенствующийся язык – сейчас разрабатывается бета-вариация проекта, JavaScript2. -
Взаимодействие с приложением может осуществляется даже через текстовые редакторы – Microsoft Office и Open Office. -
Перспектива использования языка в процессе обучения программированию и информатике.
Недостатки JavaScript:
-
Пониженный уровень безопасности ввиду повсеместного и свободного доступа к исходным кодам популярных скриптов. -
Множество мелких раздражающих ошибок на каждом этапе работы. Большая часть из них легко исправляется, но их наличие позволяет считать этот язык менее профессиональным, сравнительно с другими. -
Повсеместное распространение. Своеобразным недостатком можно считать тот факт, что часть активно используемых программ (особенно приложений) перестанут существовать при отсутствии языка, поскольку целиком базируются на нем.
C# — язык программирования, сочетающий объектно-ориентированные и контекстно-ориентированные концепции.
Преимущества:
-
для малых предприятий и некоторых отдельных разработчиков бесплатные инструменты включают Visual Studio, Azure Cloud, Windows Server, Parallels Desktop для Mac Pro и многие другие; -
большое количество синтаксических конструкций, разработанных для лучшего понимания написания кода; -
очень прост в изучении; -
после покупки Xamarin на C # вы можете писать программы и приложения для операционных систем, таких как iOS, Android, MacOS и Linux; -
имеется целое сообщество из опытных программистов. Недостатки: -
приоритетная ориентированность на Windows платформу; -
язык бесплатен только для небольших фирм, индивидуальных программистов, стартапов и учащихся. Крупной компании покупка лицензионной версии этого языка обойдется в круглую сумму; -
в языке осталась возможность использования оператора безусловного перехода.
Сейчас хотелось бы представить наглядно синтаксис языков по написанию равнозначного по результату кода на рисунке 10, рисунке 11 и рисунке 12.
Рисунок 10 – Пример кода на семействе Java [19]
Рисунок 11 – Пример кода на семействе C [20]
Рисунок 12 – Пример кода на Python [20]
По рисункам видно, что, когда семейство «Java» и «С» требуют 4-5 строчек кода, Python использует всего одну.
Чтобы сделать выбор языка программирования для чат-бота, нужно понять, а что такое чат-бот. Чат-бот – это программа, которая выясняет потребности пользователей, а затем помогает удовлетворить их.
По статистике и моему личному анализу и поиску в интернете, я выяснила, что чащу всего в качестве языка программирования для чат-бота выбирают Python. Приведем несколько примеров преимуществ создания бота на Python:
-
Ваши возможности практически безграничны. -
Экономия денег. -
Получения навыков, которые могут пригодиться – как минимум, вы можете зарабатывать на создании «роботов». -
Недостатки: -
Трата времени и сил на изучение языка программирования.
Подведем итоги, у каждого языка программирования есть свои плюсы и минусы, каждый язык хорош для конкретных целей, например если создавать сайт, то по описанным критериям нужно выбрать JavaScript,