4.1 Web-İnkişaf Tarixi: HTML-dən HTML5 və CSS3-ə qədər
1990-cı illərin əvvəllərində Tim Berners-Li sayəsində veb-inkişaf doğuldu. O, ümumiyyətlə, birinci Frontend tərtibatçısı idi: özü HTML yaratdı və onunla işləyirdi, birinci browseri özü düzəltdi. Həqiqi frontendçi hətta browserin olmamasına da əhəmiyyət verməz.
İndiki CSS və JavaScript hələ icad olunmamışdı, buna görə sayt yaratmaq daha sadə idi. Deyə bilərik ki, Tim Berners-Li — ilk "oldschool" tərtibatçı idi, JavaScript və CSS-dən əvvəl Frontend-lə məşğul olurdu.
1995-ci ildə Internet Engineering Task Force (IETF) HTML 2.0-ı birinci rəsmi HTML standartı kimi təsdiq etdi. Bu versiya əsas taglar və atributları daxil edirdi ki, bunlar sadə veb-səhifələr yaratmağa imkan verirdi. HTML 2.0 veb-inkişafın gələcək inkişafı üçün təməl qoydu.
HTML 3.2 və HTML 4.0: imkanların genişləndirilməsi
1997-ci il HTML tarixində mühüm mərhələ idi. Bu il W3C konsorsiumu tərəfindən HTML 3.2 buraxıldı. Bu versiya cədvəlləri, Java appletlərini və riyazi düsturları dəstəklədi ki, bu da veb-inkişafçılar üçün imkanları əhəmiyyətli dərəcədə genişləndirdi.
Həmin ilin sonlarında HTML 4.0 çıxdı ki, bu da əhəmiyyətli təkmilləşdirmələr gətirdi. CSS dizaynlarının dəstəklənməsi, təkmilləşdirilmiş semantika və yeni elementlərin daxil edilməsi HTML 4.0-ı daha mürəkkəb və strukturlaşdırılmış veb-səhifələrin yaradılması üçün güclü bir alət etdi. CSS dizaynlarının daxil edilməsi tərtibatçılara kontenti onun xarici görünüşündən ayırmaq imkanı verdi ki, bu da dizaynların idarə edilməsini asanlaşdırdı.
CSS: Veb-Səhifələrin Stilizasiyasında İnqilab
İlk CSS (Cascading Style Sheets) standartı 1996-cı ildə W3C tərəfindən buraxıldı. CSS tərtibatçılara HTML-dokumentləri stilləşdirməyə, veb-səhifənin strukturu ilə vizual elementləri ayırmağa imkan verdi. CSS1 mətnin və fon şəkillərinin sadə stilləşdirilməsi imkanını təklif etdi.
1998-ci ildə CSS2 təqdim edildi ki, bu da yeni imkanlar əlavə etdi, məsələn, media sorğuları, mütləq və nisbi pozisionlama, eləcə də çap üçün daha mürəkkəb dizaynlar.
CSS3, bu 2011-ci ildən etibarən tədricən təqdim edilməyə başladı və modulyar arxitektura təqdim etdi. Bu, animasiyalar, gradientlər, transformasiyalar və təkmilləşdirilmiş layout kimi yeni funksiyaları mərhələli şəkildə tətbiq etməyə imkan verdi.
HTML5: Veb-İnkişafın Yeni Dövrü
HTML5, WHATWG və W3C-nin birgə səyləri ilə hazırlandı və 2014-cü ildə rəsmi şəkildə təqdim edildi. HTML5, multimedia (video və audio), təkmilləşdirilmiş semantika üçün yeni elementlər (<article>,<section>,<header>,<footer>), daha yaxşı veb-şablon formatları və qrafika ilə çoxaxınlı iş üçün yeni API-lər dəstəklədi.
HTML5 veb-tərtibatçılara daha interaktiv və dinamik veb-aplikasiyalar yaratmağa imkan verdi. Multimedia elementlərinin və yeni API-lərin dəstəklənməsi veb-aplikasiyaları daha güclü və funksional etdi.
4.2 jQuery-dən Angular və React-a qədər
İnternet sürəti artdıqca, veb-səhifələr də ağırlaşmağa başladı. Onların içində daha çox CSS və JavaScript istifadə olunurdu. Bu dili yazmağı asanlaşdırmaq üçün müxtəlif kitabxanalar istifadə edilməyə başladı. Ən məşhurlarından biri isə jQuery idi.
jQuery: JavaScript ilə işləmək rahatlığı
jQuery John Resig tərəfindən yaradılıb və yanvar 2006-cı ildə New Yorkdakı BarCamp konfransında yayımlandı. jQuery-nin məqsədi HTML sənədləri ilə qarşılıqlı əlaqəni, hadisələrin işlənməsini, animasiyaları və Ajax ilə inteqrasiyanı sadələşdirərək sürətli veb inkişafını təmin etmək idi.
jQuery sadə və intuitiv metodları ilə tez məşhur oldu, JavaScript ilə işləməkdə və cross-browser problemlərindəki çətinlikləri aradan qaldırdı. Əsas funksiyaları aşağıdakılardır:
- DOM elementlərini asanlıqla tapmaq və onlara müdaxilə edən selektorlar
- Hadisələrlə sadə işlər
- Animasiya və effektlər
- Interactive veb səhifələr yaratmaq üçün Ajax inteqrasiyası
jQuery veb-inkişafın yanaşmasını dəyişdirərək onu proqramçılar üçün daha əlçatan və rahat etdi.
Angular: Dinamik veb tətbiqlərə giriş
Veb-səhifələrin artan mürəkkəbliyi ilə mübarizə üçün başqa bir cavab Angular framework-ü oldu. AngularJS ilk dəfə Google tərəfindən oktyabr 2010-cu ildə təqdim edildi. Layihə Miško Hevery və Adam Abrams tərəfindən dinamik tək səhifəli tətbiqləri (SPA) inkişaf etdirməyi asanlaşdırmaq məqsədilə yaradıldı.
AngularJS müştəri tərəfini inkişaf etdirmək üçün güclü vasitələr təqdim etdi, o cümlədən:
- Direktivlərlə deklarativ məlumat bağlama
- HTTP sorğuları ilə işləmək üçün daxili xidmətlər
- Məlumatın dəyişməsi zamanı view-nin avtomatik yenilənməsinə imkan verən iki tərəfli məlumat bağlama
- Kodun modulluğu və test edilməsi
2016-cı ildə Google tamamilə yenidən işlənmiş Angular versiyasını (Angular 2 və daha yuxarı) təqdim etdi, bu da TypeScript-dən istifadə edərək genişlənə bilən və yüksək məhsuldar veb tətbiqləri inkişaf etdirmək üçün bir platformaya çevrildi.
React: UI-nin render edilməsində inqilab
React Facebook-dan Jordan Walke tərəfindən yaradılıb və ilk dəfə 2013-cü ilin mart ayında buraxılıb. React, Facebook-un daha yaxşı performans və mürəkkəb istifadəçi interfeyslərini dəstəkləmək ehtiyaclarına cavab olaraq yaradıldı.
React, komponentlərə və virtual DOM-a əsaslanan yeni bir istifadəçi interfeysləri inkişaf yanaşması təqdim etdi:
- Reusable və izolyasiya olunmuş komponentlər yaratmağa imkan verən komponentli arxitektura
- İnterfeysin yenilənməsini optimallaşdıran, daha sürətli və effektiv edən virtual DOM
- Bir istiqamətli məlumat bağlama, tətbiqi debugging-i və vəziyyət idarəsini sadələşdirir
React sürətlə populyarlıq qazandı və çox müasir veb tətbiqlər üçün əsas oldu performansı və elastikliyi sayəsində. O, həmçinin React Native kimi mobil proqramlar üçün digər kitabxana və framework-lərin əsası oldu.
Bu üç texnologiya — jQuery, Angular və React — veb inkişafın təkamülündə mühüm rol oynadı, hər biri müasir veb tətbiqləri yaratmağı əhəmiyyətli dərəcədə asanlaşdıran özünəməxsus yanaşmalar və vasitələr gətirdi.
4.3 Node.js, Electron, React Native
HTML5, CSS3, JavaScript 2016 o qədər güclü texnologiyalar oldu ki, Web brauzerin çərçivəsindən çıxdı və tam hüquqlu Frontend Fullstack texnologiyasına çevrildi. Və birinci bunu backend hiss etdi.
Node.js: backend-in fəthi
Node.js Rayən Dal tərəfindən yaradılıb və ilk dəfə may 2009-cu ildə buraxılıb. Node.js-in əsas məqsədi brauzerdən kənarda JavaScript üçün mühit təmin etmək, bu da JavaScript istifadə edərək server tərəfli inkişaf etməyə imkan verir. Node.js Google-un V8 mühərriki üzərində qurulub, bu isə yüksək performans və sürət təmin edir.
Node.js bloklanmayan I/O (input/output, giriş/çıxış) istifadə edir, bu isə əsas iş axınını bloklamadan çox sayda bağlantını eyni anda emal etməyə imkan verir. Onun həmçinin müxtəlif kitabxana və alətlərin inteqrasiyasını asanlaşdıran npm (Node Package Manager) vasitəsilə mövcud olan geniş modul ekosistemi var. Və V8 mühərriki sayəsində Node.js sorğuları sürətli və effektiv şəkildə emal etməyə imkan verir.
Electron: desktop-ların fəthi
Desktop üçün əla UI yazmaq çox mürəkkəb işdir, amma bu zaman əlimizin altında HTML5+CSS3 var. Kaş bunu istifadə edə bilsəydik… Buna görə də proqramçılar bir lifehack icad etdilər: tətbiqinizin əsas pəncərəsi açılır, bu pəncərəyə brauzer yerləşdirilir (VebView komponenti), və bu brauzerə HTML5, CSS3 + JavaScript kodu yüklənir.
Electron kitabxanası, başlanğıcda Atom Shell adlanırdı, Atom kod redaktoru üçün GitHub tərəfindən yaradılmışdır. Electron-un ilk versiyası iyul 2013-cü ildə buraxılmışdır. Electron-un məqsədi inkişafçılara HTML, CSS və JavaScript kimi web texnologiyalarından istifadə edərək masaüstü tətbiqlər yaratmağa imkan verməkdir.
Electron bir kod bazası ilə Windows, macOS və Linux üzərində işləyən tətbiqlər yaratmağa imkan verir. Electron web texnologiyalarının imkanlarını və Node.js gücünü birləşdirib, bu isə fayl sisteminə və digər sistem resurslarına daxil olmağa imkan yaradır. İnkişafçılar interfeyslər və funksionallıq yaratmaq üçün mövcud web çərçivələr və kitabxanalardan istifadə edə bilərlər.
React Native: mobil tətbiqlər
React Native Facebook tərəfindən hazırlanıb və ilk dəfə mart 2015-ci ildə təqdim edilib. React Native-in məqsədi iOS və Android üçün JavaScript və React istifadə edərək yerli mobil tətbiqlər yaratmağa imkan verməkdir.
React Native yerli komponentləri istifadə edir, bu isə performansı yerli tətbiqlərə bənzər edir. Eyni zamanda inkişafçılar həm iOS, həm də Android işləyən kod yaza bilərlər ki, bu isə inkişafı asanlaşdırır və dəstək müddətini qısaldır.
Elektron ilə olduğu kimi, mobil tətbiqin bütün pəncərəsi üçün VebView açılır, içərisinə HTML5, CSS3 və JS ilə yazılmış "sayt" yüklənir. Hamı gözləyirdi ki, mobil tətbiqlər telefonlardakı veb-saytları sıxışdıracaq, amma tam tərsi oldu: saytlar yerli tətbiqləri sıxışdırmağa başladı.
Bugün Frontend Fullstack Software Engineer — dünyadakı ən tələbatlı IT-peşədir. Belə ki, Frontend inkişafçısı olmağa qərar vermək doğru və uzaqgörənlikdir!
GO TO FULL VERSION