Порівняльний аналіз онлайн-компіляторів

Характеристика різних онлайн-компіляторів, визначення переваг та недоліків кожного з них. Проведення порівняльного аналізу, згідно з яким онлайн-компілятори розподілені по категоріям. Надання графічного зображення інтерфейсів онлайн-компіляторів.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык украинский
Дата добавления 29.10.2020
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Порівняльний аналіз онлайн-компіляторів

Курдус Анастасія Олександрівна

студентка 4-го курсу Національний технічний університет України “КПІ ім.І.Сікорського”

У статті описані різні онлайн-компілятори, приведені переваги та недоліки кожного з них. Проведений порівняльний аналіз і, згідно з результатами, онлайн-компілятори розподілені по категоріям. Прикріплені рисунки інтерфейсів онлайн-компіляторів.

Ключові слова: онлайн-компілятор, інтерфейс, комерційна розробка, програміст, мови програмування, користувач, редагування.

онлайн компілятор інтерфейс

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

Ключевые слова: онлайн-компилятор, интерфейс, коммерческая разработка, программист, языки программирования, пользователь, редактирование.

The article describes various online compilers, shows the advantages and disadvantages of each among them. A comparative analysis is carried out, and, according to the results, online compilers are categorized. Attached are the drawings of the interfaces of online compilers.

Keywords: online compiler, interface, commercial development, programmer, programming languages, user, editing.

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

Формування мети дослідження. Метою роботи є аналіз певних онлайн-компіляторів і порівняння їхніх інтерфейсів, що дає можливість знайти прості в користуванні і багатофункціональні онлайн-компілятори.

Порівняльний аналіз онлайн-компіляторів. Аналізуватися будуть наступні онлайн- компілятори: CodePad.io, C++shell, IdeOne, CodingGround, JDoodle, TryCode.CodePad.io -- цей онлайн-компілятор (рис.1.) підтримує велику кількість мов програмування (С, C++, D, Haskell, Lua, OCaml, PHP, Perl, PlainText, Python, Ruby, Tcl) [2]. Проте слід зауважити, що хоч вибір мов програмування і великий, але немає можливості обрати потрібну версію інтерпретатора або компілятора.

Рис. 1. Онлайн-компілятор CodePad

Інтерфейс онлайн-компілятора досить простий і зрозумілий у використанні, потрібно просто вставити текст коду в редактор CodePadі вже можна скомпілювати і виконати його. Головна перевага цього сервісу в тому, що він дуже легкий, тобто сайт буде швидко працювати і при повільному інтернеті. Серед наявних функцій, CodePadдає можливість ділитися своїм кодом з колегами електронною поштою або в чаті. Серед мінусів можна назвати відсутність підсвічування коду, що вводиться, і це може створити певний дискомфорт для розробника.

C++sheП -- онлайн-компілятор (рис. 2.), що підтримує лише мови С та С++, тому підійде тільки для розробників на цих мовах[4]. Проте така зосередженість на певних мовах програмування дозволяє реалізувати всі можливості оригінального С та С++. Крім того, існує можливість задати велику кількість налаштувань (версію С, версію компілятора, додаткові функції і т.д.). Щодо інтерфейсу онлайн-компілятора, то він трохи застарілий.

Рис. 2. Онлайн-компілятор C++shell

IdeOne -- онлайн-компілятор (рис.3.), який підтримує 60 мов програмування [2]. В мови, які підтримує цей компілятор, входять C++, D, Javascript, CofeeScript, R, Rust, Scala, Node.js, Ruby, Python, Perl, Goі багато інших. Інтерфейс дуже легкий в освоєнні та інтуїтивно зрозумілий, що є досить важливо, адже розробнику не потрібно витрачати час для того, щоб зрозуміти, як працювати з сервісом. Також надана можливість налаштувати ліміт часу, стандарт потоків вводу, а також можна додавати коментарі та мітки до коду [1]. Ще однією перевагою даного онлайн -компілятора є можливість ділитися своїм кодом з колегами, а отже працювати над одним кодом навіть на відстані, що є досить важливим і потрібним функціоналом для комерційної розробки. Та найбільшою особливістю IdeOneє те, що всі члени групи, яка працює з кодом, можуть зробити так званий forkфайлу. Fork- відгалуження частини коду, з можливістю продовжити роботу над проєктом, використовуючи сторонню мову програмування. При цьому вихідний код зберігається [1].

Рис. 3. Онлайн-компілятор IdeOne

