Konverter Veličina Slova: Pretvorba CamelCase, Snake_case i više

Imenovanje varijabli je jedna od dvije najteže stvari u programiranju (odmah poslije invalidacije keša). A kad smislite ime, morate ga ispravno napisati. Svaki programski jezik ima različita pravila.

Naš Konverter veličina slova je švicarski nož za formatiranje teksta. Dovoljno je da jednom napišete ime (u bilo kojem formatu) i mi ćemo ga odmah “prevesti” u sintaksu svih glavnih programskih jezika.

Brzi pregled: Kada koristiti koji format?

Ako ste zbunjeni, evo kratkog vodiča o standardnim konvencijama imenovanja (Naming Conventions) za 2025. godinu:

🐪 camelCase (Devina notacija)

Počinje malim slovom, a svaka sljedeća riječ počinje velikim. Bez razmaka.

  • Gdje se koristi: JavaScript, Java, Swift, Kotlin, Go.
  • Primjeri: myVariableName, getElementById, iPhone.

🐍 snake_case (Zmijska notacija)

Sva slova su mala i odvojena podvlakom.

  • Gdje se koristi: Python, Rust, PHP, SQL baze podataka, nazivi datoteka.
  • Primjeri: user_id, first_name, def my_function().

🍢 kebab-case (Ražnjić notacija)

Mala slova odvojena crticom. Izgleda kao meso na ražnjiću.

  • Gdje se koristi: CSS klase, HTML atributi, URL adrese (slugovi), Kubernetes.
  • Primjeri: font-size, my-cool-article, <div id="main-content">.

📐 PascalCase (UpperCamelCase)

Slično kao camelCase, ali prvo slovo je Veliko.

  • Gdje se koristi: Nazivi klasa (Classes) u većini jezika (JS, Python, PHP), C# (metode i varijable), React komponente.
  • Primjeri: UserProfile, AppController, ReactComponent.

📢 CONSTANT_CASE (Screaming Snake Case)

Velika slova odvojena podvlakom. “Viče” na vas da se ova vrijednost ne smije mijenjati.

  • Gdje se koristi: Konstante, ENV varijable, globalne konfiguracije.
  • Primjeri: MAX_RETRIES, API_KEY, DB_PASSWORD.

Kako funkcioniše naš konverter?

Naš alat je “pametan”. To znači da ne pokušava samo tupo zamijeniti razmake.

  1. Detekcija riječi: Algoritam prepoznaje riječi, bez obzira jesu li odvojene razmacima zdravo svijete, podvlakama zdravo_svijete, crticama zdravo-svijete ili prijelazom velikih slova zdravoSvijete.
  2. Normalizacija: Sve pretvara u osnovni oblik.
  3. Generisanje: Odjednom sastavlja sve varijante.

Ovo je korisno, na primjer, prilikom refaktoriranja koda, kada trebate pretvoriti stare PHP varijable ($user_id) u moderni JavaScript (userId) ili kreirati CSS klasu (user-id) iz naziva stupca baze podataka.

FAQ: Često postavljana pitanja

Šta je "Hungarian notation"? To je stariji način pisanja (često u C/C++ 90-ih), gdje naziv varijable počinje skraćenicom tipa podataka. Na primjer, strName (string) ili iCount (integer). Danas se ne koristi previše u modernim jezicima jer nam IDE automatski pokazuje tipove.
Mogu li koristiti kebab-case u JavaScriptu? Direktno kao naziv varijable ne, jer crtica - u JS-u djeluje kao operator oduzimanja. var my-variable bi značilo "moja minus varijabla". Kebab-case se u JS-u koristi samo kao ključevi u objektima, ako su u navodnicima: { "content-type": "json" }.
Koji case koristiti za JSON? JSON standard ne određuje case, ali Google i većina REST API-ja koristi camelCase (npr. createdAt). Nasuprot tome, neki stariji API-ji i Python backendi vraćaju snake_case (npr. created_at). Važno je biti dosljedan.