Haftalık C++ 49 – “Generic Lambda” ve “Lambda Capture Initializers”

Merhaba yazılımperver dostlarım, C++ 14 yazılarımıza devam ediyoruz. Bu yazımda kalan C++ 14 özelliklerinden olan Jenerik Lambda (“Generik Lambda”) ve “lambda capture initializers” kabiliyetlerine bakıyor olacağız. Bu iki kabiliyeti, daha önce C++ 11 ile sunulan Lambda kabiliyetleri üzerene yapılan iyileştirmeler olarak görebilirsiniz. Bu sebeple eğer daha önce incelemediyseniz aşağıdaki yazıma göz atmanızı şiddetle tavsiye ediyorum:… Continue reading

Haftalık C++ 47 – C++ Serialization/Deserialization

Merhaba sevgili yazılımperver dostlarım bir başka haftalık C++ yazım ile birlikteyiz. Bu yazımda, eminim bir çoğunuzun ihtiyacını hissettiği C++  “serialization/deserialization” ihtiyacına yardımcı olabilecek alternatiflerden birine değineceğim: Cereal Kütüphanesi. Diğer alternatifler için https://github.com/thekvs/cpp-serializers sayfasına bakabilirsiniz. Açıkçası, uzun bir  süre önce boost kütüphanelerinin sunduğu “serialization” kabiliyetlerini kullanmıştım. Daha sonraları ise, json ve xml kütüphanelerini kullanarak, bu tarz… Continue reading

Haftalık C++ 46 – constexpr fonksiyonlar ve fonskiyonlar için dönüş tipi çıkarımı

Merhaba sevgili yazılımperver dostlarım, C++ 14 yazılarımıza devam ediyoruz. Bu yazımda, mevcut kabiliyetlere yapılan bir takım ekleme mahiyetindeki özelliğe göz atıyor olacağız. Her ne kadar, çok sık kullanacağınız ya da muhakkak ihtiyacınız olacak kabiliyetler olmasa da, yine de faydalı olacağına inanıyorum. O zaman daha fazla oyalanmadan bunlara bir göz atalım. constexpr fonksiyonlara ilişkin güncellemeler constexpr… Continue reading

Modern C++ (4) : Smart Pointers-I

Güncelleme (auto_ptr vs unique_ptr): Tekrar merhaba arkadaşlar, gelen bir iki yorum sonrasında bir konuyu açıklığa kavuşturmakta fayda olduğunu düşündüm. Bu da std::unique_ptr ile std::auto_ptr arasındaki fark. Gerçi yazımda, std::auto_ptr’ın pek bir anlamı kalmadığını, bu amaçla std::unique_ptr kullanılabileceğini ifade etmiştim ama meraklı arkadaşlar için bir kaç kelam etmekte bir sakınca yok. auto_ptr’ın kopya yapıcısı ve atama… Continue reading

Haftalık C++ 44 – Aktif Nesne Tasarım Örüntüsü

Evet sevgili yazılımperver dostlarım, 2021 bitmeden sizler ile terkar birlikteyiz. Bu yazımızın konusu Aktif Nesne tasarım örüntüsü. Eminim bir çoğunuz temel bir çok tasarım örüntülerini duymuşssunuzdur: “Singleton”, “Factory” ya da “Observer” gibi. Eğer bunları duymadıysanız (ki bunlara ben de 2022’de inşallah C++ perspektifinden eğileceğim), sizlere bu konudaki mihenk taşı olan bir kitaba göz atmanızı önereceğim:… Continue reading

Haftalık C++ 43 – {fmt} Kütüphanesi

Evet sevgili yazılımperver dostlarım, kısa bir aradan sonra, bir süredir yazılımlarımda kullandığım ve sizlerin de kullanmasını şiddetle tavsiye ettiğim bir kütüphaneye derinlemesine göz atıyor olacağız: {fmt} kütüphanesi. Yazı uzun, işlecek kabiliyet çok o zaman çok oyalanmadan başlayalım. FMT {fmt} Kütüphanesi FMT nedir? Geliştiricisinin ağzıyla bakacak olursak: {fmt} C stdio ve C++ iostream kabiliyetlerine, hızlı ve… Continue reading