Web hate - Чому web-макакам так подобається обмазуватися JavaScript [entries|archive|friends|userinfo]
webhate

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

Чому web-макакам так подобається обмазуватися JavaScript [May. 30th, 2020|11:08 pm]
Previous Entry Add to Memories Tell A Friend Next Entry
[Tags|, ]

Навіть не стільки JavaScript скільки різноманітним бібліотеками та framework'ами. Живемо ми в такий час коли сторіночка без Angular, Vue, React, Ember, Polymer, Meteor, Typescript і всякого такого серед сайтописак часто сприймається як щось погане, немодне, зашкварне. Вони полюбляють використовувати якусь неймовірно корисну (наспрадві ні) і дуже популярну бібліотечку навіть якщо можна спокійно без цього обійтися і не перевантажувати сторінку зайвими даними. Не так давно сайтобудівельники в масі своїй були скромнішими задовільняючись jQuery, Mootools, YUI і чужими кривуватими напрацюваннями знайденими на просторах Internet, а про щось серйозніше знало 3,5 найбільш метикуватих особин з всієї популяції.

Глибинна причина полягає в тому що вебщики таким чином намагаються відчути себе більш справжніми програмістами ніж вони є насправді. Хочуть показати всім що вони геть як дорослі дяді і теж пишуть програми. Вони як оті жінки з заздрістю до пенісу які через це частіше ніж чоловіки забувають повернути позиченого олівця або кулькову ручку. Тільки замість олівця web-макака хапаєтсья за черговий angular і гарячково пхає його куди тільки можна. Це стосуються не лише надмірно переобтяжених JavaScript'ом звичайних сторіночок а й бажання робити так звані SPA. Адже SPA це вже ніби то як справжня програма, а значить web-макака почуває себе набагато крутіше коли робить SPA.

Для кращого розуміння варто уявити собі які дії виконують серверні програми що забезпечують роботу типового сайтика. Зробити вибірку з БД, надати отриманим даним потрібну форму, можливо провести якісь операції над ними, записати дані в БД попередньо їх перевіривши, врешті-решт вибрати підходящий шаблон для HTML сторінки, вставити в неї дані і показати користувачу. Так працює що сайтик зі статистикою гравців в який-небудь «Світ танків», що internet-магазин зі списком товарів. Всілякі ж JavaScript-framework'и це вже інша справа. Тут тобі не тільки красиво зверстана сторінка з кнопками (як, наприклад, гарно оформлений документ в Word) виплюнута яким-небудь PHP скриптом, а його величність програма. І от в мозку у вебщика починають витати такі поняття як одностороннє звʼязування, двостороннє звʼязування, модель данних, чисті функції, компоненти, сервіси, MVVM, MVC, реактивне програмування, функціональний JavaScript, диспетчер, observable, привʼязка даних, JSX, віртуальний DOM, редукція та mutable калькований в мутабельний на пару з immutable (іммутабельний). Він починає слати HTTP запити у всі боки та синхронізувати моделі з сервером. В його свідомість поступово проникає концепція елементів керування GUI (згадаймо Delphi) яка витісняє віджети на jQuery. Він починає говорити не просто про верстку а про UI - user interface. Не віджет а control або компонент, UI компонент. Ох. Відчуваєте? Відчуваєте різницю між оцим всим та одинокою сторіночкою з jQuery та декількома скриптами зібраною програмою на PHP або Python десь там на сервері (частенько в таких сторіночках верстки більше і значення вона має більше ніж програмістські потуги web-макаки). І в нього самого аж дух захоплює і перед пацанами не соромно. Вже не просто інтерактивний документ а програма!

Для тих хто не в темі коротко напишу що для 95% сайтиків всі ці framework'и і бібліотеки як машині 5 колесо і мода на них призводить до того що мегабайт а то й два абослютно непотрібних програмуленок на JavaScript показує 2 кілобайти тексу та декілька кнопок. Нагромадження faramework'ів полегшує (хоча й не завжди) програмістську працю і нічого не дає кінцевому споживачу. Заміна вже такого не модного jQuery і пачки плагінів до нього на черговий framework від Facebook, Google або будь-кого іншого і переписування існуючих скриптів під це чудо якщо й змінить щось для користувача, то тільки на гірше: сповільнення, більші витрати апартних ресурсів і електрики, різномантні недоробки і звісно ж відсутність підтримки не зовсім свіжих версій web-переглядачів (це означає що те що справно працювало може перестати працювати).

LinkLeave a comment

Comments:
[User Picture]
From:[info]olegmi
Date:July 20th, 2024 - 11:33 pm
(Link)
В vене зовсім вимикнуте використання JavaScript. Як що якась сторинка не працюе - вона мені не потрібна. Що цікаве може казати дурнина, яка не вміе зробити сторинку, яка не потребуе JavaScript?