Metni camelCase biçimine dönüştürme ilkSözcükKüçük Ücretsiz Çevrimiçi Güvenli
Bir satır yapıştırın, camelCase olarak okuyun. Hepsi tarayıcınızda olur — yazdığınız hiçbir şey hiçbir yere gönderilmez — ve kurallar İngilizceyi değil, bu sayfanın dilini izler.
Başka türlü yazın
Hiçbir şey yüklenmez
Aynı satır, yedi yazımın hepsinde
| Yazım | Aynı satır, öyle yazılmış |
|---|---|
| büyük harf | İSTANBUL BOĞAZI'NDA 2 KİŞİ — CRÈME BRÛLÉE, FOOBAR |
| küçük harf | istanbul boğazı'nda 2 kişi — crème brûlée, foobar |
| Title Case | İstanbul Boğazı'Nda 2 Kişi — Crème Brûlée, Foobar |
| snake_case | istanbul_boğazı_nda_2_kişi_crème_brûlée_foo_bar |
| kebab-case | istanbul-boğazı-nda-2-kişi-crème-brûlée-foo-bar |
| camelCase | istanbulBoğazıNda2KişiCrèmeBrûléeFooBar |
| bir URL adresi | istanbul-bogazi-nda-2-kisi-creme-brulee-foobar |
Bu biçimler nereden geliyor
Büyük ve küçük harfler bir zamanlar iki ayrı alfabeydi. Büyük harfler Roma'dandır, taşa kalemle oyulmuştur; küçük harfler, parşömen üstünde hızla koşan bir kamıştan biçimlenen Karolenj minüskülünden iner. Basımcılar ikisini ayrı kasalarda tuttu — üst kasa ile alt kasa — ve kasalar yok olduktan çok sonra bile adlar kaldı. Programlama biçimleri çok daha gençtir ve tek bir sorunu çözmek için uyduruldu: bir ad boşluk içeremez. snake_case erken C'den, camelCase Smalltalk'tan, kebab-case Lisp'ten, URL slug'ı ise insanın okuyacağı bir başlığı, boşluk ve aksan kabul etmeyen bir adrese koyma ihtiyacından doğdu.
Onlarla nerede karşılaşırsınız
Her sözcüğü büyük harfle yazmak başlıklara ve kitap kapaklarına aittir; cümle düzeninde yazmak ise geri kalan hemen her şeye ve giderek arayüzlere, çünkü daha hızlı okunur. snake_case veritabanı sütunlarını ve Python değişkenlerini adlandırır; camelCase JavaScript değişkenlerini ve Java yöntemlerini; kebab-case CSS sınıflarını ve web projelerindeki dosya adlarını. Slug ise bir yazının başlığını adresinin son parçasına dönüştüren şeydir ve buradaki çevrimler arasında arama motorlarının okuduğu tek çevrim odur.
Sık sorulan sorular
Büyük harfe çevirmek neden bazen harf sayısını değiştiriyor?
Çünkü harf büyüklüğü dilin bir özelliğidir, karakterin değil. Almancadaki ß büyük harfte SS olur; bir harf ikiye çıkar. Türkçede noktalı ve noktasız i vardır; i'nin büyüğü I değil İ'dir — burada yanılmak Türkçe bir sözcüğü başka bir sözcüğe çevirir. Buradaki çevrimler sayfanın kendi dilinin kurallarını izler; aynı girdinin Türkçe sayfada İngilizce sayfadakinden başka çıkmasının sebebi budur.
Slug neden aksanları ve noktalama işaretlerini atıyor?
Çünkü bir adresin, bir iletiye kopyalanmaya, kâğıda basılmaya ve elle yeniden yazılmaya dayanması gerekir. Aksanlı harfler modern bir adreste geçerlidir, ama kopyalanınca yüzde işaretleriyle kodlanır ve okunur bir adres bir simge dizisine döner. Onları yalın harflere, rakamlara ve kısa çizgilere indirmek, adresi okunur, paylaşılır ve göründüğü her yerde aynı tutar.
Sonuç kesin mi?
İki birim birbirinden tam sayılarla tanımlanıyorsa evet — sayfa bunu rakamın üstünde söyler ve tek yuvarlama kaç basamak gösterildiğindedir. Oranın sonlu bir ondalığı yoksa sayfa on iki anlamlı basamak gösterir ve ilişkinin yaklaşık olduğunu söyler, başka türlüymüş gibi yapmaz.
Yazdıklarım cihazımdan çıkıyor mu?
Hayır. Hesap tarayıcınızda yapılır; hiçbir şey yüklenmez, zaten yükleyecek bir sunucu da yok. Sayfa bir kez açıldıktan sonra ağ kapalıyken de çalışır.
Metni neden camelCase'e dönüştürürsünüz
Neredeyse herhangi bir JavaScript dosyasını, herhangi bir Java sınıfını, herhangi bir Swift ya da Kotlin kaynağını açın; adlar aynı görünür: userName, totalPrice, getCustomerById, isLoggedIn. Sözcükler boşluksuz ve ayırıcısız birbirine eklenir; ilki küçük, ondan sonraki her biri büyük harfle başlar; böylece sözcüğün ortasındaki hörgüçler stile adını verir. Bu camelCase'dir ve C ailesi dillerinin çoğunun değişkenler ve işlevler için üzerinde karar kıldığı biçimdir. Metni camelCase'e dönüştürmek, bir insanın yazdığı gibi bir ifadeyi, bir programın kabul edeceği ve bir programcının tanıyacağı bir ada çevirmektir.
Bir satır yapıştırın ve camelCase olarak geri okuyun. Dönüşüm tarayıcınızda gerçekleşir, yazdığınız hiçbir şey hiçbir yere gönderilmez ve kurallar İngilizceyi değil, bu sayfanın dilini izler. Satırı sözcüklere keser, ilkini küçük bırakır, ondan sonraki her birinin ilk harfini büyütür ve aralarında hiçbir şey olmadan birleştirir. Aşağıda sayfanın tam olarak ne yaptığını ve ne yapmadığını, farklı dillerin zor harflerine nasıl davrandığını, camelCase ile üst kardeşi arasındaki farkı, biçimin nerede gelenek olduğunu ve nerede olmadığını ve metni aceleyle camelCase'e dönüştürenleri yakalayan tuzakları bulacaksınız.
Dönüşümün yaptığı
Kes, önce küçük, sonra büyük, birleştir
Sayfa önce satırı sözcüklere keser. İlk sözcük küçük kalır. Ondan sonraki her sözcük başta büyük harf alır, geri kalanı küçük harflerle. Sonra sözcükler aralarında hiçbir şey olmadan birleştirilir. Crème brûlée for 2 — straße 17, fooBar satırı crèmeBrûléeFor2Straße17FooBar olarak geri gelir. Aksanlar korunur, sayılar kendi başlarına birer sözcük olarak durur, tire ve virgül gitmiştir ve sayfanın büyük harfinden kestiği fooBar, sonda FooBar olarak yeniden bir araya getirilmiştir.
Kesimlerin düştüğü yerler
Bir sözcük sınırı bir boşluk, bir noktalama işareti, bir tire, bir simge ya da bir sözcüğün içinde küçük harften büyük harfe geçiştir. Yani customer first name, customer-first-name, customer_first_name ve customerFirstName hepsi customerFirstName olur. Dönüşüm hemen hemen her başlangıç noktasını kabul eder ve her zaman aynı biçime varır; bu, bir adın koda girmeden önceki güvenilir son adımı yapar.
Sonucu kopyalamak
Sonucun yanındaki bir düğme onu panoya kopyalar. Adın gerektiği düzenleyiciye ya da dosyaya yapıştırın.
Dönüşümün yapmadığı
Noktalamayı korumaz
Virgüller, noktalar ve tireler sözcükler arasındaki sınırlardır, taşınacak karakterler değil. Bir değişken adı için istediğiniz budur ve düzyazı için istediğiniz değildir. Sayfadan geçirilen bir cümle bir ad olarak geri gelir ve noktalaması gitmiştir.
Aksanları kaldırmaz
Satır aksanlı harflerini korur: crèmeBrûlée. Birçok dil onlara adlarda izin verir, ama pek çok araç ve stil rehberi vermez. Düz harflere ihtiyacınız varsa önce ifadeyi Latin harflerinden işaretleri kaldıran URL slug sayfasından geçirin ve sonra metni camelCase'e dönüştürün.
Adın geçerli olup olmadığını kontrol etmez
Programlama dillerinin kendi kuralları vardır. Bir ad bir rakamla başlayamaz ve ayrılmış bir sözcük olamaz. 2 for 1 gibi bir ifade 2For1 olur; çoğu dil bunu ilk karakterde reddeder. Sayfa biçimi yapar; geçerliliği siz kontrol edersiniz.
camelCase ve PascalCase
Aynı fikir, farklı ilk harf
İlk sözcük de büyük harfle başladığında, CustomerFirstName'de olduğu gibi, stile PascalCase, UpperCamelCase ya da StudlyCaps denir. Çoğu dilde gelenek, türler ve sınıflar için PascalCase'i, değişkenler, işlevler ve yöntemler için camelCase'i kullanmaktır. Bu sayfa küçük harfle başlayan biçimi üretir. PascalCase elde etmek için ifadeyi dönüştürün ve ilk harfi elle büyütün.
İlk harf neden önemli
Baştaki büyük harf bir okuyucuya bir adın bir sınıf olduğunu, küçük harf ise bir örnek ya da bir işlev olduğunu söyler. Geleneğin araçlarla zorunlu kılındığı dillerde, büyük harfin herkese açık anlamına geldiği Go gibi, fark anlamın bir parçasıdır.
Dil önemlidir
Boşluksuz yazılan yazılar
Sözcüklere kesmek sınırlar gerektirir. Çince ve Japonca boşluksuz yazılır; bu yüzden bu yazılardaki bir satır tek bir sözcük olarak geri gelir. Sayfa, tahmin ettiği bir yerden kesmektense bunu söylemeyi tercih eder, çünkü yanlış bir kesim makul görünen ve yanlış şey anlamına gelen bir ad üretirdi.
Türkçe ve noktalı i
Her sözcüğün ilk harfini büyütmek sayfanın dilinin kurallarını izler. Türkçede i'nin büyüğü İ ve ı'nın büyüğü I'dır. İngilizce kurallar uygulayan bir dönüştürücü sözcükleri değiştirir. Bu sayfa yazıldığı dili izler.
Almanca ve keskin s
Bir sözcüğün ortasındaki Almanca ß, straße'de olduğu gibi kalır. Büyük harfli STRASSE, çift s ile strasse olarak geri gelir.
Büyük harfi olmayan yazılar
Arapça, İbranice ve Hint yazılarının büyük harfleri yoktur; bu yüzden sözcükler yalnızca birleştirilir. Sonucun böyle bir yazıda okunabilir olup olmadığı, onu kullandığınız aracın meselesidir.
camelCase'in gelenek olduğu yerler
JavaScript ve TypeScript
Değişkenler, işlevler ve nesne özellikleri camelCase ile yazılır ve çoğu web arayüzünde JSON nesnelerinin özellikleri de öyle. Metni camelCase'e dönüştürdüğünüz bir ifade büyük olasılıkla bunlardan birine gidiyordur.
Java, Kotlin, Swift, C# ve Dart
Aynı alışkanlık yerel değişkenler ve yöntemler için geçerlidir; sınıflar için ve C#'ta yöntemler ve özellikler için de PascalCase kullanılır. Bir ekibin stil rehberi ayrıntıları belirler.
Web servislerinden JSON
Birçok API firstName ve orderTotal gibi anahtarlar gönderir. Verileriniz bir tablo olarak başlıyorsa CSV'den JSON'a başlık satırını anahtarlara çevirir ve camelCase'e dönüştürülmüş başlıklar, kodun parantezler ve tırnaklar olmadan okuyabileceği anahtarlar olur. Öbür yönde JSON'dan CSV'ye anahtarları yeniden bir başlık olarak yazar.
Hashtag'ler ve kullanıcı adları
Programlama dışında camel case #SpringGardenTips gibi hashtag'ler için kullanılır, çünkü büyük harfler göze sözcük sınırlarını işaretler. Erişilebilirlik için de daha iyidir: ekran okuyucular büyük harfli bir hashtag'i ayrı sözcükler olarak, küçük harfli bir harf dizisini tek bir tuhaf sözcük olarak okur.
Gelenek olmadığı yerler
Python, Ruby ve veritabanları
Bunlar alt çizgileri tercih eder. Onlar için snake_case araçtır.
CSS ve web adresleri
Sınıf adları, özel özellikler ve adresler tire kullanır. kebab-case sayfasına bakın.
Düzyazı ve başlıklar
camelCase adlar içindir, okumak için değil. İçindeki bir başlık ya da cümle göze zor gelir. Bir başlık için Title Case sayfasını düşünün.
Metni buradan camelCase'e nasıl dönüştürürsünüz
Metninizi yapıştırın ya da yazın
İfadeyi ilk alana girin. Sonuç ikincisinde hemen görünür; böylece siz yazdıkça değiştiğini izleyebilirsiniz.
Kesimleri ve kısaltmaları kontrol edin
Sözcüklerin nerede bölündüğüne ve kısaltmaların nasıl ele alındığına bakın. parseHtmlString gibi bir ad ile parseHTMLString gibi bir ad farklı geleneklerdir ve sayfa baştan sona tek bir kural uygular.
Kopyalayın
Kopyala düğmesine basın ve sonucu ihtiyacınız olan yere yapıştırın. Aynı satırın diğer biçimleri için aşağıya bakın.
Aynı satır yedi yazımın hepsinde
Biçimlerin bir tablosu
Dönüştürücünün altında bir tablo, örnek satırı sitenin sunduğu yedi biçimin hepsinde gösterir: büyük harf, küçük harf, Title Case, snake_case, kebab-case, camelCase ve bir URL slug. Aynı sözcüklerin her birinde nasıl göründüğünü görmenin hızlı bir yoludur.
Bu biçimlerin geldiği yer
İki alfabe
Büyük ve küçük harfler bir zamanlar iki farklı alfabeydi. Büyük harfler Romalıdır; taşa keskiyle kesilmiştir; küçük harfler, bir kalemin parşömen üzerinde hızla hareket etmesiyle biçimlenen Karolenj minuskülünden gelir. Matbaacılar ikisini ayrı çekmecelerde, üst kasada ve alt kasada tuttu ve çekmeceler gittikten çok sonra adlar kaldı.
Boşluksuz adlar
Programlama biçimleri çok daha gençtir ve tek bir sorunu çözmek için icat edildi: bir ad boşluk içeremez. snake_case erken C'den, camelCase Smalltalk'tan, kebab-case Lisp'ten ve URL slug, boşlukların ve aksanların izin verilmediği bir adrese insan başlığı koyma ihtiyacından çıktı. camelCase'de büyük harfler, başka yerlerde alt çizginin ya da tirenin yaptığı işi yapar: bir sözcüğün nerede bittiğini ve sonrakinin nerede başladığını işaretlemek.
Daha geniş iş akışında camelCase
Bir şartnameden koda
Gereksinim belgeleri cümlelerle, kod adlarla yazılır. Aralarında birinin her isim ve fiili bir tanımlayıcıya çevirmesi gerekir. Bunu elle yapmak yavaştır ve tutarsızlığa davet çıkarır: bir geliştirici customerName yazar, bir diğeri aynı şey için clientName. Ekip şartnamenin tam ifadesinden metni camelCase'e dönüştürmeyi kabul ederse adlar sözcükleri izler ve herkes ifadeyi arayarak bir gereksinimin başvurduğu kodu bulabilir.
Bir tablo başlığından bir nesne anahtarına
Elektronik tabloların First Name, Order Total ve Date Of Birth gibi başlıkları vardır. Veri bir programda kayıtlara dönüştüğünde bu başlıklar anahtar olur. Her başlığı camelCase'e çevirmek, kodun tırnaklar ya da parantezler olmadan özellik olarak okuyabileceği firstName, orderTotal ve dateOfBirth'ü verir. Veri sonra bir elektronik tabloya geri gitmek zorundaysa JSON'dan XLSX'e anahtarları ilk satır olarak yazar ve döngü kapanır.
Bir tasarım dosyasından bir bileşene
Tasarım araçları katmanları sade sözcüklerle adlandırır: Primary Button, Card Title. Geliştiriciler bileşenleri oluşturduğunda bu adlar primaryButton ve cardTitle gibi tanımlayıcılara ya da primary-button ve card-title sınıf adlarına dönüşür. Eşlemeyi açık tutmak teslimi daha pürüzsüz yapar. Katmanlarla gelen boyutlar ve renkler için px'ten rem'e ve HEX'ten RGB'ye adların ardındaki değerleri çevirir.
Adlandırdığınızı aramak
Tutarlı bir stil aramayı etkili kılar. Her özellik camelCase ise orderTotal araması tüm kullanımları bulur ve ordertotal ya da order_total araması hiçbirini bulmaz; bu kendi başına bilgilendiricidir. Karışık stiller aynı fikri yazımlara dağıtır ve aramadan gizler.
Güvenle yeniden adlandırmak
Bir ad değiştiğinde işi bul ve değiştir değil, düzenleyicinizdeki bir yeniden adlandırma aracı yapmalıdır. Yeniden adlandırmadan önce yeni ad için metni yeni ifadesinden camelCase'e dönüştürün; böylece yeni tanımlayıcı baştan gelenekleri izler. Sonra aracın her başvuruyu güncellemesine izin verin.
Birkaç adı yaşayacakları yerde test edin
Bir grup adı benimsemeden önce düzenleyicide, göründükleri kod satırlarının içinde üç ya da dördünü deneyin. Her biri diğerlerinin yanında doğal okunuyorsa grup iyidir. Biri uyumsuzsa ifadeyi yeniden kelimelendirin ve metni yeniden camelCase'e dönüştürün. Kısa bir deneme bir dakikaya mal olur ve kod tabanı boyunca bir yeniden adlandırmayı önler.
İyi okunan adlar
İşlevler için bir fiille başlayın
Bir işlev bir eylemdir ve adı bunu söylemelidir: getUserName, calculateTotal, isValid. Bir işlev için metni camelCase'e dönüştürdüğünüzde ifadeye fiille başlayın.
Değerler için isimler kullanın
Bir değişken bir şey tutar: userName, totalPrice, orderList. Boole değerleri en iyi sorular olarak okunur: isActive, hasAccess, canEdit.
Kısaltmalar konusunda tutarlı olun
Bazı ekipler parseHTML, bazıları parseHtml yazar. İkisi de iyidir; karışım değildir. Birini seçin ve her ada uygulayın; kodunuzu aramak daha kolay olacaktır.
Adları telaffuz edilebilir tutun
Yüksek sesle okuyabileceğiniz bir ad, tartışabileceğiniz bir addır. custFnDt değildir ve customerFirstDate öyledir. Dönüşüm yazdığınızı korur; bu yüzden korumaya değer bir şey yazın.
Metni camelCase'e dönüştürürken tuzaklar
Bir rakamla başlayan bir ad
Çoğu dil onu reddeder. Önüne bir sözcük ya da bir harf koyun.
Ayrılmış sözcükler
class, new ya da default gibi bir ifade birçok dilde bir anahtar sözcüktür. Sayfa hangisi olduğunu bilmez. Adı kullanmadan önce kontrol edin.
Kısaltmalar ve büyük harf dizileri
Bir büyük harf dizisi çevresindeki kesimler sizi şaşırtabilir. Sonucu okuyun ve geleneğinizle karşılaştırın.
Adlarda aksanlar
Bazı dillerde izin verilir, bazılarında verilmez. Ad eski araçlardan geçmek zorundaysa önce aksanları kaldırın.
Dönüştürmeden önce insanların sorduğu sorular
Noktalamaya ne olur?
Sözcükler arasında bir sınır olarak ele alınır ve taşınmaz.
Sayılar korunur mu?
Evet, kendi başlarına birer sözcük olarak, geri kalanına eklenerek.
Zaten snake_case ya da kebab-case olan girdiyi işler mi?
Evet. Alt çizgiler ve tireler sınırlardır; bu yüzden my_variable_name myVariableName olur.
PascalCase'i nasıl elde ederim?
Dönüştürün, sonra ilk harfi elle büyütün.
Metnim yükleniyor mu?
Hayır. Buraya yazdığınız hiçbir şey hiçbir yere gönderilmez; bu yüzden bir taslak, bir parola ya da bir müşterinin adı burada bir metin düzenleyicideki kadar güvendedir.
Bunun yerine alt çizgileri ya da tireleri nasıl elde ederim?
metni snake_case'e dönüştürün ya da metni kebab-case'e dönüştürün ile.
Çalışılmış bir örnek
Bir teslimat ücretini hesaplamak için küçük bir betik yazdığınızı ve şartnamenin değerlere delivery fee per kilometre, free delivery threshold ve is express order dediğini varsayın. Her birini sırayla dönüştürür ve deliveryFeePerKilometre, freeDeliveryThreshold ve isExpressOrder okursunuz. İlki bir isimle başlar; bu bir değer için doğrudur; sonuncusu evet-hayır bayrağını işaretleyen is ile başlar. Üçünü betiğe değişken adları olarak yapıştırırsınız ve şartname ile kod artık aynı sözcükleri aynı sırayla kullanır; bu incelemeyi kolaylaştırır.
Kısa bir kontrol listesi
Dönüştürmeden önce
İfadeyi sade sözcüklerle yazın. İşlevlere bir fiille ve bayraklara is ya da has ile başlayın. Hedef dilde ayrılmış sözcükleri kontrol edin.
Dönüştürürken
İfadeyi yapıştırın, kesimlere bakın ve adın bir harfle başladığından emin olun.
Dönüştürdükten sonra
Uzunluğu ve kısaltmaları kontrol edin ve aynı adı gerekli olduğu her yerde kullanın.
Sık yapılan hatalar
İnsanların okuyacağı metin için camelCase kullanmak
Adlar içindir, düzyazı için değil.
Bir projede gelenekleri karıştırmak
Her katman için camelCase, snake_case ya da kebab-case seçin ve ona bağlı kalın.
Hedefin neye izin verdiğini unutmak
Baştaki rakamlar, aksanlar ve ayrılmış sözcükler diller arasında farklıdır.
Metniniz cihazınızda kalır
Dönüşüm yerel olarak yapılır. Metniniz kendi tarayıcınız tarafından ele alınır ve hiçbir yere hiçbir şey gönderilmez. Sonradan silinecek bir şey yoktur ve oluşturulacak bir hesap da yoktur. Metni camelCase'e dönüştürmenin sade yolu budur.
Özet
Metni buradan camelCase'e dönüştürmek için bir satır yapıştırın ve onu sözcükleri kesilmiş, ilki küçük, sonraki her birinin ilk harfi büyütülmüş ve her şey aralarında hiçbir şey olmadan birleştirilmiş olarak geri okuyun. Zaten snake_case ya da kebab-case yazılmış bir satır ayırıcılarından kesilir. Sayfa noktalamayı korumaz: virgüller, noktalar ve tireler sözcükler arasındaki sınırlardır, taşınacak karakterler değil; bu, bir değişken adı için istediğiniz şeydir ve düzyazı için değil. Sözcüklere kesmek sınırlar gerektirir; bu yüzden boşluksuz yazılan Çince ve Japonca tek bir sözcük olarak geri gelir. İlk harfi büyütmek sayfanın dilini izler; bu yüzden Türkçe i, İ olur. Hiçbir şey yüklenmez.