A List Apart

Menu
Issue № 375

The care and feeding of JavaScript.

The Design of Code: Organizing JavaScript

by Anthony Colangelo · 31 Comments

Well-designed code is much easier to maintain, optimize, and extend, making for more efficient developers. Three high-level, language-agnostic aspects of code design are key to achieving this nirvana: system architecture, maintainability, and reusability. All three may be attained via the module pattern, whose extensible structure lends itself to a solid system architecture and a maintainable codebase. Anthony Colangelo shows how to craft our code into well-organized components that can be reused in projects to come.

Writing Testable JavaScript

by Rebecca Murphey · 32 Comments

As our JavaScript takes on more and more responsibilities, we need a reliable codebase—one that is thoroughly tested. Integration tests focus on how the pieces of an application work together, but don’t tell us whether individual units of functionality are behaving as expected. That’s where unit testing comes in. And we’ll have a hard time writing unit tests until we start writing testable JavaScript. Rebecca Murphey explains how to save time in the long run by writing cleaner application code and testing, testing, testing.

More from A List Apart

Columnists

Antoine Lefeuvre on The Web, Worldwide

Designing for Post-Connected Users — Part 1, the Diagnostic

How sustainable is a model where social networks take a central role in our daily routine? Antoine Lefeuvre believes there’s growing awareness that social networking tools don’t necessarily bring out the best in us. While we do want and appreciate tools that let us engage with others and do things together, we’re getting tired of the high price in attention and stress.

From the Blog

Prioritizing Structure in Web Content Projects

New content projects present a classic chicken-and-egg problem: should we start with the words, or focus on the structure they’ll take? There are benefits and challenges either way, but Eileen Webb has recently become a believer that starting with structure creates a better workflow for developers, designers and content creators alike.