«Ви, хлопці, мабуть, не так слідкуєте за інтернетом, як я» - колишній президент США Дональд Трамп.
Цей колишній президент плутає, як і багато інших людей, Всесвітню павутину – сервіс, який складається з веб-сторінок, електронної пошти тощо, з власне Інтернетом, який є системою взаємопов’язаних комп’ютерних мереж.
Інший колишній президент США, Джордж Буш, ввів термін «interweb» під час передвиборчих дебатів 2004 року. Це слово теж неправильне, але воно трохи ближче до ілюстрації взаємозв’язку між Інтернетом та веб-сервісами.
Чи ми прискіпуємося, аналізуючи ці слова? Не складається враження, що ми навмисне чіпляємося до президентів США? Читайте далі, щоб зрозуміти, чому це не так.
Ще одна пара пов’язаних з Інтернетом термінів, яка викликає плутанину і непорозуміння, – це «веб-розробник» і «веб-дизайнер».
Веб-розробник створює веб-сторінки для взаємодії клієнтів у Всесвітній павутині, але вони також - головним чином! - розробляють серверні протоколи та процеси, які дозволяють веб-сайтам функціонувати.
Якщо ви зацікавлені в тому, щоб стати веб-розробником, ви повинні знати різницю між розробником і дизайнером – людиною, яка розробляє веб-сторінки відповідно до специфікацій клієнтів, які відповідають існуючим Інтернет-протоколам. Ви бачите різницю?
Якщо ви тут, це, швидше за все, означає, що вас цікавлять обидві речі: вивчення веб-дизайну та те, як Python може допомогти вам досягти успіху.
Ваш Superprof зараз усе вам розповість.
Трохи історії веб-розробки
Незважаючи на всюдисущість Всесвітньої мережі сьогодні, важко повірити, що вона існує лише трохи більше 30 років. Інтернет, у свою чергу, з нами з 1960-х років. Неймовірно, але факт!
Спочатку його розробили як спосіб для різних військових підрозділів США обмінюватися інформацією та зв’язати комп’ютери в часі, пізніше фінансування неурядовими організаціями та приватними донорами сприяло ширшому розвитку цього сервісу, маючи на меті, що він набуде загальногромадського вжитку.
Уведіть в пошук сер Тім Бернерс-Лі, дізнаєтеся багато цікавого!

У 1991 році він почав працювати в CERN, Європейському центрі ядерних досліджень. Після багатьох років вмовлянь керівництво нарешті побачило можливості, притаманні системі, яку він пропонував. До того часу керівники покладалися на можливості Інтернету для обміну електронною поштою між дослідницькими установами. Давно зріло питання: чи можна було б зробити цю послугу загальнодоступною?
До кінця того ж року сер Бернерс-Лі підготував усе, щоб запустити проєкт: протоколи передачі, мови, серверне програмне забезпечення... Багато з його інновацій використовуються у мережі й сьогодні. Ви напевно бачили HTTP, HTML і FTP, чи не так?
Усе це — специфічні для Інтернету акроніми, що описують, як інформація переміщується мережею та якою мовою потрібно «розмовляти», щоб ці переміщення відбувалися. Відповідно, вони означають:
- HTTP (hyperText transfer protocol): протокол передачі гіпертексту (основний компонент передачі даних через Інтернет);
- HTML (hyperText markup language): мова гіпертекстової розмітки, мова, яка використовується для написання веб-сторінок;
- FTP (file transfer protocol ): протокол передачі файлів – набір правил, які регулюють передачу файлів через Інтернет.
Можливо, вас дивує постійне використання слова «протокол», коли ми говоримо про Інтернет. Подібно до того, як у дипломатів є протоколи, яких вони повинні дотримуватися: те, що вони зобов’язані робити, те, як їм варто чинити, і те, чого вони ніколи не повинні робити, – у веб-розробників також є протоколи, яким вони мають слідувати.
Їхні протоколи не мають нічого спільного з дипломатією у звичному «людському» значенні слова, навіть якщо вони схожі за своїм принципом. Комп’ютерний протокол – це радше випадок «роби все правильно, або твоя програма не працюватиме». Саме тут Python вступає у гру.
Python є одним із найкращих компаньйонів, які ви можете мати під час вивчення веб-розробки; давайте дізнаємося, наскільки це корисно.
А також дізнайтеся, як ще можна використовувати Python.
Що Python пропонує веб-розробникам
Люди, що обрали кар’єру дипломатів, щасливчики. Їм доводиться дотримуватись протоколу у багатьох випадках, починаючи з відмови від підбурливих слів і до того, щоб знати, коли віддати візит, потиснути руку, зробити реверанс або вклонитися, а також які подарунки доречні в різних обставинах. Якщо дипломати роблять помилку, вони зазвичай можуть виправити свою промашку.
Якщо ви фанат «Зоряних воєн», можете здивуватися, чому немає протокольних дроїдів, таких як C-P30, котрі б давали людям поради. Варто набратися терпіння! Якщо машинне навчання продовжуватиметься в нинішньому темпі, можливо, ці дроїди ще дуже далеко у майбутньому...
Веб-розробникам не так пощастило в управлінні їхніми протоколами. Вони повинні завжди знати, що саме вони роблять. Вони зобов’язані знати та дотримуватися всіх існуючих протоколів, і, якщо вони розробляють новий — скажімо, пишуть нову мову програмування чи утиліту — вони мають переконатися, що нові коди будуть сумісні з усіма протоколами, які вже існують.
Хіба не було б надзвичайно корисно, якби існував уже зібраний набір інструментів, підготовлений досвідченими веб-розробниками , що містив би постійно оновлювані інструменти веб-дизайну?
Цей запит точно описує Python.
Python має добре укомплектований набір інструментів, написаний виключно для веб-розробників. Вони називаються бібліотеками; вони містять модулі коду, які називаються пакетами, що містять метадані, тестовий код і параметри встановлення тощо. Загалом, PyPI, індекс пакетів Python, є основним сховищем усіх пакетів, деякі з яких призначені спеціально для веб-розробників.
Якщо ви розробляєте веб-додаток для візуалізації даних, Dash — саме той пакет, який вам потрібен. Він містить інформаційні панелі, графіки та діаграми, які можна підключити до вашого коду.
Scrapy — це інструмент, який можна використовувати, якщо ви збираєте дані або пишете програму автоматизованого тестування, а Requests дозволяє легко запитувати довідку HTTP для збору даних зі сторінок HTML та інших джерел.

