没有合适的资源?快使用搜索试试~ 我知道了~
首页Domain Modeling Made Functional Tackle Software Complexity with 无水印原版pdf
Domain Modeling Made Functional Tackle Software Complexity with ...

Domain Modeling Made Functional Tackle Software Complexity with Domain-Driven Design and F# 英文无水印原版pdf pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
资源详情
资源评论
资源推荐


ß
Under Construction: The book you’re reading is still under
development. As part of our Beta book program, we’re releasing
this copy well before a normal book would be released. That
way you’re able to get this content a couple of months before
it’s available in finished form, and we’ll get feedback to make
the book even better. The idea is that everyone wins!
Be warned: The book has not had a full technical edit, so it will contain errors.
It has not been copyedited, so it will be full of typos, spelling mistakes, and the
occasional creative piece of grammar. And there’s been no effort spent doing
layout, so you’ll find bad page breaks, over-long code lines, incorrect hyphen-
ation, and all the other ugly things that you wouldn’t expect to see in a finished
book. It also doesn't have an index. We can’t be held liable if you use this book
to try to create a spiffy application and you somehow end up with a strangely
shaped farm implement instead. Despite all this, we think you’ll enjoy it!
Download Updates: Throughout this process you’ll be able to get updated
ebooks from your account at
pragprog.com/my_account
. When the book is com-
plete, you’ll get the final version (and subsequent updates) from the same ad-
dress.
Send us your feedback: In the meantime, we’d appreciate you sending us your
feedback on this book at
pragprog.com/titles/swdddf/errata
, or by using the links
at the bottom of each page.
Thank you for being part of the Pragmatic community!
Andy

Domain Modeling Made Functional
Tackle Software Complexity with
Domain-Driven Design and F#
Scott Wlaschin
The Pragmatic Bookshelf
Raleigh, North Carolina

Many of the designations used by manufacturers and sellers to distinguish their products
are claimed as trademarks. Where those designations appear in this book, and The Pragmatic
Programmers, LLC was aware of a trademark claim, the designations have been printed in
initial capital letters or in all capitals. The Pragmatic Starter Kit, The Pragmatic Programmer,
Pragmatic Programming, Pragmatic Bookshelf, PragProg and the linking g device are trade-
marks of The Pragmatic Programmers, LLC.
Every precaution was taken in the preparation of this book. However, the publisher assumes
no responsibility for errors or omissions, or for damages that may result from the use of
information (including program listings) contained herein.
Our Pragmatic books, screencasts, and audio books can help you and your team create
better software and have more fun. Visit us at
https://pragprog.com
.
For sales, volume licensing, and support, please contact
support@pragprog.com
.
For international rights, please contact
rights@pragprog.com
.
Copyright © 2017 The Pragmatic Programmers, LLC.
All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted,
in any form, or by any means, electronic, mechanical, photocopying, recording, or otherwise,
without the prior consent of the publisher.
Printed in the United States of America.
ISBN-13: 978-1-68050-254-1
Encoded using the finest acid-free high-entropy binary digits.
Book version: B5.0—November 20, 2017

Contents
Change History . . . . . . . . . . . . vii
Preface . . . . . . . . . . . . . . ix
Part I — Understanding the Domain
1. Introducing Domain-Driven Design . . . . . . . 3
The Importance of a Shared Model 4
Understanding the Domain Through Business Events 7
Partitioning the Domain into Subdomains 15
Creating a Solution Using Bounded Contexts 17
Creating a Ubiquitous Language 22
Summarizing the Concepts of Domain-Driven Design 23
Wrapping Up 24
2. Understanding the Domain . . . . . . . . . 27
Interview with a Domain Expert 27
Fighting the Impulse to Do Database-Driven Design 31
Fighting the Impulse to Do Class-Driven Design 33
Documenting the Domain 34
Diving Deeper into the Order-Taking Workflow 35
Representing Complexity in our Domain Model 38
Wrapping Up 44
3. A Functional Architecture . . . . . . . . . 47
Bounded Contexts as Autonomous Software Components 48
Communicating Between Bounded Contexts 49
Contracts Between Bounded Contexts 52
Workflows Within a Bounded Context 54
Code Structure Within a Bounded Context 57
剩余296页未读,继续阅读















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1