நிரலாக்கத்தின் ஆரம்ப நாட்களில் ஜாவாஸ்கிரிப்ட் தொடங்கியது மற்றும் டெவலப்பர்கள் பல ஆண்டுகளாக அதைப் பயன்படுத்தி வருகின்றனர் என்பதை நாம் அனைவரும் அறிவோம். ஆனால், ஜாவாஸ்கிரிப்ட் சூழல் சில நேரங்களில் செல்ல ஒரு பிரமை போல் உணரலாம்.
பல்வேறு இயக்க நேரங்கள், நூலகங்கள் மற்றும் கட்டமைப்புகள் இருப்பதால், டெவலப்பர்கள் பொதுவாக விருப்பங்கள் மற்றும் வர்த்தக பரிமாற்றங்களால் முடங்கி விடுகின்றனர்.
விரைவானது மட்டுமல்ல, டெவலப்பர்களுக்கு உதவிகரமாகவும் இருக்கும் இயக்க நேர சூழலுக்கான தேவை மிகவும் அவசரமான சவால்களில் ஒன்றாகும்.
பன் 1.0, ஒரு புரட்சிகரமான ஜாவாஸ்கிரிப்ட் இயக்க நேரம், ஜாவாஸ்கிரிப்ட் பயன்பாடுகளை உருவாக்கி விநியோகிக்கும் முறையை மாற்ற முயல்கிறது.
வேகம் மற்றும் செயல்திறனுக்காக கீழே இருந்து மேலே கட்டப்பட்டதால், பன் செயல்திறன் மற்றும் பயன்பாட்டினை ஒரு சிறப்பு இணைவை வழங்குகிறது.
இது மற்றொரு இயக்க நேரம் அல்ல; இது ஒரு பண்ட்லர், டெஸ்ட் ரன்னர் மற்றும் பேக்கேஜ் மேனேஜ்மென்ட் உள்ளிட்ட முழுமையான கருவிப்பெட்டியாகும்.
இவ்வளவு பிஸியான பகுதியில் ஏன் பன் கவனம் செலுத்த வேண்டும்?
மாட்யூல் ரெசல்யூஷன் பைத்தியம் மற்றும் CommonJS மற்றும் ESM ஐச் சுற்றியுள்ள சில நேரங்களில் குழப்பமான விதிமுறைகள் போன்ற டெவலப்பர்கள் சந்திக்கும் சில எரிச்சலூட்டும் சிக்கல்களைத் தீர்ப்பதன் மூலம் Bun தொடங்குகிறது.
இந்த சிக்கலை மறுகட்டமைப்பதன் மூலம் இது மிகவும் எளிமையான மற்றும் உள்ளுணர்வு வளர்ச்சி அனுபவத்தை வழங்குகிறது.
கூடுதலாக, Bun சிறந்த செயல்திறனுக்காக வடிவமைக்கப்பட்டுள்ளது, மேலும் இது அதன் குறிப்பிடத்தக்க HTTP கோரிக்கை செயலாக்க அம்சங்களுடன் Node.js மற்றும் Deno போன்ற நன்கு அறியப்பட்ட போட்டியாளர்களை விட சிறப்பாக செயல்படுகிறது.
கூடுதலாக, இது Node.js க்கு டிராப்-இன் மாற்றாகப் பயன்படுத்தப்படலாம், இது அணிகள் மாற்றத்தை எளிதாக்க உதவுகிறது.
இருப்பினும், ஒரு கோஜெண்ட் டெவலப்பர் அனுபவத்திற்கு (DX) பன் முக்கியத்துவம் கொடுத்தது, அதற்கு ஒரு ஷாட் கொடுக்க மிகவும் உறுதியான வாதமாக உள்ளது.
உங்கள் திட்டத்தின் முழு ஆயுட்காலம், மேம்பாடு முதல் சோதனை வரை வரிசைப்படுத்தல் வரை முக்கியமானது, வெறுமனே குறியீட்டை உருவாக்கும் செயல் அல்ல.
ஒருங்கிணைந்த கருவிப்பெட்டியை வழங்குவதன் மூலம் ஜாவாஸ்கிரிப்ட் மேம்பாட்டை அடிக்கடி பாதிக்கும் துண்டு துண்டான செயல்முறைகளை அகற்ற பன் உறுதியளிக்கிறார்.
எனவே, இந்த இடுகையில், Bun 1.0, அதன் முக்கிய அம்சங்கள், அதை எவ்வாறு பயன்படுத்துவது மற்றும் இன்னும் பலவற்றை முழுமையாகப் பார்ப்போம்.
புரிந்துணர்வு பன் 1.0
பன் 1.0 என்பது ஒரு புரட்சிகரமான ஜாவாஸ்கிரிப்ட் இயக்க நேரமாகும், இது டெவலப்பரின் செல்ல வேண்டிய கருவியாக செயல்படுகிறது.
ஒரு பண்ட்லர், டெஸ்ட் ரன்னர் மற்றும் பேக்கேஜ் மேனேஜ்மென்ட் ஆகியவற்றை நேரடியாக அதன் சுற்றுச்சூழல் அமைப்பில் ஒருங்கிணைப்பதன் மூலம் பன் உங்கள் குறியீட்டை செயல்படுத்துவதற்கு மேலேயும் அதற்கு அப்பாலும் செல்கிறது.
உங்கள் ஜாவாஸ்கிரிப்ட் திட்டங்களுக்கு சுவிஸ் ராணுவ கத்தியை வைத்திருப்பதற்கு ஒப்பிடக்கூடிய சேவையை இது வழங்குகிறது. இது விரைவாக-மிக விரைவாகச் செல்லும் நோக்கம் கொண்டது.
இது ஜிக் இல் செயல்படுத்துவதன் மூலம் வேகம் மற்றும் விரிவாக்கப்பட்ட நேட்டிவ்-ஸ்பீடு செயல்பாட்டிற்காக வடிவமைக்கப்பட்டது. இது சஃபாரியைக் கட்டுப்படுத்தும் இயந்திரமான ஜாவாஸ்கிரிப்ட்கோரில் கட்டமைக்கப்பட்டுள்ளது.
Node.js மற்றும் Deno போன்ற கருவிகளிலிருந்து Bun எவ்வாறு வேறுபடுகிறது என்று இப்போது நீங்கள் கேட்கலாம். இப்போது அதை ஆரம்பிக்கலாம்.
Node.js க்கு ஒரு டிராப்-இன் மாற்றாகச் செயல்படுவதே இதன் முதன்மைக் குறிக்கோளாகும், இதில் Node இன் மாட்யூல் ரெசல்யூஷன் முறை மற்றும் "fs" மற்றும் "பாத்" போன்ற உள்ளமைக்கப்பட்ட மாட்யூல்களுடன் இணக்கம் உள்ளது.
இதன் காரணமாக, டெவலப்பர்கள் தங்களின் தற்போதைய Node.js ப்ராஜெக்ட்களை வியர்வை இல்லாமல் Bunக்கு மாற்றலாம். பனின் செயல்திறன், அது உண்மையில் ஜொலிக்கிறது.
இது Node.js மற்றும் Deno ஐ விட HTTP கோரிக்கைகளை சிறப்பாக கையாளும் என்பதால் உயர் செயல்திறன் கொண்ட பயன்பாடுகளுக்கு இது ஒரு சிறந்த தேர்வாகும்.
டெவலப்பர் அனுபவத்திற்கான (DX) பன் அணுகுமுறை மற்றொரு வித்தியாசம். Node.js மற்றும் Deno போன்றவற்றைப் போலல்லாமல், பன் இந்த திறன்களை பூர்வீகமாக வழங்குகிறது, இது தொகுப்பு மேலாண்மை மற்றும் சோதனைக்கு மூன்றாம் தரப்பு தீர்வுகள் தேவைப்படும் துண்டு துண்டான கருவித்தொகுப்புகளை வழங்குகிறது.
பல கருவிகள் மற்றும் நூலகங்களை ஒன்றாக இணைக்க வேண்டிய தேவையை நீக்கும் இந்த ஒத்திசைவான DX காரணமாக டெவலப்பர்கள் குறியீட்டில் அதிக கவனம் செலுத்த முடியும் மற்றும் உள்ளமைவில் குறைவாக கவனம் செலுத்த முடியும்.
இது செயல்திறன் மற்றும் பயன்பாட்டினைச் சமாளிக்கும் ஒரு விரிவான தீர்வாகும், நெரிசலான ஜாவாஸ்கிரிப்ட் துறையில் மற்றொரு இயக்க நேரத்தை விட ஜாவாஸ்கிரிப்ட் இயக்க நேரம் என்னவாக இருக்கும் என்பதற்கான புதிய பட்டியை அமைக்கிறது.
முக்கிய அம்சங்கள்
1. வேகம்
வேகத்திற்கு வரும்போது பன் 1.0 மிகவும் விரைவானது. ஏற்கனவே வேகத்திற்காக வடிவமைக்கப்பட்ட ஜாவாஸ்கிரிப்ட்கோர் எஞ்சினுடன் ஜிக் மூலம் நேட்டிவ்-ஸ்பீட் திறனைச் சேர்ப்பதன் மூலம் பன் செயல்திறன் மேம்படுத்தலை ஒரு படி மேலே கொண்டு செல்கிறது.
புள்ளிவிவரங்கள் தங்களைப் பற்றி பேசுகின்றன: வரையறைகளின்படி.
பன் ஒரு வினாடிக்கு 66,706 HTTP கோரிக்கைகளை செயல்படுத்துகிறது, Node.js மற்றும் Deno ஆகியவை முறையே ஒரு நொடிக்கு 13,967 மற்றும் 32,921 கோரிக்கைகளுடன் பின்தங்கியுள்ளன.
இது செயல்திறனில் ஒரு சிறிய ஊக்கம் அல்ல; இது ஒரு குவாண்டம் ஜம்ப் ஆகும், இது நிஜ-உலகப் பயன்பாடுகளை, குறிப்பாக அதிக செயல்திறன் மற்றும் குறைந்த தாமதத்தைக் கோரும் பயன்பாடுகளை கணிசமாக மாற்றும்.
2. நேர்த்தியான APIகள்
பன் 1.0 அழகான மற்றும் மிகவும் உகந்த APIகளின் தொகுப்பை வழங்குகிறது, இது விரைவானதுடன் வழக்கமான செயல்பாடுகளை எளிதாக்குகிறது.
நீங்கள் HTTP சேவையகத்தைத் தொடங்குகிறீர்களா, கோப்புகளைப் படிக்கிறீர்களா மற்றும் எழுதுகிறீர்களா அல்லது கடவுச்சொல்லை ஹாஷிங் செய்கிறீர்களா என்பதை பன் நீங்கள் கவனித்துள்ளீர்கள்.
API கள் எளிமையான அதே சமயம் பயனுள்ளவையாக வடிவமைக்கப்பட்டுள்ளன, அடிப்படைச் செயல்பாடுகளுக்கு வாய்மொழி குறியீடு அல்லது பிற நூலகங்களின் தேவையை நீக்குகிறது.
உதாரணமாக, அழைப்பு Bun.serve()
ஒரு HTTP சேவையகத்தைத் தொடங்குவதற்கு, எந்த நேரத்திலும் உங்களை இயக்க முடியும். பன் அதன் எளிமை மற்றும் செயல்திறனுக்கான முக்கியத்துவம் காரணமாக தனித்து நிற்கிறது, இது விரைவானது மட்டுமல்ல, டெவலப்பர்-நட்பாகவும் இருக்கிறது.
3. ஒருங்கிணைந்த டெவலப்பர் அனுபவம்
தடையற்ற வளர்ச்சி அனுபவத்தை (DX) வழங்குவதில் Bun 1.0 இன் கவனம் உண்மையில் அதைத் தனித்து நிற்கிறது. பன், துண்டாக்கப்பட்ட கருவித்தொகுப்புகளை வழங்கும் பிற இயக்க நேரங்களுக்கு மாறாக, நேட்டிவ் பேக்கேஜ் மேனேஜர், டெஸ்ட் ரன்னர் மற்றும் பண்ட்லர் ஆகியவை அடங்கும்.
இதன் விளைவாக, பல்வேறு கருவிகளை ஏமாற்றுதல் அல்லது ஒருவருக்கொருவர் இணக்கமாக செயல்பட மூன்றாம் தரப்பு தீர்வுகளை அமைக்கும் சுமையிலிருந்து நீங்கள் விடுபடுகிறீர்கள்.
பெட்டிக்கு வெளியே, உங்களுக்குத் தேவையான அனைத்தும் உள்ளன. இணக்கமாக இருப்பதுடன், தொகுப்பு மேலாளர் npm, pnpm மற்றும் நூலை விட விரைவானது.
உங்கள் சோதனைகளை விரைவாக இயக்குவதுடன், சோதனை ஓட்டத்தில் ஜெஸ்ட்-பாணி தொடரியல் உள்ளது, இது உங்கள் குறியீட்டை மாற்றாமல் மாற்றுவதை எளிதாக்குகிறது.
பன் 1.0 இன் நிறுவல்
Bun 1.0 இல் தொடங்குவது என்பது ஒரு எளிய செயல்முறையாகும், இது உங்களை விரைவாக இயக்கும் நோக்கத்துடன் உள்ளது. MacOS, Linux மற்றும் Windows Subsystem for Linux (WSL) உட்பட அனைத்து இயக்க முறைமைகளையும் Bun ஆதரிக்க முடியும். ஒற்றை கட்டளை வரி ஸ்கிரிப்டை இயக்குவது நிறுவல் செயல்முறையை நிறைவு செய்கிறது. Bun 1.0 ஐ எவ்வாறு நிறுவுவது என்பது பின்வருமாறு:
அனைத்தும் முடிந்தது! பன் பிரபஞ்சத்தை ஆராய்வதற்கு நீங்கள் ஒரு வாக்கியத்தை மட்டுமே எழுத வேண்டும். ஆரம்பத்தில் இருந்தே மென்மையான டெவலப்பர் அனுபவத்தை வழங்குவதில் பன்னின் அர்ப்பணிப்பு நிறுவலின் எளிமையில் காணப்படுகிறது.
பன் 1.0 ஐப் பயன்படுத்துவதன் நன்மைகள்
பன் 1.0 உயர் செயல்திறன் கொண்ட சர்வர் பக்க பயன்பாடுகளின் அடிப்படையில் விளையாட்டை முற்றிலும் மாற்றுகிறது. வினாடிக்கு அதிவேகமான எண்ணிக்கையிலான HTTP கோரிக்கைகளைச் செயல்படுத்தும் திறன் காரணமாக வேகமும் குறைந்த தாமதமும் அவசியமான பயன்பாடுகளுக்கு இது சரியான விருப்பமாகும்.
சார்பு மேலாண்மையின் பொதுவாக சிக்கலான செயல்முறை பன் மூலம் எளிமைப்படுத்தப்பட்டுள்ளது, எனவே இது சுத்த செயல்திறன் மட்டுமல்ல.
npm மற்றும் Yarn போன்ற வழக்கமான தேர்வுகளை விட விரைவானது, உங்கள் திட்டத்தின் சார்புகளை அதன் சொந்த தொகுப்பு நிர்வாகி மூலம் எளிதாக நிர்வகிக்க முடியும்.
Bun இன் உயர்தர டைப்ஸ்கிரிப்ட் ஆதரவு அது சிறந்து விளங்கும் மற்றொரு பகுதியாகும். நீங்கள் டைப்ஸ்கிரிப்ட் ஆர்வலராக இருந்தால், பன் உங்களை எவ்வாறு இயக்க அனுமதிக்கிறது என்பதை நீங்கள் விரும்புவீர்கள் .ts
மற்றும் .tsx
உங்கள் கோப்புகளை மாற்றாமல் tsconfig.json
அமைப்புகள்.
இதன் விளைவாக, உங்கள் மேம்பாடு பணிப்பாய்வு மிகவும் நெறிப்படுத்தப்பட்டதாகவும் பயனுள்ளதாகவும் இருக்கும் மேலும் கூடுதல் டிரான்ஸ்பைலர்கள் அல்லது அமைப்புகள் எதுவும் தேவைப்படாது.
வரம்புகள்
பன் 1.0 பல நன்மைகளைக் கொண்டுள்ளது, ஆனால் அது எங்கு குறையும் என்பதை அடையாளம் காண்பதும் முக்கியம்.
ஜாவாஸ்கிரிப்ட் சூழலுக்கான அதன் சமீபத்திய அறிமுகம் ஒரு குறையாக இருக்கும், அதாவது Node.js மற்றும் Deno போன்ற அனுபவமுள்ள போட்டியாளர்கள் கொண்டிருக்கும் வலுவான சமூக ஆதரவு அல்லது நூலக சுற்றுச்சூழல் அமைப்பு இன்னும் இல்லை.
மேலும், பன் Node.js க்கு நேரடி மாற்றாக இருக்க முயற்சித்தாலும், சில விளிம்பு சூழ்நிலைகள் அல்லது குறிப்பிட்ட Node.js தொகுதிகள் முற்றிலும் ஒத்துப்போகவில்லை. சிக்கலான, பழைய Node.js ஆப்ஸை Bunக்கு மாற்றுவது டெவலப்பர்களுக்கு இது கடினமாகிவிடும்.
தீர்மானம்
முடிவில், வேகம், எளிமை மற்றும் விரிவான டெவலப்பர் கருவிப்பெட்டியை இணைக்கும் ஜாவாஸ்கிரிப்ட் இயக்க நேரத்தை Bun 1.0 நிரூபிக்கிறது.
உயர் செயல்திறன் கொண்ட சர்வர் பக்க பயன்பாடுகளை நிர்வகிப்பதற்கான அதன் திறமை மற்றும் சார்பு மேலாண்மை மற்றும் முதல்-விகித டைப்ஸ்கிரிப்ட் இணக்கத்தன்மைக்கான அதன் எளிமைப்படுத்தப்பட்ட அணுகுமுறை காரணமாக இது ஒரு குறிப்பிடத்தக்க விருப்பமாகும்.
பல கருவிகளை நிர்வகிப்பதில் சோர்வடைந்த டெவலப்பர்களுக்கு அல்லது மிகவும் பயனுள்ள இயக்க நேரத்தை தேடுவதற்கு Bun ஒரு வரவேற்பு விருப்பத்தை வழங்குகிறது.
அதன் வடிவமைப்பு மற்றும் செயல்பாடு நிறுவல் மற்றும் வரிசைப்படுத்தல் முழுவதும் டெவலப்பர் அனுபவத்தை மேம்படுத்துவதற்கான அதன் அர்ப்பணிப்பை நிரூபிக்கிறது.
ஒரு பதில் விடவும்