36:
412:
463:
214:
An adapter allows two incompatible interfaces to work together. This is the real-world definition for an adapter. Interfaces may be incompatible, but the inner functionality should suit the need. The adapter design pattern allows otherwise incompatible classes to work together by converting the
2445:
Recharging android with MicroUsb MicroUsb connected
Recharge started Recharge finished Recharging iPhone with Lightning Lightning connected Recharge started Recharge finished Recharging iPhone with MicroUsb MicroUsb connected Lightning connected Recharge started Recharge finished
401:
451:
1488:. When the clientMethod is called, it will have access to the adaptee instance that allows for accessing the required data of the adaptee and performing operations on that data that generates the desired output.
137:
design patterns that describe how to solve recurring design problems to design flexible and reusable object-oriented software, that is, objects that are easier to implement, change, test, and reuse.
4292:, which can be thought of as applying the adapter pattern, when the high-level class defines its own (adapter) interface to the low-level module (implemented by an adaptee class).
1454:
without having to alter the class hierarchy. In general, it permits a mechanism for arbitrary data flows between objects that can be retrofitted to an existing object hierarchy.
431:
implementing or inheriting both the interface that is expected and the interface that is pre-existing. It is typical for the expected interface to be created as a pure
299:
393:
In this adapter pattern, the adapter contains an instance of the class it wraps. In this situation, the adapter makes calls to the instance of the wrapped
4543:
4474:
4352:
1479:. It should have a constructor method with an adaptee class variable as a parameter. This parameter will be passed to an instance member of
1227:
The advantage can be seen in that, if it is desired to transfer the data in a second format, then look up the different adapter/provider:
613:
Define an intermediary "provider" interface, and write an implementation of that provider interface that wraps the source of the data,
5068:
50:
46:
5176:
5093:
4411:
4866:
154:
Often an (already existing) class can not be reused only because its interface does not conform to the interface clients require.
5041:
4665:
4295:
224:
4849:
4759:
4289:
4889:
4859:
4854:
4536:
4496:
4427:
103:
5134:
4972:
4338:
440:
110:
to be used as another interface. It is often used to make existing classes work with others without modifying their
4749:
532:
However, suppose that the format of the string data must be varied. A compile time solution is to use inheritance:
62:
4957:
4952:
4779:
455:
405:
307:
4456:
Freeman, Eric; Freeman, Elisabeth; Sierra, Kathy; Bates, Bert (2004). Hendrickson, Mike; Loukides, Mike (eds.).
4997:
4962:
4929:
4579:
4529:
4283:
107:
4794:
4899:
4871:
4809:
4774:
4710:
4552:
134:
91:
4876:
4804:
4754:
4589:
298:
5155:
5058:
4904:
4884:
4829:
118:
4457:
411:
4967:
4924:
4919:
4909:
4819:
444:
436:
83:
462:
5007:
4992:
4987:
4844:
4729:
4675:
5129:
5108:
5017:
4914:
4764:
4657:
4609:
4571:
394:
267:
4799:
4642:
4632:
4627:
4599:
4594:
4470:
4466:
4407:
4403:
4392:
4358:
4348:
4344:
257:
228:
99:
223:
An adapter can be used when the wrapper must respect a particular interface and must support
5098:
4839:
4784:
4705:
4695:
4685:
4680:
4305:
4300:
467:
432:
416:
95:
5088:
5034:
5012:
4789:
4744:
4715:
4690:
4670:
4584:
4560:
4310:
597:
5073:
4934:
4637:
4622:
4399:
277:
232:
5170:
4894:
4739:
4700:
4647:
4277:
310:
5150:
5113:
5002:
4977:
4769:
4334:
252:
Converts one interface to another so that it matches what the client is expecting
1464:
When implementing the adapter pattern, for clarity, one can apply the class name
821:
Write an adapter class that returns the specific implementation of the provider:
144:
How can a class be reused that does not have an interface that a client requires?
5103:
5078:
5063:
4982:
4814:
596:
and perhaps create the correctly "formatting" object at runtime by means of the
235:
is used when an easier or simpler interface to an underlying object is desired.
111:
262:
Dynamically adds responsibility to the interface by wrapping the original code
17:
4504:
4435:
231:
makes it possible to add or alter behavior of an interface at run-time, and a
188:
that adapts the interface of an (already existing) class without changing it.
4362:
5083:
428:
4521:
4366:
400:
1436:
In this way, the use of adapters and providers allows multiple "views" by
450:
4390:
Gamma, Erich; Helm, Richard; Johnson, Ralph; Vlissides, John (1994).
180:
to work with (reuse) classes that do not have the required interface.
4428:"The Adapter design pattern - Problem, Solution, and Applicability"
3536:"Recharging iPhone with MicroUSB using adapter pattern."
461:
449:
410:
399:
297:
215:
interface of one class into an interface expected by the clients.
157:
The adapter design pattern describes how to solve such problems:
133:
The adapter design pattern is one of the twenty-three well-known
1972:/* exposing the target interface while wrapping source object */
619:
in this example, and outputs the data formatted as appropriate:
147:
How can classes that have incompatible interfaces work together?
4525:
4394:
Design
Patterns: Elements of Reusable Object-Oriented Software
122:
29:
165:
class that converts the (incompatible) interface of a class (
325:
class directly because its interface doesn't conform to the
184:
The key idea in this pattern is to work through a separate
4497:"The Adapter design pattern - Structure and Collaboration"
302:
A sample UML class diagram for the adapter design pattern.
117:
An example is an adapter that converts the interface of a
150:
How can an alternative interface be provided for a class?
3512:"Recharging Android with MicroUSB recharger."
791:// Manipulate the source string into a format required
58:
125:
document into a tree structure that can be displayed.
794:// by the object needing the source object's data
3560:"Recharging iPhone with iPhone recharger."
5143:
5122:
5051:
5026:
4943:
4828:
4728:
4656:
4608:
4570:
4559:
1480:
1474:
1465:
1449:
1443:
1437:
1301:
1295:
977:
971:
910:
904:
614:
496:
490:
484:
4391:
4286:, strongly relevant to the object adapter pattern.
608:A solution using "adapters" proceeds as follows:
140:The adapter design pattern solves problems like:
3986:"Connect the Lightning cable first."
4537:
1473:to the provider implementation; for example,
1294:And if it is desired to output the data from
8:
2371:"Recharging iPhone with Lightning"
2335:"Recharging android with MicroUsb"
970:In code, when wishing to transfer data from
191:Clients don't know whether they work with a
4328:
4326:
2407:"Recharging iPhone with MicroUsb"
4567:
4544:
4530:
4522:
474:A further form of runtime adapter pattern
3809:"Connect the USB cable first."
415:The object adapter pattern expressed in
404:The object adapter pattern expressed in
237:
98:, an alternative naming shared with the
61:by adding descriptive text and removing
4322:
466:The class adapter pattern expressed in
454:The class adapter pattern expressed in
272:Support "composition over inheritance"
2489:"You should implement this."
206:See also the UML class diagram below.
27:Design pattern in computer programming
3782:"Android phone recharging."
1460:Implementation of the adapter pattern
479:Motivation from compile time solution
443:(before JDK 1.8) that do not support
7:
3725:"Android phone connected."
909:with a global registry, so that the
495:with some data, let us suppose some
199:with a class that does not have the
4333:Freeman, Eric; Freeman, Elisabeth;
3959:"Apple phone recharging."
1750:"Connect Lightning first"
427:This adapter pattern uses multiple
3902:"Apple phone connected."
1957:"Connect MicroUsb first"
501:data. A compile time solution is:
25:
376:interface by inheriting from an
282:Provides a simplified interface
34:
5042:Enterprise Integration Patterns
4469:. pp. 243, 252, 258, 260.
4296:Ports and adapters architecture
1633:"Lightning connected"
4290:Dependency inversion principle
4280:Java Design Patterns - Adapter
2083:"MicroUsb connected"
1840:"MicroUsb connected"
357:interface by delegating to an
1:
1924:"Recharge finished"
1717:"Recharge finished"
915:can be looked up at runtime:
195:class directly or through an
1900:"Recharge started"
1693:"Recharge started"
5135:Portland Pattern Repository
363:adaptee.specificOperation()
321:interface cannot reuse the
227:behavior. Alternatively, a
5193:
4459:Head First Design Patterns
4340:Head First Design Patterns
2422:LightningToMicroUsbAdapter
2008:LightningToMicroUsbAdapter
1978:LightningToMicroUsbAdapter
337:class that implements the
169:) into another interface (
604:Run-time adapter solution
5177:Software design patterns
4760:Event-based asynchronous
4553:Software design patterns
4260:Adapter cable connected.
4254:
3578:
2459:Adapter pattern example.
2453:
1495:
1310:
1228:
1125:
983:
916:
822:
620:
534:
503:
329:interface. Instead, the
4666:Chain of responsibility
4263:Apple phone recharging.
3542:IPhoneMicroUSBRecharger
3323:IPhoneMicroUSBRecharger
1300:as, say, image data in
380:class at compile-time (
92:software design pattern
63:less pertinent examples
4805:Scheduled-task pattern
4755:Double-checked locking
4337:; Bates, Bert (2004).
4257:Apple phone connected.
2377:rechargeLightningPhone
2209:rechargeLightningPhone
470:
459:
429:polymorphic interfaces
419:
408:
389:Object adapter pattern
341:interface in terms of
317:class that requires a
303:
5156:Architectural pattern
5059:Christopher Alexander
4211:LightningToUsbAdapter
4052:LightningToUsbAdapter
4010:LightningToUsbAdapter
2525:"Lightning"
2413:rechargeMicroUsbPhone
2341:rechargeMicroUsbPhone
2158:rechargeMicroUsbPhone
465:
453:
435:class, especially in
423:Class adapter pattern
414:
403:
301:
119:Document Object Model
4968:Dependency injection
4925:Inversion of control
4920:Data transfer object
4820:Thread-local storage
2513:"MicroUSB"
1476:DAOToProviderAdapter
949:ClassAFormat1Adapter
831:ClassAFormat1Adapter
445:multiple inheritance
361:object at run-time (
84:software engineering
4973:Intercepting filter
2927:"Android"
2699:NotImplementedError
2651:NotImplementedError
2603:NotImplementedError
2507:"Android"
1367:"format2"
1285:"format2"
1194:"format1"
1123:or more concisely:
1040:"format1"
961:"format1"
382:specificOperation()
372:way implements the
353:way implements the
59:improve the article
5130:The Hillside Group
4915:Data access object
4765:Guarded suspension
4750:Binding properties
2732:"iPhone"
2519:"iPhone"
2462:"""
2456:"""
483:It is desired for
471:
460:
420:
409:
304:
249:Adapter or wrapper
173:) clients require.
161:Define a separate
102:) that allows the
5164:
5163:
4958:Business delegate
4890:Publish–subscribe
4724:
4723:
4476:978-0-596-00712-6
4354:978-0-596-00712-6
333:works through an
294:UML class diagram
286:
285:
100:decorator pattern
80:
79:
16:(Redirected from
5184:
4963:Composite entity
4840:Front controller
4580:Abstract factory
4568:
4546:
4539:
4532:
4523:
4516:
4515:
4513:
4512:
4503:. Archived from
4493:
4487:
4486:
4484:
4483:
4464:
4453:
4447:
4446:
4444:
4443:
4434:. Archived from
4424:
4418:
4417:
4397:
4387:
4381:
4380:
4378:
4377:
4371:
4365:. Archived from
4330:
4306:Wrapper function
4264:
4261:
4258:
4248:
4245:
4242:
4239:
4236:
4233:
4230:
4227:
4224:
4221:
4218:
4215:
4212:
4209:
4206:
4203:
4200:
4197:
4194:
4191:
4188:
4185:
4182:
4179:
4176:
4173:
4170:
4167:
4164:
4161:
4158:
4155:
4152:
4149:
4146:
4143:
4140:
4137:
4134:
4131:
4128:
4125:
4122:
4119:
4118:ConnectLightning
4116:
4113:
4110:
4107:
4104:
4101:
4098:
4095:
4092:
4089:
4086:
4083:
4080:
4077:
4074:
4071:
4068:
4065:
4062:
4059:
4056:
4053:
4050:
4047:
4044:
4041:
4038:
4035:
4032:
4029:
4026:
4023:
4020:
4017:
4014:
4011:
4008:
4005:
4002:
3999:
3996:
3993:
3990:
3987:
3984:
3981:
3978:
3975:
3972:
3969:
3966:
3963:
3960:
3957:
3954:
3951:
3948:
3945:
3942:
3939:
3936:
3933:
3930:
3927:
3924:
3921:
3918:
3915:
3912:
3909:
3906:
3903:
3900:
3897:
3894:
3891:
3888:
3885:
3882:
3879:
3876:
3873:
3870:
3867:
3864:
3863:ConnectLightning
3861:
3858:
3855:
3852:
3849:
3846:
3843:
3840:
3837:
3834:
3831:
3828:
3825:
3822:
3819:
3816:
3813:
3810:
3807:
3804:
3801:
3798:
3795:
3792:
3789:
3786:
3783:
3780:
3777:
3774:
3771:
3768:
3765:
3762:
3759:
3756:
3753:
3750:
3747:
3744:
3741:
3738:
3735:
3732:
3729:
3726:
3723:
3720:
3717:
3714:
3711:
3708:
3705:
3702:
3699:
3696:
3693:
3690:
3687:
3684:
3681:
3678:
3675:
3672:
3669:
3666:
3663:
3660:
3657:
3654:
3651:
3648:
3645:
3642:
3639:
3636:
3633:
3630:
3627:
3624:
3621:
3618:
3615:
3612:
3609:
3606:
3603:
3600:
3597:
3596:ConnectLightning
3594:
3591:
3588:
3585:
3582:
3570:
3567:
3564:
3561:
3558:
3555:
3552:
3549:
3546:
3543:
3540:
3537:
3534:
3531:
3528:
3525:
3522:
3519:
3518:AndroidRecharger
3516:
3513:
3510:
3507:
3504:
3501:
3498:
3495:
3492:
3489:
3486:
3483:
3480:
3477:
3474:
3471:
3468:
3465:
3462:
3459:
3456:
3453:
3450:
3447:
3444:
3441:
3438:
3435:
3432:
3429:
3426:
3423:
3420:
3417:
3414:
3411:
3408:
3405:
3402:
3399:
3396:
3393:
3390:
3387:
3384:
3381:
3378:
3375:
3372:
3369:
3366:
3363:
3360:
3357:
3354:
3351:
3348:
3345:
3342:
3339:
3336:
3333:
3330:
3327:
3324:
3321:
3318:
3315:
3312:
3309:
3306:
3303:
3300:
3297:
3294:
3291:
3288:
3285:
3282:
3279:
3276:
3273:
3270:
3267:
3264:
3261:
3258:
3255:
3252:
3249:
3246:
3245:AndroidRecharger
3243:
3240:
3237:
3234:
3231:
3228:
3225:
3222:
3219:
3216:
3213:
3210:
3207:
3204:
3201:
3198:
3195:
3192:
3189:
3186:
3183:
3180:
3177:
3174:
3171:
3168:
3165:
3162:
3159:
3156:
3153:
3150:
3147:
3144:
3141:
3138:
3135:
3132:
3129:
3126:
3123:
3120:
3117:
3114:
3111:
3108:
3105:
3102:
3099:
3096:
3093:
3090:
3087:
3084:
3081:
3078:
3075:
3072:
3069:
3066:
3063:
3060:
3057:
3054:
3051:
3048:
3045:
3042:
3039:
3036:
3033:
3030:
3027:
3024:
3021:
3018:
3015:
3012:
3009:
3006:
3003:
3000:
2997:
2994:
2991:
2988:
2985:
2982:
2979:
2976:
2973:
2970:
2967:
2964:
2961:
2958:
2955:
2952:
2949:
2946:
2943:
2940:
2937:
2934:
2931:
2928:
2925:
2922:
2919:
2916:
2913:
2910:
2907:
2904:
2901:
2898:
2895:
2892:
2889:
2886:
2883:
2880:
2877:
2874:
2871:
2868:
2865:
2862:
2859:
2856:
2853:
2850:
2847:
2844:
2841:
2838:
2835:
2832:
2829:
2826:
2823:
2820:
2817:
2814:
2811:
2808:
2805:
2802:
2799:
2796:
2793:
2790:
2787:
2784:
2781:
2778:
2775:
2772:
2769:
2766:
2763:
2760:
2757:
2754:
2751:
2748:
2745:
2742:
2739:
2736:
2733:
2730:
2727:
2724:
2721:
2718:
2715:
2712:
2709:
2706:
2703:
2700:
2697:
2694:
2691:
2688:
2685:
2682:
2679:
2676:
2673:
2672:RechargeTemplate
2670:
2667:
2664:
2661:
2658:
2655:
2652:
2649:
2646:
2643:
2640:
2637:
2634:
2631:
2628:
2625:
2624:RechargeTemplate
2622:
2619:
2616:
2613:
2610:
2607:
2604:
2601:
2598:
2595:
2592:
2589:
2586:
2583:
2580:
2577:
2574:
2571:
2568:
2565:
2564:RechargeTemplate
2562:
2559:
2556:
2553:
2550:
2547:
2544:
2543:connected."
2541:
2538:
2535:
2532:
2529:
2526:
2523:
2520:
2517:
2514:
2511:
2508:
2505:
2502:
2499:
2496:
2493:
2490:
2487:
2484:
2481:
2478:
2475:
2472:
2469:
2466:
2463:
2460:
2457:
2438:
2435:
2432:
2429:
2426:
2423:
2420:
2417:
2414:
2411:
2408:
2405:
2402:
2399:
2396:
2393:
2390:
2387:
2384:
2381:
2378:
2375:
2372:
2369:
2366:
2363:
2360:
2357:
2354:
2351:
2348:
2345:
2342:
2339:
2336:
2333:
2330:
2327:
2324:
2321:
2318:
2315:
2312:
2309:
2306:
2303:
2300:
2297:
2294:
2291:
2288:
2285:
2282:
2279:
2276:
2273:
2270:
2267:
2264:
2261:
2258:
2255:
2252:
2249:
2246:
2243:
2240:
2237:
2234:
2231:
2228:
2225:
2222:
2219:
2216:
2213:
2210:
2207:
2204:
2201:
2198:
2195:
2192:
2189:
2186:
2183:
2180:
2177:
2174:
2171:
2168:
2165:
2162:
2159:
2156:
2153:
2150:
2147:
2144:
2141:
2138:
2135:
2132:
2129:
2126:
2123:
2120:
2117:
2114:
2111:
2108:
2105:
2102:
2099:
2096:
2093:
2090:
2087:
2084:
2081:
2078:
2075:
2072:
2069:
2066:
2063:
2060:
2057:
2054:
2051:
2048:
2045:
2042:
2039:
2036:
2033:
2030:
2027:
2024:
2021:
2018:
2015:
2012:
2009:
2006:
2003:
2000:
1997:
1994:
1991:
1988:
1985:
1982:
1979:
1976:
1973:
1970:
1967:
1964:
1961:
1958:
1955:
1952:
1949:
1946:
1943:
1940:
1937:
1934:
1931:
1928:
1925:
1922:
1919:
1916:
1913:
1910:
1907:
1904:
1901:
1898:
1895:
1892:
1889:
1886:
1883:
1880:
1877:
1874:
1871:
1868:
1865:
1862:
1859:
1856:
1853:
1850:
1847:
1844:
1841:
1838:
1835:
1832:
1829:
1826:
1823:
1820:
1817:
1814:
1811:
1808:
1805:
1802:
1799:
1796:
1793:
1790:
1787:
1784:
1781:
1778:
1775:
1772:
1769:
1766:
1763:
1760:
1757:
1754:
1751:
1748:
1745:
1742:
1739:
1736:
1733:
1730:
1727:
1724:
1721:
1718:
1715:
1712:
1709:
1706:
1703:
1700:
1697:
1694:
1691:
1688:
1685:
1682:
1679:
1676:
1673:
1670:
1667:
1664:
1661:
1658:
1655:
1652:
1649:
1646:
1643:
1640:
1637:
1634:
1631:
1628:
1625:
1622:
1619:
1616:
1613:
1610:
1607:
1604:
1601:
1598:
1595:
1592:
1589:
1586:
1583:
1580:
1577:
1574:
1571:
1568:
1565:
1562:
1559:
1556:
1553:
1550:
1547:
1544:
1541:
1538:
1535:
1532:
1529:
1526:
1523:
1520:
1517:
1514:
1511:
1508:
1505:
1502:
1499:
1487:
1486:
1483:
1478:
1477:
1472:
1471:
1468:
1453:
1452:
1447:
1446:
1441:
1440:
1431:
1428:
1425:
1422:
1419:
1416:
1413:
1410:
1407:
1404:
1401:
1398:
1395:
1392:
1389:
1386:
1383:
1380:
1377:
1374:
1371:
1368:
1365:
1362:
1359:
1356:
1353:
1350:
1347:
1344:
1341:
1338:
1337:getAdapterFromTo
1335:
1332:
1329:
1326:
1323:
1320:
1317:
1314:
1308:
1307:
1304:
1299:
1298:
1289:
1286:
1283:
1280:
1277:
1274:
1271:
1268:
1265:
1262:
1259:
1256:
1255:getAdapterFromTo
1253:
1250:
1247:
1244:
1241:
1238:
1235:
1232:
1222:
1219:
1216:
1213:
1210:
1207:
1204:
1201:
1198:
1195:
1192:
1189:
1186:
1183:
1180:
1177:
1174:
1171:
1168:
1165:
1164:getAdapterFromTo
1162:
1159:
1156:
1153:
1150:
1147:
1144:
1141:
1138:
1135:
1132:
1129:
1119:
1116:
1113:
1110:
1107:
1104:
1101:
1098:
1095:
1092:
1089:
1086:
1083:
1080:
1077:
1074:
1071:
1068:
1065:
1062:
1059:
1056:
1053:
1050:
1047:
1044:
1041:
1038:
1035:
1032:
1029:
1026:
1023:
1020:
1017:
1014:
1011:
1010:getAdapterFromTo
1008:
1005:
1002:
999:
996:
993:
990:
987:
981:
980:
975:
974:
965:
962:
959:
956:
953:
950:
947:
944:
941:
938:
935:
932:
929:
926:
923:
920:
914:
913:
908:
907:
898:
895:
892:
889:
886:
883:
880:
877:
874:
871:
868:
865:
862:
859:
856:
853:
850:
847:
844:
841:
838:
835:
832:
829:
826:
816:
813:
810:
807:
804:
801:
798:
795:
792:
789:
786:
783:
780:
777:
774:
771:
768:
765:
762:
759:
756:
753:
750:
747:
744:
741:
738:
735:
732:
729:
726:
723:
720:
717:
714:
711:
708:
705:
702:
699:
696:
693:
690:
687:
684:
681:
678:
675:
672:
669:
666:
663:
660:
657:
654:
651:
648:
645:
642:
639:
636:
633:
630:
627:
624:
618:
617:
592:
589:
586:
583:
580:
577:
574:
571:
568:
565:
562:
559:
556:
553:
550:
547:
544:
541:
538:
528:
525:
522:
519:
516:
513:
510:
507:
500:
499:
494:
493:
488:
487:
383:
379:
375:
371:
364:
360:
356:
352:
344:
340:
336:
332:
328:
324:
320:
316:
238:
202:
198:
194:
187:
179:
176:Work through an
172:
168:
164:
75:
72:
66:
38:
37:
30:
21:
5192:
5191:
5187:
5186:
5185:
5183:
5182:
5181:
5167:
5166:
5165:
5160:
5139:
5118:
5109:Douglas Schmidt
5089:Ward Cunningham
5047:
5035:Design Patterns
5022:
5013:Method chaining
4945:
4939:
4900:Service locator
4831:
4824:
4795:Read–write lock
4731:
4720:
4711:Template method
4652:
4604:
4562:
4555:
4550:
4520:
4519:
4510:
4508:
4495:
4494:
4490:
4481:
4479:
4477:
4465:. Vol. 1.
4462:
4455:
4454:
4450:
4441:
4439:
4426:
4425:
4421:
4414:
4389:
4388:
4384:
4375:
4373:
4369:
4355:
4347:. p. 244.
4332:
4331:
4324:
4319:
4311:Wrapper library
4274:
4268:
4266:
4265:
4262:
4259:
4256:
4250:
4249:
4246:
4243:
4240:
4237:
4234:
4231:
4228:
4225:
4222:
4219:
4216:
4213:
4210:
4207:
4204:
4201:
4198:
4195:
4192:
4189:
4186:
4183:
4181:ILightningPhone
4180:
4177:
4174:
4171:
4168:
4165:
4162:
4159:
4156:
4153:
4150:
4147:
4144:
4141:
4138:
4135:
4132:
4129:
4126:
4123:
4120:
4117:
4114:
4111:
4108:
4105:
4102:
4099:
4096:
4093:
4090:
4087:
4084:
4081:
4078:
4075:
4072:
4069:
4066:
4063:
4060:
4058:ILightningPhone
4057:
4054:
4051:
4048:
4045:
4042:
4039:
4036:
4033:
4030:
4028:ILightningPhone
4027:
4024:
4021:
4018:
4015:
4012:
4009:
4006:
4003:
4000:
3997:
3994:
3991:
3988:
3985:
3982:
3979:
3976:
3973:
3970:
3967:
3964:
3961:
3958:
3955:
3952:
3949:
3946:
3943:
3940:
3937:
3934:
3931:
3928:
3925:
3922:
3919:
3916:
3913:
3910:
3907:
3904:
3901:
3898:
3895:
3892:
3889:
3886:
3883:
3880:
3877:
3874:
3871:
3868:
3865:
3862:
3859:
3856:
3853:
3850:
3847:
3844:
3841:
3839:ILightningPhone
3838:
3835:
3832:
3829:
3826:
3823:
3820:
3817:
3814:
3811:
3808:
3805:
3802:
3799:
3796:
3793:
3790:
3787:
3784:
3781:
3778:
3775:
3772:
3769:
3766:
3763:
3760:
3757:
3754:
3751:
3748:
3745:
3742:
3739:
3736:
3733:
3730:
3727:
3724:
3721:
3718:
3715:
3712:
3709:
3706:
3703:
3700:
3697:
3694:
3691:
3688:
3685:
3682:
3679:
3676:
3673:
3670:
3667:
3664:
3661:
3658:
3655:
3652:
3649:
3646:
3643:
3640:
3637:
3634:
3631:
3628:
3625:
3622:
3619:
3616:
3613:
3610:
3607:
3604:
3601:
3598:
3595:
3592:
3589:
3587:ILightningPhone
3586:
3583:
3580:
3577:
3572:
3571:
3568:
3566:IPhoneRecharger
3565:
3562:
3559:
3556:
3553:
3550:
3547:
3544:
3541:
3538:
3535:
3532:
3529:
3526:
3523:
3520:
3517:
3514:
3511:
3508:
3505:
3502:
3499:
3496:
3493:
3490:
3487:
3484:
3481:
3478:
3475:
3472:
3469:
3466:
3463:
3460:
3457:
3454:
3451:
3448:
3445:
3442:
3439:
3436:
3433:
3431:IPhoneRecharger
3430:
3427:
3424:
3421:
3418:
3415:
3412:
3409:
3406:
3403:
3400:
3397:
3394:
3391:
3388:
3385:
3382:
3379:
3376:
3373:
3370:
3367:
3364:
3361:
3358:
3355:
3352:
3349:
3346:
3343:
3340:
3337:
3334:
3331:
3328:
3325:
3322:
3319:
3316:
3313:
3310:
3307:
3304:
3301:
3298:
3295:
3292:
3289:
3286:
3283:
3280:
3277:
3274:
3271:
3268:
3265:
3262:
3259:
3256:
3253:
3250:
3247:
3244:
3241:
3238:
3235:
3232:
3229:
3226:
3223:
3220:
3217:
3214:
3211:
3208:
3205:
3202:
3199:
3196:
3193:
3190:
3187:
3184:
3181:
3178:
3175:
3172:
3169:
3166:
3163:
3160:
3157:
3154:
3151:
3148:
3145:
3142:
3139:
3136:
3133:
3130:
3127:
3124:
3121:
3118:
3115:
3112:
3109:
3106:
3103:
3100:
3097:
3094:
3091:
3088:
3085:
3082:
3079:
3076:
3073:
3070:
3067:
3064:
3061:
3058:
3055:
3052:
3049:
3046:
3043:
3040:
3037:
3034:
3031:
3028:
3025:
3022:
3019:
3016:
3013:
3010:
3007:
3004:
3001:
2998:
2995:
2992:
2989:
2986:
2983:
2980:
2977:
2974:
2971:
2968:
2965:
2962:
2959:
2956:
2953:
2950:
2947:
2944:
2941:
2938:
2935:
2932:
2929:
2926:
2923:
2920:
2917:
2914:
2911:
2908:
2905:
2902:
2899:
2896:
2893:
2890:
2887:
2884:
2881:
2878:
2875:
2872:
2869:
2866:
2863:
2860:
2857:
2854:
2851:
2848:
2845:
2842:
2839:
2836:
2833:
2830:
2827:
2824:
2821:
2818:
2815:
2812:
2809:
2806:
2803:
2800:
2797:
2794:
2791:
2788:
2785:
2782:
2779:
2776:
2773:
2770:
2767:
2764:
2761:
2758:
2755:
2752:
2749:
2746:
2743:
2740:
2737:
2734:
2731:
2728:
2725:
2722:
2719:
2716:
2713:
2710:
2707:
2705:NOT_IMPLEMENTED
2704:
2701:
2698:
2695:
2692:
2689:
2686:
2683:
2680:
2678:@abstractmethod
2677:
2674:
2671:
2668:
2665:
2662:
2659:
2657:NOT_IMPLEMENTED
2656:
2653:
2650:
2647:
2644:
2641:
2638:
2635:
2632:
2630:@abstractmethod
2629:
2626:
2623:
2620:
2617:
2614:
2611:
2609:NOT_IMPLEMENTED
2608:
2605:
2602:
2599:
2596:
2593:
2590:
2587:
2584:
2582:@abstractmethod
2581:
2578:
2575:
2572:
2569:
2566:
2563:
2560:
2557:
2554:
2551:
2548:
2545:
2542:
2539:
2536:
2533:
2530:
2527:
2524:
2521:
2518:
2515:
2512:
2509:
2506:
2503:
2500:
2497:
2494:
2491:
2488:
2485:
2483:NOT_IMPLEMENTED
2482:
2479:
2476:
2473:
2470:
2467:
2464:
2461:
2458:
2455:
2452:
2447:
2440:
2439:
2436:
2433:
2430:
2427:
2424:
2421:
2418:
2415:
2412:
2409:
2406:
2403:
2400:
2397:
2394:
2391:
2388:
2385:
2382:
2379:
2376:
2373:
2370:
2367:
2364:
2361:
2358:
2355:
2352:
2349:
2346:
2343:
2340:
2337:
2334:
2331:
2328:
2325:
2322:
2319:
2316:
2313:
2310:
2307:
2304:
2301:
2298:
2295:
2292:
2289:
2286:
2283:
2280:
2277:
2274:
2271:
2268:
2265:
2262:
2259:
2256:
2253:
2250:
2247:
2244:
2241:
2238:
2235:
2232:
2229:
2226:
2223:
2220:
2217:
2215:ILightningPhone
2214:
2211:
2208:
2205:
2202:
2199:
2196:
2193:
2190:
2187:
2184:
2181:
2178:
2175:
2172:
2169:
2166:
2163:
2160:
2157:
2154:
2151:
2148:
2145:
2142:
2139:
2136:
2133:
2130:
2127:
2124:
2121:
2118:
2115:
2112:
2109:
2106:
2103:
2100:
2097:
2094:
2091:
2088:
2085:
2082:
2079:
2076:
2073:
2070:
2067:
2064:
2061:
2058:
2055:
2052:
2049:
2046:
2043:
2040:
2037:
2034:
2031:
2028:
2025:
2022:
2019:
2016:
2014:ILightningPhone
2013:
2010:
2007:
2004:
2001:
1998:
1996:ILightningPhone
1995:
1992:
1989:
1986:
1983:
1980:
1977:
1974:
1971:
1968:
1965:
1962:
1959:
1956:
1953:
1950:
1947:
1944:
1941:
1938:
1935:
1932:
1929:
1926:
1923:
1920:
1917:
1914:
1911:
1908:
1905:
1902:
1899:
1896:
1893:
1890:
1887:
1884:
1881:
1878:
1875:
1872:
1869:
1866:
1863:
1860:
1857:
1854:
1851:
1848:
1845:
1842:
1839:
1836:
1833:
1830:
1827:
1824:
1821:
1818:
1815:
1812:
1809:
1806:
1803:
1800:
1797:
1794:
1791:
1788:
1785:
1782:
1779:
1776:
1773:
1770:
1767:
1764:
1761:
1758:
1755:
1752:
1749:
1746:
1743:
1740:
1737:
1734:
1731:
1728:
1725:
1722:
1719:
1716:
1713:
1710:
1707:
1704:
1701:
1698:
1695:
1692:
1689:
1686:
1683:
1680:
1677:
1674:
1671:
1668:
1665:
1662:
1659:
1656:
1653:
1650:
1647:
1644:
1641:
1638:
1635:
1632:
1629:
1626:
1623:
1620:
1617:
1614:
1611:
1608:
1605:
1602:
1599:
1596:
1593:
1590:
1587:
1584:
1581:
1578:
1575:
1572:
1569:
1567:ILightningPhone
1566:
1563:
1560:
1557:
1554:
1551:
1548:
1545:
1542:
1539:
1536:
1533:
1530:
1527:
1524:
1521:
1518:
1515:
1512:
1509:
1506:
1503:
1501:ILightningPhone
1500:
1497:
1494:
1484:
1481:
1475:
1469:
1466:
1462:
1457:
1450:
1444:
1438:
1433:
1432:
1429:
1426:
1423:
1420:
1417:
1414:
1411:
1408:
1405:
1402:
1399:
1396:
1393:
1390:
1387:
1384:
1381:
1378:
1375:
1372:
1369:
1366:
1363:
1360:
1357:
1354:
1351:
1348:
1345:
1342:
1339:
1336:
1333:
1330:
1327:
1324:
1321:
1318:
1315:
1312:
1305:
1302:
1296:
1291:
1290:
1287:
1284:
1281:
1278:
1275:
1272:
1269:
1266:
1263:
1260:
1257:
1254:
1251:
1248:
1245:
1242:
1239:
1236:
1233:
1230:
1224:
1223:
1220:
1217:
1214:
1211:
1208:
1205:
1202:
1199:
1196:
1193:
1190:
1187:
1184:
1181:
1178:
1175:
1172:
1169:
1166:
1163:
1160:
1157:
1154:
1151:
1148:
1145:
1142:
1139:
1136:
1133:
1130:
1127:
1121:
1120:
1117:
1114:
1111:
1108:
1105:
1102:
1099:
1096:
1093:
1090:
1087:
1084:
1081:
1078:
1075:
1072:
1069:
1066:
1063:
1060:
1057:
1054:
1051:
1048:
1045:
1042:
1039:
1036:
1033:
1030:
1027:
1024:
1021:
1018:
1015:
1012:
1009:
1006:
1003:
1000:
997:
994:
991:
988:
985:
978:
972:
967:
966:
963:
960:
957:
954:
951:
948:
945:
942:
939:
936:
933:
931:registerAdapter
930:
927:
924:
921:
918:
911:
905:
900:
899:
896:
893:
890:
887:
884:
881:
878:
875:
872:
869:
866:
863:
860:
857:
854:
851:
848:
845:
842:
839:
836:
833:
830:
827:
824:
818:
817:
814:
811:
808:
805:
802:
799:
796:
793:
790:
787:
784:
781:
778:
775:
772:
769:
766:
763:
760:
757:
754:
751:
748:
745:
742:
739:
736:
733:
730:
727:
724:
721:
718:
715:
712:
709:
706:
703:
700:
697:
694:
691:
688:
685:
682:
679:
676:
673:
670:
667:
664:
661:
658:
655:
652:
649:
646:
643:
640:
637:
634:
631:
628:
625:
622:
615:
606:
598:factory pattern
594:
593:
590:
587:
584:
581:
578:
575:
572:
569:
566:
563:
560:
557:
554:
551:
548:
545:
542:
539:
536:
530:
529:
526:
523:
520:
517:
514:
511:
508:
505:
497:
491:
485:
481:
476:
425:
391:
381:
377:
373:
369:
362:
358:
354:
350:
342:
338:
334:
330:
326:
322:
318:
314:
296:
291:
221:
212:
200:
196:
192:
185:
177:
170:
166:
162:
131:
106:of an existing
94:(also known as
88:adapter pattern
76:
70:
67:
56:
39:
35:
28:
23:
22:
18:Wrapper pattern
15:
12:
11:
5:
5190:
5188:
5180:
5179:
5169:
5168:
5162:
5161:
5159:
5158:
5153:
5147:
5145:
5141:
5140:
5138:
5137:
5132:
5126:
5124:
5120:
5119:
5117:
5116:
5111:
5106:
5101:
5096:
5091:
5086:
5081:
5076:
5074:John Vlissides
5071:
5066:
5061:
5055:
5053:
5049:
5048:
5046:
5045:
5038:
5030:
5028:
5024:
5023:
5021:
5020:
5015:
5010:
5005:
5000:
4995:
4990:
4985:
4980:
4975:
4970:
4965:
4960:
4955:
4949:
4947:
4941:
4940:
4938:
4937:
4932:
4927:
4922:
4917:
4912:
4907:
4902:
4897:
4892:
4887:
4882:
4874:
4869:
4864:
4863:
4862:
4857:
4847:
4842:
4836:
4834:
4826:
4825:
4823:
4822:
4817:
4812:
4807:
4802:
4797:
4792:
4787:
4782:
4777:
4772:
4767:
4762:
4757:
4752:
4747:
4742:
4736:
4734:
4726:
4725:
4722:
4721:
4719:
4718:
4713:
4708:
4703:
4698:
4693:
4688:
4683:
4678:
4673:
4668:
4662:
4660:
4654:
4653:
4651:
4650:
4645:
4640:
4635:
4630:
4625:
4620:
4614:
4612:
4606:
4605:
4603:
4602:
4597:
4592:
4590:Factory method
4587:
4582:
4576:
4574:
4565:
4557:
4556:
4551:
4549:
4548:
4541:
4534:
4526:
4518:
4517:
4488:
4475:
4467:O'Reilly Media
4448:
4419:
4412:
4400:Addison Wesley
4382:
4353:
4345:O'Reilly Media
4321:
4320:
4318:
4315:
4314:
4313:
4308:
4303:
4298:
4293:
4287:
4281:
4273:
4270:
4255:
4148:lightningPhone
4112:lightningPhone
4082:lightningPhone
4076:lightningPhone
4061:lightningPhone
4031:lightningPhone
3579:
3576:
3573:
3218:POWER_ADAPTERS
3095:POWER_ADAPTERS
3008:POWER_ADAPTERS
2900:POWER_ADAPTERS
2813:POWER_ADAPTERS
2552:"Connect
2498:POWER_ADAPTERS
2480:abstractmethod
2454:
2451:
2448:
2444:
2164:IMicroUsbPhone
2122:lightningPhone
2089:lightningPhone
2038:lightningPhone
2032:lightningPhone
2017:lightningPhone
1999:lightningPhone
1984:IMicroUsbPhone
1774:IMicroUsbPhone
1531:IMicroUsbPhone
1496:
1493:
1490:
1461:
1458:
1456:
1455:
1434:
1322:AdapterFactory
1311:
1292:
1273:StringProvider
1240:AdapterFactory
1229:
1225:
1182:StringProvider
1149:AdapterFactory
1143:StringProvider
1126:
1058:StringProvider
1046:StringProvider
1028:StringProvider
995:AdapterFactory
984:
968:
919:AdapterFactory
917:
901:
823:
819:
662:StringProvider
629:StringProvider
621:
610:
605:
602:
535:
504:
480:
477:
475:
472:
424:
421:
390:
387:
386:
385:
366:
351:object adapter
295:
292:
290:
287:
284:
283:
280:
274:
273:
270:
264:
263:
260:
254:
253:
250:
246:
245:
242:
220:
217:
211:
208:
182:
181:
174:
152:
151:
148:
145:
130:
127:
78:
77:
42:
40:
33:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
5189:
5178:
5175:
5174:
5172:
5157:
5154:
5152:
5149:
5148:
5146:
5142:
5136:
5133:
5131:
5128:
5127:
5125:
5121:
5115:
5112:
5110:
5107:
5105:
5102:
5100:
5099:Robert Martin
5097:
5095:
5094:Martin Fowler
5092:
5090:
5087:
5085:
5082:
5080:
5077:
5075:
5072:
5070:
5069:Ralph Johnson
5067:
5065:
5062:
5060:
5057:
5056:
5054:
5050:
5044:
5043:
5039:
5037:
5036:
5032:
5031:
5029:
5025:
5019:
5016:
5014:
5011:
5009:
5006:
5004:
5001:
4999:
4996:
4994:
4991:
4989:
4986:
4984:
4981:
4979:
4976:
4974:
4971:
4969:
4966:
4964:
4961:
4959:
4956:
4954:
4951:
4950:
4948:
4942:
4936:
4933:
4931:
4928:
4926:
4923:
4921:
4918:
4916:
4913:
4911:
4908:
4906:
4905:Active record
4903:
4901:
4898:
4896:
4895:Naked objects
4893:
4891:
4888:
4886:
4885:Specification
4883:
4881:
4879:
4875:
4873:
4870:
4868:
4865:
4861:
4858:
4856:
4853:
4852:
4851:
4848:
4846:
4843:
4841:
4838:
4837:
4835:
4833:
4830:Architectural
4827:
4821:
4818:
4816:
4813:
4811:
4808:
4806:
4803:
4801:
4798:
4796:
4793:
4791:
4788:
4786:
4783:
4781:
4778:
4776:
4773:
4771:
4768:
4766:
4763:
4761:
4758:
4756:
4753:
4751:
4748:
4746:
4743:
4741:
4740:Active object
4738:
4737:
4735:
4733:
4727:
4717:
4714:
4712:
4709:
4707:
4704:
4702:
4699:
4697:
4694:
4692:
4689:
4687:
4684:
4682:
4679:
4677:
4674:
4672:
4669:
4667:
4664:
4663:
4661:
4659:
4655:
4649:
4646:
4644:
4641:
4639:
4636:
4634:
4631:
4629:
4626:
4624:
4621:
4619:
4616:
4615:
4613:
4611:
4607:
4601:
4598:
4596:
4593:
4591:
4588:
4586:
4583:
4581:
4578:
4577:
4575:
4573:
4569:
4566:
4564:
4558:
4554:
4547:
4542:
4540:
4535:
4533:
4528:
4527:
4524:
4507:on 2017-08-28
4506:
4502:
4501:w3sDesign.com
4498:
4492:
4489:
4478:
4472:
4468:
4461:
4460:
4452:
4449:
4438:on 2017-08-28
4437:
4433:
4432:w3sDesign.com
4429:
4423:
4420:
4415:
4413:0-201-63361-2
4409:
4405:
4401:
4396:
4395:
4386:
4383:
4372:on 2013-05-04
4368:
4364:
4360:
4356:
4350:
4346:
4342:
4341:
4336:
4335:Sierra, Kathy
4329:
4327:
4323:
4316:
4312:
4309:
4307:
4304:
4302:
4299:
4297:
4294:
4291:
4288:
4285:
4282:
4279:
4276:
4275:
4271:
4269:
4253:
3574:
3482:use_lightning
3416:phone_adapter
3404:use_micro_usb
3398:phone_adapter
3374:IPhoneAdapter
3368:phone_adapter
3296:use_micro_usb
3236:use_lightning
3188:use_micro_usb
3110:FormatAndroid
3104:IPhoneAdapter
3083:CONNECT_FIRST
2963:use_micro_usb
2915:FormatAndroid
2888:CONNECT_FIRST
2768:use_lightning
2684:use_micro_usb
2666:FormatAndroid
2636:use_lightning
2546:CONNECT_FIRST
2449:
2443:
1491:
1489:
1459:
1435:
1385:ImageProvider
1373:ImageProvider
1355:ImageProvider
1293:
1226:
1218:getStringData
1134:setStringData
1124:
1109:setStringData
1097:getStringData
969:
903:Register the
902:
876:ClassAFormat1
820:
755:getStringData
731:getStringData
689:ClassAFormat1
656:ClassAFormat1
641:getStringData
612:
611:
609:
603:
601:
599:
564:getStringData
543:Format1ClassA
533:
524:getStringData
512:setStringData
502:
478:
473:
469:
464:
457:
452:
448:
446:
442:
438:
434:
430:
422:
418:
413:
407:
402:
398:
396:
388:
370:class adapter
367:
348:
347:
346:
312:
311:class diagram
309:
306:In the above
300:
293:
288:
281:
279:
276:
275:
271:
269:
266:
265:
261:
259:
256:
255:
251:
248:
247:
243:
240:
239:
236:
234:
230:
226:
218:
216:
209:
207:
204:
189:
175:
160:
159:
158:
155:
149:
146:
143:
142:
141:
138:
136:
128:
126:
124:
120:
115:
113:
109:
105:
101:
97:
93:
89:
85:
74:
64:
60:
54:
52:
48:
43:This article
41:
32:
31:
19:
5151:Anti-pattern
5114:Linda Rising
5040:
5033:
4978:Lazy loading
4910:Identity map
4877:
4617:
4561:Gang of Four
4509:. Retrieved
4505:the original
4500:
4491:
4480:. Retrieved
4458:
4451:
4440:. Retrieved
4436:the original
4431:
4422:
4393:
4385:
4374:. Retrieved
4367:the original
4339:
4267:
4251:
4235:adapterCable
4223:adapterCable
4202:adapterCable
3656:AndroidPhone
2720:FormatIPhone
2618:FormatIPhone
2558:first."
2441:
2233:useLightning
2095:useLightning
1594:useLightning
1519:useLightning
1463:
1122:
607:
595:
531:
482:
447:of classes.
426:
392:
305:
222:
213:
205:
190:
183:
156:
153:
139:
135:Gang of Four
132:
116:
87:
81:
71:January 2011
68:
57:Please help
45:may contain
44:
5123:Communities
5104:Jim Coplien
5079:Grady Booch
5064:Erich Gamma
5008:Type tunnel
4993:Object pool
4988:Null object
4983:Mock object
4845:Interceptor
4815:Thread pool
4730:Concurrency
4676:Interpreter
4463:(paperback)
4402:. pp.
4370:(paperback)
4043:isConnected
3938:isConnected
3878:isConnected
3851:isConnected
3761:isConnected
3701:isConnected
3674:isConnected
2182:useMicroUsb
2146:AdapterDemo
2056:useMicroUsb
1801:useMicroUsb
1549:useMicroUsb
1328:getInstance
1246:getInstance
1155:getInstance
1001:getInstance
925:getInstance
800:sourceValue
782:sourceValue
225:polymorphic
203:interface.
112:source code
5018:Delegation
4953:Blackboard
4658:Behavioral
4610:Structural
4572:Creational
4511:2017-08-12
4482:2012-07-02
4442:2017-08-12
4376:2013-04-30
4317:References
4284:Delegation
4229:ConnectUsb
4217:applePhone
4193:ApplePhone
4184:applePhone
4097:ConnectUsb
3833:ApplePhone
3686:ConnectUsb
3629:ConnectUsb
1981:implements
1771:implements
1564:implements
659:implements
489:to supply
268:Delegation
210:Definition
51:irrelevant
5084:Kent Beck
4810:Semaphore
4800:Scheduler
4643:Flyweight
4633:Decorator
4628:Composite
4600:Singleton
4595:Prototype
4363:809772256
4199:IUsbPhone
4016:IUsbPhone
3980:WriteLine
3953:WriteLine
3896:WriteLine
3803:WriteLine
3776:WriteLine
3719:WriteLine
3662:IUsbPhone
3620:IUsbPhone
3617:interface
3584:interface
3206:CONNECTED
3038:connector
2996:CONNECTED
2981:connector
2951:connector
2843:connector
2801:CONNECTED
2786:connector
2756:connector
2570:metaclass
2531:CONNECTED
2104:@Override
2047:@Override
1873:connector
1849:@Override
1810:connector
1792:@Override
1786:connector
1666:connector
1642:@Override
1603:connector
1585:@Override
1579:connector
1528:interface
1498:interface
982:, write:
626:interface
555:@Override
437:languages
433:interface
289:Structure
258:Decorator
229:decorator
104:interface
47:excessive
5171:Category
5144:See also
4946:patterns
4832:patterns
4785:Proactor
4732:patterns
4706:Strategy
4696:Observer
4686:Mediator
4681:Iterator
4563:patterns
4272:See also
4241:Recharge
4154:Recharge
4133:Recharge
4025:readonly
3917:Recharge
3740:Recharge
3638:Recharge
3605:Recharge
3500:recharge
3440:__init__
3422:recharge
3332:__init__
3314:recharge
3254:__init__
3179:recharge
3155:recharge
3119:__init__
3053:RECHARGE
3017:recharge
2933:__init__
2921:__name__
2858:RECHARGE
2822:recharge
2738:__init__
2726:__name__
2588:recharge
2492:RECHARGE
2245:recharge
2194:recharge
2128:recharge
2113:recharge
1858:recharge
1651:recharge
1540:recharge
1510:recharge
1427:getImage
1421:provider
1415:setImage
1376:provider
1091:provider
1049:provider
888:anObject
861:anObject
582:toString
439:such as
129:Overview
53:examples
4998:Servant
4930:Model 2
4790:Reactor
4780:Monitor
4745:Balking
4716:Visitor
4691:Memento
4671:Command
4618:Adapter
4585:Builder
4278:Adapter
4252:Output:
4037:private
4022:private
3974:Console
3947:Console
3890:Console
3845:private
3797:Console
3770:Console
3713:Console
3668:private
3278:Android
2909:Android
2576:ABCMeta
2474:ABCMeta
2442:Output
2401:println
2365:println
2347:android
2329:println
2293:Android
2284:android
2281:Android
2077:println
1990:private
1951:println
1918:println
1894:println
1834:println
1783:boolean
1780:private
1768:Android
1744:println
1711:println
1687:println
1627:println
1576:boolean
1573:private
1485:Adapter
1470:Adapter
1391:adapter
1316:adapter
1313:Adapter
1234:adapter
1231:Adapter
1064:adapter
989:adapter
986:Adapter
912:adapter
906:adapter
837:Adapter
834:extends
764:private
668:private
546:extends
378:adaptee
359:adaptee
343:adaptee
335:adapter
323:adaptee
244:Intent
241:Pattern
197:adapter
186:adapter
178:adapter
167:adaptee
163:adapter
96:wrapper
5052:People
4935:Broker
4638:Facade
4623:Bridge
4473:
4410:
4361:
4351:
4166:public
4127:public
4091:public
4049:public
4004:sealed
4001:public
3911:public
3857:public
3827:sealed
3824:public
3734:public
3680:public
3650:sealed
3647:public
3614:public
3581:public
3464:IPhone
3356:IPhone
3230:mobile
3212:format
3173:mobile
3149:mobile
3143:mobile
3131:mobile
3089:format
3002:format
2894:format
2807:format
2714:IPhone
2537:"
2471:import
2450:Python
2428:iPhone
2389:System
2383:iPhone
2353:System
2317:System
2311:Iphone
2302:iPhone
2299:Iphone
2269:String
2257:static
2254:public
2203:static
2152:static
2140:public
2107:public
2065:System
2050:public
2005:public
1939:System
1906:System
1882:System
1852:public
1822:System
1795:public
1732:System
1699:System
1675:System
1645:public
1615:System
1588:public
1561:Iphone
1451:ClassA
1445:ClassC
1439:ClassB
1409:classC
1403:classA
1343:ClassA
1297:ClassA
1261:ClassA
1209:classA
1170:ClassA
1128:classB
1115:string
1103:classB
1085:string
1082:String
1076:classA
1016:ClassA
979:ClassB
973:ClassA
937:ClassA
882:ClassA
870:return
858:Object
846:Object
843:public
825:public
797:return
779:String
770:format
767:String
749:classA
743:format
740:return
728:String
725:public
710:classA
698:ClassA
686:public
674:classA
671:ClassA
650:public
638:String
635:public
623:public
616:ClassA
576:format
573:return
561:String
558:public
549:ClassA
537:public
518:classA
506:classB
498:String
492:classB
486:classA
468:LePUS3
417:LePUS3
395:object
374:target
355:target
339:target
331:client
327:target
319:target
315:client
313:, the
278:Facade
233:facade
201:target
193:target
171:target
121:of an
86:, the
5027:Books
4944:Other
4880:-tier
4701:State
4648:Proxy
4404:139ff
4007:class
3830:class
3653:class
3554:print
3548:print
3530:print
3524:print
3506:print
3494:phone
3476:phone
3458:phone
3428:class
3386:phone
3350:phone
3320:class
3308:phone
3290:phone
3272:phone
3242:class
3200:print
3101:class
3077:print
3065:state
3059:print
3047:state
2990:print
2957:False
2906:class
2882:print
2870:state
2864:print
2852:state
2795:print
2762:False
2711:class
2696:raise
2663:class
2648:raise
2615:class
2600:raise
2561:class
2239:phone
2227:phone
2218:phone
2188:phone
2176:phone
2167:phone
2143:class
1993:final
1975:class
1765:class
1558:class
1448:into
1397:adapt
1361:class
1349:class
1303:Class
1279:class
1267:class
1203:adapt
1188:class
1176:class
1070:adapt
1034:class
1022:class
955:class
943:class
855:final
849:adapt
828:class
776:final
695:final
653:class
540:class
219:Usage
108:class
90:is a
5003:Twin
4860:MVVM
4775:Lock
4770:Join
4471:ISBN
4408:ISBN
4359:OCLC
4349:ISBN
4301:Shim
4172:Main
4169:void
4142:this
4130:void
4106:this
4094:void
4070:this
4040:bool
3968:else
3932:this
3914:void
3884:true
3872:this
3860:void
3848:bool
3791:else
3755:this
3737:void
3707:true
3695:this
3683:void
3671:bool
3635:void
3626:void
3602:void
3593:void
3488:self
3470:self
3452:self
3446:self
3410:self
3392:self
3380:self
3362:self
3344:self
3338:self
3302:self
3284:self
3266:self
3260:self
3224:self
3194:self
3167:self
3161:self
3137:self
3125:self
3071:else
3032:self
3023:self
2987:True
2975:self
2969:self
2945:self
2939:self
2876:else
2837:self
2828:self
2792:True
2780:self
2774:self
2750:self
2744:self
2690:self
2642:self
2594:self
2465:from
2272:args
2263:main
2260:void
2206:void
2155:void
2110:void
2053:void
2026:this
1933:else
1855:void
1816:true
1798:void
1726:else
1648:void
1609:true
1591:void
1546:void
1537:void
1516:void
1507:void
1492:Java
1442:and
1430:());
1221:());
806:trim
758:());
680:null
585:());
527:());
441:Java
368:The
349:The
4872:ECS
4867:ADR
4855:MVP
4850:MVC
4244:();
4232:();
4208:new
4196:();
4190:new
4157:();
4121:();
3641:();
3632:();
3608:();
3599:();
3437:def
3329:def
3251:def
3185:def
3152:def
3116:def
3044:for
3014:def
2960:def
2930:def
2849:for
2819:def
2765:def
2735:def
2681:def
2633:def
2585:def
2468:abc
2431:));
2419:new
2395:out
2359:out
2323:out
2314:();
2308:new
2296:();
2290:new
2248:();
2236:();
2197:();
2185:();
2131:();
2098:();
2071:out
1945:out
1912:out
1888:out
1828:out
1738:out
1705:out
1681:out
1621:out
1552:();
1543:();
1522:();
1513:();
1100:();
976:to
928:().
873:new
809:();
644:();
456:UML
406:UML
308:UML
123:XML
82:In
49:or
5173::
4499:.
4430:.
4406:.
4398:.
4357:.
4343:.
4325:^
4220:);
4175:()
4136:()
4100:()
3989:);
3962:);
3926:if
3920:()
3905:);
3866:()
3812:);
3785:);
3749:if
3743:()
3728:);
3689:()
3575:C#
3569:()
3551:()
3545:()
3527:()
3521:()
3503:()
3485:()
3467:()
3449:):
3425:()
3407:()
3359:()
3341:):
3317:()
3299:()
3281:()
3263:):
3239:()
3221:))
3197:):
3182:()
3164:):
3134:):
3113:):
3098:))
3050:in
3029:if
3026:):
3011:))
2972:):
2942:):
2918:):
2903:))
2855:in
2834:if
2831:):
2816:))
2777:):
2747:):
2723:):
2693:):
2675:):
2645:):
2627:):
2597:):
2579:):
2555:{}
2540:{}
2410:);
2386:);
2374:);
2350:);
2338:);
2116:()
2086:);
2059:()
1960:);
1927:);
1903:);
1867:if
1861:()
1843:);
1804:()
1753:);
1720:);
1696:);
1660:if
1654:()
1636:);
1597:()
1482:To
1467:To
1406:);
1370:);
1331:()
1309::
1288:);
1249:()
1212:))
1158:()
1140:((
1118:);
1079:);
1043:);
1004:()
964:);
891:);
879:((
734:()
600:.
567:()
397:.
384:).
365:).
345::
114:.
4878:n
4545:e
4538:t
4531:v
4514:.
4485:.
4445:.
4416:.
4379:.
4247:}
4238:.
4226:.
4214:(
4205:=
4187:=
4178:{
4163:}
4160:}
4151:.
4145:.
4139:{
4124:}
4115:.
4109:.
4103:{
4088:}
4085:;
4079:=
4073:.
4067:{
4064:)
4055:(
4046:;
4034:;
4019:{
4013::
3998:}
3995:}
3992:}
3983:(
3977:.
3971:{
3965:}
3956:(
3950:.
3944:{
3941:)
3935:.
3929:(
3923:{
3908:}
3899:(
3893:.
3887:;
3881:=
3875:.
3869:{
3854:;
3842:{
3836::
3821:}
3818:}
3815:}
3806:(
3800:.
3794:{
3788:}
3779:(
3773:.
3767:{
3764:)
3758:.
3752:(
3746:{
3731:}
3722:(
3716:.
3710:;
3704:=
3698:.
3692:{
3677:;
3665:{
3659::
3644:}
3623:{
3611:}
3590:{
3563:)
3557:(
3539:)
3533:(
3515:)
3509:(
3497:.
3491:.
3479:.
3473:.
3461:=
3455:.
3443:(
3434::
3419:.
3413:.
3401:.
3395:.
3389:)
3383:.
3377:(
3371:=
3365:.
3353:=
3347:.
3335:(
3326::
3311:.
3305:.
3293:.
3287:.
3275:=
3269:.
3257:(
3248::
3233:.
3227:.
3215:(
3209:.
3203:(
3191:(
3176:.
3170:.
3158:(
3146:=
3140:.
3128:,
3122:(
3107:(
3092:(
3086:.
3080:(
3074::
3068:)
3062:(
3056::
3041::
3035:.
3020:(
3005:(
2999:.
2993:(
2984:=
2978:.
2966:(
2954:=
2948:.
2936:(
2924:=
2912:(
2897:(
2891:.
2885:(
2879::
2873:)
2867:(
2861::
2846::
2840:.
2825:(
2810:(
2804:.
2798:(
2789:=
2783:.
2771:(
2759:=
2753:.
2741:(
2729:=
2717:(
2708:)
2702:(
2687:(
2669:(
2660:)
2654:(
2639:(
2621:(
2612:)
2606:(
2591:(
2573:=
2567:(
2549:=
2534:=
2528:}
2522::
2516:,
2510::
2504:{
2501:=
2495:=
2486:=
2477:,
2437:}
2434:}
2425:(
2416:(
2404:(
2398:.
2392:.
2380:(
2368:(
2362:.
2356:.
2344:(
2332:(
2326:.
2320:.
2305:=
2287:=
2278:{
2275:)
2266:(
2251:}
2242:.
2230:.
2224:{
2221:)
2212:(
2200:}
2191:.
2179:.
2173:{
2170:)
2161:(
2149:{
2137:}
2134:}
2125:.
2119:{
2101:}
2092:.
2080:(
2074:.
2068:.
2062:{
2044:}
2041:;
2035:=
2029:.
2023:{
2020:)
2011:(
2002:;
1987:{
1969:}
1966:}
1963:}
1954:(
1948:.
1942:.
1936:{
1930:}
1921:(
1915:.
1909:.
1897:(
1891:.
1885:.
1879:{
1876:)
1870:(
1864:{
1846:}
1837:(
1831:.
1825:.
1819:;
1813:=
1807:{
1789:;
1777:{
1762:}
1759:}
1756:}
1747:(
1741:.
1735:.
1729:{
1723:}
1714:(
1708:.
1702:.
1690:(
1684:.
1678:.
1672:{
1669:)
1663:(
1657:{
1639:}
1630:(
1624:.
1618:.
1612:;
1606:=
1600:{
1582:;
1570:{
1555:}
1534:{
1525:}
1504:{
1424:.
1418:(
1412:.
1400:(
1394:.
1388:)
1382:(
1379:=
1364:,
1358:.
1352:,
1346:.
1340:(
1334:.
1325:.
1319:=
1306:C
1282:,
1276:.
1270:,
1264:.
1258:(
1252:.
1243:.
1237:=
1215:.
1206:(
1200:.
1197:)
1191:,
1185:.
1179:,
1173:.
1167:(
1161:.
1152:.
1146:)
1137:(
1131:.
1112:(
1106:.
1094:.
1088:=
1073:(
1067:.
1061:)
1055:(
1052:=
1037:,
1031:.
1025:,
1019:.
1013:(
1007:.
998:.
992:=
958:,
952:.
946:,
940:.
934:(
922:.
897:}
894:}
885:)
867:{
864:)
852:(
840:{
815:}
812:}
803:.
788:{
785:)
773:(
761:}
752:.
746:(
737:{
722:}
719:;
716:a
713:=
707:{
704:)
701:a
692:(
683:;
677:=
665:{
647:}
632:{
591:}
588:}
579:(
570:{
552:{
521:.
515:(
509:.
458:.
73:)
69:(
65:.
55:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.