ГОообіе -- це онлайн-компілятор (рис. 4.), який підтримує 72 мови програмування, а також 2 бази даних[3]. Досить корисною функцією онлайн-компілятора є можливість спільної роботи декількох програмістів над одним проєктом. Також є підсвічування коду, що можна віднести до корисного функціоналу. Слід зазначити, що інтерфейс JDoodle простий, зрозумілий та сучасний. Проте даний онлайн-компілятор має і недолік, а саме: підтримку всього одного файлу. Тобто його не можна використовувати при вивчені концепції пакетів, інкапсуляції та подібного.

Рис. 4. Онлайн-компілятор JDoodle

CodingGround -- це онлайн-компілятор (рис. 5.), який підтримує понад 75 мов програмування [5]. Інтерфейс онлайн-компілятора приємний у користуванні та досить мінімалістичний, що є перевагою, адже не змушує розробника розбиратися з великою кількістю кнопок і панелей. Також представлений функціонал для онлайн програмування та можливість ділитися кодом з колегами.

Рис. 5. Онлайн-компілятор CodingGround

TryCode -- онлайн-компілятор (рис. 6.), який підійде в першу чергу для спільної роботи декількох розробників. Вбудована підтримка розробки в режимі реального часу, що є корисною функцією, як для комерційної діяльності, так і для навчання майбутніх програмістів. Проте, так як розробники TryCode більше зосередилися на ідеї колективного доступу до одного коду, то функціонал і налаштування дещо обмежені. Що стосується інтерфейсу, то він нативний і не потребує багато часу для розуміння того, як з ним працювати. Варто зазначити, що TryCode не є онлайн-компілятором для багатьох мов програмування, лише для JavaScript, а також для HTML та CSS.

Рис. 6. Онлайн-компілятор TгyCode

Загалом, якщо структурувати все вище сказане,то отримаємо Таблицю 1. В ній зазначені певні критерії за якими порівнюються онлайн-компілятори, а саме: інтерфейс та різноманітність функціоналу, які суб'єктивно оцінюються за п'ятибальною шкалою, спираючись на опис кожного онлайн-компілятора приведеного вище, а також кількість мов програмування, що підтримуються онлайн-компілятором, яка була взята з джерел опису представлених онлайн -компіляторів. Одним з пунктів оцінки онлайн-компіляторів є швидкість їхньої роботи, яка була отримана експериментальним шляхом, методом вимірювання, за допомогою спеціальних функцій, часу компіляції однієї і тієї ж програми. Такий пункт, як популярність серед користувачів - це пропорційно виведена оцінка, яка базується на статистичних даних з різних джерел інформації. Останнім пунктом таблиці є середній бал, він показує середнє значення по всім показникам для кожного онлайн -компілятора, причому всі кількісні показники (швидкість роботи та к-ть мов програмування) були пропорційно оцінені за п'ятибальною шкалою.

Таблиця 1. Суб'єктивна оцінка онлайн-компіляторів за певними критеріями

Критерії '--

CodePad

C++shell

IdeOne

CodingGround

JDoodle

TryCode

Інтерфейс

3

3

5

4

3

4

К-ть мов, що підтримуються

15

2

60

75+

72

2

Різноманітність

функціоналу

3

4

5

5

4

3

Швидкість

роботи

37

18

13

31

20

7

Популярність

3

2

4

5

4

3

Середній бал

3

3

4.6

4.2

4

3.2

Висновок

Якщо розглядати онлайн-компілятори по кількості мов, які підтримуються, то беззаперечним лідером є CodingGround, адже кількість мов більше ніж 75. Проте онлайн-компілятор JDoodle, який підтримує 72 мови програмування також можна назвати лідером, адже кількість мов велика і майже кожен користувач може знайти потрібну йому мову. До того ж, цей онлайн-компілятор має багато інших переваг, а саме: нативний інтерфейс, опцію, яка дозволяє ділитися кодом, велику кількість іншого функціоналу та налаштувань. Також до трійки лідерів можна віднести і IdeOne, який підтримує 60 мов програмування. Інший онлайн-компілятор, на який варто звернути увагу тим, хто є розробником на JavaScript і для кого важливим аспектом є колективна робота в режимі реально часу - це TryCode. ЙогорозробникизосередилисясаменакомфортностіколективноїроботиітомуTryCode дужешвидкий, алевінмаємалофункційтаналаштувань. На одному рівні знаходяться такі онлайн- компілятори, як: CodePad.io, C++shell. В кожного є свої переваги і недоліки, але ці онлайн - компілятори складно назвати універсальними. Наприклад, C++shell чудово підійде тільки розробникам на С та C++, адже він підтримує тільки ці мови програмування, хоча і реалізує всі можливості оригінального С. CodePad має важливу перевагу - легкість, це означає, що при поганому з'єднанні з інтернетом, він буде працювати стабільно. Проте, у цього онлайн-компілятора є і недоліки, а саме: відсутність підсвічування коду, що робить розробку незручною, а також неможливість вибору потрібної версії інтерпретатора або компілятора.

