LEADER 05238nam 2200649 450 001 9910511730703321 005 20170822145212.0 010 $a1-78439-114-X 035 $a(CKB)3710000000457054 035 $a(EBL)2122135 035 $a(SSID)ssj0001567712 035 $a(PQKBManifestationID)16212639 035 $a(PQKBTitleCode)TC0001567712 035 $a(PQKBWorkID)14835304 035 $a(PQKB)11620995 035 $a(MiAaPQ)EBC2122135 035 $a(CaSebORM)9781784394325 035 $a(PPN)228045347 035 $a(EXLCZ)993710000000457054 100 $a20150815h20152015 uy 0 101 0 $aeng 135 $aur|n|---||||| 181 $ctxt 182 $cc 183 $acr 200 10$aJavaScript domain-driven design $espeed up your application development by leveraging the patterns of domain-driven design /$fPhilipp Fehre 205 $a1st edition 210 1$aBirmingham, [England] ;$aMumbai, [India] :$cPackt Publishing,$d2015. 210 4$dİ2015 215 $a1 online resource (207 p.) 225 1 $aCommunity Experience Distilled 300 $aDescription based upon print version of record. 311 $a1-78439-432-7 320 $aIncludes bibliographical references at the end of each chapters and index. 327 $aCover; 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 327 $aDisplaying 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 327 $aTalking 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 327 $aManaging 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 327 $aReadability 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 327 $aManaging the application's lifecycle 330 $aIf 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 be helpful. 410 0$aCommunity experience distilled. 606 $aJava (Computer program language) 606 $aApplication program interfaces (Computer software) 608 $aElectronic books. 615 0$aJava (Computer program language) 615 0$aApplication program interfaces (Computer software) 676 $a005.2 676 $a005.2762 700 $aFehre$b Philipp$01068161 801 0$bMiAaPQ 801 1$bMiAaPQ 801 2$bMiAaPQ 906 $aBOOK 912 $a9910511730703321 996 $aJavaScript domain-driven design$92552676 997 $aUNINA