Огляд фреймворків та розбір плюсів та мінусів Django
Анотація: У статті розглянуто веб-фреймворк Django, його сфери застосування, переваги та недоліки використання. Наведено приклади використовування фрейворка у великих проектах.
Бібліографічний опис статті:
Анна Задорожная та Юрий Фольварочный. Огляд фреймворків та розбір плюсів та мінусів Django//Наука онлайн: Міжнародний електронний науковий журнал - 2018. - №12. - https://nauka-online.com/publications/information-technology/2018/12/obzor-frejmvorkov-i-razbor-plyusov-i-minusov-django/
Інформаційні технології
УДК 004
Задорожна Анна Володимирівна
кандидат фізико-математичних наук, доцент
Львівський національний університет імені Івана Франка
Задорожная Анна Владимировна
кандидат физико-математических наук, доцент
Львовский национальный университет имени Ивана Франко
Zadorozhnaya Anna
Candidate of Physical and Mathematical Sciences, Associate Professor
Ivan Franko National University of Lviv
Фольварочний Юрій Ярославович
студент магістратури
Львівського національного університету імені Івана Франка
Фольварочный Юрий Ярославович
студент магистратуры
Львовского национального университета имени Ивана Франка
Folvarochnyi Yurii
Student of the
Ivan Franko National University of Lviv
ОГЛЯД ФРЕЙМВОРКІВ ТА РОЗБІР ПЛЮСІВ ТА МІНУСІВ DJANGO
ОБЗОР ФРЕЙМВОРКОВ И РАЗБОР ПЛЮСОВ И МИНУСОВ DJANGO
OVERVIEW OF THE FRAMEWORKS AND THE ANALYSIS OF THE ADVANTAGES AND DISADVANTAGES OF DJANGO
Анотація. У статті розглянуто веб-фреймворк Django, його сфери застосування, переваги та недоліки використання. Наведено приклади використовування фрейворка у великих проектах.
Ключові слова: фреймворк, веб-розробка, програмування, веб-сайт, Python, Django.
Аннотация. В статье рассмотрены веб-фреймворк Django, его сферы применения, преимущества и недостатки использования. Приведены примеры использования фрейворка в больших проектах.
Ключевые слова: фреймворк, веб-разработка, программирование, веб-сайт, Python, Django.
Summary. The article discusses the Django web framework, its applications, the advantages and disadvantages of using it. Examples of using Freight in large projects are given.
Key words: framework, web development, programming, website, Python, Django.
Постановка проблеми. Створювати веб-сайти до цього часу було досить складно, через рутинність написання великої кількості коду. На сьогоднішній день є великий вибір веб-фреймворків, які полегшують та пришвидшують роботу веб розробника за рахунок уже створених заздалегідь бібліотек з відкритим вихідним кодом. До прикладу репозиторій Python Package Index налічує понад 116 тисяч пакетів. Якщо вам необхідно вирішити конкретну проблему, є можливість використати вже реалізовану для неї бібліотеку. Але через велику різноманітність, для кожного особисто, постає проблема вибору зручного дня нього в використанні фреймворку. Більшість з них написані орієнтовано на певну мову програмування.
Аналіз останніх досліджень і публікацій. Питання про переваги використання веб-фреймворків розглядали такі видання як Tproger, WEB Creator, Harb, Web experience та інші.
Постановка завдання. Основним завданням, яке поставлене при написанні статті, є розглянути етапи створення веб фреймворку Django, порівняти його з іншими фреймворками та зрозуміти його переваги та недоліки.
Виклад основного матеріалу. Швидкість, з якою поширюється інформація сьогодні, є вражаючою. На даний момент наймасовіше інформація поширюється через інтернет. В інтернеті ви зможете знайти безліч веб-сайтів з відповідями на будь-які ваші запити. Проте створення, підтримка та наповнення сайту є важкою працею.
Розробка веб-сайтів є одним з найперспективніших напрямків в сфері ІТ. Інтернет павутина з кожним роком охоплює більшу кількість користувачів. Так компанія SEO Ukraine подає такі статистичні дані користувачів інтернету в Україні: станом на 2018 рік інтернет аудиторія в Україні складає 21.4 мільйони, у 2017 році ця цифра становила 19.3 мільйони. Це свідчить про те, що кількість людей які користуються інтернетом, з кожним роком зростає з шаленими темпами. Також згідно з цією статистикою стрімко зростає кількість користувачів, які використовують смартфони, для доступу в Інтернет, ці цифри становлять 16.7 мільйони станом на 2018 рік та 11.9 мільйони станом на 2017 рік. Зрозуміло, що з зростанням користувачів, зростає і кількість інтернет ресурсів, які повинні адаптуватись і під мобільну верстку.
За останні роки веб-сайти дуже сильно зпрогресували, як в стильвому розумінні, так і в зручності користування. Сайти які раніше були таблицями для розміщення інформації, тепер стали багато функнаціональними, інтерактивними системами для надання різної інформації.
Проте масова поява великого попиту спровокувала появу великої кількості не якісних сайтів. Великий запит на створення сайтів спровокував розробку систем та програм, які спрощують процес написання та допомагають покращити якість сайтів.
Під час вибору фреймворку для роботи, можна побачити, що їх існує сотні. Тому досить складно підібрати підходящий варфіант для роботи.
Для написання коду існують безліч фреймворків написаних на найпопулярніших мовах, таких як: Java, Python, PHP.
Основні фреймворки:
Angular- це фреймворк для JavaScript з відкритим програмним кодом. На даний момент один з найпопулярніших фреймворків. З допомогою Angular можна динамічно змінювати данні в певно місці без повної перезагрузки сторінки. Перелік сайтів зроблених за допомогою Angular : YouTube, Telegram, Upwork.
Ruby on Rails – це об’єктно-орієнтований фреймворк, написаний на мові Rubi, для втворення веб-додатків які використовують бази даних основані на архітектурі Model-View-Controller. Основною перевагою є швидкість розробки, швидкість розробки проектів на RoR зазвичай на 30-40 процентів вища за будь-яку іншу мову програмування. Перелік сайтів зроблених за допомогою RoR: Twitter, GitHub, Twitch, SoundCloud.
Yii – це високопродуктивний фреймворк написаний на PHP і підходить для розробки великих веб-додатків. Yii- абревіатура від Yes it is. Завдяки своїй легковагості та наявності просунутих засобів кешування, Yii особливо підходить для порталів, форумів, системи управління контентом (CMS), системи електронної коммерції.
Django – фреймвок написаний на мові Python, для створення веб-додатків різної складності. Одним з основних принципів якого є “don’t repeat yourself”. Веб-системи на Django будуються з одного, або декількох додатків, які роблять відокремленими та підключаємими через файл url.py. Це одна з відмінностей порівняно з іншими фреймворками. Django може поєднуватись з різними базами даних (MySQL, SQLite, Microsoft SQL Server, DB2, Firebird, SQL Anywhere та Oracle). Деякі компоненти фреймворку слабо між собою повязані і їх можна з легкістю замінювати на інші. Перелік сайтів зроблених за допомогою Django: Instagram, Disqus, Mozilla, The Washington Times, National Geographic, Pinterest, lamoda та інші.
Плюси Django:
Використання Python в якості мови програмування. Відомо, що Python являється одним з найпопулярніших мов програмування, завдяки простоті вивчення, дизайну та гнучкості, з низьким порогом входження, хорошій документації та великому вибору бібліотек.
Зручна документація. Важко знайти якіснішу документацію фрейворку, як у Django. Одною з переваг є відкритий код, який дуже якісно написаний.
Автоматично генерована адмінка. Це одна з унікальних примочок Django, яка практично не має аналогів. Ця функція дозволяє значно зменшити затрати часу на написання потрібного інтерфейсу адмін панелі, та дозволяє клієнтам зразу почати роботу з сайтом ще на ранніх етапах його розробки.
Висока швидкість роботи. Django розроблений так, щоб розробник міг створити додаток настільки швидко, наскільки це можливо. Він витримує високе навантаження і має вбудовані можливості кешування та розподілу навантаження. При цьому, щоб написати на ньому потужні сайти, не обовязково мати високу кваліфікацію.
Безпека. Працюючи в Django ви отримуєте захист від помилок пов’язаних з безпекою. Це помилки такого типу, як: інєкція SQL, clickjacking та кросс-сайтовий скріптинг. Для того, щоб ефективно використовувати логіни та паролі, система користувальницької аутентифікації є ключем.
Мінуси Django:
Мінуси завжди йдуть поруч з плюсами. Давайте розглянемо, чому Django можна назвати бездоганним:
- Використання шаблону маршрутизації із зазначенням URL
- Django занадто монолітний
- Все базується на ORM Django
- Компоненти розгортаються спільно
- Необхідно вміння володіти всією системою для роботи
Висновки. Як і будь-який фреймворк Django має багато плюсів та мінусів, проте коли розглядається проект з дедлайном, використання Django для вирішення поставленого завдання – грамотне рішення через велику кількість вбудованих функцій, бібліотек та аплікацій. Більш того, для прискорення робочого процесу, є можливість встановити для користувача кастомную конфігурацію. Саме тому я рекомендую використовувати Django в якості веб-вреймворку.
Література
- Angular for professionals, Adam Freeman.
- Django Detailed guide. 2nd edition, Adrian Holovaty, Jacob Kaplan-Moss.
- Web Application Development in Yii 2, Mark Safronov.
- [Електронний ресурс]. – Режим доступу: https://habr.com/
- [Електронний ресурс]. – Режим доступу: https://tproger.ru/
Коментарі закрито.
To comment on the article - you need to download the candidate degree and / or doctor of Science