JavaScript domain-driven design : speed up your application development by leveraging the patterns of domain-driven design /
If you are an experienced JavaScript developer who wants to improve the design of his or her applications, or find yourself in a situation to implement an application in an unfamiliar domain, this book is for you. Prior knowledge of JavaScript is required and prior experience with Node.js will also...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham, UK :
Packt Publishing,
2015.
|
Colección: | Community experience distilled.
|
Temas: | |
Acceso en línea: | Texto completo Texto completo |
Tabla de Contenidos:
- Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: A Typical JavaScript Project; The core idea of domain-driven design; Managing an orc dungeon; Inside the dungeon; Managing incoming prisoners; The current state of the art; Digital dungeon management; Specification; Tracking available cells; Starting outgoing transfers; Tracking the state of incoming transfers; Initiating incoming transfers; From greenfield to application; The first route and model; Creating the model; The first route and loading the dungeon
- Displaying the pageGluing the application together via express; Moving the application forward; Another look at the problem; Thinking in an MVC web application; Understanding the core problem; Communication is key; The concepts of domain-driven design; It is all about distractions; Focus on the problem at hand; Further reading; Summary; Chapter 2: Finding the Core Problem; Exploring a problem; Outlining the problem; Tracking knowledge; The medium; Paper programming; So how does such a paper program work?; Not so scary UML; Involving the experts; Finding the gaps; Talking business
- Talking about the actorsIdentifying the hard problem; Mapping the dependencies; Drawing with code
- spiking; Getting started, it's about time; Creating value without creating code; Deciding on the first feature; Summary; Chapter 3: Setting Up a Project for Domain-driven Design; Structuring a project as we see it; Approachability; Locality of edits; Fitness; Dealing with shared functionality; A shared toolbox; Moving up the dependencies; Testing; Setting up a test environment; Different types of tests and goals; Feature specs; Unit tests; Performance tests; Continuous integration
- Managing the buildWhy every application needs a build system; Running the tests; Packaging the application; Deploying; Choosing the right system; Isolating the domain; The architecture of modern applications; Hexagonal architecture; Applying the pattern; Plugging in a framework; Summary; Chapter 4: Modelling the Actors; The shoulders of giants; The Different approaches to development; Introducing mocks; Why and why not to mock; Who is involved in the prisoner transfer?; Different objects and their roles; Naming objects according to the domain; The traps of common names like *Manager
- Readability of method namesObjects first; The basics of objects in JavaScript; Inheritance and why you won't need it; Modeling patterns beyond inheritance; The object compositionomposition; Polymorphism without inheritance; Applying object design to the domain; Building a system on simple objects; Summary; Chapter 5: Classification and Implementation; Building a common language; The importance of object classification; Seeing the bigger picture; Value objects; The advantages of value objects; The referential transparency; Objects defined as entities; More on entities