Introducing DotNet.SystemCollections.Analyzers – The focused generalist

நான் கடந்த 7 ஆண்டுகளாக டெவலப்பராக இருக்கிறேன். அந்த நேரத்தில் நான் நிறைய குறியீடு மதிப்புரைகளை சந்தித்துள்ளேன். C# மூலம் நல்ல மென்பொருள் பொறியியல் நடைமுறைகளைக் கற்க எனது நேரத்தைச் செலவிட்டுள்ளேன். கடந்த ஆண்டு, செயல்திறன் பொறியியல் மீதான என் ஆர்வம் தொடங்கியது.

எனக்கு எப்போதும் முக்கியமான ஒரு விஷயம், திரும்பக் கொடுக்க முடியும். தொழில்நுட்ப சமூகம் மிகவும் திறந்த நிலையில் உள்ளது மற்றும் நான் இன்று இருக்கும் இடத்திற்கு என்னை கொண்டு வருவதற்கு அவசியமானது. நானும் இன்னொருவருக்கு உதவ விரும்பினேன். கடந்த ஆண்டு என் மனதில் ஒரு யோசனை தோன்றியது. டெவலப்பர்களின் சாத்தியமான செயல்திறன் சிக்கல்களுக்கு உதவ நான் ஒரு வழியைக் கண்டுபிடிக்க விரும்பினேன். வடிவமைப்பு நேரத்தில் அறிவிக்கப்படுவது மென்பொருள் குழுவிற்கு பயனுள்ளதாக இருக்கும்.

எனது சக ஊழியருடன், நான் இந்த யோசனையில் வேலை செய்ய ஆரம்பித்தேன். கடந்த ஜனவரியில், நாங்கள் ஒரு நல்ல அணுகுமுறையைக் கொண்டு வந்து, அதில் வேலை செய்தோம் Hypertherm Inc இன் முதல் உள் ஹேக்கத்தான். டெவலப்பர்களின் படைப்பாற்றலைத் தூண்டுவதற்கு நிறுவனத்தில் நான் முன்னின்று நடத்திய ஒன்றுதான் உள் ஹேக்கத்தான் திட்டம்.

மெட்டா புரோகிராமிங்கை மேம்படுத்துவதன் மூலம் மற்றும் ரோஸ்லின் தொகுப்பாளர், எங்களால் ஒரு வேலை தீர்வைப் பெற முடிந்தது. சந்திக்கவும் உங்கள் புதிய பகுப்பாய்வி நூலகம் – .NET System.Collections Analyzers! மூல குறியீடு கிடைக்கும் கிட்ஹப் MIT உரிமத்தின் கீழ்.

பகுப்பாய்வுக்கான சில எடுத்துக்காட்டுகள்

IList இல் Last() ஐப் பயன்படுத்தி பகுப்பாய்வு செய்தல்
ஒரு IList இல் ElementAt ஐப் பயன்படுத்தி பகுப்பாய்வு செய்தல்
IEnumerable இல் தனித்தன்மையைப் பயன்படுத்தி பகுப்பாய்வு செய்தல்
பட்டியலில் உள்ளவற்றைப் பயன்படுத்தி பகுப்பாய்வு செய்தல்

நூலகத்தின் குறிக்கோள்கள் என்ன?

இந்த நூலகத்தின் நோக்கம் .NET ஐப் பயன்படுத்தி மென்பொருள் உருவாக்குநர்களை மேம்படுத்துவதாகும். சிறந்த நடைமுறைகளை மேம்படுத்துவது தரம் அல்லது செயல்திறன் கண்ணோட்டத்தில் வித்தியாசத்தை ஏற்படுத்தும். System.Linq இல் காணப்படும் IEnumerable அல்லது நீட்டிப்பு முறைகள் போன்ற சேகரிப்புகளில் காணப்படும் வகைகளின் பயன்பாடு பற்றிய சிக்கல்களை நூலகம் சுட்டிக்காட்ட விரும்புகிறது. மைக்ரோ ஆப்டிமைசேஷன்களின் மூலம் சிறந்த செயல்திறன் முடிவுகளை எடுக்க டெவலப்பர்களுக்கு உதவ இந்தக் கருவி இங்கே உள்ளது.

மற்றொரு குறியீடு பகுப்பாய்வு நூலகம் ஏன்?

.NET க்கு பல குறியீடு பகுப்பாய்வு நூலகங்கள் உள்ளன, ஆனால் அவை பட்டியல் போன்ற தரவு கட்டமைப்புகளை எவ்வாறு பயன்படுத்த வேண்டும் என்பதில் கவனம் செலுத்துவதில்லை. கட்டமைப்புகள் டெவலப்பர்கள் தங்கள் வணிகத்தில் நேர்மறையான தாக்கத்தை உருவாக்க உதவும் பயனுள்ள கருவிகள். அந்த விதிக்கு .NET விதிவிலக்கல்ல. பிரச்சனை என்னவென்றால், நீங்கள் எல்லா இடங்களிலும் ஒரு பட்டியலைப் பயன்படுத்த முடியும் என்றாலும், நீங்கள் அதன் APIகளுடன் பழகிவிட்டீர்கள் என்று அர்த்தம் இல்லை. ஒவ்வொரு சேகரிப்பும் வெவ்வேறு நோக்கத்திற்காக சேவை செய்கின்றன. உங்கள் கருவிப்பெட்டியில் என்ன இருக்கிறது மற்றும் அவற்றைப் பயன்படுத்த சிறந்த நேரம் எப்போது என்பதை அறிவது ஒரு வித்தியாசத்தை ஏற்படுத்துகிறது.

தற்போது என்ன பகுப்பாய்வு கிடைக்கிறது?

களஞ்சியத்தில் செயல்திறன் மற்றும் தர உணர்திறன் பகுப்பாய்விகள் இரண்டையும் நீங்கள் கண்டறிய முடியும். ஆவணங்கள் பிரிவில் நீங்கள் மேலும் படிக்கலாம் திட்டம். முன்பு குறிப்பிட்டபடி, திட்டம் இன்னும் ஒரு PoC. எதிர்காலத்தில் கருவியில் தொடர்ந்து பணியாற்றுவோம்.

எதிர்காலத்தில் சாலை வரைபடத்தில் என்ன இருக்கிறது?

பணியின் மிக முக்கியமான திசைகள் இங்கே:

  • தவறான நேர்மறைகளுடன் சிக்கல்களைச் சரிசெய்யவும்
  • எந்த பகுப்பாய்விகள் பயன்படுத்தப்படும், எது பயன்படுத்தப்படாது, ஏன் என்று குழுவிற்குள் விவாதிக்கவும்
  • குறியீடு பகுப்பாய்வை உருவாக்குவதைத் தொடரவும்
  • குறியீட்டை சரிசெய்யும் வழங்குநர்களின் தொகுப்பை வழங்கவும், இதனால் நூலகம் குறியீட்டை மறுசீரமைக்க உதவும்

கருத்து வரவேற்கப்படுகிறது!

இது ஒரு திறந்த மூலக் கருவி! கருத்து வரவேற்கத்தக்கது மற்றும் திட்டத்திற்கு PR களை சமர்ப்பிக்க சமூகத்தை ஊக்குவிக்கிறோம்.

அடுத்த முறை வரை,

கெவின்

Leave a Comment