A Fullstack webes fejlesztés használatának megkezdése
Napjainkban modern teljes veremfejlesztés nagyon népszerű mind a kis ügynökségekben, mind a nagyobb vállalatoknál egy dedikált műszaki csapattal. A teljes verem webmérnökök egy teljes webes veremben dolgoznak beleértve a frontendet is, és szerverkezelés.
Sokan azzal érvelnek, hogy a teljes verem csak az összes kereskedés „jack-jének”, a semmi mesternek. Bizonyos szempontból ez igaz lehet, azonban a skillset csak annyira fontos, mint amilyet vele lehet megvalósítani. Számos teljes verem kínálatértéket kínál, mert ötletet tudnak venni a koncepciótól a bevezetésig, és teljesen megérteni a folyamat minden lépése.
Ha gondolsz megy a teljes verem útvonalon, akkor ez a cikk az Ön számára. Megmagyarázom a teljes veremfejlesztő általános követelményeit, milyen szerepe van, és hogy a skillset hasznos lehet azoknak a szabadúszóknak / vállalkozóknak, akik közvetlenül vagy ügyfeleikhez vagy saját projektjeikhez akarnak dolgozni.
Teljes verem alapjai
A modern teljes veremfejlesztés hosszú utat tett meg, mivel a webes technológia sokat változott. A teljes követési követelményeket iránymutatásként kell figyelembe venni a következőket figyelembe véve. Általánosságban elmondható, hogy a "verem" az egységesen futó technológiákat képviseli weboldalt dolgozni. Ez a frontend kódot, a backend kódot, az adatbázis rendszert és a szerver webszerver platformját + operációs rendszert jelent.
A teljes veremfejlesztés alapelve az, hogy megértsük a weboldal építésének minden szempontját. Ez nem jelenti a tervezés vagy az UI / UX munka ismeretét, bár ez jelentősen javíthatja életképességét és a munka minőségét.
- A frontend alapjai közé tartozik a HTML / CSS és JavaScript, valószínűleg a keretrendszer, például a szög vagy a reagálás.
- Egy backend-nyelvhez valamit szeretne kiválasztani, amely egy adatbázis-rendszerrel összekapcsolható. PHP / MySQL a leggyakoribb és legegyszerűbb a tanulás, mert sok CMS-motorhoz, például a WordPress-hez tartozik. Szintén a LÁMPA A mai verem kétségtelenül a legnépszerűbb webköteg.
- A szerver tudása lehet olyan egyszerű vagy részletes, amennyit csak akar. Az abszolút alapok egy olyan szerverprogram ismerete, mint a Apache az adatbázishoz hasonlóan MySQL vagy PostgreSQL.
- Előfordulhat, hogy még többet szeretne kapni a levelezőszerverek vagy a teljesítmény-eszközök (például memcached vagy Varnish) telepítésének ismerete.
A teljes stack-nek mindhárom területen eléggé tudnia kell önállóan indítson el egy weboldalt, és senki más segítsége nélkül.
A tudás technikai mélysége
Nagy kérdés a teljes veremfejlesztésről milyen mélyen menjen be minden területre. Egy teljes verem mérnök tényleg valaha is mester? Néhányan azt állítják, hogy lehetséges, de ez nem lehet a teljes halom célja.
A legtöbb vállalat teljes körű mérnököket szeretne bérelni, akiknek bárhol tudomása van. Ezek a mérnökök egy területre specializálódhatnak, de szükség esetén betölthetnek bármilyen szerepet.
Azoknak, akik éppen most kezdik el ezt az utat, meg kell játék körül minden területen tanulni "éppen elég", hogy megoldja a problémákat, amikor felmerülnek. Ez valódi világértelmezést ad a technológiáknak, hogy lássuk, hogyan különböznek a problémák a valódi projektekhez.
A teljes veremkódolás legnagyobb előnye, hogy képes saját alkalmazások létrehozása anélkül, hogy bárki másnak dolgozna.
Ha a fejlesztési folyamat minden szakaszát megtanulod, akkor mindent megtehetsz. Egyéni Laravel alkalmazás létrehozásához nem kell PHP-nek lenni. És nem kell JavaScript gurulnak lennie ahhoz, hogy egy rugalmas, legördülő navigációt hozzon létre, különösen most, hogy olyan sok nyílt forráskóddal rendelkezünk, amely elérhető az interneten.
Szóval milyen mélyen kell e területek valamelyikébe menni? Ez teljesen rajtad múlik, és a válaszod valószínűleg idővel megváltozik.
De amikor először elkezdtük, csak elég mély ahhoz, hogy megvalósítsa azt, amit valódi projektben megtanultál. Amikor beleütközik valamire, amit nem értesz, használja azt, hogy mélyebbre menjen, és Tudjon meg többet erről az adott témáról.
Nyelvek kiválasztása
Az új fejlesztő számára egy kicsit szörnyű választás, hogy melyik technológiát választja. A szükségletek kikerülése az útból, A HTML és a CSS feltétlenül szükséges. A JavaScript is szükségszerű, de nem kell magadnak tekinteni magadnak a JS mester. Ugyanakkor érdemes többet tanulni, mint a egyszerű JavaScript.
A legtöbb devs is megtanulja a jQuery-t is, de az olyan rendszerek, mint a React, Ember, Angular, Vue vagy Backbone, egyszerűbb eljárást kínálnak a teljes körű webalkalmazások építéséhez.
Még mélyebb tanulásra is lehetőség van fantasztikus JavaScript hatások, például animációk, de teljesen opcionálisak. A teljes veremfejlesztőnek tudnia kell, hogy elég legyen, hogy elvégezze a munkát, és továbblépjen onnan.
A háttérnyelv-választás kevésbé a technikai előnyök és a kényelem tekintetében. A legtöbb programozó felismeri ezt A Python egy sokoldalúbb nyelv, mint a PHP, a webhelyek többsége azonban PHP szervereken fut. Ez teszi PHP értékes nyelv több vállalatnak.
Válassza ki az Ön igényeinek megfelelő nyelvet, vagy a legnagyobb kilátásokat. Ne feledje azt is nem ragadsz meg örökre egy hátsó nyelvet. Ha Ruby-val kezd, de Pythonra vált, nem veszít semmit a folyamatban.
Ugyanakkor azt javaslom, hogy ha megtalálod a kívánt nyelvet, mélyítsd meg ezt a nyelvet, és vegyen fel egy kapcsolódó keretet. A PHP Laravel, a Ruby Rails és a Python rendelkezik Django-val. Ezek a keretrendszerek felgyorsítják a fejlesztési folyamatot, és segítenek az alkalmazások megfelelő felépítésében.
Adatbázisok és kiszolgálók
Az adatbázis-motor kiválasztása a projektkövetelményekre és a szerverkötegre csökken. A PHP gyakran működik a MySQL-rel, így ez a legkedveltebb választás. A két legnagyobb webes halom ma LÁMPA (Linux-Apache-MySQL-PHP) és ÁTLAGOS (MongoDB-ExpressJS-AngularJS-node.js).
A legtöbb hosting cég a LAMP-ot a kezdetektől kínál, és nincs szükség telepítésre. De az egyéni megoldások, mint a Digital Ocean lehetővé teszik, hogy szinte bármit futtasson egy kis könyökzsírral. A webhelyen több internetes stack található, vagy az interneten keresve.
A választott adatbázisod gyakran lesz a backend nyelvéhez kötődik. A Python alapértelmezés szerint SQLite támogatással rendelkezik RoR A devsok általában bármit is működhetnek. És őszintén, minden nyelv általában bármilyen adatbázissal működik.
De azt szeretné, hogy valamit, ami elég általános ahhoz, hogy a webes projektek többségében használhassa. Az SQL általános nyelv, és többnyire azonos szintaxist használ az összes adatbázis-motorban. A táblázat beállításai és adminisztrációja között különbségek találhatók, de ezek tipikusan kisebbek.
Az adatbázisokon kívül néhány technikai szerveroldali témakör, amit érdemes megismerni.
- CDN-ek és tartalomtárolás
- Szerver szoftver telepítése és frissítése
- A legjobb kiszolgálókonfigurációk a forgalmi tüskék és a betöltési idők számára
- Gyorsítótárazási megoldások mind az adatbázis lekérdezésekhez, mind a fájlrendszer tárolásához
- Adatbázisok és lapos fájlok, vagy lemezképfájl-biztonsági mentések automatizált biztonsági mentése
- HTTPS beállítás a tartománykezeléssel (DNS-kiszolgálók, CNAME-rekordok stb.)
- Részletesebb témák, például e-mail, mikroszolgáltatások és terheléskiegyenlítés
A tanulás egyik legjobb módja kiszolgálókkal projektek építésekor. Fogd meg az alapokat VPS fiókot, és próbálja meg beállítani a saját veremeket. Ezek a VPS-ek olyan teljes virtuális kiszolgáló-környezetek, ahol teljes körű vezérlést végez mindent beállítani (vagy elpusztítani). A fenti lista nem feltétlenül szükséges teljes ütemterv a teljes veremfejlesztők számára.
Az egyetlen tudás, amire valóban szüksége van amit egy üres kiszolgálókörnyezet létrehozásához szükséges, és telepítse a webhely futtatásához szükséges szoftvert. Innen bármi más csak jobb tudás. Ha bármilyen kérdése van, vagy szakemberektől szeretne tanulni, nézze meg a Reddit / r / SysAdmin közösségét.
Az előttünk lévő út
Ha igazán szeretné megtanulni a teljes veremfejlesztést, készítsen listát az összes tanulni kívánt technológiáról. Innentől fogva egyenként kezelheti őket, így saját gyakorlati projektjeit tesztelheti, amit megtanul.
A webfejlesztés folyamatosan változó iparág, ezért mindig készen kell lennie arra, hogy többet megtudjon. Ellenőrizze a különböző halmokat és nyelveket, amíg meg nem találja, amit szeretne. De mindig hajlandó mélyebbre menni és jobbá válni!
Megéri-e a teljes veremfejlesztést? Ez az, hogy eldöntse. De itt van néhány kapcsolódó hozzászólás, amely segíthet neked kitalálni.
- A "Full-Stack" jogszerűségéről (Heapsortjobs.com)
- Tehát teljes stack-fejlesztővé akarsz válni (Rubysteps.com)
- 7 tipp a teljes stack-fejlesztőknek (Usersnap.com)