Description
Write clear, expressive and maintainable JS

A strong understanding of programming languages helps you to deliver functional solutions quickly, and will reduce your usage of third-party ‘utility’ dependencies like jQuery or lodash. This essential collection of design patterns and best practices will help build your overall understanding of JavaScript as a language, helping you confidently and quickly deliver robust, scalable web applications.

About the Author

Ben Fhala discovered his passion for data visualization six years ago while he was working at Parsons in New York, in their data visualization department, PIIM. He is the owner of the online video training school, 02geek.com, and an Adobe ACP. He enjoys spending most of his time learning and teaching and has a love for visual programming and visualization in general. Ben has had the honor of developing applications for members of the US Congress, Prime Ministers, and Presidents around the world. He has built many interactive experiences for companies such as Target, AT&T, Crayola, Marriott, Neutrogena, and Nokia. He has technically directed many award-winning projects and has been part of teams that have won three Agency of the Year awards.
Rodrigo Formigone Silveira is a software engineer at Deseret Digital Media. There, he divides his time developing in PHP, JavaScript, and Java for Android. Some of his hobbies outside of work include blogging and recording educational videos about software development, learning about new technologies, and finding ways to push the web forward.
Rodrigo received his Bachelor’s of Science in Computer Science from Brigham Young University, Idaho, as well as an Associate’s Degree in Business Management from LDS Business College in Salt Lake City, Utah.
His fascination for game development began in his early teenage years, and his skills grew as he discovered the power of a library subscription. He has a curious and willing mind, with understanding and supporting parents and friends.
Today, Rodrigo balances his time between the three great passions of his life—his family, software development, and video games (with the last two usually being mingled together).
Alexandr Truhin (bumbu) is a proponent of open web and robust solutions. His engineering background is based on desktop, back-end and front-end web applications where most recent years he’s using JavaScript to build fast and reach web applications.
His passion is improving and passing knowledge which has been doing by teaching in University, writing blog posts, mentoring other developers and contributing to open source community.
Basic knowledge
A firm understanding of JavaScript and JavaScript (ES5) syntax
What will you learn
Customize the built-in objects to create a digital clock
Explore the world of prototypes to leverage the functionality of objects
Dive into the world of objects, which can talk and see each other through events and callbacks
Shed the traditional methods and work with constructors and scopes
Make your code more efficient and productive with the use of methods, properties, and inheritance
Master existing JavaScript collections such as arrays, sets, and maps
Develop abstract data types to extend JavaScript into a more flexible and powerful programming language
Grasp the basics of software engineering to differentiate yourself from undisciplined coders
Conjure powerful algorithms to traverse dense graphs and trees in the least possible steps
Devour the science of comparing different algorithms to choose the best one for the respective task
Search and sort native and custom data types through collection iterator methods
Create complex abstract data types by reusing existing classes
Master the logic behind the major design patterns, and wield them confidently for JavaScript programming
Understand how to modularize and condense code, optimize memory, and negotiate design problems
Explore Creational design patterns including the Singleton, Factory, and Prototype
Implement greater abstraction into application design, and control multiple objects sharing APIs with the help of Structural design patterns
Chain objects together and manage events and states using Behavioural design patterns
Ultimately deepen your understanding of JavaScript and understand how design patterns can make you a better, more effective programmer.
Understand how to build a practical application with the help of design patterns
Write robust, maintainable JavaScript applications by using battle-tested solutions to common problems
Improve code readability by using common solutions and better names for what you are trying to accomplish
Build and use a server as a data provider
Leverage the deferred nature of JavaScript with call-backs and promises
Better your communication of design goals with other programmers through usage of common terms
Create a separation of concerns to split modules based on different responsibilities.
Learn how to cache and minify HTML, CSS and JavaScript to optimize app performance
Familiarise yourself with best practices in order to create effective code
Implement various efficient methods for referring to functions and classes
Simplify loops and arrays to make your app faster than ever
Beautify your app without compromising speed, using smoother animations
Identify memory leaks and avoid them, using various techniques to improve app functionality
Improve app stability by enhancing JavaScript events

#JavaScript #learning-path #javascript-patterns

Learning Path: Javascript Patterns
1.35 GEEK