diff --git a/README.md b/README.md index 1393b2e58..c7c137fa3 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@
-Read in different language : [**zh**](/localization/zh/README.md), [**ko**](/localization/ko/README.md), [**fr**](/localization/fr/README.md), [**tr**](/localization/tr/README.md), [**ar**](/localization/ar/README.md), [**es**](/localization/es/README.md), [**pt**](/localization/pt/README.md) +Read in different language : [**zh**](localization/zh/README.md), [**ko**](localization/ko/README.md), [**fr**](localization/fr/README.md), [**tr**](localization/tr/README.md), [**ar**](localization/ar/README.md), [**es**](localization/es/README.md), [**pt**](localization/pt/README.md)
diff --git a/active-object/README.md b/active-object/README.md index 48db671e4..6e974034a 100644 --- a/active-object/README.md +++ b/active-object/README.md @@ -123,4 +123,4 @@ Now, we can create multiple creatures such as Orcs, tell them to eat and roam an ## Class diagram -![alt text](./etc/active-object.urm.PNG "Active Object class diagram") +![alt text](./etc/active-object.urm.png "Active Object class diagram") diff --git a/active-object/etc/active-object.urm.PNG b/active-object/etc/active-object.urm.png similarity index 100% rename from active-object/etc/active-object.urm.PNG rename to active-object/etc/active-object.urm.png diff --git a/command/README.md b/command/README.md index 03122c410..50e1ea47d 100644 --- a/command/README.md +++ b/command/README.md @@ -1,4 +1,4 @@ - --- +--- layout: pattern title: Command folder: command diff --git a/commander/README.md b/commander/README.md index bff181698..f2469962b 100644 --- a/commander/README.md +++ b/commander/README.md @@ -25,4 +25,4 @@ We need a mechanism in place which can handle these kinds of situations. We have ## Credits -* [https://www.grahamlea.com/2016/08/distributed-transactions-microservices-icebergs/] +* [Distributed Transactions: The Icebergs of Microservices](https://www.grahamlea.com/2016/08/distributed-transactions-microservices-icebergs/) diff --git a/dependency-injection/README.md b/dependency-injection/README.md index 5a74c5d46..2959b7dac 100644 --- a/dependency-injection/README.md +++ b/dependency-injection/README.md @@ -103,4 +103,4 @@ Use the Dependency Injection pattern when: * [Dependency Injection Principles, Practices, and Patterns](https://www.amazon.com/gp/product/161729473X/ref=as_li_qf_asin_il_tl?ie=UTF8&tag=javadesignpat-20&creative=9325&linkCode=as2&creativeASIN=161729473X&linkId=57079257a5c7d33755493802f3b884bd) * [Clean Code: A Handbook of Agile Software Craftsmanship](https://www.amazon.com/gp/product/0132350882/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=0132350882&linkCode=as2&tag=javadesignpat-20&linkId=2c390d89cc9e61c01b9e7005c7842871) * [Java 9 Dependency Injection: Write loosely coupled code with Spring 5 and Guice](https://www.amazon.com/gp/product/1788296257/ref=as_li_tl?ie=UTF8&tag=javadesignpat-20&camp=1789&creative=9325&linkCode=as2&creativeASIN=1788296257&linkId=4e9137a3bf722a8b5b156cce1eec0fc1) -* [Google Guice Tutorial: Open source Java based dependency injection framework](https://www.amazon.com/gp/product/B083P7DZ8M/ref=as_li_tl?ie=UTF8&tag=javadesignpat-20&camp=1789&creative=9325&linkCode=as2&creativeASIN=B083P7DZ8M&linkId=04f0f902c877921e45215b624a124bfe) +* [Google Guice: Agile Lightweight Dependency Injection Framework](https://www.amazon.com/gp/product/1590599977/ref=as_li_qf_asin_il_tl?ie=UTF8&tag=javadesignpat-20&creative=9325&linkCode=as2&creativeASIN=1590599977&linkId=3b10c90b7ba480a1b7777ff38000f956) diff --git a/event-driven-architecture/README.md b/event-driven-architecture/README.md index 3508fb631..295d23334 100644 --- a/event-driven-architecture/README.md +++ b/event-driven-architecture/README.md @@ -24,7 +24,6 @@ Use an Event-driven architecture when ## Real world examples -* SendGrid, an email API, sends events whenever an email is processed, delivered, opened etc... (https://sendgrid.com/docs/API_Reference/Webhooks/event.html) * Chargify, a billing API, exposes payment activity through various events (https://docs.chargify.com/api-events) * Amazon's AWS Lambda, lets you execute code in response to events such as changes to Amazon S3 buckets, updates to an Amazon DynamoDB table, or custom events generated by your applications or devices. (https://aws.amazon.com/lambda) * MySQL runs triggers based on events such as inserts and update events happening on database tables. @@ -32,6 +31,6 @@ Use an Event-driven architecture when ## Credits * [Event-driven architecture - Wikipedia](https://en.wikipedia.org/wiki/Event-driven_architecture) -* [Fundamental Components of an Event-Driven Architecture](http://giocc.com/fundamental-components-of-an-event-driven-architecture.html) +* [What is an Event-Driven Architecture](https://aws.amazon.com/event-driven-architecture/) * [Real World Applications/Event Driven Applications](https://wiki.haskell.org/Real_World_Applications/Event_Driven_Applications) * [Event-driven architecture definition](http://searchsoa.techtarget.com/definition/event-driven-architecture) diff --git a/half-sync-half-async/README.md b/half-sync-half-async/README.md index 76eb1e6cf..45dab2281 100644 --- a/half-sync-half-async/README.md +++ b/half-sync-half-async/README.md @@ -30,7 +30,7 @@ Use Half-Sync/Half-Async pattern when * [BSD Unix networking subsystem](https://www.dre.vanderbilt.edu/~schmidt/PDF/PLoP-95.pdf) * [Real Time CORBA](http://www.omg.org/news/meetings/workshops/presentations/realtime2001/4-3_Pyarali_thread-pool.pdf) -* [Android AsyncTask framework](http://developer.android.com/reference/android/os/AsyncTask.html) +* [Android AsyncTask framework](https://developer.android.com/reference/android/os/AsyncTask) ## Credits diff --git a/localization/ko/strategy/README.md b/localization/ko/strategy/README.md index cc13b3f36..ef45765dd 100644 --- a/localization/ko/strategy/README.md +++ b/localization/ko/strategy/README.md @@ -163,7 +163,7 @@ public class LambdaStrategy { ## 클래스 다이어그램 -![alt text](./etc/strategy_urm.png "Strategy") +![alt text](../../../strategy/etc/strategy_urm.png "Strategy") ## 적용 가능성 diff --git a/localization/zh/active-object/README.md b/localization/zh/active-object/README.md index ae1a1724f..301e27c1f 100644 --- a/localization/zh/active-object/README.md +++ b/localization/zh/active-object/README.md @@ -122,4 +122,4 @@ public class Orc extends ActiveCreature { ## 类图 -![alt text](../../../active-object/etc/active-object.urm.PNG "Active Object class diagram") +![alt text](../../../active-object/etc/active-object.urm.png "Active Object class diagram") diff --git a/localization/zh/chain/README.md b/localization/zh/chain/README.md index 0262868a9..b4034d32c 100644 --- a/localization/zh/chain/README.md +++ b/localization/zh/chain/README.md @@ -139,7 +139,7 @@ king.makeRequest(new Request(RequestType.COLLECT_TAX, "collect tax")); // Orc so ``` ## 类图 -![alt text](../../../chain/etc/chain.urm.png "Chain of Responsibility class diagram") +![alt text](../../../chain-of-responsibility/etc/chain-of-responsibility.urm.png "Chain of Responsibility class diagram") ## 适用性 使用责任链模式当 diff --git a/master-worker-pattern/README.md b/master-worker-pattern/README.md index 8306accb6..005c3dc64 100644 --- a/master-worker-pattern/README.md +++ b/master-worker-pattern/README.md @@ -28,5 +28,5 @@ In this pattern, parallel processing is performed using a system consisting of a ## Credits -* [https://docs.gigaspaces.com/sbp/master-worker-pattern.html] -* [http://www.cs.sjsu.edu/~pearce/oom/patterns/behavioral/masterslave.htm] +* [Master-Worker Pattern](https://docs.gigaspaces.com/sbp/master-worker-pattern.html) +* [The Master-Slave Design Pattern](https://www.cs.sjsu.edu/~pearce/oom/patterns/behavioral/masterslave.htm) diff --git a/model-view-viewmodel/README.md b/model-view-viewmodel/README.md index 1306b7a0e..da961bf16 100644 --- a/model-view-viewmodel/README.md +++ b/model-view-viewmodel/README.md @@ -118,7 +118,7 @@ To deploy the example, go to model-view-viewmodel folder and run: * [Zkoss Demo](https://www.zkoss.org/zkdemo/getting_started/mvvm) * [Learn MVVM](https://www.learnmvvm.com/) -* [Android Developer CodeLabs](https://codelabs.developers.google.com/codelabs/android-databinding) +* [Data Binding in Android](https://developer.android.com/codelabs/android-databinding#0) ## Typical Use Case diff --git a/pipeline/README.md b/pipeline/README.md index a35c9941f..bd687f0c0 100644 --- a/pipeline/README.md +++ b/pipeline/README.md @@ -114,7 +114,7 @@ the [Single Responsibility Principle (SRP)](https://java-design-patterns.com/pri ## Related patterns -* [Chain of Responsibility](https://java-design-patterns.com/patterns/chain/) +* [Chain of Responsibility](https://java-design-patterns.com/patterns/chain-of-responsibility/) ## Credits diff --git a/subclass-sandbox/README.md b/subclass-sandbox/README.md index 40ec791a1..678a29c92 100644 --- a/subclass-sandbox/README.md +++ b/subclass-sandbox/README.md @@ -25,4 +25,4 @@ The Subclass Sandbox pattern is a very simple, common pattern lurking in lots of ## Credits -* [Game Programming Patterns - Subclass Sandbox]([http://gameprogrammingpatterns.com/subclass-sandbox.html](http://gameprogrammingpatterns.com/subclass-sandbox.html)) +* [Game Programming Patterns - Subclass Sandbox](https://gameprogrammingpatterns.com/subclass-sandbox.html)