Sannadka 2021, JavaScript wuxuu ahaa luqadda barnaamijyada ugu badan ee la isticmaalo.
Soo jiidashada tignoolajiyadani waa mid aan la dafiri karin, sida lagu arkay tirada badan ee qaab-dhismeedka kuwaas oo suurtageliya barnaamijyada JavaScript.
Xagga hore waxaa ku yaal Angular, React, iyo Vue, iyo sidoo kale Express iyo Xiga dhabarka dambe, in la xuso dhowr.
Iyada oo leh qaabab badan oo cajiib ah oo loogu talagalay barnaamijyada dhabarka dambe ee JavaScript la heli karo, waxaa laga yaabaa inaad ka fekereyso sababta aan u raadin lahaa wax ka duwan halkii aan si fudud u isticmaali lahaa Express ama Next.
Waxaa laga yaabaa inaad u baahato inaad si degdeg ah ugu billowdo geeddi-socodka horumarka adigoo isticmaalaya boodh-kulul hufan, oo aad gacanta ku darto maaha oo keliya kontaroolayaasha cusub, laakiin sidoo kale adeegyo ayaa ku bukoonaya.
Ama waxaad rabtaa inaad abuurto software weyn oo la miisaami karo oo fudud in la maareeyo. Ama laga yaabee inaad rabto inaad si hufan oo habboon u shaqeyso.
Iyadoo aan loo eegin mid ka run ah xaaladaada, Nest.js waxay noqon kartaa xalka ugu fiican ee baahiyahaaga.
Boostada ayaa bixin doonta aragtida NestJS iyo sidoo kale khibrad gacan-ku-ool ah.
Waa maxay NestJS?
NestJS waa qaab-dhismeedka Node horumarsan kaas oo ah il furan, la fidin karo, lana qabsan karo .Js qaabdhismeedka dhismaha, ka-qaybgalka iyo caqabadaha nidaamyada dhabarka. Hadda waa Node oo leh heerka kobaca ugu dhaqsaha badan.
Qaab dhismeedka TypeScript ee js. NestJS waxaa loo isticmaalaa in lagu abuuro codsiyada la miisaami karo, la tijaabin karo, oo dabacsan.
Waxay ku darsataa miisaaman Node Adeegayaasha Js waxa la gaadhsiiyay heer cusub oo dhan. PostgreSQL, MongoDB, iyo MySQL ayaa ka mid ah xog ururinta la taageeray.
NestJS waa la kordhin karaa sababtoo ah waxaa loo isticmaali karaa maktabadaha kale; dabacsanaan sababtoo ah nidaamka deegaanka oo si buuxda u la qabsan kara. Iyo horusocod maadaama ay taageerto astaamaha JavaScript iyo mabaadi'da naqshadaynta.
Waxaa ugu horrayn saamayn ku leh Angular, React, iyo Vue waxayna la socotaa duritaanka ku-tiirsanaanta.
Features
- Way fududahay in la isticmaalo, la barto, oo la maareeyo.
- Waa bilaash iyo ilka furan (Shatiga MIT)
- Interface Line Command Powerful (CLI) si loo kordhiyo wax soo saarka iyo fududaynta horumarka
- Barnaamijyada tijaabinta unugga ee fudud in la isticmaalo
- TypeScript, luuqad si adag loo tebiyay oo ka kooban JavaScript, ayaa la adeegsadaa.
- Horumarinta iyo dayactirka codebase firfircoon.
- Taageerada boqollaal qaybood oo buul-gaar ah oo ka dhigaya mid fudud in lagu dhex geliyo tignoolajiyada caanka ah iyo fikradaha sida TypeORM, Mongoose, GraphQL, galitaanka, ansixinta, kaydinta, WebSockets, iyo in ka badan.
Maxay yihiin dhismayaasha NestJS?
Qaybaha dhismaha ee codsiyada Nest ayaa hoos ku taxan; kuwo kale ayaa jira, laakiin saddexdan ayaa ah kuwa ugu muhiimsan. Aynu si degdeg ah u eegno iyaga.
1. Koontaroolayaasha
Koontaroolayaasha ayaa mas'uul ka ah socodsiinta codsiyada soo socda iyo ka jawaabista macaamiisha. Waxay heshaa codsiyo gaar ah oo HTTP ah, iyo nidaamka dariiqa ayaa go'aamiya kantaroolaha helaya codsiga.
Kadib waxay diyaarisaa jawaab ku haboon in la diro. Iyada oo la kaashanayo fasallada iyo qurxinta, ururiyaha fudud ayaa la dhisay, maamule kastaa wuxuu leeyahay waddooyin u gaar ah oo lagu qabto hawlo kala duwan.
2. Bixiyeyaasha
Bixiyeyaasha ayaa fikrad muhiim ah ka ah Nest. Qaar badan oo ka mid ah fasallada Nest-ka aasaasiga ah - adeegyada, bakhaarrada, warshadaha, caawiyayaasha, iyo wixii la mid ah - waxa loo maarayn karaa bixiye ahaan.
Fikradda aasaasiga ah ee bixiyaha waa in lagu duri karo ku-tiirsanaan ahaan; Tani waxay tusinaysaa in walxuhu ay samayn karaan ururo kala duwan midba midka kale, iyo doorka "xakamaynta" tusaalooyinka walxaha inta badan waxaa loo diri karaa nidaamka runtime Nest.
3. Mootooyinka
Module waa fasal leh @Module() qurxiyaha ee habeeya qaybaha qaab dhismeedka codsiga. Codsi kastaa wuxuu leeyahay qayb xidid ah oo loo isticmaalo in lagu dhiso garaafka codsiga, kaas oo sii xaliya ku tiirsanaanta iyo isdhexgalka bixiyaha iyo moduleka.
Qurxiyeyaashu waxay siiya xogta badan ee Nest.js si loo garto qaybaha, kontaroolayaasha, ama agabyada kale ee loo isticmaali doono koodka arjiga oo lagu daro hal go'an.
Module kastaa waxa uu leeyahay ururinta awoodaha kuwaas oo si uun ugu xidhan.
Ka bilow NestJS
1. Rakibaadda
Aynu rakibno NestJS oo aynu ku samayno mashruuc annagoo raacayna tillaabooyinkan:
Qaab dhismeedka hagaha soo socda ayaa la abuuri doonaa tan awgeed:
2. Koontaroolayaasha
Dhismayaasha Nest waa kontaroolayaal. Kuwani waa meelaha codsiyada soo galitaanka lagu qaban doono. Waxaad qeexi kartaa dariiqa marinka adigoo isticmaalaya habka HTTP (Get, Post, Put, Delete, iyo wixii la mid ah) qurxinta, sida lagu arkay koodka hoose.
Nestjs waxay shaqaaleysiisaa habka qurxinta waxaana inta badan lagu horumariyaa Typescript, in kasta oo ay sidoo kale taageerto JavaScript. Waxa kale oo aad isticmaali kartaa ansaxiyaha fasalka si aad u ansixiso hay'adda codsiga.
Kaliya waxaan samayn doonaa tusaale server-ka Nestjs oo aan ku daro ValidationPipe caalami ahaan. Tuubooyinku waa habab kaliya oo lagu fuliyo kontaroolayaasha ka hor. Tuubooyinka waxa kale oo lagu dabaqi karaa heerka habka/muranka iyadoo la isticmaalayo qurxiyaha @UsePipes.
3. Bixiyeyaasha
Bixiyeyaasha ayaa ah qayb kale oo muhiim ah oo Nestjs ah. Ilaa hadda, waxaan ku kaydinayay xogta doorsoome ku meel gaar ah. Taasi waa sababta hawshan fudud lagu fulin karo iyadoo la isticmaalayo maamulayaasha kontoroolka.
Si kastaba ha ahaatee, caqli-gal weyn, ka adag, kala-soocidda koodhka iyo dib-u-isticmaalka way adkaan doontaa. Tani waa marka alaab-qeybiyeyaashu yimaadaan. Waxaad ku dhawaaqi kartaa/abuuri kartaa bixiye korka fasalka adiga oo isticmaalaya @qurxiyaha la isku duro. Kadib, adoo isticmaalaya bixiyeyaasha, waxaad samayn kartaa ku-tiirsanaanta, gooynta, iyo hawlo kale.
4. Mootooyinka
Qaybaha Nestjs maaha kuwo caalami ah; halkii, waxay leeyihiin qoto dheer.
Si kastaba ha ahaatee, waxa lala wadaagi karaa qayb kasta oo kale sidoo kale. In kasta oo ay, sida Angular, ay bixiso Modules Global, waxaa aad loogu talinayaa in lagu hayo Adeegyada/Koontaroolayaasha qaybta halka inta badan laga isticmaalo Nestjs.
NestCLI waxaa loo isticmaalaa in lagu soo saaro qaybo inta badan, iyo bixiyeyaasha/maamulayaasha laga soo saaray macnaha guud ee moduleka waxaa si toos ah ugu daraya CLI. Kuwaas waxaa loo yaqaan modules muuqaal ah.
5. Shaandhooyin ka baxsan
Shaandhaynta ka reeban waa hawl-wadeennada khaladaadka kuwaas oo loo yeedho marka koontarooluhu tuuro wax ka reeban. Si otomaatig ah ayay u maamushaa arrinta oo waxay gudbisaa fariin khalad ah oo habboon, saaxiibtinimo-saaxiibtinimo.
In badan oo ka reeban HttpException la dhaxlo waxaa bixiya xirmada @nestjs/caado, oo ay ku jiraan NotFoundException, BadRequestException, NotAcceptableException, UnauthorizedException, iyo kuwo kale oo badan. Xitaa waxaad samayn kartaa ExceptionFilter adiga kuu gaar ah.
6. Middleware
Shaqada lagu baaqo ka hor inta aan la qaadin dariiqa waxa loo yaqaan middleware. Codsiga iyo walxaha jawaabta, iyo sidoo kale () shaqada dhexe ee soo socota ee wareegga jawaab celinta codsiga, ayaa loo heli karaa hawlaha dhex dhexaadinta.
Doorsoome loo yaqaan xiga ayaa caadi ahaan loo adeegsadaa si loo aqoonsado shaqada dhex dhexaadinta ee xigta. Dhexdhexaadiyaha Nest Custom waxaa lagu hirgelin karaa qaab ama fasal iyadoo la isticmaalayo @Injectable() qurxinta.
7. Ilaalada
Ilaalada ayaa ka masuul ah hal shay. Waa mas'uuliyadooda inay qiimeeyaan in codsiga uu maamuluhu farsamayn doono iyo in kale iyadoo lagu salaynayo duruufo gaar ah (Gaar ahaan, caqli-gal user-qeexay).
Waxay waxtar u leedahay xaqiijinta/oggolaanshaha waana habka lagu taliyay ee Nestjs.
In kasta oo aqoonsiga / oggolaanshaha, iwm, lagu samayn karo iyada oo la adeegsanayo middleware, laguma sameeyo si qeexan ama server-yada HTTP-yada kale maadaama aanay lahayn xaalad adag oo la xidhiidha oo aanay haysan sabab ay ku ogaadaan habka loo isticmaali doono si loo farsameeyo codsiga.
Faa'iidada
- Qaab-dhismeedku wuxuu si aad ah ugu tiirsan yahay sharraxaadda, kuwaas oo loo isticmaalo in lagu soo saaro wax kasta oo ka soo baxa dhammaadka ilaa dukumeenti Swagger. Qodobbada ugu dambeeya ayaa ah kuwo aasaasi ah oo nadiif ah, qoraalladuna waxay fududeeyaan horumarka guud ahaan.
- Way fududahay in dibadda laga saaro qaybaha ujeeddada guud oo dib loogu isticmaalo koodka mashruucyo badan maadaama Nest.js uu yahay qaab-dhismeedka module-ku-salaysan.
- Qaab dhismeedka galka Nest.js waxaa si weyn u saameeya xagal Markaad naqshadaynayso adeegga Nest, tani waxay u oggolaanaysaa wakhtiga dhimista ugu yar.
- Qaybuhu waxay leeyihiin hagayaal iyaga u gaar ah, oo xididku ka kooban yahay moduleka codsiga iyo faylka muhiimka ah. Sababtoo ah fududaynta qaab-dhismeedka, fiiro gaar ah ayaa loo saari karaa naqshadeynta dhibcaha dhammaadka iyo macaamiishooda halkii ay ka ahaan lahaayeen qaabka codsiga.
- Nest, sida Angular, ayaa bixisa qalab-khudbad fiican, Nestjs/cli, kaas oo laga heli karo Maareeyaha Xidhmada Node.
Qasaaraha
- Nest waxay leedahay faa'iido marka la eego isticmaalka TypeScript iyo isdhexgalka xagalaha, laakiin waxay ka maqan tahay taageerada dhaqaale ee shirkad weyn.
- Dukumeenti la'aanta ayaa khatarta ugu weyn ku ah isticmaalayaasha Nest. Inkasta oo qaab-dhismeedku uu leeyahay is-dhexgal aad u wanaagsan oo lala yeesho qaabab kale, dukumeentiyadu waa yar yihiin oo kama hadlaan wax dhib ah oo iman kara.
- Nest waxay leedahay faa'iido marka la eego isticmaalka TypeScript iyo xagal.
Ugu Dambeyn
NestJS waxay siisaa horumariyayaasha lug weyn oo kor u kaca. Si aad u bilowdo horumarka, waxa kaliya ee aad u baahan tahay inaad sameyso waa samee app cusub waana ku fiican tahay inaad tagto. Qaab-dhismeedkani waxa uu isla markaaba ku siinayaa kor u qaadis la taaban karo, isaga oo sidoo kale kaa caawinaya in aad qaadatid marxalado dheeraad ah adiga oo dejinaya qaab dhismeedka app ku haboon.
Waxay ka dhigtaa isticmaalka hababka goynta iyo tignoolajiyada si ay u soo saarto codsiyo la maarayn karo oo waara labadaba. Waxaa loo isticmaali karaa in lagu xiro GraphQL, WebSockets, iyo in lagu dhiso adeeg-yaraha.
Leave a Reply