Най-добрият начин да научите Frontend Web Development

Защо уеб разработка?

Уеб разработката е поле, което няма да отиде никъде в скоро време. Мрежата се движи бързо и има редовни подобрения на устройствата, които много хора използват ежедневно.

Облачните приложения ни позволиха да вдигнем тежко в облака и да използваме браузъра като мост за свързване на мощни бекенд сървъри с по-малко способни и мощни интерфейси.

Сега е най-доброто време да научите уеб разработка, ако искате да научите нещо.

Уеб разработката не само отваря множество възможности за вас като личност, но също така ще можете да кодирате и разгръщате цялостни проекти от край до край, които могат да бъдат използвани от почти всички на планетата.

Тъй като повечето хора имат достъп до браузър, всеки човек е само на един URL адрес от уеб приложението, което сте кодирали. Ако сравните това с настолно приложение или хардуерен продукт, ще видите, че това просто не е толкова мащабируемо в сравнение с мрежата.

Сега, след като установихме факта, че мрежата е най-добрият начин да отидем в момента, нека видим как да научим уеб разработката по възможно най-добрия начин.

Мрежата е обширна - започнете от малко и я запазете малка

Вероятно сте виждали голям брой JavaScript рамки и библиотеки като React, Angular, Vue, Ember, jQuery, XYZ и т.н.

Някои много често срещани въпроси, които получавам като YouTuber, публикувайки съдържание за уеб разработка, са следните:

Трябва ли да науча X?

X по-добър ли е от Y?

Какъв е обхватът на Z?

Винаги помнете две неща за технологиите, особено за мрежата:

  1. Вашият технологичен стек почти винаги няма значение. Ако сте достатъчно добри с вашия език / рамка, ще печелите всеки път.
  2. Никога не е нужно да научавате всичко. Никога. Можете да бъдете валец на всички сделки, но се уверете, че сте майстор на една.

За да обобщите този раздел, трябва да мислите много малко, когато започнете . Супер лесно е да се увлечете с току-що пуснатата рамка. Просто не се опитвайте да се състезавате напред, като пуснете стари технологии и адаптирате нови, без да правите правилни изследвания.

Започнете с HTML и CSS

Не мога да подчертая това достатъчно. Боли ме да виждам много хора, които ми задават въпроси за своите React проекти, когато отговорът се крие в основния HTML или CSS.

JavaScript беше само скриптов език на браузъра в началото. И въпреки че сега е много повече от това, това не променя факта, че в мрежата той допълва HTML и CSS.

С напредъка в уеб стандартите можете да постигнете толкова много само в CSS. За много неща JavaScript дори не се изисква.

Анимации? Имаш го. Влачите и пускате? HTML може да се справи с това. Оформления? Поръчайте API на Flexbox или Grid CSS!

Има толкова много неща, които можете да научите за HTML и CSS! Не бързайте само с JavaScript, защото всички готини деца в блока са в Angular. Тези библиотеки и рамки не отиват никъде. Не бързайте .

Широко или дълбоко?

Има два подхода, когато научите уеб разработка - отидете широко или задълбочете.

Разширяването означава, че започвате да научавате много неща заедно. Това може да работи за някои хора, но не и за други. Може да се затрупате с уроци, упражнения, видеоклипове и блогове, след което в крайна сметка да се откажете.

Навлизането дълбоко означава да започнете да научавате едно нещо и да се опитате да научите колкото се може повече за него. Това има свои собствени плюсове и минуси. Може да ви омръзне или да се откажете, защото не виждате резултати.

И така, какво е решението? Отговорът е, изненадващо, че не прави нито едното, нито другото. Изберете малък технологичен стек като HTML / CSS / JavaScript и отидете умерено дълбоко във всичките три. Това има няколко предимства:

  1. Няма да ви омръзне, тъй като и трите имат относително различни цели и ги пишете по различен начин.
  2. Можете да смесите и трите, и да създадете и да видите нещо смислено бързо, без месеци усилия (което обикновено се изисква от други езици като C / C ++). Това ще ви държи мотивирани да продължите.

Не избирайте React, или Angular, или Vue

Когато хората започнат да работят с JavaScript, има желание да вземете библиотека като React, UI система като Material UI и да се потопите в изграждането на страхотни неща.