Чи знаєте ви, що Amazon Web Services (AWS) пропонує послугу, яка дозволяє обходити сервери? Lambda виключає майже всі практичні проблеми з обчислень; вам потрібно лише турбуватися про свій код, а саме про те, щоб він був сумісний з Lambda.
Ви вже в курсі? У Python є бібліотека, яка підходить для розробки безсерверних програм на Lambda. Вона називається Zappa, і її легко витягти з PyPI.
Це чотири найкорисніші бібліотеки для веб-розробників; якби ви будували свою кар’єру в робототехніці з Python, ви б спиралися на інші ресурси бібліотеки Python. Є майже 300 000 на вибір, тож, імовірно, ви знайдете відповідну бібліотеку для будь-якої ситуації, де вам знадобиться короткий код.
Чому Python так добре підходить для веб-розробки
На зорі інформаційної ери веб-розробники були серйозними людьми, які називали альмаматір’ю такі установи, як MIT (Массачусетський технологічний інститут), Оксфорд і, звичайно, CERN. Сучасні веб-розробники не менш серйозні, але вони набагато менш формальні. Дійсно, з простим доступом до Всесвітньої павутини деякі веб-розробники відмовляються від священих залів та офісів і працюють вдома, у затишній атмосфері комфорту.
Не лише готовий доступ підтримує це явище, є ще той факт, що сама веб-розробка доступніша, ніж будь-коли... завдяки Python.
Python простий у вивченні та ще легший у використанні. Вам не потрібно пам’ятати кілометри коду чи синтаксису; Python написаний повсякденною мовою, яку можуть розпізнати навіть люди, які не володіють комп’ютером. Якщо рівень володіння англійською дозволяє, звісно. Для тих, хто бажає почати програмування з раннього віку, чудовим стартом можуть стати онлайн-курси програмування для дітей.
Python — це багате та повністю розроблене середовище, яке дозволяє навіть програмістам-початківцям отримати доступ до тисяч модулів, повних попередньо написаного коду. Все, що повинен зробити веб-розробник, який використовує Python, це знайти відповідну бібліотеку та модуль, підходящий для того, що вони хочуть робити в своїй програмі, і застосувати його. Пайтоністи не тільки економлять час на введення всього тексту та налагодження. Додаток, написаний мовою Python, буде готовий до запуску і роботи швидше!
А що як ви новачок у Python і ще не точно знаєте, що шукаєте?
Спільнота однодумців прийде на допомогу! Пайтоністів багато. Вони в захваті від Python і хочуть, щоб він широко використовувався. Вони вітають програмістів усіх мастей, навіть тих, хто хоче використовувати Python у науці про дані. Такий рівень підтримки, як з боку спільноти Python, так і з боку інших ресурсів (документації, навчальних посібників, спеціалізованих форумів тощо) є лише однією з причин, чому Python є однією з найпопулярніших мов програмування сьогодні.
Як створити веб-додаток на Python
Щоб розпочати свою кар’єру веб-дизайнера з тої ноги і у вірному напрямку, вам доведеться вивчити HTML, каскадні таблиці стилів (CSS) і JavaScript. Вони важливі для веб-дизайну; будь-який створений вами веб-сайт не працюватиме, якщо ви не знаєте, як створити веб-сторінку, що реагуватиме на клацання мишею.

Коли ви вивчите основи JavaScript, настане час познайомитися з DOM і jQuery. DOM означає Document Object Model; jQuery — це бібліотека JavaScript, яка працює майже так само, як PyPI, і в тому ж дусі — щоб довелося вводити менше коду.
З того часу, коли ви переварите всю цю інформацію, ви будете готові створювати веб-сторінки, але, якщо ви хочете потрапити у веб-розробку, вам доведеться піти трохи далі у своєму навчанні.
Вивчати інтерфейсний фреймворк не обов’язково, але такі знання корисні для створення односторінкових додатків, і, крім того, якщо ви хочете отримати роботу у фірмі з веб-розробки, це практично обов’язкова умова. Ви можете подивитися React або Vuejs; обидва є продуктами JavaScript.
Після того, як ви прикрили фронт (тобто розробили, як веб-сторінка виглядатиме та працюватиме), настане час зосередитися на бекенді. Ось тут на допомогу і приходить Python. Якщо вам ще не вдалося відкрити свій посібник з Python (можливо, ви боїтеся його складності, та дарма), ви можете розслабитися. Багато з того, що він містить, дуже близьке до того, що ви уже дізналися з JavaScript.
Ознайомлення з основами Python підготує вас до ваших набігів на Django, високорівневу веб-платформу Python, яка дозволяє вам налаштувати середовище бекенду. Це також полегшує налаштування логіки домену, яку також називають бізнес-логікою.
Ну логічно ж!
Корисна порада: знаючи про бази даних і як надсилати запити, ви швидко створите програми з повним стеком (це повноцінні програми на професійному сленгові)!
Тепер дізнайтеся, як написати комп’ютерну гру на Python...









