Neredeyse her büyük programlama dilinde, dizin ayırıcıları sizin için idare edecek bir kütüphane bulunur. Onları güçlendirmelisin. Bu, kodunuzu basitleştirir ve hataları önler .
Tecrübelerime göre, bunun gibi dizeleri birleştirmenin genel nedeni, farklı kaynaklardan gelmeleridir. Bazen bir yapılandırma dosyasından farklı parçalar olabilir. Bazen bir fonksiyon argümanı ile birleştirerek sabit. Her durumda ve farklı kaynaklardan geldiklerinde, birleştirilecek uçlardaki ayırıcılarla ilgili birkaç olası durumu göz önünde bulundurmalısınız:
- Her iki ucunda bir ayırıcı olabilir:
"images/"
ve"/sounds"
- Sadece bir bir ayırıcı vardır:
"images"
ve "/sounds"
ya "images/"
ve"sounds"
- Hiçbirinde bir ayırıcı yok:
"images"
ve"sounds"
Her bölümün farklı bir kaynaktan geldiği gerçeği, bir başkasına herhangi bir düşünce vermesi durumunda, her kaynağın hangi sözleşmeleri takip edeceği konusunda kendi fikirlerinin olabileceği anlamına gelir! Kodunuzu her ne çağırıyorsa, bunun için endişelenmenize gerek yoktur . Kodunuz tüm durumları ele almalıdır, çünkü birisi sözleşmenizi ihlal edecek . Bu, bir hatanın nedenini araştırarak ve düzeltmeyi boşa harcayarak sonuçlanacaktır. Bir iş arkadaşının, bir yapılandırma dosyasında yolların nasıl biçimlendirilmesi gerektiği konusunda bir varsayımda bulunduğu bazı nahoş durumlar yaşadım, bu da kodu araştırıp ne beklediğini (veya kodu düzeltmek zorunda kaldığım) anladım.
Çoğu ana dil, sizin için zaten birçok durumu ele alan bir yöntem sunar:
Bunlarla ilgili bir uyarı var. Bunların bir kısmı, ikinci argümandaki öncü bir dizin ayırıcısının bir kök yoluna atıfta bulunduğunu ve bunun ilk argümanın tamamen bırakılması gerektiği anlamına geldiğini düşünmektedir. Bunun neden faydalı olduğunu bilmiyorum; benim için sadece sorunlara neden olur. Asla iki yol bölümünü birleştirmek ve ilk kısmı atılmak istemedim. Özel durumlar için belgeleri dikkatlice okuyun ve gerekiyorsa, özel kullanımları yerine, bunlarla ne istediğinizi yapan bir sarıcı yazın.
Bu, farklı işletim sistemlerini destekleme gereksiniminiz varsa, ayrıca yardımcı olur. Bu sınıflar neredeyse her yerde, doğru ayırıcıyı seçmekten sorumludur. Kütüphaneler genellikle işletim sistemi sözleşmelerine uyacak şekilde normalize etme yollarına da sahiptir.
Programlama dilinizin hazır bir kütüphaneye sahip olmaması durumunda, tüm bu davaları ele alan ve bunları serbestçe ve projeler arasında kullanan bir yöntem yazmalısınız .
Bu, "varsayımlarda bulunma" ve "size yardımcı olacak araçları kullanma" kategorisine giriyor.