Чи потрібна хоч кому-небудь веб-розробка?

  1. Роберт Манн, займається створенням програмного забезпечення
  2. Гаррі Тейлор, займається програмуванням більше 25 років
  3. Роберт Аллен, вивчив HTML ще до того, як CSS став мейнстрімом
  4. Кароліна Вебстер, керівник відділу в NASA (з 2009 р по теперішній момент)
  5. Фернандо де Олівіра Падоан, 11-річний досвід в сфері веб-розробки

Мені вкрай цікава сфера веб-розробки, але повільно схиляюся до думки, що нині доступні інтерфейси (HTML / CSS / Javascript) нікуди не годяться. нинішня front-end розробка дійсно настільки погана, або ж я просто щось не знаю?

Такий злободенне питання задав користувач сайту Quora , А користувачі спробували знайти відповідь. Найцікавіші - в нашому матеріалі.

Роберт Манн, займається створенням програмного забезпечення

Зараз дана сфера виглядає набагато краще, ніж 10-20 років тому. Крім того, вона стала значно складнішою і придбала безліч найрізноманітніших складових. Помітно збільшилася кількість і якість як інструментів і технологій в даній сфері, так і доступність навчальних матеріалів. У колишні десятиліття практично був відсутній публічно доступна технічний контент - тоді ще не було ні блогів, ні вкрай корисних Mozilla і Wikipedia, а також вкрай рідко використовувалося відео і додатки, що вимагають високої пропускної здатності.

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

Тепер, кажучи безпосередньо до front-end розробці , Важливо розуміти, що в даній сфері існує три основні сегменти: розробка для ПК, для мобільних телефонів і для інших пристроїв. Якщо ви хочете зрозуміти, в чому різниця між цими сегментами, то, наприклад, зайдіть на Netflix зі свого телефону, комп'ютера і за допомогою смарт-TV.

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

Гаррі Тейлор, займається програмуванням більше 25 років

Чесно кажучи, нинішня front-end розробка дійсно дуже погана.

HTML, CSS і JS - гірші технології в своєму класі, вони програють будь-яке порівняння графічним інтерфейсам Mac або Windows. І саме вони використовуються для сучасної мережі, яка тепер є платформою не для створення документів, а для створення додатків, що не може не жахати.

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

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

Так, все це не дуже добре, але що є, то є. Нам доводиться миритися з існуючою ситуацією, ми нічого не можемо вдіяти. Зараз, в 2017 р, нам доводиться мати справу з основним напрямком розвитку даної сфери, яке було задано ще в 1995 р

Все, що ви можете зробити в ситуації, що склалася - це постаратися використовувати наявні кошти найкращим чином. Виберіть гідні довіри редактори HTML і програмні платформи, наприклад, Bootstrap. Використовуйте JavaScript або будь-яку іншу мову програмування, що транслюються в JavaScript. І знову повторю: постарайтеся витягти максимум з цієї далеко не кращої ситуації.

Якщо ви раніше працювали з Cocoa на основі Mac або з UWP / WPF для Windows, то перейшовши на HTML або CSS, ви будете відчувати себе повернулися в кам'яний вік. Але суть в тому, що у нас не завжди є вибір, тому все, що нам залишається робити, це найкращим чином використовувати наявний.

Роберт Аллен, вивчив HTML ще до того, як CSS став мейнстрімом

Ситуація з HTML / CSS / JS далеко не настільки жахлива, просто вона не така однозначна, як у випадку з об'єктно-орієнтованим програмуванням і графічним дизайном. Деякі речі дійсно виглядають безглуздими, але з більшої ситуація не така вже й погана. У наші дні веб-дизайн став в рази більше складним, ніж був тоді, коли все робилося вручну.

HTML - голий контент з мінімальним стилем, ідеально керований за допомогою системи управління конфігураціями (CMS). Робота з ним навряд чи стане для вас проблемою, якщо ви, звичайно, не працюєте в форматі «копіювати / вставити з MS Word», що завжди призводить до виникнення проблем.

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

JS - JavaScript це JavaScript. Існує достатня кількість бібліотек з готовими скриптами, щоб даремно стрясати повітря з приводу даного мови.

Як правило, використання HTML не приносить проблем. Ретельно плануйте свою роботу з CSS, створюйте додаткові класи і ідентифікатори, які можуть знадобитися вам в майбутньому, і все буде в порядку. Чи не нервуйте даремно з приводу призначених для користувача сценаріїв в JS, якщо тільки це не крайня необхідність.