Список бібліографічного опису

1. Подборка онлайн-компиляторов,https://gitjournal.tech/podborka-onlajn-kompiljatorov-chto-jeto-kak-oni-rabotajut-i-kakoj-vybrat/#i

2. Подборка онлайн-компиляторов: тестируем код прямо в браузере,https://tproger.ru/digest/compile-code-online/

3. Онлайн-средства для разработчика,https://javarush.ru/groups/posts/1922-online-sredstva-dlja-razrabotchika

4. C++ онлайн-компілятори,https://arne-mertz.de/2017/05/online-compilers/5. CodingGround, https://www.tutorialspoint.com/codingground.htm

References

1. Podborca onlain-compiliatorov, https://gitjournal.tech/podborka-onlajn-kompiljatorov-chto-jeto-kak-oni-rabotajut-i-kakoj-vybrat/#i

2. Podborca onlain-compiliatorov, https://tproger.ru/digest/compile-code-online/

3. Online-sredstva dlja razrabotchika, https://javarush.ru/groups/posts/1922-online-sredstva-dlja-razrabotchika

4. C++ online compilers, https://arne-mertz.de/2017/05/online-compilers/

5. CodingGround, https://www.tutorialspoint.com/codingground.htm

Размещено на Allbest.ru


Подобные документы

  • Создание онлайн-приложения, которое позволит пользователям создавать тесты, подписываться на аудиторию и просматривать результаты тестов. Проект реализован с использованием фреймворка React.JS и MS SQL Server на локальной машине под управлением Windows.

    дипломная работа [936,4 K], добавлен 23.08.2017

  • Обзор известных онлайн-переводчиков. Общая характеристика, принцип действия и возможности переводчиков текстов Translate.ru от Promt, Google и META. Электронные словари и мобильные переводчики. Отправка вопросов в техподдержку и отзывов о переводе.

    реферат [153,8 K], добавлен 14.07.2010

  • Знакомство с особенностями и основными этапами разработки онлайн-сервиса, облегчающего потребителям процесс подбора спортивного снаряжения. Анализ оборудования для вейкбординга. Общая характеристика клиент-серверной архитектуры реализации веб-приложения.

    дипломная работа [4,1 M], добавлен 30.09.2016

  • Разработка сайта, обеспечивающего функции по приему и обработке онлайн-заказов обоев. Перечень бизнес-процессов, включенных в разработку информационной системы. Инфраструктура разрабатываемой информационной системы. Тестирование программного обеспечения.

    курсовая работа [74,3 K], добавлен 25.05.2015

  • Формування інформаційного повідомлення про проведення наукового заходу - один з ключових етапів реалізації будь-якої конференції. Характеристика основних програмних засобів, які були використані при розробці онлайн-сервісу для наукових конференцій.

    статья [295,1 K], добавлен 27.08.2017

  • Вивчення складових частин, основних принципів побудови і функціонування компіляторів. Поняття хешування, сутність алгоритму роботи лексичного аналізатора. Практичне освоєння методів побудови простих компіляторів для заданої вхідної мови - Borland Delphi.

    дипломная работа [763,6 K], добавлен 27.05.2013

  • Создание простой в использовании онлайн записной книжки, позволяющей вести записи, хранить файлы и создавать напоминания. Характеристика пользователей. Требования к системе. Проектная команда, система управления проектом. Реализация логики работы системы.

    курсовая работа [391,8 K], добавлен 16.02.2016

  • Хранение успеваемости студентов в цифровом виде. Разработка серверной части дневника студента в сети Интернет, его преимущества по сравнению с обычным дневником. Обзор технологий создания веб-приложений. Руководство по установке и сопровождению.

    дипломная работа [2,2 M], добавлен 16.06.2017

  • Онлайн-страхування в мережі Інтернет, його правовий аспект. Програмне забезпечення для організації веб-сайтів в мережі Інтернет: CMS. Система керування вмістом для публікації інформації в Інтернеті: Joomla. Описання процесу створення й реалізації програми

    курсовая работа [4,3 M], добавлен 30.09.2014

  • Обзор веб-приложений для реализации онлайн фитнес-системы поддержания физической формы человека. Диаграммы вариантов использования. Построение логической модели данных. Способы идентификации классов анализа. Разработка сценариев и макетов экранных форм.

    дипломная работа [1,2 M], добавлен 02.08.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.