உரையை snake_case ஆக மாற்றுதல் underscore_case இலவசம் ஆன்லைன் பாதுகாப்பு
ஒரு வரியை ஒட்டினால் உடனே snake_case இல் படிக்கலாம். எல்லாம் உங்கள் உலாவியிலேயே நடக்கிறது — நீங்கள் எழுதுவது எங்கும் அனுப்பப்படுவதில்லை — விதிகள் ஆங்கிலத்தினுடையவை அல்ல, இந்தப் பக்கத்தின் மொழியுடையவை.
இதை வேறு விதமாக எழுதுங்கள்
எதுவும் பதிவேற்றப்படுவதில்லை
அதே வரி, ஏழு எழுத்து முறைகளிலும்
| எழுத்து முறை | அதே வரி, அந்த முறையில் |
|---|---|
| பெரிய எழுத்து | CRÈME BRÛLÉE 2 பேருக்கு — STRASSE 17, FOOBAR |
| சிறிய எழுத்து | crème brûlée 2 பேருக்கு — straße 17, foobar |
| Title Case | Crème Brûlée 2 பேருக்கு — Straße 17, Foobar |
| snake_case | crème_brûlée_2_ப_ர_க_க_straße_17_foo_bar |
| kebab-case | crème-brûlée-2-ப-ர-க-க-straße-17-foo-bar |
| camelCase | crèmeBrûlée2பரககStraße17FooBar |
| ஒரு URL முகவரி | creme-brulee-2-ப-ர-க-க-strasse-17-foobar |
இந்த வடிவங்கள் எங்கிருந்து வந்தன
பெரிய எழுத்தும் சிறிய எழுத்தும் ஒரு காலத்தில் வெவ்வேறு இரு எழுத்துமுறைகள். பெரிய எழுத்துகள் ரோமானியவை, உளியால் கல்லில் செதுக்கப்பட்டவை; சிறிய எழுத்துகள் கரோலிஞ்சியச் சிற்றெழுத்திலிருந்து இறங்கியவை — தோற்சுவடியின் மேல் விரைந்தோடிய எழுதுகோல் வடித்தவை. அச்சுப் பணியாளர்கள் இரண்டையும் தனித்தனிப் பெட்டிகளில் வைத்திருந்தனர் — மேல் பெட்டியும் கீழ் பெட்டியும் — பெட்டிகள் மறைந்த பின்னும் அப்பெயர்கள் நெடுங்காலம் நின்றன. நிரலாக்க வடிவங்கள் மிக இளையவை; ஒரே ஒரு சிக்கலைத் தீர்க்கவே கண்டுபிடிக்கப்பட்டவை: ஒரு பெயரில் இடைவெளி இருக்கக்கூடாது. snake_case ஆரம்பகால C-இலிருந்து, camelCase ஸ்மால்டாக்கிலிருந்து, kebab-case லிஸ்பிலிருந்து, முகவரியின் slug — இடைவெளிகளும் ஒலிக்குறிகளும் அனுமதிக்கப்படாத ஒரு முகவரிக்குள் மனிதர் படிக்கும் தலைப்பை வைக்க வேண்டிய தேவையிலிருந்து.
இவற்றை எங்கே சந்திப்பீர்கள்
ஒவ்வொரு சொல்லின் முதல் எழுத்தையும் பெரிதாக்குவது தலைப்புகளுக்கும் நூல் அட்டைகளுக்கும் உரியது; தொடக்க எழுத்தை மட்டும் பெரிதாக்குவது மற்ற ஏறத்தாழ எல்லாவற்றுக்கும், நாளுக்கு நாள் இடைமுகங்களுக்கும் — ஏனெனில் அது விரைவாகப் படிக்கப்படுகிறது. snake_case தரவுத்தள நெடுவரிசைகளுக்கும் பைத்தான் மாறிகளுக்கும் பெயரிடுகிறது; camelCase ஜாவாஸ்கிரிப்ட் மாறிகளுக்கும் ஜாவா முறைகளுக்கும்; kebab-case CSS வகுப்புகளுக்கும் வலைத் திட்டக் கோப்புப் பெயர்களுக்கும். slug என்பது ஒரு கட்டுரையின் தலைப்பை அதன் முகவரியின் கடைசிப் பகுதியாக மாற்றுவது; இங்குள்ள மாற்றங்களுள் தேடுபொறிகள் படிப்பது அது ஒன்றே.
அடிக்கடி கேட்கப்படும் கேள்விகள்
பெரிய எழுத்துக்கு மாற்றும்போது எழுத்துகளின் எண்ணிக்கை ஏன் சில வேளை மாறுகிறது?
ஏனெனில் எழுத்தின் பெரிது-சிறிது என்பது மொழியின் பண்பு, எழுத்துருவின் பண்பு அல்ல. ஜெர்மன் ß பெரிய எழுத்தில் SS ஆகிறது; ஓர் எழுத்து இரண்டாகிறது. துருக்கியில் புள்ளியுடைய i-யும் புள்ளியற்ற ı-வும் உண்டு; i-இன் பெரிய வடிவம் I அல்ல, İ — இங்கே தவறினால் ஒரு துருக்கியச் சொல் வேறொரு சொல்லாகிவிடும். இங்குள்ள மாற்றங்கள் அந்தந்தப் பக்கத்தின் மொழி விதிகளைப் பின்பற்றுகின்றன; அதனால்தான் ஒரே உள்ளீடு துருக்கியப் பக்கத்திலும் ஆங்கிலப் பக்கத்திலும் வெவ்வேறு விடையைத் தரக்கூடும்.
slug ஏன் ஒலிக்குறிகளையும் நிறுத்தற்குறிகளையும் நீக்குகிறது?
ஏனெனில் ஒரு முகவரி, செய்தியில் நகலெடுக்கப்படுவதையும், காகிதத்தில் அச்சிடப்படுவதையும், கையால் மீண்டும் தட்டச்சு செய்யப்படுவதையும் தாங்க வேண்டும். ஒலிக்குறியுள்ள எழுத்துகள் இன்றைய முகவரியில் செல்லுபடியாகும்; ஆனால் நகலெடுக்கும்போது விழுக்காட்டுக் குறியீடாக மாறி, படிக்கத்தக்க முகவரி ஒரு குறியீட்டு வரிசையாகிவிடும். அவற்றை எளிய எழுத்துகள், இலக்கங்கள், இணைப்புக்கோடுகள் வரை குறைப்பது, முகவரியைப் படிக்கத்தக்கதாகவும், பகிரத்தக்கதாகவும், தோன்றும் இடமெங்கும் ஒரே மாதிரியாகவும் வைத்திருக்கிறது.
விடை துல்லியமானதா?
இரு அலகுகளும் முழு எண்களால் ஒன்றையொன்று வரையறுக்கும் இடத்தில் ஆம் — பக்கம் அதை எண்ணுக்கு மேலே சொல்கிறது, வட்டமிடல் என்பது எத்தனை இலக்கங்கள் காட்டப்படுகின்றன என்பதில் மட்டுமே. விகிதத்துக்கு முடிவுறு தசமம் இல்லாத இடத்தில், பக்கம் பன்னிரண்டு கணிசமான இலக்கங்களைக் காட்டி, தொடர்பு தோராயமானது என்று சொல்கிறது — வேறு மாதிரி நடிப்பதில்லை.
நான் தட்டச்சு செய்வது என் சாதனத்தை விட்டு வெளியேறுகிறதா?
இல்லை. கணக்கு உங்கள் உலாவியிலேயே நடக்கிறது; எதுவும் பதிவேற்றப்படுவதில்லை, பதிவேற்ற ஒரு வழங்கியும் இல்லை. பக்கத்தை ஒருமுறை ஏற்றினால், இணையத்தை அணைத்தாலும் வேலை செய்யும்.
உரையை snake_case ஆக ஏன் மாற்றுகிறீர்கள்
ஒரு நிரலரால் ஒரு மாறிக்கு annual report total என்று பெயரிட முடியாது, ஏனெனில் ஒரு பெயரில் இடைவெளி இருக்கக் கூடாது. ஒரு தரவுத்தள நெடுவரிசையை Customer First Name என்று அழைக்க முடியாது. Final Draft (2).docx என்ற ஒரு கோப்பு விரைவில் அல்லது பின்னர் ஒரு நிரலை எரிச்சலூட்டும். வழியில் எங்கோ மனிதச் சொற்றொடர் ஒரே சொல்லாக மாற வேண்டும், பல சமூகங்கள் இறுதியாகத் தேர்ந்தெடுத்த வடிவம் snake_case: எல்லா எழுத்துகளும் சிறியவை, சொற்கள் அடிக்கோடுகளால் இணைக்கப்படுகின்றன, annual_report_total, customer_first_name, final_draft_2. உரையை snake_case ஆக மாற்றுவது என்பது எந்த நிலையிலுள்ள எந்தச் சொற்றொடரையும் எடுத்து ஒரே படியில் அந்த வடிவத்துக்கு மாற்றுவது.
ஒரு வரியை ஒட்டி snake_case இல் திரும்பப் படியுங்கள். மாற்றம் உங்கள் உலாவியில் நடக்கிறது, நீங்கள் தட்டச்சு செய்வது எங்கும் அனுப்பப்படுவதில்லை, விதிகள் ஆங்கிலத்தை அல்ல இந்தப் பக்கத்தின் மொழியைப் பின்பற்றுகின்றன. இது வரியைச் சொற்களாக வெட்டுகிறது, அவற்றைச் சிறிய எழுத்தாக்குகிறது, அடிக்கோடுகளுடன் இணைக்கிறது. ஏற்கெனவே camelCase இல் எழுதப்பட்ட ஒரு வரி அதன் பெரிய எழுத்துகளிலும் வெட்டப்படுகிறது, எனவே fooBar foo_bar ஆகிறது. அதன் பொருள் சரியாக என்ன, எது கைவிடப்படுகிறது, வெவ்வேறு மொழிகளின் சிக்கலான எழுத்துகளை இந்தப் பக்கம் எப்படிக் கையாளுகிறது, snake_case எங்கே மரபு எங்கே இல்லை, அவசரத்தில் உரையை snake_case ஆக மாற்றுபவர்களைச் சிக்க வைக்கும் பொறிகள் ஆகியவற்றைக் கீழே காண்பீர்கள்.
மாற்றம் என்ன செய்கிறது
வெட்டுதல், சிறிய எழுத்தாக்குதல், இணைத்தல்
இந்தப் பக்கம் முதலில் வரியைச் சொற்களாக வெட்டுகிறது. பிறகு ஒவ்வொன்றையும் சிறிய எழுத்தாக்கி அடிக்கோடுகளுடன் இணைக்கிறது. Crème brûlée for 2 — straße 17, fooBar என்ற வரி crème_brûlée_for_2_straße_17_foo_bar என்று திரும்ப வருகிறது. உச்சரிப்புக் குறிகள் வைக்கப்படுகின்றன, எண்கள் தனிச் சொற்களாக நிற்கின்றன, கோடும் காற்புள்ளியும் போய்விட்டன, fooBar இரண்டாக வெட்டப்பட்டுள்ளது, ஏனெனில் அதற்குள்ளுள்ள பெரிய எழுத்து ஓர் எல்லையைக் குறிக்கிறது.
வெட்டுகள் எங்கே விழுகின்றன
ஒரு சொல் எல்லை என்பது ஓர் இடைவெளி, ஒரு நிறுத்தற்குறி, ஒரு கோடு, ஒரு குறியீடு, அல்லது ஒரு சொல்லுக்குள் சிறிய எழுத்திலிருந்து பெரிய எழுத்துக்கான மாற்றம். எனவே customerFirstName என்ற சொற்றொடர், Customer First Name என்ற சொற்றொடர், customer-first-name என்ற சொற்றொடர் அனைத்தும் customer_first_name ஆகின்றன. அதுவே மாற்றத்தின் நடைமுறை வலிமை: அது கிட்டத்தட்ட எந்தத் தொடக்கப் புள்ளியையும் ஏற்கிறது, எப்போதும் அதே இடத்தை அடைகிறது.
முடிவை நகலெடுத்தல்
முடிவின் அருகிலுள்ள ஒரு பொத்தான் அதைக் கிளிப்போர்டுக்கு நகலெடுக்கிறது. பெயர் தேவைப்படும் திருத்தி, திட்டவரைவு அல்லது கோப்பு உரையாடலில் அதை ஒட்டுங்கள்.
மாற்றம் என்ன செய்யாது
அது நிறுத்தற்குறிகளை வைத்திருக்காது
காற்புள்ளிகளும் புள்ளிகளும் கோடுகளும் சொற்களுக்கு இடையிலான எல்லைகள், கொண்டு செல்ல வேண்டிய எழுத்துகள் அல்ல. ஒரு கோப்புப் பெயருக்கோ தரவுத்தள நெடுவரிசைக்கோ நீங்கள் விரும்புவது அதுவே, உரைநடைக்கு விரும்புவது அல்ல. நீங்கள் ஒரு வாக்கியத்தை இந்தப் பக்கத்தின் வழியாக ஓட்டினால், அது ஒரு வாக்கியமாக அல்ல ஒரு பெயராகத் திரும்ப வருகிறது, அசல் நிறுத்தற்குறிகள் போய்விடுகின்றன.
அது உச்சரிப்புக் குறிகளை நீக்காது
வரி அதன் உச்சரிப்பு எழுத்துகளை வைத்திருக்கிறது: crème_brûlée. பல அமைப்புகள் அவற்றை ஏற்கின்றன, சில ஏற்பதில்லை, அவற்றைக் கொண்ட ஒரு பெயர் பழைய கருவிகளில் சிக்கலை ஏற்படுத்தலாம். உங்களுக்குச் சாதாரண எழுத்துகள் தேவைப்பட்டால், இலத்தீன் எழுத்துகளிலிருந்து குறிகளை அகற்றும் URL slug பக்கத்தைப் பயன்படுத்துங்கள்.
பெயர் உங்கள் மொழியில் செல்லுபடியாகுமா என்று அது சரிபார்க்காது
நிரலாக்க மொழிகளுக்குத் தங்களுக்கே உரிய விதிகள் உள்ளன. சில ஓர் இலக்கத்தில் தொடங்கும் பெயரைத் தடை செய்கின்றன, சில class அல்லது return போன்ற சொற்களை ஒதுக்குகின்றன. இந்தப் பக்கம் உரையைச் சரியான வடிவப் பெயராக மாற்றுகிறது, நீங்கள் அதைப் பயன்படுத்தும் இடத்தில் பெயர் சட்டபூர்வமானது என்று நீங்களே உறுதிசெய்ய வேண்டும். 2 for 1 offer போன்ற ஒரு சொற்றொடர் 2_for_1_offer ஆகிறது, பெரும்பாலான மொழிகள் அதைத் தொடக்கத்திலேயே நிராகரிக்கும்.
மொழி முக்கியம்
இடைவெளிகள் இல்லாமல் எழுதப்படும் எழுத்து முறைகள்
சொற்களாக வெட்ட எல்லைகள் தேவை. சீனமும் ஜப்பானியமும் இடைவெளிகள் இல்லாமல் எழுதப்படுகின்றன, எனவே அந்த எழுத்து முறைகளிலுள்ள ஒரு வரி ஒரே சொல்லாகத் திரும்ப வருகிறது. இந்தப் பக்கம் ஊகித்த ஓர் இடத்தில் வெட்டுவதைவிட அப்படிச் சொல்வதையே விரும்புகிறது, ஏனெனில் ஒரு தவறான வெட்டு நம்பத்தகுந்ததாகத் தெரியும், ஆனால் தவறான பொருளைத் தரும் ஒரு பெயரை உருவாக்கும்.
துருக்கியமும் புள்ளியிட்ட i யும்
சிறிய எழுத்தாக்கம் பக்கத்தின் மொழியின் விதிகளைப் பின்பற்றுகிறது. துருக்கிய மொழியில், I இன் சிறிய வடிவம் புள்ளியற்ற ı, İ இன் சிறிய வடிவம் i. ஆங்கில விதிகளைப் பயன்படுத்தும் ஒரு மாற்றி சொற்களை மாற்றிவிடுகிறது. இந்தப் பக்கம் அது எழுதப்பட்டிருக்கும் மொழியைப் பின்பற்றுகிறது.
ஜெர்மனும் கூர்மையான s உம்
ஜெர்மன் ß ஏற்கெனவே ஒரு சிறிய எழுத்து, வைக்கப்படுகிறது, straße_17 போல. பெரிய எழுத்து STRASSE strasse ஆகத் திரும்ப வருகிறது, ஏனெனில் பெரிய எழுத்து வடிவம் அது ß இலிருந்தா இரு எழுத்துகளிலிருந்தா வந்தது என்பதை நினைவில் வைத்திருப்பதில்லை.
வலமிருந்து இடமான, இந்திய எழுத்து முறைகள்
அரபு, ஹீப்ரு, இந்திய எழுத்து முறைகளில் சொற்களுக்கு இடையே இடைவெளிகள் உள்ளன, பெரிய சிறிய எழுத்து வேறுபாடு இல்லை, எனவே இந்தப் பக்கம் அவற்றின் சொற்களை அடிக்கோடுகளால் இணைத்து, எழுத்துகளை இருந்தபடியே விடுகிறது. ஒரு குறிப்பிட்ட கருவி அத்தகைய பெயர்களை ஏற்குமா என்பது வேறு கேள்வி.
snake_case மரபாக உள்ள இடங்கள்
Python, Ruby
Python பாணி வழிகாட்டி செயல்கூறுகள், மாறிகள், கூறுகளுக்கு snake_case ஐப் பரிந்துரைக்கிறது, Ruby அதே பழக்கத்தைப் பின்பற்றுகிறது. நீங்கள் எதில் குறியீடு எழுதினாலும், உங்கள் பெயர்கள் கிட்டத்தட்ட எப்போதும் இந்த வடிவத்தில் இருக்கும்.
தரவுத்தளங்கள்
SQL இலுள்ள அட்டவணை, நெடுவரிசைப் பெயர்கள் பொதுவாக snake_case: customer_id, created_at, order_total. இது பெயர்களை மேற்கோளிட வேண்டிய தேவையைத் தவிர்க்கிறது, தரவுத்தள அமைப்புகளுக்கு இடையே பாதுகாப்பானது, அவற்றில் சில மேற்கோளற்ற பெயர்களை ஒரே வகை எழுத்தாக மடித்து camelCase ஐப் படிக்க முடியாத எழுத்து ஓட்டமாக்கிவிடும்.
தரவுக் கோப்புகளும் API களும்
பல வலைச் சேவைகள் தங்கள் JSON இல் snake_case திறவுகோல்களைப் பயன்படுத்துகின்றன, மேலும் செயலாக்கத்துக்காக ஏற்றுமதி செய்யப்படும் விரிதாள்கள் பெரும்பாலும் snake_case தலைப்புகளைக் கொண்டுள்ளன. உங்கள் தரவு CSV இலிருந்து JSON க்கு வழியாகச் சென்றால், தலைப்பு வரிசை திறவுகோல்களாகிறது, நேர்த்தியான snake_case தலைப்புகள் முடிவைப் பயன்படுத்த எளிதாக்குகின்றன.
மாறிலிகளும் சூழல் மாறிகளும்
மாறிலிகளும் சூழல் மாறிகளும் மரபாகப் பெரிய எழுத்துகளில் அடிக்கோடுகளுடன் எழுதப்படுகின்றன: MAX_RETRIES, DATABASE_URL. அவற்றைப் பெற வழி, முதலில் உரையை snake_case ஆக மாற்றி, பிறகு உரையைப் பெரிய எழுத்துகளாக மாற்றுதல் மூலம் முடிவை உயர்த்துவது.
கோப்புப் பெயர்கள்
அடிக்கோடுகளுடன் சிறிய எழுத்து எல்லா அமைப்புகளிலும் ஒரு பாதுகாப்பான கோப்புப் பெயர், அது கணிக்கத்தக்க வகையில் வரிசைப்படுத்தப்பட்டுத் தேடப்படுகிறது. பல ஒளிப்படக்காரர்கள், ஆய்வாளர்கள், நிர்வாகிகள் அந்தக் காரணத்துக்காகவே அதைப் பயன்படுத்துகிறார்கள்.
அது மரபாக இல்லாத இடங்கள்
JavaScript, Java
இந்த மொழிகள் மாறிகளுக்கும் செயல்கூறுகளுக்கும் camelCase ஐயும் வகுப்புகளுக்கு PascalCase ஐயும் விரும்புகின்றன. ஒரு Python நிரலிலிருந்து வரும் ஒரு பெயர் ஒரு JavaScript கோப்பில் தோன்றும் முன் மாற்றப்பட வேண்டியிருக்கலாம். அதற்கு camelCase ஐப் பாருங்கள்.
CSS, வலை முகவரிகள்
CSS வகுப்புப் பெயர்களும் வலை முகவரிகளும் வழக்கமாக அடிக்கோடுகளை அல்ல இணைப்புக்கோடுகளைப் பயன்படுத்துகின்றன. அதற்கான கருவி kebab-case. தேடுபொறிகள் ஓர் இணைப்புக்கோட்டைச் சொல் பிரிப்பானாகவும் ஓர் அடிக்கோட்டை இணைப்பியாகவும் கருதுகின்றன, இணைப்புக்கோடிட்ட முகவரிகளின் பழக்கத்துக்குப் பின்னால் இருக்கும் ஒரு சிறிய வேறுபாடு.
உரைநடையும் தலைப்புகளும்
snake_case பெயர்களுக்கு, வாசிப்புக்கு அல்ல. அதில் ஒரு தலைப்போ வாக்கியமோ கண்ணுக்குக் கடினமானது. மனித உரைக்கு, சொற்களையும் இடைவெளிகளையும் வைத்திருங்கள், ஒரு தலைப்புக்கு Title Case ஐக் கருதுங்கள்.
இங்கே உரையை snake_case ஆக மாற்றுவது எப்படி
உங்கள் உரையை ஒட்டுங்கள் அல்லது தட்டச்சு செய்யுங்கள்
சொற்றொடரை முதல் புலத்தில் உள்ளிடுங்கள். முடிவு உடனே இரண்டாவதில் தோன்றுகிறது, எனவே நீங்கள் தட்டச்சு செய்யும்போதே அது மாறுவதைப் பார்க்கலாம்.
வெட்டுகளைச் சரிபாருங்கள்
சொற்கள் எங்கே பிரிக்கப்பட்டன என்று பாருங்கள். iPhone அல்லது eBay போன்ற ஒரு சொல் பெரிய எழுத்தில் வெட்டப்படுகிறது, HTTPServer போன்ற ஒரு சுருக்கெழுத்துச் சொல் நீங்கள் நினைத்தபடி வந்ததா என்று ஒரு பார்வை தேவை.
நகலெடுங்கள்
நகலெடுக்கும் பொத்தானை அழுத்தி முடிவை உங்களுக்குத் தேவையான இடத்தில் ஒட்டுங்கள். அதே வரியின் பிற வடிவங்களுக்குக் கீழே பாருங்கள்.
ஒரு முழுத் திட்டம் முழுவதும் snake_case ஐப் பயன்படுத்துதல்
முழு அடுக்குக்கும் ஒரே மரபு
பெயரிடும் பாணிகளைக் கலக்கும் ஒரு திட்டம், சற்று அழகற்றதாக ஆனால் சீராக இருக்கும் ஒன்றைவிட வாசிக்கக் கடினமானது. தரவுத்தளம் snake_case ஐப் பயன்படுத்தினால், அதனுடன் பேசும் குறியீடும் பெரும்பாலும் அவ்வாறே பயன்படுத்துகிறது, அவற்றுக்கு இடையே நகரும் கோப்புகள் பின்தொடர்கின்றன. ஒரு புதிய நெடுவரிசைக்கோ புலத்துக்கோ நீங்கள் உரையை snake_case ஆக மாற்றும்போது, மற்ற ஒவ்வோர் அடுக்கும் ஏற்றுக்கொள்ள வேண்டிய பெயரைத் தேர்ந்தெடுக்கிறீர்கள், எனவே ஒருமுறை தேர்ந்தெடுத்து அதை முழுவதும் கொண்டு செல்லுங்கள்.
மரபுகளுக்கு இடையே பெயர்களை நகர்த்துதல்
விரைவில் அல்லது பின்னர் ஒரு மரபிலுள்ள ஒரு பெயர் இன்னொன்றில் தோன்ற வேண்டும். ஒரு தரவுத்தள நெடுவரிசை customer_first_name ஒரு JavaScript பொருளில் customerFirstName ஆகிறது, ஒரு CSS வகுப்பிலோ URL இலோ customer-first-name ஆகிறது. ஒவ்வொன்றையும் கையால் மீண்டும் தட்டச்சு செய்வதற்குப் பதிலாக, அசலை உங்களுக்குத் தேவையான வடிவத்தை உருவாக்கும் பக்கத்தில் ஒட்டுங்கள்: C, JavaScript குடும்பக் குறியீட்டுக்கு camelCase, பாணிகளுக்கும் முகவரிகளுக்கும் kebab-case. ஒரே பெயரின் மூன்று வடிவங்களும் ஒன்றுக்கொன்று சரியான மொழிபெயர்ப்புகள், ஒரு மாற்றி அவற்றைச் சீராகச் செய்கிறது.
உள்ளமைவுக் கோப்புகள்
அமைப்புக் கோப்புகள் பெரும்பாலும் snake_case திறவுகோல்களைப் பயன்படுத்துகின்றன, குறிப்பாகப் பல கருவிகள் பயன்படுத்தும் YAML இல். JSON ஆக வைக்கப்பட்ட தரவிலிருந்து அத்தகைய கோப்பைத் தயாரிக்கும்போது, JSON இலிருந்து YAML க்கு திறவுகோல்களை நீங்கள் எழுதியபடியே வைத்திருக்கிறது, YAML இலிருந்து JSON க்கு நேர்மாறாகச் செய்கிறது. தொடங்கும் முன் திறவுகோல்களுக்கு snake_case ஐத் தீர்மானியுங்கள், வடிவங்களுக்கு இடையிலான மாற்றம் அவற்றைக் குலைக்காது.
தொகுதியாக மறுபெயரிடுதல்
தலைப்புகள் பாணிகளின் கலவையாக உள்ள ஒரு தரவுக் கோப்பை நீங்கள் மரபுரிமையாகப் பெற்றால், ஒவ்வொரு தலைப்பையும் இந்தப் பக்கத்தால் மாற்றி ஒரே முறையில் மாற்றுங்கள். முதலில் ஒரு சிறிய மாதிரியுடன் சோதியுங்கள், ஏனெனில் கோப்பைத் தலைப்பால் வாசிக்கும் ஒரு நிரல், ஒரு பெயர் சில இடங்களில் மட்டுமே மாறினால் உடைந்துவிடும். ஒரு சக ஊழியர் என்ன மாறியது என்று காணும்படி கோப்புக்கு அருகே பழைய, புதிய பெயர்களின் ஒரு பட்டியலை வைத்திருங்கள்.
நிலைக்கும் பெயர்களை எழுதுதல்
அது எப்படிச் சேமிக்கப்படுகிறது என்பதை அல்ல, அது என்ன என்று சொல்லுங்கள்
ஒரு நல்ல பெயர் உள்ளடக்கத்தை விவரிக்கிறது. order_total எண்ணின் பொருளைச் சொல்கிறது; col7 சொல்வதில்லை. நீங்கள் உரையை snake_case ஆக மாற்றும்போது, நீங்கள் தொடங்கும் சொற்றொடர் நீங்கள் எழுதக்கூடிய மிகத் தெளிவானதாக இருக்கட்டும், ஏனெனில் மாற்றி அதன் தெளிவையோ குழப்பத்தையோ நம்பகமாகப் பாதுகாக்கும்.
உங்களுக்கு மட்டுமே புரியும் சுருக்கங்களைத் தவிர்க்கவும்
cust_fn_dt போன்ற ஒரு பெயர் வேறு யாருக்கும், ஆறு மாதங்களில் உங்களுக்கும், ஒரு புதிர். அடிக்கோடுகள் மலிவானவை, கூடுதல் சொற்களும் அவ்வாறே. ஒரு வாக்கியம் போலப் படிக்கும் நீண்ட பெயர், ஒரு விளக்கக் குறிப்பு தேவைப்படும் குறுகியதைவிட அடுத்தவருக்குச் சிறந்த பரிசு.
ஒருமை, பன்மையைச் சீராக வைத்திருங்கள்
அட்டவணைகள் ஒருமையில், customer, அல்லது பன்மையில், customers, பெயரிடப்படுமா என்று தீர்மானித்து அதில் நிலைத்திருங்கள். மரபு அதன் சீர்மையைவிடக் குறைவாகவே முக்கியம். snake_case ஆக மாற்றப்பட்ட ஒரு சொற்றொடர் நீங்கள் கொடுத்த எண்ணை வைத்திருக்கிறது.
உதவும்போது முன்னொட்டு இடுங்கள்
ஒரு பெரிய திட்டவரைவில், ஒரு குறுகிய முன்னொட்டு தொடர்புடைய பெயர்களைக் குழுவாக்குகிறது: billing_address, billing_city, billing_country. முன்னொட்டுடன் சொற்றொடரைத் தட்டச்சு செய்து மாற்றுவது சீரான முடிவுகளைத் தருகிறது, ஓர் அகரவரிசைப் பட்டியல் பின்னர் தானாகவே குழுவாகிறது.
பெயர்களுக்கு உறுதிபூணும் முன் அவற்றைச் சோதியுங்கள்
ஒரு பெயர் ஒரு திட்டவரைவுக்கோ API க்கோ செல்லும் முன், அது தோன்றப்போகும் இடங்களில் முயன்று பாருங்கள்: ஒரு வினவல், ஒரு மாறி, ஒரு கோப்புப் பட்டியல். மூன்றிலும் இயல்பாகப் படித்தால், அது பயன்படும். அது சங்கடமாக உணர்ந்தால், சொற்றொடரைச் சுருக்குங்கள் அல்லது மாற்றி எழுதி மீண்டும் உரையை snake_case ஆக மாற்றுங்கள். தொடக்கத்தில் ஒரு நிமிடச் சோதனை பின்னர் நூற்றுக்கணக்கான கோப்புகளில் ஒரு மறுபெயரிடலைத் தவிர்க்கிறது.
அதே வரி ஏழு எழுத்து வடிவங்களிலும்
வடிவங்களின் ஓர் அட்டவணை
மாற்றியின் கீழே, ஓர் அட்டவணை எடுத்துக்காட்டு வரியைத் தளம் வழங்கும் ஏழு வடிவங்களிலும் காட்டுகிறது: பெரிய எழுத்து, சிறிய எழுத்து, Title Case, snake_case, kebab-case, camelCase, ஒரு URL slug. ஒவ்வொன்றிலும் அதே சொற்கள் எப்படித் தெரிகின்றன என்று பார்க்க இது ஒரு விரைவு வழி.
இந்த வடிவங்கள் எங்கிருந்து வருகின்றன
இரு எழுத்துக்கள்
பெரிய, சிறிய எழுத்துகள் ஒரு காலத்தில் இரு வேறு எழுத்துக்களாக இருந்தன. பெரிய எழுத்துகள் ரோமானியவை, உளியால் கல்லில் செதுக்கப்பட்டவை; சிறிய எழுத்துகள் கரோலிங்கிய சிறுஎழுத்திலிருந்து வந்தவை, தோல் ஏட்டின் மீது வேகமாக நகரும் ஒரு பேனாவால் வடிவமைக்கப்பட்டவை. அச்சுக்கோப்பவர்கள் இரண்டையும் தனித்தனித் தட்டுகளில், மேல் பெட்டியிலும் கீழ் பெட்டியிலும், வைத்திருந்தார்கள், தட்டுகள் போன பிறகும் பெயர்கள் நிலைத்தன.
இடைவெளிகள் இல்லாத பெயர்கள்
நிரலாக்க வடிவங்கள் மிகவும் இளையவை, ஒரு சிக்கலைத் தீர்க்கக் கண்டுபிடிக்கப்பட்டவை: ஒரு பெயரில் இடைவெளி இருக்கக் கூடாது. snake_case ஆரம்பகால C இலிருந்து வந்தது, camelCase Smalltalk இலிருந்து, kebab-case Lisp இலிருந்து, URL slug இடைவெளிகளும் உச்சரிப்புகளும் அனுமதிக்கப்படாத ஒரு முகவரியில் ஒரு மனிதத் தலைப்பை இட வேண்டிய தேவையிலிருந்து. அந்தக் காலத்து விசைப்பலகைகளில் அடிக்கோடு ஒரு வசதியான எழுத்து, அது கோட்டின் மீது அமர்ந்திருக்கும் ஓர் இடைவெளி போலத் தெரிகிறது.
உரையை snake_case ஆக மாற்றும்போது பொறிகள்
ஓர் இலக்கத்துடன் ஒரு பெயரைத் தொடங்குதல்
பெரும்பாலான மொழிகளும் தரவுத்தளங்களும் ஓர் எண்ணில் தொடங்கும் பெயரை மறுக்கின்றன. சொற்றொடர் ஒன்றில் தொடங்கினால் முன்னால் ஓர் எழுத்தையோ சொல்லையோ சேர்க்கவும்.
ஒதுக்கப்பட்ட சொற்கள் கையாளப்படும் என்று எதிர்பார்த்தல்
class அல்லது order போன்ற ஒரு சொற்றொடர் உங்கள் மொழியிலோ SQL இலோ ஒதுக்கப்பட்ட சொல்லாக இருக்கலாம். இந்தப் பக்கத்துக்குத் தெரியாது, நீங்கள் சரிபார்க்க வேண்டும்.
சுருக்கெழுத்துச் சொற்கள்
parseHTMLString போன்ற ஒரு camelCase பெயருக்குள் உள்ள ஒரு சுருக்கெழுத்துச் சொல், விதியைப் பொறுத்து parse_h_t_m_l_string ஆகவோ parse_html_string ஆகவோ வெட்டப்படலாம். முடிவு நீங்கள் விரும்புவதே என்று சரிபாருங்கள்.
மிக நீளமான பெயர்கள்
தரவுத்தளங்களும் கோப்பு அமைப்புகளும் நீள வரம்புகளை விதிக்கின்றன. ஒரு பெயராக மாற்றப்பட்ட ஒரு நீண்ட சொற்றொடர் ஒன்றில் மோதலாம். மாற்றும் முன் சொற்களைச் சுருக்குங்கள்.
மாற்றுவதற்கு முன் மக்கள் கேட்கும் கேள்விகள்
நிறுத்தற்குறிகளுக்கு என்ன நடக்கிறது?
அவை சொற்களுக்கு இடையிலான எல்லையாகக் கருதப்படுகின்றன, கொண்டு செல்லப்படுவதில்லை.
எண்கள் வைக்கப்படுகின்றனவா?
ஆம், தனிச் சொற்களாக, அடிக்கோடுகளால் பிரிக்கப்பட்டு.
camelCase உள்ளீட்டை இது கையாளுமா?
ஆம். ஒரு சொல்லுக்குள்ளுள்ள பெரிய எழுத்து ஒரு வெட்டைக் குறிக்கிறது, எனவே fooBar foo_bar ஆகிறது.
பிற மொழிகளுக்கு இதைப் பயன்படுத்தலாமா?
ஆம், பக்கத்தின் மொழியின் விதிகளுடன். சீனம், ஜப்பானியம் போன்ற இடைவெளிகள் இல்லாத எழுத்து முறைகள் ஒரே சொல்லாகத் திரும்ப வருகின்றன.
என் உரை பதிவேற்றப்படுகிறதா?
இல்லை. நீங்கள் இங்கே தட்டச்சு செய்வது எங்கும் அனுப்பப்படுவதில்லை, எனவே ஒரு வரைவு, ஒரு கடவுச்சொல் அல்லது ஒரு வாடிக்கையாளரின் பெயர் ஒரு உரைத் திருத்தியில் இருப்பது போலவே இங்கும் பாதுகாப்பானது.
அதற்குப் பதிலாக இணைப்புக்கோடுகளை எப்படிப் பெறுவது?
உரையை kebab-case ஆக மாற்றுதல் மூலம்.
ஒரு செய்முறை எடுத்துக்காட்டு
நீங்கள் ஒரு நூலகத்துக்கான ஒரு சிறிய தரவுத்தளத்தை உருவாக்குகிறீர்கள் என்றும், ஊழியர்கள் தங்கள் விரிதாளிலிருந்து நெடுவரிசைத் தலைப்புகளை உங்களுக்கு அனுப்பியுள்ளனர் என்றும் வைத்துக்கொள்ளுங்கள்: Book Title, Author's Last Name, Year Published (YYYY), ISBN-13. நீங்கள் ஒவ்வொன்றையும் வரிசையாக மாற்றி book_title, author_s_last_name, year_published_yyyy, isbn_13 ஐப் படிக்கிறீர்கள். உயர்மேற்கோள் ஆசிரியர் நெடுவரிசையை ஒழுங்கற்ற ஒன்றாக்கியது, எனவே அசலை Author Last Name என்று சுருக்கி மீண்டும் மாற்றுகிறீர்கள்: author_last_name. ஆண்டு நெடுவரிசை வடிவக் குறிப்பு இல்லாமல் தெளிவாக உள்ளது, எனவே year_published ஐ வைத்துக்கொள்கிறீர்கள். நான்கு நேர்த்தியான நெடுவரிசைப் பெயர்கள், ஒரு நிமிடத்தில் எழுதப்பட்டவை, ஒவ்வொன்றும் தரவுத்தளம் ஏற்கும் ஒரு பெயர்.
ஒரு குறுகிய சரிபார்ப்புப் பட்டியல்
மாற்றுவதற்கு முன்
அடைப்புக்குறிக் குறிப்புகள் இல்லாமல் சொற்றொடரைச் சாதாரணச் சொற்களில் எழுதுங்கள். இலக்கு அடிக்கோடுகளையும் உச்சரிப்புக் குறிகளையும் ஏற்கிறது என்று சரிபாருங்கள்.
மாற்றும்போது
சொற்றொடரை ஒட்டி, வெட்டுகளைப் பார்த்து, பெயர் ஓர் எழுத்தில் தொடங்குகிறது என்று உறுதிசெய்யுங்கள்.
மாற்றிய பிறகு
நீளத்தைச் சரிபார்த்து, ஒதுக்கப்பட்ட சொற்களுக்கு எதிராகச் சரிபார்த்து, பெயர் அதன் பொருளுக்குத் தடமறியப்படும்படி அசல் சொற்றொடரின் பதிவை வைத்திருங்கள்.
பொதுவான தவறுகள்
மக்கள் படிக்கும் உரைக்கு snake_case ஐப் பயன்படுத்துதல்
அது பெயர்களுக்கு, உரைநடைக்கு அல்ல.
இலக்கு எதை அனுமதிக்கிறது என்பதை மறத்தல்
தொடக்கத்திலுள்ள இலக்கங்கள், உச்சரிப்புக் குறிகள், நீள வரம்புகள் அமைப்புகளுக்கு இடையே வேறுபடுகின்றன.
பார்க்காமல் சுருக்கெழுத்துச் சொற்களை மாற்றுதல்
அவற்றைச் சுற்றியுள்ள வெட்டுகளைச் சரிபாருங்கள்.
உங்கள் உரை உங்கள் சாதனத்திலேயே இருக்கிறது
மாற்றம் உள்ளூரிலேயே நடக்கிறது. உங்கள் உரை உங்கள் சொந்த உலாவியால் கையாளப்படுகிறது, எதுவும் எங்கும் அனுப்பப்படுவதில்லை. பின்னர் நீக்க எதுவும் இல்லை, உருவாக்க எந்தக் கணக்கும் இல்லை. உரையை snake_case ஆக மாற்றும் எளிய வழி அதுவே.
சுருக்கம்
இங்கே உரையை snake_case ஆக மாற்ற, ஒரு வரியை ஒட்டி, சொற்கள் வெட்டப்பட்டு, சிறிய எழுத்தாக்கப்பட்டு, அடிக்கோடுகளால் இணைக்கப்பட்டுத் திரும்பப் படியுங்கள். ஏற்கெனவே camelCase இல் எழுதப்பட்ட ஒரு வரி அங்கேயும் வெட்டப்படுகிறது, எனவே fooBar foo_bar ஆகிறது. இந்தப் பக்கம் நிறுத்தற்குறிகளை வைத்திருக்காது: காற்புள்ளிகளும் புள்ளிகளும் கோடுகளும் சொற்களுக்கு இடையிலான எல்லைகள், கொண்டு செல்ல வேண்டிய எழுத்துகள் அல்ல, ஒரு கோப்புப் பெயருக்கோ தரவுத்தள நெடுவரிசைக்கோ நீங்கள் விரும்புவது அதுவே, உரைநடைக்கு அல்ல. சொற்களாக வெட்ட எல்லைகள் தேவை, எனவே இடைவெளிகள் இல்லாமல் எழுதப்படும் சீனமும் ஜப்பானியமும் ஒரே சொல்லாகத் திரும்ப வருகின்றன. சிறிய எழுத்தாக்கம் பக்கத்தின் மொழியைப் பின்பற்றுகிறது. எதுவும் பதிவேற்றப்படுவதில்லை.