Rethinking GRASP, SOLID, and GoF for JavaScript and Node.js
Practical training for rethinking and applying GRASP, SOLID, GoF patterns in asynchronous programming and JavaScript for application and system developers, backend and frontend, Node.js and browser applications.
Understanding these concepts can't just be extracted from a box (or book) and placed into your mind. It varies greatly for different languages and platforms. Blindly transferring knowledge and practices from C++ or Java to JavaScript and C# results in dead ceremonies. However, they can be revived through practice, tied to realities, and rethought to avoid becoming monstrous and horrors.
From the author of the first course on asynchronous programming in JavaScript (17 years ago, Kiev Polytechnic Institute), many conference talks and lectures on Node.js. Over the years, a lot of experience, code reviews, and practices have been collected and analized to rework the course almost every year, absorbing the best practices. Timur Shemsedinov is also a contributor to many platforms and libraries in open source, including Node.js, Metarhia, geoip-lite, MDN, HowProgrammingWorks, metasync... Timur is one of the first who began to port parallel programming abstractions from C++, C#, Java, Go and other languages โโto JavaScript.
Here's what I suggest learning and practicing.:
๐ Module Systems, Dependency Injection (DI), and Inversion of Control (IoC)
๐ฆ Decomposition of Abstractions and GRASP Principles
๐งฉ Gang of Four patterns rethinked for JavaScript realities
๐ฎ Principles of Isolation and SoC (Separation of Concerns)
๐ท๐ปโโ๏ธ Separation of Applied and System Code
๐งฉ SOLID principles: Single Responsibility, OCP, ISP, DIP, LSP
๐ Multi-Paradigm Programming and Domain-Specific Languages
๐งฉ Contract Programming and Modeling with Schemas
๐๏ธ Clean Architecture and Layered Architecture
Registration is temporarily closed.
Registration is temporarily closed.
Registration is temporarily closed.
Registration is temporarily closed.
Timur Shemsedinov - 28 years in IT, expert in node.js & javascript, software engineering, cybernetics, distributed systems architecture, databases, metaprogramming and building cloud services.