Unlock the powers of functional programming hidden within JavaScript to build smarter, cleaner, and more reliable web apps
About This BookWrite powerful code with the high-level functions that JavaScript offersDiscover what functional programming is, why it's effective, and how it's used in JavaScriptUnderstand and optimize JavaScript's hidden potential as a true functional languageWho This Book Is ForIf you are a JavaScript developer interested in learning functional programming, looking for the quantum leap toward mastering the JavaScript language, or just want to become a better programmer in general, then this book is ideal for you. This guide is aimed at programmers, involved in developing reactive frontend apps, server-side apps that wrangle with reliability and concurrency, and everything in between.
What You Will LearnGet a run through of the basic JavaScript language constructsCode using the powerful object-oriented feature in JavaScriptMaster DOM manipulation, cross-browser strategies, and ES6Understand the basic concurrency constructs in Javascript and best performance strategiesHarness the power of patterns for tasks ranging from application building to code testingBuild large-scale apps seamlessly with the help of reactive patternsExplore advanced design patterns, including dependency injectionDevelop more powerful applications with currying and function compositionCreate more reliable code with closures and immutable dataIn DetailJavaScript is a high-level, dynamic, untyped, lightweight, and interpreted programming language and functional programming is a style that emphasizes and enables smarter code that minimizes complexity and increases modularity. It's a way of writing cleaner code through clever ways of mutating, combining, and using functions. And JavaScript provides an excellent medium for this approach. By learning how to expose JavaScript's true identity as a functional language, we can implement web apps that are more powerful, easier to maintain and more reliable.
The java script: Functional Programming for JavaScript Developers course will take you on a journey to show how functional programming when combined with other techniques makes JavaScript programming more efficient.
The first module Mastering JavaScript, stress on practical aspects of Javascript development like—Functions and Closures, Runtime debugging techniques, project layout, events and DOM processing, build tools, Object-oriented patterns, isomorphism—everything that a modern Javascript project would need.
The second module, Mastering JavaScript Design Patterns — Second Edition, will explore how design patterns can help you improve and organize your JavaScript code. You'll get to grips with creational, structural, and behavioral patterns as you discover how to put them to work in different scenarios. This updated edition will also delve into reactive design patterns and microservices as they are a growing phenomenon in the world of web development. It will also show you some advanced patterns, including dependency injection and live post processing.
The third module, Functional Programming in JavaScript, will help you to write real-world applications by utilizing a wide range of functional techniques and styles. It explores the core concepts of functional programming common to all functional languages, with examples of their use in JavaScript.
Style and approachThis course will begin with providing insights and practical tips on advanced JavaScript features to build highly scalable web and mobile system and move on to some design patterns with JavaScript. Finally, the course ends with presenting the functional programming techniques and styles in JavaScript.