Python

Топ 10 веб-фреймворків Python

Топ 10 веб-фреймворків Python
Коли ви хочете створити веб-сайт, вам потрібні HTML, JavaScript і CSS. Щоб створити веб-сайт за допомогою Python, вам потрібно ще кілька речей. Ці речі - це способи створення HTML, CSS і, можливо, навіть JavaScript. Ви можете створити процедури для написання кожної веб-сторінки, коли користувачі взаємодіють із сайтом та відбуваються інші події. Це саме те, що зробили автори веб-фреймворків, полегшуючи створення сторінок і цілих сайтів. Називати це просто - це перебільшення, але принаймні це допоможе пришвидшити процес.

Які типи веб-фреймворків існують?

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

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

Що ви хочете створити?

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

Що ви дізнаєтесь про кожен фреймворк?

У цій статті ви дізнаєтеся, який фреймворк найкраще вам підходить, спираючись на цей список фреймворків нижче:

Джанго

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

Колба

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

Фреймворк Web2Py

Web2Py працює як завжди, коли його встановлено, він має вбудований адміністративний інтерфейс і може працювати локально без будь-якої процедури встановлення. Він написаний на Python і розроблений для програмування на Python. Цей фреймворк також має плагіни, як і інші, проте цей також має "рецепти". Ці рецепти - це весь код готового сайту, який ви можете завантажити та адаптувати до власних потреб. За допомогою цього пакету ви можете завантажити ще один пакет і мати повноцінний веб-сайт. Одним із прикладів є www.крихітний веб-сайт.net, ви можете використовувати код GitHub для web2py, перейти до каталогу програм і клонувати крихітний веб-сайт у цей каталог, і у вас є робочий веб-сайт.

TurboGears

TurboGears має цікаву концепцію, ви можете запустити цей пакет як мікрофреймворк або додати перед початком роботи. Це означає, що ви можете перейти до повного рішення стека з мікрофреймворку. Для запуску мінімального режиму насправді потрібен лише один файл вихідного коду, що дозволяє вам точно вибрати, скільки контролю ви маєте під час зростання. У повному режимі він підтримує безліч баз даних і має комплексну систему шаблонів. Щоб спробувати, просто встановіть його у віртуальному середовищі за допомогою pip.

CubicWeb

Фреймворк cubicweb має простий інтерфейс з майже всією логікою додатків у "кубах", це розширення. Коли ви починаєте використовувати його, вам радимо вибрати «куб» і подивитися, що ви хочете змінити в ньому. CubicWeb встановлюється як звичайний додаток у програмах на базі Debian, просто додайте їхнє сховище та встановіть. Є два пакети; час роботи та пакет розробки. Цей фреймворк значною мірою покладається на об'єктно-орієнтоване програмування на Python, тому, якщо вам це подобається, придивіться уважніше. Підключення до баз даних здійснюється за допомогою власної мови запитів, що називається RQL, що схоже на SPARQL від W3C. Якщо це вам добре звучить, у них є 190 «кубів», які допоможуть вам створити чудові веб-сайти.

Саніч

Структура Sanic була розроблена зі швидкістю як першочерговим пріоритетом, вона дозволяє асинхронізацію / очікування, додану в Python 3.5. Sanic підтримує Python 3.6 і вище! Ви встановлюєте sanic за допомогою команди pip. Інша мета полягає в тому, щоб бути простими, ви можете розпочати одне "Hello World" із десяти рядків коду. Щоб повною мірою використовувати цей фреймворк, вам потрібні uvloop та ujson, він все одно буде працювати, але передбачена швидкість не буде реалізована. Sanic легко запустити безпосередньо як веб-сервер, одночасно використовуючи його для розробки веб-сайту.

Джотто

Джотто розроблений для того, щоб мати дуже малу кодову базу, маючи при цьому більшість функцій. Ви встановлюєте Джотто за допомогою команди pip. Щоб спробувати це і почати експериментувати, вам потрібні лише три команди. Проект використовує Jinja2 для шаблонів HTML, SQLAlchemy для підключення до бази даних і підтримує Redis для обробки кешу. Щоб встановити Giotto, використовуйте команду pip, остання версія - на GitHub. Ви можете використовувати розширення git команди pip, щоб отримати його. Щоб створити структуру файлів для нового проекту, ви запускаєте команду 'giotto create', це створює всю структуру файлів для вас, щоб адаптуватись до ваших потреб.

Піраміда

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

Пляшка

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

CherryPy

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

Висновок

У вас є багато варіантів, коли ви вибираєте структуру для вашого наступного веб-проекту. Виділіть трохи часу, щоб обміркувати, що вам потрібно, перш ніж почати. Однак їх так багато, вам доведеться обмежити час дослідження та розпочати з одного.

Як використовувати GameConqueror Cheat Engine в Linux
Стаття висвітлює посібник із використання механізму читів GameConqueror в Linux. Багато користувачів, які грають у ігри в Windows, часто використовуют...
Кращі емулятори ігрової консолі для Linux
У цій статті буде перелічено популярне програмне забезпечення для емуляції ігрової консолі, доступне для Linux. Емуляція - це рівень сумісності програ...
Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...