Кароліна Вебстер, керівник відділу в NASA (з 2009 р по теперішній момент)

Веб-розробка все ще потрібна. Швидше, вся справа в тих інструментах, які використовуються.

Чому веб-розробка все ще має сенс?

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

Чому веб-розробка на сьогоднішній день виглядає настільки жахливо?

  • Історично, протокол HTTP був створений для роботи з HTML, який був створений в якості мови для обміну науковою і технічною документацією. Пізніше HTML-документи стали більш широко використовуватися людьми, внаслідок чого був створений динамічний HTML або DHTML.
  • javascript сам по собі - не такий вже й поганий мову, може бути тільки дуже докладний. Інститути, які браузери не дозволяли написати DHTML, який би функціонував в різних браузерах. Так з'явилася потреба в створенні бібліотек javascript. Тому такі бібліотеки, як Dojo, Prototypes, Scriptaculo, jQuery і багато інших були створені для забезпечення функціональних можливостей різних браузерів.
  • Але іноді в бізнес-процеси починає жахати, тому що затяті фанатики об'єктно-орієнтованого проектування (ООП) переходять на javascript. Особисто я виступаю повністю за ООП - майже все своє життя я працюю в цій сфері. Але спроби впихнути ООП в JavaScript за допомогою EmberJS, BackboneJS і деяких інших - це ідея на межі ідіотизму.
  • Інші визнають, що JavaScript в якості мови програмування має достатню кількість недоліків, тому люди починають винаходити нові мови, такі як Coffee Script, Dart, TypeScript, ES 6. Але ці мови не вирішують найголовнішу проблему - проблему з браузерами. Внаслідок цього доводиться створювати інструменти для управління пакетами програм, бібліотеками, а також транспілери, що перетворює код програми, написаної на одній мові, в аналогічний код, але вже на іншій мові. Але все це вимагає введення додаткових інструментів і ще кількох етапів у розробці програми. І при цьому найголовніша проблема все одно не вирішена.
  • Хоча люди і визнають достатню кількість недоліків JavaScript в якості мови програмування, але, прагнучи привернути увагу і тих фахівців, хто вже вивчив JS, вони створюють NodeJS. Неймовірний жах.

Саме тому в бізнес-процеси знаходиться в настільки жахливому становищі на даний момент.

Але у вас буде все відмінно, якщо ви працюєте з HTML5, CSS3 і простих крос-браузерних бібліотеками, такими як jQuery або Dojo. Однак, при цьому варто бути обізнаним про всі варіанти створення вправного і високопродуктивного веб-інтерфейсу.

Однак, при цьому варто бути обізнаним про всі варіанти створення вправного і високопродуктивного веб-інтерфейсу

Фернандо де Олівіра Падоан, 11-річний досвід в сфері веб-розробки

Хоч і створення HTML5 стало розумним рішенням, я все ще продовжую вважати, що протокол необхідно створювати для самого додатка, щоб документ відразу в ньому правильно відображався. Хоч це і намагалися робити раніше - візьміть хоча б ті ж Silverlight, Flex, Flash, Java Applets і багато інших -, але всі вони були лише власне інструментами і створювали більш жорстку конкуренцію відкритого стандарту. І це навіть не кажучи про уразливість системи безпеки і про самих різних видах несумісності і обмежень.

Тепер, поговоримо про Atom (нема про протоколі публікації, а про альтернативу RSS). Дана технологія безсумнівно володіє великими можливостями, ніж RSS (по крайней мере, в теорії), наприклад, управління ресурсами або завантаження «фідів» (feeds). І все ж RSS настільки широко використовується, що Atom так і не зміг остаточно замінити його - і, швидше за все, ніколи не зможе це зробити.

Як уже було відзначено, люди не хочуть відмовлятися від зворотної сумісності, і альтернативної в даній ситуації може стати створення так званого «резервуара» для більш нових стандартів. На сьогоднішній день існує безліч суперечок, чи варто продовжувати роботу на основі рідної, гібридної платформи або ж повністю перейти на веб-платформу. Уявіть собі спробу «запхати» якесь існуючу програму на веб-платформу, що повністю зруйнує його сумісність як з рідним, так і з працюючим на основі HTML-додатком. Така спроба тільки погіршить нинішню ситуацію.

Чому веб-розробка все ще має сенс?
Чому веб-розробка на сьогоднішній день виглядає настільки жахливо?