Bu eğitim sadece C++ programlama dilinin kendisini öğretmek üzere tasarlanmamıştır. Aynı zamanda fonksiyonel programlama ve fonksiyonel programlanın C++ ile nasıl uyumlu olduğuyla da ilgilidir. Fonksiyonel programlama, C++ ile genel olarak kullanılan zorunlu ve nesne odaklı stillere kıyasla yazılım tasarımını farklı şekilde düşünmeye ve farklı bir programlamaya imkan sağlamaktadır. Bu eğitim iki kısma ayrılmaktadır. İlk kısmı fonksiyonel programlama deyimlerini ve bunların C++’ya nasıl uygulanabileceğini kapsamaktadır. Eğitimin ikinci kısmı ise ağırlıkla fonksiyonel yazılım tasarımı ile ilgili olmak üzere daha gelişmiş kavramlarla ilgilidir.
Topics
- Introduction to Functional Programming
- Getting started with functional programming
- Function objects
- Creating new functions from the old ones
- Purity: Avoiding mutable state
- Lazy evaluation
- Ranges
- Functional data structures
- Algebraic data types and pattern matching