За съжаление това не води до нищо повече от стрелба в крака. Никога и никога не можете да създавате междинни до напреднали проекти с тези рамки, ако не разбирате основите на JavaScript. А прилагането на JavaScript отнема известно време.

Забележете, че в предишното изречение използвах думата за прилагане, а не за учене. Има огромна разлика между научаването на нещо и прилагането на нещо, което сте научили.

Създайте малък, но работещ проект с HTML / CSS / JavaScript. И когато го направите, създайте още един и след това създайте друг проект.

Всяка стъпка по пътя продължавайте да увеличавате сложността на проекта и очакванията също, докато вашата кодова база стане неуправляема. В този момент вие стигнахте до това, което аз обичам да наричам границата на превъзходното обучение .

Виждате ли, съществуват рамки, които да разтоварят повтарящата се работа от вас. Те не съществуват, така че да игнорирате какво наистина се случва под капака и да разчитате на факта, че всичко е магия.

За първи път избирате рамка като React или Angular за вашите проекти, когато сте уверени, че можете да създадете този проект без React или Angular .

Майстор на една занаят

Сега, когато се справите добре с HTML / CSS / JavaScript, е време да преминете към индустриалните стандарти. Истината е, че колкото и добри да сте разработчици на JavaScript, често ще ви се налага да работите със съвременни рамки като React - и само с вашите знания за JavaScript не можете веднага да го овладеете.

Ще отнеме време, за да научите и разберете терминологията, понятията и как тази рамка работи под капака. Така че вземете рамка и я овладейте.

Как, може да попитате? Отговорът е прост - зависи от вас. Създайте прост проект във всички основни рамки (Angular, Vue и React) и вижте кой от вас най-много вибрира. Изберете един и не поглеждайте назад

След това създайте всичките си проекти с тази рамка. Стремете се да направите нещо, което все още не знаете как да направите. Това е най-добрият начин да се изтласкате от зоната си на комфорт и да научите нови неща .

Но не забравяйте и за останалите

Също толкова важно е да следите и другите кандидати. Това включва не само преки конкуренти на вашата „любима“ рамка, но и някои достойни инструменти за уеб разработка.

Не е нужно да "овладявате" тези други инструменти, защото много пъти те просто изискват еднократна настройка с редовна поддръжка. Но винаги е хубаво да ги държите в списъка си с умения.

Това може да включва няколко неща - като модулно тестване с Jest, тестване от край до край с Cypress, Webpack, Babel или Parcel, малко devops, скриптове на Linux черупки, разполагане на сървър и т.н.

Винаги можете бързо да научите основите на тези умения, тъй като те съществуват отдавна, така че те имат на разположение много полезен материал.

Продължа напред

Повярвайте ми, това е смешно усещане - но след като разработите много проекти и напишете много код с любимия си стек, започвате да се чувствате така, сякаш можете да направите всичко. В този момент можете да си намерите работа и просто да продължите да правите едно и също нещо - това е напълно добре. Или можете да изравните уменията си през покрива и да продължите напред.

Мрежата. Е. Обширно.

Така че, ако сте готови с HTML / CSS / JavaScript / React / Angular / Vue, преминете към сървъри. Научете за разполагането на сървъри, NGiNX, HAProxy, балансиране на натоварването, настройване на облачна инфраструктура, защитни стени и автоматично мащабиране.

Приключи ли и с това? Преминете към WebAssembly, езика за следващата итерация на мрежата.

Завършихте обучението WebAssembly? Тогава не знам. Може би да преминете към други области на програмиране или готвене? :)

Заключение

В съвременния свят е толкова лесно за вас да не повтаряте грешките, които съм направил, докато сам съм учил уеб разработка. Защото всички тези грешки вече са публични за четене от всички!

Разполагате с толкова много ресурси и аз работя върху такъв, който уеб разработчиците да научат! Ето моят канал в YouTube, където ви уча как да програмирате страхотни неща. И ето платформата codedamn - действителната платформа, която ви позволява да станете страхотен разработчик, като смесите куп видеоклипове, статии и упражнения.

Кажете ми какво мислите за тази статия и за уеб разработката като цяло чрез моите дръжки в Twitter и Instagram. Бих се радвал да се свържа с вас там!

Мир!