JavaScript програмчлалын эхэн үеэс эхэлсэн бөгөөд хөгжүүлэгчид үүнийг олон жилийн турш ашиглаж ирсэн гэдгийг бид бүгд мэднэ. Гэхдээ JavaScript орчин нь заримдаа жолоодлого хийх төөрдөг байшин мэт санагддаг.
Маш олон янзын ажиллах хугацаа, номын сан, фреймворкууд байдаг тул хөгжүүлэгчид ихэвчлэн сонголтууд болон солилцооны улмаас саажилттай байдаг.
Хөгжүүлэгчид хурдан төдийгүй бас тустай ажиллах орчны шаардлага нь хамгийн тулгамдсан асуудлуудын нэг юм.
Bun 1.0, хувьсгалт JavaScript-н ажиллах хугацаа нь бидний JavaScript програмуудыг үүсгэх, түгээх арга замыг өөрчлөхийг зорьдог.
Bun нь хурд, үр ашигтай байх үүднээс доороос дээш бүтээгдсэн тул гүйцэтгэл, ашиглахад тохиромжтой тусгай хослолыг өгдөг.
Энэ бол зүгээр л нэг ажиллах хугацаа биш; Энэ нь багцлагч, туршилтын гүйгч, багцын менежмент зэрэг бүрэн хэрэгслийн хайрцаг юм.
Тэгэхээр та яагаад ийм завгүй газар Бунд анхаарлаа хандуулах ёстой гэж?
Bun нь модулийн нарийвчлалын галзуурал, CommonJS болон ESM-ийн эргэн тойронд заримдаа будлиантай байдаг зохицуулалт гэх мэт хөгжүүлэгчдэд тулгардаг хамгийн ядаргаатай асуудлуудыг шийдвэрлэхээс эхэлдэг.
Энэ нь энэхүү нарийн төвөгтэй байдлыг задлах замаар илүү хялбаршуулсан, ойлгомжтой хөгжүүлэлтийн туршлагыг санал болгодог.
Нэмж дурдахад, Bun нь маш сайн гүйцэтгэлтэй байхаар бүтээгдсэн бөгөөд HTTP хүсэлтийг боловсруулах гайхалтай боломжуудаараа Node.js болон Deno зэрэг алдартай өрсөлдөгчдөөс давж гардаг.
Нэмж дурдахад, үүнийг Node.js-ийн орлуулалт болгон ашиглаж болох бөгөөд энэ нь багууд хөрвүүлэлтийг илүү хялбар болгоход тусалдаг.
Гэсэн хэдий ч Бан хөгжүүлэгчийн туршлага (DX)-ийг онцолсон нь үүнийг туршиж үзэх хамгийн үнэмшилтэй аргумент байж магадгүй юм.
Таны төслийн бүтэн ашиглалтын хугацаа, хөгжүүлэлтээс эхлээд туршилт, байршуулалт хүртэл нь зөвхөн код үйлдвэрлэх үйл ажиллагаа биш чухал юм.
Bun нь JavaScript-ийн хөгжилд байнга сөргөөр нөлөөлдөг хуваагдмал процессуудыг нэгдмэл хэрэгслийн хайрцагаар хангана гэж амлаж байна.
Тиймээс энэ нийтлэлд бид Bun 1.0, түүний чухал шинж чанарууд, хэрхэн ашиглах болон бусад олон зүйлийг нарийвчлан авч үзэх болно.
ойлгох нь Боов 1.0
Bun 1.0 нь хөгжүүлэгчийн гол хэрэгсэл болж ажилладаг хувьсгалт JavaScript-н ажиллах цаг юм.
Bun нь багцлагч, туршилтын гүйгч, багцын менежментийг экосистемдээ шууд нэгтгэх замаар зөвхөн кодоо ажиллуулахаас ч илүү юм.
Энэ нь таны JavaScript төслүүдэд Швейцарийн армийн хутгатай харьцуулах үйлчилгээ үзүүлдэг. Энэ нь хурдан явах зорилготой - маш хурдан.
Энэ нь Zig-д хэрэгжүүлснээр хурд болон өргөтгөсөн үндсэн хурдны функцэд зориулагдсан болно. Энэ нь Safari-г удирддаг JavaScriptCore хөдөлгүүр дээр бүтээгдсэн.
Одоо та Bun нь Node.js болон Deno зэрэг хэрэгслүүдээс юугаараа ялгаатай болохыг асууж магадгүй юм. Одооноос эхэлцгээе.
Үүний гол зорилго нь Node.js-ийг орлуулах бөгөөд үүнд Node-ийн модулийн нарийвчлалын арга, "fs" болон "зам" зэрэг суурилуулсан модулиудтай нийцтэй байх явдал юм.
Үүний улмаас хөгжүүлэгчид одоо байгаа Node.js төслөө Bun руу шилжүүлэх боломжтой. Бунгийн гүйцэтгэл үнэхээр гялалзсан газар юм.
Энэ нь HTTP хүсэлтийг Node.js болон Deno-ээс илүү сайн зохицуулдаг тул өндөр гүйцэтгэлтэй програмуудад зориулсан маш сайн сонголт юм.
Энэ нь хөгжүүлэгчийн туршлагад (DX) хандах хандлага нь өөр нэг ялгаа юм. Bun нь багцын удирдлага, туршилт хийхэд гуравдагч талын шийдлийг шаарддаг хэсэгчилсэн хэрэглүүрийг санал болгодог Node.js болон Deno-ээс ялгаатай нь эдгээр боломжуудыг анхлан санал болгодог.
Энэхүү уялдаа холбоотой DX-ийн ачаар хөгжүүлэгчид код, тохиргоонд бага төвлөрч, олон хэрэгсэл, сангуудыг нэгтгэх хэрэгцээг арилгадаг.
Энэ нь JavaScript-н ачаалал ихтэй салбар дахь өөр нэг ажиллах хугацаа гэхээсээ илүү JavaScript-н ажиллах хугацаа ямар байх талаар шинэ мөрийг бий болгож, гүйцэтгэл болон ашиглах боломжтой байдлын аль алиныг нь шийддэг цогц шийдэл юм.
Гол онцлогууд
1. Хурд
Bun 1.0 нь хурдны хувьд нэлээд хурдан байдаг. Bun нь хурдад зориулагдсан JavaScriptCore хөдөлгүүрт Zig-ээр дамжуулан эх хурдны чадварыг нэмснээр гүйцэтгэлийн оновчлолыг нэг алхам урагшлуулдаг.
Тоон үзүүлэлтүүд өөрсдөө ярьдаг: жишиг үзүүлэлтүүдийн дагуу.
Bun нь секундэд 66,706 HTTP хүсэлтийг боловсруулдаг бөгөөд Node.js болон Deno нь секундэд 13,967, 32,921 хүсэлтээр нэлээд хоцорч байна.
Энэ нь зүгээр л гүйцэтгэлийн бага зэрэг өсөлт биш юм; Энэ нь бодит ертөнцийн хэрэглээ, ялангуяа өндөр дамжуулах чадвар, хоцролт бага шаарддаг програмуудыг ихээхэн өөрчилж чадах квантын үсрэлт юм.
2. Дэгжин APIs
Bun 1.0 нь хурдан байхаас гадна ердийн үйл ажиллагааг хялбаршуулдаг үзэсгэлэнтэй, өндөр оновчтой API-уудын цуглуулгыг хүргэдэг.
Bun танд HTTP сервер ажиллуулах, файл унших, бичих, нууц үгээ хэшлэх эсэхээс үл хамаарна.
API-ууд нь энгийн боловч үр дүнтэй байхаар бүтээгдсэн бөгөөд үндсэн үйл ажиллагаанд зориулсан дэлгэрэнгүй код эсвэл бусад номын сангийн хэрэгцээг арилгадаг.
Жишээлбэл, дуудлага хийх Bun.serve()
HTTP серверийг ажиллуулах нь таныг богино хугацаанд ажиллуулах боломжтой. Bun нь энгийн бөгөөд үр ашигтай байдлыг чухалчилдгаараа бусдаас ялгардаг бөгөөд энэ нь үүнийг хурдан төдийгүй хөгжүүлэгчдэд маш ээлтэй болгодог.
3. Хамтарсан хөгжүүлэгчийн туршлага
Bun 1.0 нь тасралтгүй хөгжүүлэлтийн туршлагыг (DX) хангахад анхаарлаа төвлөрүүлж байгаа нь түүнийг үнэхээр бусдаас ялгаруулдаг. Bun нь хэсэгчилсэн хэрэглүүрийг санал болгодог бусад ажлын цагуудаас ялгаатай нь уугуул багц менежер, тест гүйгч, багцлагчийг агуулдаг.
Үүний үр дүнд та янз бүрийн багаж хэрэгсэлтэй жонглёрдох, бие биентэйгээ зохицон ажиллахын тулд гуравдагч этгээдийн шийдлүүдийг тохируулах дарамтаас чөлөөлөгдөнө.
Хайрцагнаас гарахад танд хэрэгтэй бүх зүйл бэлэн байна. Тохиромжтой байхаас гадна багц менежер нь npm, pnpm, yarn-аас хурдан байдаг.
Тест гүйгч нь таны тестийг илүү хурдан явуулахаас гадна Jest загварын синтакс агуулсан тул кодыг өөрчлөхгүйгээр шилжихэд хялбар болгодог.
Bun 1.0 суулгах
Bun 1.0-ээс эхлэх нь таныг хурдан ажиллуулах зорилготой энгийн процесс юм. Bun нь macOS, Linux, тэр ч байтугай Linux-д зориулсан Windows дэд систем (WSL) зэрэг бүх үйлдлийн системийг дэмжих боломжтой. Нэг командын мөрийн скриптийг ажиллуулах нь суулгах процедурыг дуусгана. Bun 1.0-ийг хэрхэн суулгах талаар дараах байдалтай байна.
Бүгд бэлэн! Бун ертөнцийг судалж эхлэхийн тулд та зөвхөн нэг өгүүлбэр бичих хэрэгтэй. Бан анхнаасаа хөгжүүлэгчийн туршлагыг гөлгөр болгохын төлөө зүтгэж байгаа нь угсралтын энгийн байдлаас харагдаж байна.
Bun 1.0 ашиглахын давуу тал
Bun 1.0 нь сервер талын өндөр гүйцэтгэлтэй програмуудын хувьд тоглоомыг бүрэн өөрчилдөг. Энэ нь секундэд маш олон тооны HTTP хүсэлтийг боловсруулах хүчин чадалтай тул хурд, хоцролт багатай програмуудад тохиромжтой сонголт юм.
Хамааралтай байдлын менежментийн ерөнхий нарийн төвөгтэй үйл явцыг Bun илүү хялбар болгосон тул энэ нь зөвхөн гүйцэтгэлийн тухай биш юм.
Таны төслийн хамаарлыг өөрийн уугуул багц менежерээр хялбархан удирдах боломжтой бөгөөд энэ нь npm, Yarn гэх мэт ердийн сонголтуудаас хурдан юм.
Bun-ийн дээд зэргийн TypeScript-ийн дэмжлэг нь түүний давуу тал болох өөр нэг талбар юм. Хэрэв та TypeScript сонирхогч бол Bun танд хэрхэн гүйцэтгэхийг зөвшөөрөх нь танд таалагдах болно .ts
болон .tsx
файлуудыг өөрчлөхгүйгээр tsconfig.json
тохиргоо.
Үүний үр дүнд, таны хөгжүүлэлтийн ажлын урсгал илүү оновчтой, үр дүнтэй байх бөгөөд нэмэлт дамжуулагч эсвэл тохиргоо шаардлагагүй болно.
хязгаарлалт
Bun 1.0 нь маш олон давуу талтай боловч хаана дутуу байж болохыг мэдэх нь бас чухал юм.
Нэг сул тал нь JavaScript-ийн орчинг саяхан нэвтрүүлсэн бөгөөд энэ нь Node.js болон Deno зэрэг туршлагатай өрсөлдөгчидтэй адил олон нийтийн дэмжлэг эсвэл номын сангийн экосистем хараахан байхгүй гэсэн үг юм.
Цаашилбал, Bun нь Node.js-ийг шууд орлохыг эрмэлздэг ч зарим захын нөхцөл байдал эсвэл Node.js модулиуд бүрэн нийцэхгүй байж болно. Энэ нь хөгжүүлэгчид төвөгтэй, хуучин Node.js програмуудыг Bun руу шилжүүлэхэд хүндрэл учруулж болзошгүй юм.
Дүгнэлт
Дүгнэж хэлэхэд, Bun 1.0 нь хурд, энгийн байдал, хөгжүүлэгчийн иж бүрэн хэрэгслийн багцыг хослуулсан гайхалтай JavaScript-н ажиллах цаг болж байна.
Энэ нь өндөр хүчин чадалтай сервер талын програмуудыг удирдах чадвартай, мөн хамаарлын менежментэд хялбаршуулсан арга барил, TypeScript-ийн нэгдүгээр зэрэглэлийн нийцтэй байдлаас шалтгаалан анхаарал татахуйц сонголт юм.
Bun нь олон хэрэгслийг удирдахаас залхсан эсвэл илүү үр дүнтэй ажиллах цаг хайж байгаа хөгжүүлэгчдэд тавтай морилно уу.
Түүний дизайн, функциональ байдал нь суулгац, байршуулалтын туршид хөгжүүлэгчийн туршлагыг сайжруулахад тууштай байдгийг харуулж байна.
хариу үлдээх