Book description
Get the most out of JavaScript for building web applications through a series of patterns, techniques, and case studies for clean coding
Key Features
- Write maintainable JS code using internal abstraction, well-written tests, and well-documented code
- Understand the agents of clean coding like SOLID principles, OOP, and functional programming
- Explore solutions to tackle common JavaScript challenges in building UIs, managing APIs, and writing states
Book Description
Building robust apps starts with creating clean code. In this book, you'll explore techniques for doing this by learning everything from the basics of JavaScript through to the practices of clean code. You'll write functional, intuitive, and maintainable code while also understanding how your code affects the end user and the wider community.
The book starts with popular clean-coding principles such as SOLID, and the Law of Demeter (LoD), along with highlighting the enemies of writing clean code such as cargo culting and over-management. You'll then delve into JavaScript, understanding the more complex aspects of the language. Next, you'll create meaningful abstractions using design patterns, such as the Class Pattern and the Revealing Module Pattern. You'll explore real-world challenges such as DOM reconciliation, state management, dependency management, and security, both within browser and server environments. Later, you'll cover tooling and testing methodologies and the importance of documenting code. Finally, the book will focus on advocacy and good communication for improving code cleanliness within teams or workplaces, along with covering a case study for clean coding.
By the end of this book, you'll be well-versed with JavaScript and have learned how to create clean abstractions, test them, and communicate about them via documentation.
What you will learn
- Understand the true purpose of code and the problems it solves for your end-users and colleagues
- Discover the tenets and enemies of clean code considering the effects of cultural and syntactic conventions
- Use modern JavaScript syntax and design patterns to craft intuitive abstractions
- Maintain code quality within your team via wise adoption of tooling and advocating best practices
- Learn the modern ecosystem of JavaScript and its challenges like DOM reconciliation and state management
- Express the behavior of your code both within tests and via various forms of documentation
Who this book is for
This book is for anyone who writes JavaScript, professionally or otherwise. As this book does not relate specifically to any particular framework or environment, no prior experience of any JavaScript web framework is required. Some knowledge of programming is assumed to understand the concepts covered in the book more effectively.
Table of contents
- Title Page
- Copyright and Credits
- About Packt
- Contributors
- Preface
- Section 1: What is Clean Code Anyway?
- Setting the Scene
- The Tenets of Clean Code
- The Enemies of Clean Code
- SOLID and Other Principles
- Naming Things Is Hard
- Section 2: JavaScript and Its Bits
- Primitive and Built-In Types
- Dynamic Typing
-
Operators
- What is an operator?
- Arithmetic and numeric operators
- Logical operators
- Comparative operators
- Assignment operators
- Property access operators
- Other operators and syntax
- Bitwise operators
- Summary
- Parts of Syntax and Scope
- Control Flow
- Section 3: Crafting Abstractions
- Design Patterns
- Real-World Challenges
- Section 4: Testing and Tooling
- The Landscape of Testing
- Writing Clean Tests
- Tools for Cleaner Code
- Section 5: Collaboration and Making Changes
- Documenting Your Code
- Other Peoples' Code
- Communication and Advocacy
- Case Study
- Other Books You May Enjoy
Product information
- Title: Clean Code in JavaScript
- Author(s):
- Release date: January 2020
- Publisher(s): Packt Publishing
- ISBN: 9781789957648
You might also like
video
Mastering Clean Code in JavaScript
Alongside HTML and CSS, JavaScript is one of the three core technologies of World Wide Web …
book
Multithreaded Javascript
Traditionally, JavaScript has been a single-threaded language. Nearly all online forum posts, books, online documentation, and …
video
Test-Driven Development for JavaScript
10+ Hours of Video Instruction Learn How to Use Test-Driven Development Techniques to Create High-Quality JavaScript …
book
Learning JavaScript Design Patterns
With Learning JavaScript Design Patterns, you’ll learn how to write beautiful, structured, and maintainable JavaScript by …