- Yazar, 2023 sonuna kadar benimsediği kişisel C kodlama stilini tartışıyor ve tekniklerdeki önemli değişimlerle iyileştirmeleri vurguluyor.
- Yazar, ilkel türler için kısa adlar kullanmaya başladığını ve bunun açıklığı artırdığını, ayrıca kod incelemelerini daha keyifli hale getirdiğini söylüyor.
- Yazar, ilkel türler için yeni adlandırma kurallarına
typedef uint8_t u8; ve typedef char16_t c16; gibi örnekler veriyor.
- Yazar, fonksiyon gibi görünen makrolar için küçük harf kullanımını benimsedi; çünkü bunun okunması kolay ve diğer makro tanımlarıyla aynı namespace sorunlarına sahip olmadığını düşünüyor.
- Yazar,
const kullanımını bırakmış; çünkü bunun optimizasyonda pratikte bir rol oynamadığını ve hataları yakalayamadığını düşünüyor. C diline dahil edilmesinin bir hata olduğuna inanıyor.
- Yazar, null-terminated string'leri reddedip temel string türünü benimsediğini ve bunun daha üretken olduğunu gördüğünü söylüyor.
- Yazar, out parametreler yerine struct döndürmeyi tercih ediyor; bunun birden fazla değerin etkili biçimde döndürülmesine izin verdiğini belirtiyor.
- Yazar, başlatıcılardan uzaklaşıp, geleneksel sıfır başlatıcı dışında, atama yoluyla başlatmayı tercih ediyor.
- Yazar,
__attribute__ yerine __attribute kullanımını tercih ediyor; çünkü ikincisini aşırı ve gereksiz buluyor.
- Win32 sistem programlama için yazar, derleme süresini azaltmak, namespace'i düzenlemek ve programla daha temiz arayüz kurmak amacıyla özel türler kullanarak prototipleri elle yazmayı öneriyor.
- Yazar,
wordhist.c ve asmint.c gibi küçük programlarda kendi kodlama stiline dair örnekler sunuyor.
1 yorum
Hacker News görüşü
ALL_CAPSkullanımına dair bir tartışma var; bazıları bunun önişlemci makrolarına ayrılması gerektiğini öne sürüyor.uint8_tveyaint32_tyerineu8ya dai32kullanmak gibi yerleşik geleneklerden sapmasının başkaları için kafa karıştırıcı olabileceği düşünülüyor.floatın 32 bit vedoubleın 64 bit olduğu varsayımına dair kaygılar var ve bunun potansiyel olarak sorun yaratabileceği düşünülüyor.