{"product_id":"functional-object-oriented-and-concurrent-programming-9780137466542","title":"Functional, Object-Oriented, and Concurrent Programming","description":"\u003cp\u003e • Author(s): Michel Charpentier\u003cbr\u003e • Publisher: Addison-Wesley Professional\u003cbr\u003e • Publisher Imprint: Addison-Wesley Professional\u003cbr\u003e • BISAC: Programming - Parallel\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eLeverage Modern Language Constructs to Write High-Quality Code Faster \u003cp\u003e\u003c\/p\u003e\u003c\/strong\u003eThe functional and concurrent programming language features supported by modern languages can be challenging, even for experienced developers. These features may appear intimidating to OOP programmers because of a misunderstanding of how they work. Programmers first need to become familiar with the abstract concepts that underlie these powerful features. \u003c\/p\u003e\u003cp\u003e\u003c\/p\u003eIn \u003cstrong\u003e\u003cem\u003eFunctional and Concurrent Programming\u003c\/em\u003e\u003c\/strong\u003e, Michel Charpentier introduces a core set of programming language constructs that will help you be productive in a variety of programming languages--now and in the future. Charpentier illustrates key concepts with numerous small, focused code examples, written in Scala, and with case studies that provide a thorough grounding in functional and concurrent programming skills. These skills will carry from language to language--including the most recent incarnations of Java. Using these features will enable developers and programmers to write high-quality code that is easier to understand, debug, optimize, and evolve. \u003cp\u003e\u003c\/p\u003eKey topics covered include:  \u003cul\u003e \u003cli\u003eRecursion and tail recursion\u003c\/li\u003e \u003cli\u003ePattern matching and algebraic datatypes\u003c\/li\u003e \u003cli\u003ePersistent structures and immutability\u003c\/li\u003e \u003cli\u003eHigher-order functions and lambda expressions\u003c\/li\u003e \u003cli\u003eLazy evaluation and streams\u003c\/li\u003e \u003cli\u003eThreads and thread pools\u003c\/li\u003e \u003cli\u003eAtomicity and locking\u003c\/li\u003e \u003cli\u003eSynchronization and thread-safe objects\u003c\/li\u003e \u003cli\u003eLock-free, non-blocking patterns\u003c\/li\u003e \u003cli\u003eFutures, promises, and functional-concurrent programming\u003c\/li\u003e \u003c\/ul\u003e \u003cp\u003e\u003cbr\u003eAs a bonus, the book includes a discussion of common typing strategies used in modern programming languages, including type inference, subtyping, polymorphism, type classes, type bounds, and type variance. \u003c\/p\u003e\u003cp\u003e\u003c\/p\u003eMost of the code examples are in Scala, which includes many of the standard features of functional and concurrent programming; however, no prior knowledge of Scala is assumed. You should be familiar with concepts such as classes, methods, objects, types, variables, loops, and conditionals and have enough programming experience to not be distracted by simple matters of syntax.","brand":"Addison-Wesley Professional","offers":[{"title":"Paperback","offer_id":45036032950423,"sku":"9780137466542","price":5850.0,"currency_code":"INR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0666\/3471\/1191\/files\/9780137466542.webp?v=1769212619","url":"https:\/\/atlanticbooks.com\/products\/functional-object-oriented-and-concurrent-programming-9780137466542","provider":"Atlantic Books","version":"1.0","type":"link"}