Case Muundur: Teisenda CamelCase, Snake_case, PascalCase

Muutujate nimetamine on üks kahest kõige raskemast asjast programmeerimises (kohe pärast vahemälu tühistamist). Ja kui olete nime välja mõelnud, peate selle õigesti kirjutama. Igal programmeerimiskeelel on ju erinevad reeglid.

Meie Case Muundur on teksti vormindamise Šveitsi armee nuga. Piisab, kui kirjutate nime üks kord (mis tahes vormingus) ja me “tõlgime” selle koheselt kõigi peamiste programmeerimiskeelte süntaksisse.

Kiire ülevaade: Millal millist vormingut kasutada?

Kui olete segaduses, siis siin on standardsete nimetamiskonventsioonide (Naming Conventions) spikker 2025. aastaks:

🐪 camelCase (Kaameli notatsioon)

Algab väikese tähega ja iga järgmine sõna algab suure tähega. Ilma tühikuteta.

  • Kus kasutatakse: JavaScript, Java, Swift, Kotlin, Go.
  • Näited: myVariableName, getElementById, iPhone.

🐍 snake_case (Mao notatsioon)

Kõik tähed on väikesed ja eraldatud alakriipsuga.

  • Kus kasutatakse: Python, Rust, PHP, SQL andmebaasid, failinimed.
  • Näited: user_id, first_name, def my_function().

🍢 kebab-case (Varda notatsioon)

Väikesed tähed eraldatud sidekriipsuga. Näeb välja nagu liha varda otsas.

  • Kus kasutatakse: CSS klassid, HTML atribuudid, URL-id (slugid), Kubernetes.
  • Näited: font-size, my-cool-article, <div id="main-content">.

📐 PascalCase (UpperCamelCase)

Sarnane camelCase’iga, kuid esimene täht on Suur.

  • Kus kasutatakse: Klasside nimed enamikus keeltes (JS, Python, PHP), C# (meetodid ja muutujad), React komponendid.
  • Näited: UserProfile, AppController, ReactComponent.

📢 CONSTANT_CASE (Karjuv Mao Vorming)

Suured tähed eraldatud alakriipsuga. Karjub teile, et seda väärtust ei tohi muuta.

  • Kus kasutatakse: Konstandid, ENV muutujad, globaalsed konfiguratsioonid.
  • Näited: MAX_RETRIES, API_KEY, DB_PASSWORD.

Kuidas meie muundur töötab?

Meie tööriist on “nutikas”. See tähendab, et see ei püüa lihtsalt tühikuid asendada.

  1. Sõnade tuvastamine: Algoritm tuvastab sõnad, olenemata sellest, kas need on eraldatud tühikutega ahoj svete, alakriipsudega ahoj_svete, sidekriipsudega ahoj-svete või suurtähtede üleminekuga ahojSvete.
  2. Normaliseerimine: Teisendab kõik algvormi.
  3. Genereerimine: Koostab kõik variandid korraga.

See on kasulik näiteks koodi refaktorimise korral, kui on vaja teisendada vanu PHP muutujaid ($user_id) kaasaegseks JavaScriptiks (userId) või luua andmebaasi veeru nimest CSS klass (user-id).

KKK: Korduma kippuvad küsimused

Mis on "Ungari notatsioon"? See on vanem kirjutamisviis (sage C/C++-s 90ndatel), kus muutuja nimi algab andmetüübi lühendiga. Näiteks strName (string) või iCount (täisarv). Tänapäeval seda kaasaegsetes keeltes enam eriti ei kasutata, sest IDE-d näitavad meile tüüpe automaatselt.
Kas ma saan JavaScriptis kebab-case'i kasutada? Otse muutuja nimena mitte, sest sidekriips - toimib JS-is lahutamisoperaatorina. var my-variable tähendaks "my miinus variable". Kebab-case'i kasutatakse JS-is ainult objektide võtmetena, kui need on jutumärkides: { "content-type": "json" }.
Millist case'i JSON-i jaoks kasutada? JSON standard ei määra case'i, kuid Google ja enamik REST API-sid kasutavad camelCase'i (nt. createdAt). Mõned vanemad API-d ja Pythoni taustasüsteemid tagastavad aga snake_case'i (nt. created_at). Oluline on olla järjepidev.