Functional Programming in C++
Autor Ivan Cukicen Limba Engleză Paperback – 28 ian 2019
Ca și Wisnu Anggoro în Learning C++ Functional Programming, autorul Ivan Cukic distilează experiență reală în principii acționabile, însă Functional Programming in C++ se distinge printr-o rigoare academică aplicată direct în proiecte de anvergură precum KDE. Găsim în această lucrare publicată de Manning o tranziție tehnică de la paradigma imperativă la cea funcțională, fără a sacrifica performanța brută pentru care este recunoscut limbajul C++.
Remarcăm modul în care sunt structurate conceptele: de la obiecte funcție și puritate, până la structuri de date funcționale și monade. Spre deosebire de abordările pur teoretice, această carte utilizează diagrame detaliate pentru a explica evaluarea leneșă (lazy evaluation) și metaprogramarea de șabloane (template metaprogramming). Credem că punctul forte al textului rezidă în capitolele dedicate gestionării erorilor prin sistemul de tipuri și compunerea sarcinilor utilizând DSL-uri, elemente care transformă radical mentenabilitatea codului.
Tonul este unul pragmatic, axat pe soluții pentru sisteme moderne și concurente. Autorul nu propune o abandonare a bibliotecii standard, ci o extindere a ei, demonstrând cum utilizarea lambda-urilor și a intervalelor (ranges) poate duce la un cod mai elegant și mai puțin predispus la erori. Experiența de lectură este una densă, orientată spre rezultate, fiind ideală pentru inginerii software care doresc să implementeze pattern-uri funcționale într-un limbaj multi-paradigmă, asigurând în același timp o execuție rapidă și predictibilă.
Preț: 284.52 lei
Preț vechi: 355.64 lei
-20%
Carte tipărită la comandă
Livrare economică 13-27 iunie
Livrare express 09-15 mai pentru 53.56 lei
Specificații
ISBN-10: 1617293814
Pagini: 320
Dimensiuni: 187 x 233 x 20 mm
Greutate: 0.6 kg
Editura: Manning
Colecția Pearson Professional
De ce să citești această carte
Recomandăm această carte dezvoltatorilor C++ care vor să treacă dincolo de programarea orientată pe obiecte. Veți câștiga o înțelegere profundă a modului în care conceptele funcționale pot reduce complexitatea logică și erorile de stare. Este un ghid esențial pentru a scrie cod modern, concurent și testabil, folosind instrumentele native ale limbajului fără a introduce overhead de performanță.
Despre autor
Ivan Cukic este un nume respectat în comunitatea open-source, fiind unul dintre dezvoltatorii principali (core developer) ai proiectului KDE. Cu o carieră începută în 1998, acesta îmbină expertiza practică din industria software cu activitatea didactică la Facultatea de Matematică a Universității din Belgrad. Specializarea sa în C++ modern și programare funcțională se reflectă în calitatea explicațiilor tehnice, autorul fiind recunoscut pentru capacitatea de a traduce concepte matematice abstracte în soluții de inginerie software aplicabile în sisteme complexe.
Descriere scurtă
Functional Programming in C++ teaches developers the practical side of functional programming and the tools that C++ provides to develop software in the functional style. This in-depth guide is full of useful diagrams that help you understand FP concepts and begin to think functionally.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Technology
Well-written code is easier to test and reuse, simpler to parallelize, and less error prone. Mastering the functional style of programming can help you tackle the demands of modern apps and will lead to simpler expression of complex program logic, graceful error handling, and elegant concurrency. C++ supports FP with templates, lambdas, and other core language features, along with many parts of the STL.
About the Book
Functional Programming in C++ helps you unleash the functional side of your brain, as you gain a powerful new perspective on C++ coding. You'll discover dozens of examples, diagrams, and illustrations that break down the functional concepts you can apply in C++, including lazy evaluation, function objects and invokables, algebraic data types, and more. As you read, you'll match FP techniques with practical scenarios where they offer the most benefit.
What's inside
- Writing safer code with no performance penalties
- Explicitly handling errors through the type system
- Extending C++ with new control structures
- Composing tasks with DSLs
Written for developers with two or more years of experience coding in C++.
About the Author
Ivan Čukic is a core developer at KDE and has been coding in C++ since 1998. He teaches modern C++ and functional programming at the Faculty of Mathematics at the University of Belgrade.
Table of Contents
- 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
- Monads
- Template metaprogramming
- Functional design for concurrent systems
- Testing and debugging
Notă biografică
programming at the Faculty of Mathematics in Belgrade for 6 years and has
been using C++ for more than 15 years. He has been researching functional
programming in C++ before and during his PhD studies, and uses the
techniques in real-world projects. He is one of the core developers in KDE,
the largest free/libre open source C++ project.