|
| 1 | +<!DOCTYPE html> |
| 2 | +<html> |
| 3 | +<head> |
| 4 | +<title>Title</title> |
| 5 | +<metacharset="utf-8"> |
| 6 | +<style> |
| 7 | +@importurl(https://fonts.googleapis.com/css?family=Yanone+Kaffeesatz); |
| 8 | +@importurl(https://fonts.googleapis.com/css?family=Droid+Serif:400,700,400italic); |
| 9 | +@importurl(https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic); |
| 10 | + |
| 11 | +body {font-family:'Droid Serif'; } |
| 12 | +h1,h2,h3 { |
| 13 | +font-family:'Yanone Kaffeesatz'; |
| 14 | +font-weight: normal; |
| 15 | + } |
| 16 | + .remark-code, .remark-inline-code {font-family:'Ubuntu Mono'; } |
| 17 | +</style> |
| 18 | +</head> |
| 19 | +<body> |
| 20 | +<textareaid="source"> |
| 21 | + |
| 22 | +class: center, middle |
| 23 | + |
| 24 | +# Proxy |
| 25 | + |
| 26 | +--- |
| 27 | + |
| 28 | +# Also known as |
| 29 | + |
| 30 | +* Surrogate |
| 31 | + |
| 32 | +--- |
| 33 | + |
| 34 | +# Intent |
| 35 | + |
| 36 | +* Provide a surrogate or placeholder for another object to control access to it. |
| 37 | + |
| 38 | +--- |
| 39 | + |
| 40 | +# Applicability |
| 41 | + |
| 42 | +* Protection proxy limits access to the real subject. |
| 43 | +* Virtual proxies are used when an object is expensive to instantiate. |
| 44 | +* Caching proxies are used to cache expensive calls to the real subject. |
| 45 | +* Remote proxies are used in distributed object communication. |
| 46 | +* Smart proxies are used to implement reference counting and log calls to the object. |
| 47 | + |
| 48 | +--- |
| 49 | + |
| 50 | +# Diagram |
| 51 | + |
| 52 | +.center[] |
| 53 | + |
| 54 | +--- |
| 55 | + |
| 56 | +# Tutorials |
| 57 | + |
| 58 | +* Blog http://java-design-patterns.com/blog/controlling-access-with-proxy-pattern/ |
| 59 | +* Source code http://java-design-patterns.com/patterns/proxy/ |
| 60 | + |
| 61 | +</textarea> |
| 62 | +<scriptsrc="https://gnab.github.io/remark/downloads/remark-latest.min.js"> |
| 63 | +</script> |
| 64 | +<script> |
| 65 | +varslideshow=remark.create(); |
| 66 | +</script> |
| 67 | +</body> |
| 68 | +</html> |