Začínáme s vývojem webu Fullstack
V těchto dnech, moderní vývoj plného zásobníku je velmi populární jak v malých agenturách, tak ve větších společnostech se specializovaným technickým týmem. Weboví inženýři s plným stackem pracují na celé webové sadě technologií včetně frontendu, backendu, a správy serveru.
Mnoho lidí tvrdí, že plný stack vede pouze k tomu, že je "jackem všech obchodů, mistrem žádného". Z určitého hlediska to může být pravda, nicméně dovednost je jen tak důležitá, jak s ní lze dosáhnout. Mnoho plných zásobníků devs nabízí hodnotu, protože mohou mít nápad od koncepce po spuštění, a plně pochopit každý krok procesu.
Jestli na to myslíš pokračování trasy plného zásobníku, pak je tento článek pro vás. Vysvětlím obecné požadavky na vývojáře, co tato role obsahuje, a jak může být dovednost užitečná pro volné noze / dodavatele, kteří chtějí pracovat buď přímo pro klienty nebo ve svých vlastních projektech..
Základy plného zásobníku
Moderní vývoj plného zásobníku má dlouhou cestu, protože webová technologie se hodně změnila. Požadavky na plný zásobník by měly být používány jako pokyny pro zvážení následujících kroků. Obecně řečeno, "stack" představuje technologie běžící v souzvuku vytvořit webové stránky. To znamená kód rozhraní, kód backendu, databázový systém a platformu webového serveru + OS pro server.
Základním principem vývoje plného stacku je porozumět všem aspektům konstrukce webu. To neznamená znalost návrhu nebo UI / UX práce, i když to může výrazně zlepšit vaši životaschopnost a kvalitu práce.
- Základy frontendu zahrnují HTML / CSS a JavaScript, s největší pravděpodobností s rámec, například Angular nebo React.
- Pro backend jazyk budete chtít vybrat něco, co může být spojeno s databázovým systémem. PHP / MySQL je nejběžnější a nejjednodušší se naučit, protože ovládá mnoho CMS motorů, jako je WordPress. Také SVÍTILNA stack je dnes nepochybně nejoblíbenější webový stack.
- Znalosti serveru mohou být tak jednoduché nebo podrobné. Absolutním základem by byla znalost serverového programu Apache spojeny s databází jako je MySQL nebo PostgreSQL.
- Můžete jít ještě dále, abyste zahrnuli znalosti o instalaci poštovních serverů nebo výkonových nástrojů, jako je memcached nebo Varnish.
Plné stack dev by měl fušovat ve všech třech oblastech s dostatečnými znalostmi webové stránky, a bez velké pomoci od nikoho jiného.
Technická hloubka znalostí
Velká otázka vývoje plného zásobníku je jak hluboko jít do každé oblasti. Je plnohodnotný inženýr opravdu mistrem? Někteří argumentují, že je to možné, ale to nemusí být účelem plného zásobníku.
Většina firem chce najmout inženýry s plným zásobníkem, kteří mají všude znalosti. Tito inženýři se mohou specializovat na jednu oblast, ale v případě potřeby jsou schopni vyplnit jakoukoli roli.
Devs, kteří právě začínají tuto cestu, by měli hračky ve všech oblastech učení "jen dost" k řešení problémů, jak vznikají. To dává technologiím reálný světový výklad, aby zjistili, jak se různé problémy týkají reálných projektů.
Největší výhodou plného kódování zásobníků je schopnost vytvářet vlastní aplikace bez práce pro nikoho jiného.
Pokud se naučíte každou fázi vývojového procesu, můžete vše udělat sami. Nemusíte být mistrem PHP, abyste vytvořili vlastní aplikaci Laravel. A nemusíte být guru JavaScriptu, abyste vytvořili flexibilní rozevírací navigaci, zejména nyní, když máme na webu tolik otevřeného zdrojového kódu..
Jak hluboko byste měli jít do některé z těchto oblastí? To záleží jen na vás a vaše odpověď se v průběhu času pravděpodobně změní.
Ale když začnete poprvé, jen jděte dostatečně hluboko, abyste mohli realizovat to, co jste se naučili, do reálného projektu. Když narazíte na něco, čemu nerozumíte, použít jako příležitost jít hlouběji, a dozvědět se více o daném tématu.
Výběr jazyků
Je to trochu záhada pro nového vývojáře, aby si vybral, které technologie se učit. Dostávat věci z cesty, HTML a CSS jsou naprosto nezbytné. JavaScript je také nutností, ale nemusíte se považovat za mistra JS. Měli byste však mít zájem dozvědět se více než jen prostý JavaScript.
Většina devs se také učí jQuery, ale rámce jako React, Ember, Angular, Vue nebo Backbone nabízejí jednodušší proces pro vytváření plnohodnotných webových aplikací.
Je možné se ponořit ještě hlouběji efektů JavaScriptu, jako jsou animace, ale jsou zcela volitelné. Vývojář s plným zásobníkem by měl vědět, že stačí udělat práci a odtamtud pokračovat.
Volba jazyka backendu je méně o technické výhodě a více o pohodlí. Většina programátorů si to uvědomuje Python je univerzálnější jazyk než PHP, Většina webových stránek však běží na PHP serverech. To dělá PHP hodnotný jazyk více společností.
Vyberte si jazyk, který vyhovuje vašim potřebám, nebo vám nabídne největší vyhlídky. Také mějte na paměti, že navždy se nezachytí s jedním jazykem backendu. Pokud začnete s Ruby, ale přepnete na Python, neztratíte v procesu nic.
Nicméně doporučuji, abyste jednou našli jazyk, který se vám líbí, ponořte se hlouběji do tohoto jazyka a související rámec. PHP má Laravel, Ruby má Rails a Python má Django - mezi mnoho dalších možností. Tyto rámce urychlí váš vývojový proces a pomohou vám správně strukturovat vaše aplikace.
Databáze a servery
Volba databázového stroje závisí na požadavcích projektu a zásobníku serveru. PHP často pracuje s MySQL, takže je to nejvýhodnější volba. dva největší webové komíny dnes SVÍTILNA (Linux-Apache-MySQL-PHP) a ZNAMENAT (MongoDB-ExpressJS-AngularJS-Node.js).
Většina hostingové společnosti nabízejí LAMP od začátku bez nutnosti nastavení. Ale vlastní řešení, jako je Digital Ocean, vám umožní provozovat téměř cokoliv s malým loketním mazivem. V tomto seznamu můžete najít další webové komíny nebo prohledávat online.
Vaše databáze výběru bude často svázaný s vaším jazykem. Python je standardně vybaven podporou SQLite a RoR devs může typicky pracovat s čímkoliv. A upřímně řečeno, každý jazyk může obvykle pracovat s libovolnou databází.
Ale chcete si vybrat něco, co je pro většinu webových projektů dostačující. SQL je obecný jazyk a používá většinou stejnou syntaxi napříč všemi databázovými stroji. Rozdíly v nastavení a správě tabulek najdete, ale obvykle jsou menší.
Kromě databází zde uvádíme několik technických témat na straně serveru, o kterých se můžete dozvědět.
- CDNs a hosting obsahu
- Instalace a aktualizace serverového softwaru
- Nejlepší konfigurace serveru pro dopravní špičky a časy načítání
- Ukládání do mezipaměti řešení pro databázové dotazy a ukládání souborového systému
- Automatizované zálohování databází a plochých souborů nebo zálohování diskových obrazů
- Nastavení HTTPS se správou domény (servery DNS, záznamy CNAME atd.)
- Podrobnější témata, jako je e-mail, služby mikroprocesorů a vyvažování zátěže
Jeden z nejlepších způsobů, jak se učit, je pohrávání se se servery při budování projektů. Chyť základní VPS a zkuste nastavit vlastní zásobníky. Tyto VPS jsou kompletní prostředí virtuálních serverů, kde máte úplnou kontrolu pro konfiguraci (nebo zničení) všeho. Výše uvedený seznam také není požadovaným plánem pro všechny vývojáře plného zásobníku.
Jediné poznání, které opravdu potřebujete, je co je potřeba k vytvoření prázdného prostředí serveru a instalaci softwaru potřebného pro provoz webu. Odtud je jen něco lepšího. Pokud jste někdy měli otázky nebo se chcete učit od odborníků, podívejte se na komunitu Reddit / r / SysAdmin.
Road Ahead
Pokud se opravdu chcete naučit plnou tvorbu zásobníku, vytvořte seznam všech technologií, které se chcete naučit. Odtud je můžete řešit jeden po druhém a vytvořit si vlastní projekty, abyste otestovali, co se naučíte.
Vývoj webu je stále se měnícím odvětvím, takže byste měli být vždy ochotni se dozvědět více. Otestujte různé zásobníky a jazyky, dokud nenajdete to, co se vám líbí. Ale vždy být ochoten jít hlouběji a lépe!
Stojí za to vývoj plného zásobníku? To je na vás, abyste se rozhodli. Ale tady jsou některé související příspěvky, které by vám mohly pomoci zjistit, že.
- O legitimitě "full-stack" (heapsortjobs.com)
- Takže se chcete stát plnohodnotným vývojářem (rubysteps.com)
- 7 tipů, jak se stát plnohodnotným vývojářem (usersnap.com)