<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta name="generator" content="pdf2htmlEX">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="https://static.pudn.com/base/css/base.min.css">
<link rel="stylesheet" href="https://static.pudn.com/base/css/fancy.min.css">
<link rel="stylesheet" href="https://static.pudn.com/prod/directory_preview_static/6253c3b074bc5c01050d037a/raw.css">
<script src="https://static.pudn.com/base/js/compatibility.min.js"></script>
<script src="https://static.pudn.com/base/js/pdf2htmlEX.min.js"></script>
<script>
try{
pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
}catch(e){}
</script>
<title></title>
</head>
<body>
<div id="sidebar" style="display: none">
<div id="outline">
</div>
</div>
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6253c3b074bc5c01050d037a/bg1.jpg"></div><div class="pi" data-data='{"ctm":[1.904762,0.000000,0.000000,1.904762,0.000000,0.000000]}'></div></div>
</body>
</html>
<div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6253c3b074bc5c01050d037a/bg2.jpg"><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0">Learn<span class="_ _0"> </span>the<span class="_ _0"> </span>Four<span class="_ _0"> </span>Swift<span class="_ _0"> </span>Patterns<span class="_ _0"> </span>I<span class="_ _0"> </span>Swear</div><div class="t m0 x1 h2 y2 ff1 fs0 fc0 sc0 ls0 ws0">By</div><div class="t m0 x1 h3 y3 ff2 fs1 fc0 sc0 ls0 ws0">Bart<span class="_ _1"> </span>Jacobs</div><div class="t m0 x1 h4 y4 ff2 fs2 fc0 sc0 ls0 ws0">This<span class="_ _2"> </span>book<span class="_ _2"> </span>is<span class="_ _2"> </span>for<span class="_ _2"> </span>sale<span class="_ _2"> </span>at</div><div class="t m0 x1 h4 y5 ff2 fs2 fc1 sc0 ls0 ws0">http://leanpub.com/learn-<span class="_ _3"></span>the-<span class="_ _3"></span>four-<span class="_ _3"></span>swift-<span class="_ _3"></span>patterns-<span class="_ _3"></span>i-<span class="_ _3"></span>swear-<span class="_ _3"></span>by</div><div class="t m0 x1 h4 y6 ff2 fs2 fc0 sc0 ls0 ws0">This<span class="_ _2"> </span>version<span class="_ _2"> </span>was<span class="_ _2"> </span>published<span class="_ _2"> </span>on<span class="_ _2"> </span>2017-11-19</div><div class="t m0 x1 h4 y7 ff2 fs2 fc0 sc0 ls0 ws0">This<span class="_ _2"> </span>is<span class="_ _2"> </span>a<span class="_ _2"> </span><span class="fc1">Leanpub<span class="_ _2"> </span></span>book.<span class="_ _2"> </span>Leanpub<span class="_ _2"> </span>empowers<span class="_ _2"> </span>authors<span class="_ _2"> </span>and<span class="_ _2"> </span>publishers</div><div class="t m0 x1 h4 y8 ff2 fs2 fc0 sc0 ls0 ws0">with<span class="_ _2"> </span>the<span class="_ _2"> </span>Lean<span class="_ _2"> </span>Publishing<span class="_ _2"> </span>process.<span class="_ _2"> </span><span class="fc1">Lean<span class="_ _2"> </span>Publishing<span class="_ _2"> </span></span>is<span class="_ _2"> </span>the<span class="_ _2"> </span>act<span class="_ _2"> </span>of</div><div class="t m0 x1 h4 y9 ff2 fs2 fc0 sc0 ls0 ws0">publishing<span class="_ _2"> </span>an<span class="_ _2"> </span>in-progress<span class="_ _2"> </span>ebook<span class="_ _2"> </span>using<span class="_ _2"> </span>lightweight<span class="_ _2"> </span>tools<span class="_ _2"> </span>and<span class="_ _2"> </span>many</div><div class="t m0 x1 h4 ya ff2 fs2 fc0 sc0 ls0 ws0">iterations<span class="_ _2"> </span>to<span class="_ _2"> </span>get<span class="_ _2"> </span>reader<span class="_ _2"> </span>feedback,<span class="_ _2"> </span>pivot<span class="_ _2"> </span>until<span class="_ _2"> </span>you<span class="_ _2"> </span>have<span class="_ _2"> </span>the<span class="_ _2"> </span>right<span class="_ _2"> </span>book</div><div class="t m0 x1 h4 yb ff2 fs2 fc0 sc0 ls0 ws0">and<span class="_ _2"> </span>build<span class="_ _2"> </span>traction<span class="_ _2"> </span>once<span class="_ _2"> </span>you<span class="_ _2"> </span>do.</div><div class="t m0 x1 h4 yc ff2 fs2 fc0 sc0 ls0 ws0">©<span class="_ _2"> </span>2017<span class="_ _2"> </span>Code<span class="_ _2"> </span>Foundry<span class="_ _2"> </span>BVBA</div><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a></div><div class="pi" data-data='{"ctm":[1.904762,0.000000,0.000000,1.904762,0.000000,0.000000]}'></div></div>
<div id="pf3" class="pf w0 h0" data-page-no="3"><div class="pc pc3 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6253c3b074bc5c01050d037a/bg3.jpg"><div class="t m0 x1 h5 yd ff1 fs3 fc0 sc0 ls0 ws0">Contents</div><div class="t m0 x1 h4 ye ff1 fs2 fc0 sc0 ls0 ws0">About<span class="_ _2"> </span>Cocoacasts<span class="_ _4"> </span><span class="ff2">.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span></span>1</div><div class="t m0 x1 h4 yf ff1 fs2 fc0 sc0 ls0 ws0">Welcome<span class="_ _2"> </span><span class="ff2">.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span></span>3</div><div class="t m0 x2 h4 y10 ff2 fs2 fc0 sc0 ls0 ws0">1<span class="_ _2"> </span>Namespaces<span class="_ _2"> </span>in<span class="_ _2"> </span>Swift<span class="_ _8"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>3</div><div class="t m0 x2 h4 y11 ff2 fs2 fc0 sc0 ls0 ws0">2<span class="_ _2"> </span>Dependency<span class="_ _2"> </span>Injection<span class="_ _2"> </span>in<span class="_ _2"> </span>Swift<span class="_ _9"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>3</div><div class="t m0 x2 h4 y12 ff2 fs2 fc0 sc0 ls0 ws0">3<span class="_ _2"> </span>Value<span class="_ _2"> </span>Types<span class="_ _2"> </span>and<span class="_ _2"> </span>Reference<span class="_ _2"> </span>Types<span class="_ _a"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>4</div><div class="t m0 x2 h4 y13 ff2 fs2 fc0 sc0 ls0 ws0">4<span class="_ _2"> </span>Model-View-ViewModel<span class="_ _2"> </span>in<span class="_ _2"> </span>Swift<span class="_ _9"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>4</div><div class="t m0 x1 h4 y14 ff1 fs2 fc0 sc0 ls0 ws0">1<span class="_ _2"> </span>Namespaces<span class="_ _9"> </span><span class="ff2">.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span></span>5</div><div class="t m0 x2 h4 y15 ff2 fs2 fc0 sc0 ls0 ws0">Using<span class="_ _2"> </span>Structures<span class="_ _9"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>5</div><div class="t m0 x2 h4 y16 ff2 fs2 fc0 sc0 ls0 ws0">Using<span class="_ _2"> </span>Enumerations<span class="_"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>7</div><div class="t m0 x2 h4 y17 ff2 fs2 fc0 sc0 ls0 ws0">Conclusion<span class="_ _2"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _7"> </span>9</div><div class="t m0 x1 h4 y18 ff1 fs2 fc0 sc0 ls0 ws0">2<span class="_ _2"> </span>Dependency<span class="_ _2"> </span>Injection<span class="_ _b"> </span><span class="ff2">.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span></span>10</div><div class="t m0 x2 h4 y19 ff2 fs2 fc0 sc0 ls0 ws0">What<span class="_ _2"> </span>Is<span class="_ _2"> </span>Dependency<span class="_ _2"> </span>Injection<span class="_ _9"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>10</div><div class="t m0 x2 h4 y1a ff2 fs2 fc0 sc0 ls0 ws0">An<span class="_ _2"> </span>Example<span class="_ _c"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>11</div><div class="t m0 x2 h4 y1b ff2 fs2 fc0 sc0 ls0 ws0">Another<span class="_ _2"> </span>Example<span class="_ _d"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>13</div><div class="t m0 x2 h4 y1c ff2 fs2 fc0 sc0 ls0 ws0">What<span class="_ _2"> </span>Do<span class="_ _2"> </span>You<span class="_ _2"> </span>Gain<span class="_ _9"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>14</div><div class="t m0 x2 h4 y1d ff2 fs2 fc0 sc0 ls0 ws0">Types<span class="_ _1"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>16</div><div class="t m0 x2 h4 y1e ff2 fs2 fc0 sc0 ls0 ws0">A<span class="_ _2"> </span>Word<span class="_ _2"> </span>About<span class="_ _2"> </span>Singletons<span class="_ _e"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _b"> </span>19</div><div class="t m0 x1 h4 y1f ff1 fs2 fc0 sc0 ls0 ws0">3<span class="_ _2"> </span>Value<span class="_ _2"> </span>Types<span class="_ _2"> </span>and<span class="_ _2"> </span>Reference<span class="_ _2"> </span>Types<span class="_ _6"> </span><span class="ff2">.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.</span></div><div class="t m0 x3 h6 y20 ff1 fs2 fc0 sc0 ls0 ws0">20</div><div class="t m0 x2 h4 y21 ff2 fs2 fc0 sc0 ls0 ws0">Value<span class="_ _2"> </span>Types<span class="_ _2"> </span>&<span class="_ _2"> </span>Reference<span class="_ _2"> </span>Types<span class="_ _f"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>20</div><div class="t m0 x2 h4 y22 ff2 fs2 fc0 sc0 ls0 ws0">An<span class="_ _2"> </span>Example<span class="_ _c"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>21</div><div class="t m0 x2 h4 y23 ff2 fs2 fc0 sc0 ls0 ws0">Benefits<span class="_ _2"> </span>of<span class="_ _2"> </span>Value<span class="_ _2"> </span>Types<span class="_ _10"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>22</div><div class="t m0 x2 h4 y24 ff2 fs2 fc0 sc0 ls0 ws0">When<span class="_ _2"> </span>to<span class="_ _2"> </span>Use<span class="_ _2"> </span>Value<span class="_ _2"> </span>Types<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>23</div><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a></div><div class="pi" data-data='{"ctm":[1.904762,0.000000,0.000000,1.904762,0.000000,0.000000]}'></div></div>
<div id="pf4" class="pf w0 h0" data-page-no="4"><div class="pc pc4 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6253c3b074bc5c01050d037a/bg4.jpg"><div class="t m0 x1 h7 y25 ff2 fs4 fc0 sc0 ls0 ws0">CONTENTS</div><div class="t m0 x1 h4 y26 ff1 fs2 fc0 sc0 ls0 ws0">4<span class="_ _2"> </span>Model-View-ViewModel<span class="_ _b"> </span><span class="ff2">.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span></span>25</div><div class="t m0 x2 h4 y27 ff2 fs2 fc0 sc0 ls0 ws0">What<span class="_ _2"> </span>Is<span class="_ _2"> </span>It<span class="_ _2"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>27</div><div class="t m0 x2 h4 y28 ff2 fs2 fc0 sc0 ls0 ws0">Advantages<span class="_ _9"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>28</div><div class="t m0 x2 h4 y29 ff2 fs2 fc0 sc0 ls0 ws0">Problems<span class="_ _11"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>29</div><div class="t m0 x2 h4 y2a ff2 fs2 fc0 sc0 ls0 ws0">How<span class="_ _2"> </span>Can<span class="_ _2"> </span>We<span class="_ _2"> </span>Solve<span class="_ _2"> </span>This<span class="_ _10"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>30</div><div class="t m0 x2 h4 y2b ff2 fs2 fc0 sc0 ls0 ws0">MVVM<span class="_ _2"> </span>in<span class="_ _2"> </span>Practice<span class="_ _1"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _6"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _5"> </span>.<span class="_ _b"> </span>31</div><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a></div><div class="pi" data-data='{"ctm":[1.904762,0.000000,0.000000,1.904762,0.000000,0.000000]}'></div></div>
<div id="pf5" class="pf w0 h0" data-page-no="5"><div class="pc pc5 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6253c3b074bc5c01050d037a/bg5.jpg"><div class="t m0 x1 h5 y2c ff1 fs3 fc0 sc0 ls0 ws0">About<span class="_ _6"> </span>Cocoacasts</div><div class="t m0 x1 h4 y2d ff2 fs2 fc0 sc0 ls0 ws0">My<span class="_ _12"> </span>name<span class="_ _12"> </span>is<span class="_ _12"> </span><span class="fc1">Bart<span class="_ _12"> </span>Jacobs</span></div><div class="t m0 x4 h8 y2e ff2 fs5 fc1 sc0 ls0 ws0">1</div><div class="t m0 x5 h4 y2d ff2 fs2 fc0 sc0 ls0 ws0">and<span class="_ _12"> </span>I<span class="_ _12"> </span>run<span class="_ _12"> </span>a<span class="_ _12"> </span>mobile<span class="_ _12"> </span>development<span class="_ _12"> </span>company,<span class="_ _12"> </span><span class="fc1">Code</span></div><div class="t m0 x1 h4 y2f ff2 fs2 fc1 sc0 ls0 ws0">Foundry</div><div class="t m0 x6 h8 y30 ff2 fs5 fc1 sc0 ls0 ws0">2</div><div class="t m0 x7 h4 y2f ff2 fs2 fc0 sc0 ls0 ws0">.<span class="_ _8"> </span>I’ve<span class="_ _2"> </span>been<span class="_ _8"> </span>programming<span class="_ _13"> </span>for<span class="_ _13"> </span>more<span class="_ _13"> </span>than<span class="_ _8"> </span>fifteen<span class="_ _13"> </span>years,<span class="_ _13"> </span>focusing</div><div class="t m0 x1 h4 y31 ff2 fs2 fc0 sc0 ls0 ws0">on<span class="_ _14"> </span>Cocoa<span class="_ _14"> </span>development<span class="_ _14"> </span>soon<span class="_ _14"> </span>after<span class="_ _14"> </span>the<span class="_ _14"> </span>introduction<span class="_ _14"> </span>of<span class="_ _14"> </span>the<span class="_ _14"> </span>iPhone<span class="_ _14"> </span>in<span class="_ _14"> </span>2007.</div><div class="t m0 x1 h4 y32 ff2 fs2 fc0 sc0 ls0 ws0">Over<span class="_ _13"> </span>the<span class="_ _8"> </span>years,<span class="_ _8"> </span>I’ve<span class="_ _8"> </span>taught<span class="_ _13"> </span>thousands<span class="_ _8"> </span>of<span class="_ _8"> </span>people<span class="_ _8"> </span>about<span class="_ _13"> </span>Swift<span class="_ _8"> </span>and<span class="_ _8"> </span>Cocoa</div><div class="t m0 x1 h4 y33 ff2 fs2 fc0 sc0 ls0 ws0">development.<span class="_ _5"> </span>Through<span class="_ _6"> </span>my<span class="_ _6"> </span>experience<span class="_ _5"> </span>teaching,<span class="_ _6"> </span>I’ve<span class="_ _6"> </span>discovered<span class="_ _5"> </span>and</div><div class="t m0 x1 h4 y34 ff2 fs2 fc0 sc0 ls0 ws0">learned<span class="_ _2"> </span>about<span class="_ _2"> </span>the<span class="_ _2"> </span>main<span class="_ _2"> </span>problems<span class="_ _2"> </span>people<span class="_ _2"> </span>struggle<span class="_ _2"> </span>with.</div><div class="t m0 x8 h9 y35 ff2 fs6 fc0 sc0 ls0 ws0">1</div><div class="t m0 x9 h8 y36 ff2 fs5 fc1 sc0 ls0 ws0">https://twitter.com/_bartjacobs</div><div class="t m0 x8 h9 y37 ff2 fs6 fc0 sc0 ls0 ws0">2</div><div class="t m0 x9 h8 y38 ff2 fs5 fc1 sc0 ls0 ws0">https://codefoundry.be</div><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m1"></div></a></div><div class="pi" data-data='{"ctm":[1.904762,0.000000,0.000000,1.904762,0.000000,0.000000]}'></div></div>