Case Converter: Μετατροπές CamelCase, Snake_case & άλλων μορφών
Η ονοματοδοσία μεταβλητών είναι ένα από τα δύο πιο δύσκολα πράγματα στον προγραμματισμό (αμέσως μετά την ακύρωση της cache). Και μόλις βρείτε ένα όνομα, πρέπει να το γράψετε σωστά. Κάθε γλώσσα προγραμματισμού έχει διαφορετικούς κανόνες.
Ο Case Converter μας είναι ένα ελβετικό σουγιά για τη μορφοποίηση κειμένου. Απλά πληκτρολογήστε ένα όνομα μία φορά (σε οποιαδήποτε μορφή) και εμείς θα το “μεταφράσουμε” άμεσα στη σύνταξη όλων των κύριων γλωσσών προγραμματισμού.
Γρήγορη Επισκόπηση: Πότε να χρησιμοποιήσετε κάθε μορφή;
Εάν μπερδεύεστε, δείτε εδώ έναν οδηγό τυπικών συμβάσεων ονοματοδοσίας (Naming Conventions) για το 2025:
🐪 camelCase (Σημειογραφία Καμήλας)
Ξεκινά με πεζό γράμμα και κάθε επόμενη λέξη ξεκινά με κεφαλαίο. Χωρίς κενά.
- Πού χρησιμοποιείται: JavaScript, Java, Swift, Kotlin, Go.
- Παραδείγματα:
myVariableName,getElementById,iPhone.
🐍 snake_case (Σημειογραφία Φιδιού)
Όλα τα γράμματα είναι πεζά και χωρισμένα με κάτω παύλα.
- Πού χρησιμοποιείται: Python, Rust, PHP, βάσεις δεδομένων SQL, ονόματα αρχείων.
- Παραδείγματα:
user_id,first_name,def my_function().
🍢 kebab-case (Σημειογραφία Κεμπάπ)
Πεζά γράμματα χωρισμένα με παύλα. Μοιάζει με κρέας σε σουβλάκι.
- Πού χρησιμοποιείται: Κλάσεις CSS, χαρακτηριστικά HTML, διευθύνσεις URL (slugs), Kubernetes.
- Παραδείγματα:
font-size,my-cool-article,<div id="main-content">.
📐 PascalCase (UpperCamelCase)
Παρόμοιο με το camelCase, αλλά το πρώτο γράμμα είναι κεφαλαίο.
- Πού χρησιμοποιείται: Ονόματα Κλάσεων (Classes) στις περισσότερες γλώσσες (JS, Python, PHP), C# (μέθοδοι και μεταβλητές), React components.
- Παραδείγματα:
UserProfile,AppController,ReactComponent.
📢 CONSTANT_CASE (Screaming Snake Case)
Κεφαλαία γράμματα χωρισμένα με κάτω παύλα. Σας “φωνάζει” ότι αυτή η τιμή δεν πρέπει να αλλάξει.
- Πού χρησιμοποιείται: Σταθερές, περιβαλλοντικές μεταβλητές (ENV), παγκόσμιες διαμορφώσεις.
- Παραδείγματα:
MAX_RETRIES,API_KEY,DB_PASSWORD.
Πώς λειτουργεί ο μετατροπέας μας;
Το εργαλείο μας είναι “έξυπνο”. Αυτό σημαίνει ότι δεν αντικαθιστά απλά κενά.
- Ανίχνευση λέξεων: Ο αλγόριθμος αναγνωρίζει λέξεις, είτε είναι χωρισμένες με κενά
ahoj svete, κάτω παύλεςahoj_svete, παύλεςahoj-sveteείτε με την αλλαγή σε κεφαλαία γράμματαahojSvete. - Κανονικοποίηση: Μετατρέπει τα πάντα σε βασική μορφή.
- Δημιουργία: Συνθέτει όλες τις παραλλαγές ταυτόχρονα.
Αυτό είναι χρήσιμο, για παράδειγμα, κατά τον ανασχεδιασμό κώδικα (refactoring), όταν χρειάζεται να μετατρέψετε παλιές μεταβλητές PHP ($user_id) σε σύγχρονο JavaScript (userId) ή να δημιουργήσετε μια κλάση CSS (user-id) από ένα όνομα στήλης βάσης δεδομένων.
FAQ: Συχνές Ερωτήσεις
Τι είναι η "Hungarian notation";
Είναι ένας παλαιότερος τρόπος γραφής (συνηθισμένος σε C/C++ τη δεκαετία του '90), όπου το όνομα της μεταβλητής ξεκινά με μια συντομογραφία του τύπου δεδομένων. Για παράδειγμα,strName (string) ή iCount (integer). Σήμερα δεν χρησιμοποιείται πολύ σε σύγχρονες γλώσσες, επειδή τα IDE μας δείχνουν τους τύπους αυτόματα.
Μπορώ να χρησιμοποιήσω kebab-case σε JavaScript;
Όχι απευθείας ως όνομα μεταβλητής, επειδή η παύλα- λειτουργεί στο JS ως τελεστής αφαίρεσης. Το var my-variable θα σήμαινε "my μείον variable". Το Kebab-case χρησιμοποιείται στο JS μόνο ως κλειδιά σε αντικείμενα, εφόσον είναι σε εισαγωγικά: { "content-type": "json" }.
Ποια μορφή (case) να χρησιμοποιήσω για JSON;
Το πρότυπο JSON δεν ορίζει μορφή, αλλά η Google και τα περισσότερα REST API χρησιμοποιούν camelCase (π.χ.createdAt). Αντίθετα, ορισμένα παλαιότερα API και Python backends επιστρέφουν snake_case (π.χ. created_at). Είναι σημαντικό να είστε συνεπείς.