Kopyalamayı bırak, kaynağı taşı
C++ Move Constructor ve Move Assignment eğitimi; lvalue, prvalue ve xvalue, Rvalue Referansı ve std::move, Kopya Maliyetini Ölçmek, Perfect Forwarding'e Giriş ve daha fazlası. 2 gün, uygulamalı lab çalışmaları, Digital Vizyon Akademi katılım sertifikası.
Value Kategorileri ve Rvalue Referansları ve Move Constructor ve Move Assignment ekseninde ilerleyen uygulamalı program
Bu eğitim C++11 ile gelen move semantiğini temelinden ele alır: lvalue/rvalue ayrımı, rvalue referansı (T&&), std::move ve std::forward, move constructor ile move assignment operator yazımı, noexcept'in std::vector gibi konteynerlerdeki rolü ve Rule of Zero/Three/Five dengesi. Dinamik bellek tutan sınıflar üzerinde kopya maliyeti ölçülür, taşınan nesnenin geçerli ama belirsiz durumu ve self-assignment tuzakları uygulamalı incelenir.
2 Gün. Her gün dört modül; 1. gün Value Kategorileri ve Rvalue Referansları; 2. gün Move Constructor ve Move Assignment.
Orta Seviye — Move semantiği, rvalue referansları ve kaynak aktarımı ekseninde modern C++ eğitimi
Her modülde kısa konu anlatımının ardından g++/clang++ ile derlenen kod egzersizleri yapılır; sanitizer ve derleyici uyarılarıyla hatalar birlikte ayıklanır.
C++ Move Constructor ve Move Assignment konuları her modülde yazıp çalıştırdığınız egzersizlerle pekiştirilir; teori kodla birlikte ilerler.
Sahada sık görülen hatalar bilinçli olarak üretilir, nedenleri incelenir ve kalıcı çözüm kalıpları gösterilir.
Eğitimi tamamlayan katılımcılar Digital Vizyon Akademi Katılım ve Başarı Sertifikası alır.
Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri
Değişken, fonksiyon, sınıf ve işaretçi kavramlarına temel düzeyde aşinalık beklenir.
g++ / clang++ veya MSVC ile C++17 standardında derleme yapabilen bir kurulum gerekir.
Derleme çıktılarını ve hata mesajlarını okuyabilecek kadar terminal alışkanlığı faydalıdır.
VS Code, CLion ya da Visual Studio gibi bir geliştirme ortamı hazır olmalıdır.
Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.
Program sonunda katılımcılar:
lvalue, prvalue ve xvalue ifadelerini ayırt edip doğru aşırı yüklemeyi öngörebilirsiniz
std::move'un bir cast olduğunu bilerek yerinde ve güvenli kullanabilirsiniz
Kaynağı çalan ve eski nesneyi güvenli bırakan move constructor yazabilirsiniz
Self-assignment'a dayanıklı move assignment operator uygulayabilirsiniz
Taşıma işlemlerini noexcept işaretleyerek konteyner performansını koruyabilirsiniz
Özel üye fonksiyonların etkileşimini yönetip Rule of Zero tasarımı seçebilirsiniz
std::forward ile argümanları değer kategorisini bozmadan iletebilirsiniz
Kopya ve taşıma maliyetini ölçüp optimizasyon kararını veriye dayandırabilirsiniz
Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.
Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.
C++ aritmetik ve ilişkisel operatör aşırı yükleme eğitimi: +=, ++, ==, <, C++20 <=> spaceship, strict weak ordering ve Fraction, Money, BigInt sınıfları.
Detayları Gör →C++ stream operatörleri, atama operatörü ve copy-and-swap eğitimi: operator<<, operator>>, kendine atama, istisna güvenliği, move atama ve Rule of 5.
Detayları Gör →C++ sınıf şablonları eğitimi: Stack ve Array konteyner yazımı, tam ve kısmi özelleştirme, CTAD, üye şablonlar, typename ve bağımlı isimler uygulamaları.
Detayları Gör →C++ fonksiyon şablonları eğitimi: template<typename T>, tür çıkarımı, açık argüman, örnekleme, tam özelleştirme, aşırı yükleme çözümlemesi ve STL ilişkisi.
Detayları Gör →C++ Range-based for Döngüleri eğitimi: Range-based for Sözdizimi ve Güvenli Yineleme ve Ranges konularını uygulamalı örneklerle öğrenin. DVA katılım sertifikalı
Detayları Gör →