差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 下次修改 Both sides next revision | ||
java:java [2019/06/23 18:33] tony [Architecture] |
java:java [2022/11/25 16:51] tony [Resource] |
||
---|---|---|---|
行 7: | 行 7: | ||
*[[Java:API|API]] | *[[Java:API|API]] | ||
*[[Java:code_quality|Quality]] | *[[Java:code_quality|Quality]] | ||
+ | *[[Java:SupportIPv6|Support IPv6]] | ||
===== Resource ===== | ===== Resource ===== | ||
* http://man.lupaworld.com/content/develop/JDK_6.0_API_html_zh_CN/html/zh_CN/api/java/util/concurrent/locks/ReentrantReadWriteLock.html | * http://man.lupaworld.com/content/develop/JDK_6.0_API_html_zh_CN/html/zh_CN/api/java/util/concurrent/locks/ReentrantReadWriteLock.html | ||
行 14: | 行 15: | ||
* [[https://www.gnu.org/licenses/lgpl-java.html|LGPL vs JAVA]] | * [[https://www.gnu.org/licenses/lgpl-java.html|LGPL vs JAVA]] | ||
* [[https://stackoverflow.com/questions/36904955/passing-single-object-vs-passing-multiple-parameters|Passing single object vs. passing multiple parameters]] | * [[https://stackoverflow.com/questions/36904955/passing-single-object-vs-passing-multiple-parameters|Passing single object vs. passing multiple parameters]] | ||
+ | * [[https://wiki.sei.cmu.edu/confluence/display/java/SEI+CERT+Oracle+Coding+Standard+for+Java|SEI CERT Oracle Coding Standard for Java]] | ||
+ | * [[http://hauchee.blogspot.com/2015/05/unicode-regular-expression.html|http://hauchee.blogspot.com/2015/05/unicode-regular-expression.html]] | ||
+ | * [[https://github.com/qiangmzsx/Software-Engineering-at-Google|Software-Engineering-at-Google]] | ||
+ | * [[https://github.com/alexkasko/openjdk-unofficial-builds|OpenJDK6 download]] | ||
+ | * [[https://google.github.io/eng-practices/review/emergencies.html|code review - Emergencies]] | ||
+ | ==== Security ==== | ||
+ | * [[https://www.oracle.com/java/technologies/javase/seccodeguide.html|Secure Coding Guidelines for Java SE]] | ||
+ | * [[https://docs.oracle.com/javase/8/docs/technotes/guides/security/doprivileged.html|API for Privileged Blocks]] | ||
+ | ==== Utility ==== | ||
+ | * [[https://regexr.com/3d9se|regexr-version string]] | ||
==== Architecture ==== | ==== Architecture ==== | ||
* [[https://medium.com/@dmilicic/a-detailed-guide-on-developing-android-apps-using-the-clean-architecture-pattern-d38d71e94029|A detailed guide on developing Android apps using the Clean Architecture pattern]] | * [[https://medium.com/@dmilicic/a-detailed-guide-on-developing-android-apps-using-the-clean-architecture-pattern-d38d71e94029|A detailed guide on developing Android apps using the Clean Architecture pattern]] | ||
行 21: | 行 32: | ||
* [[http://edisonxu.com/2017/03/23/hello-cqrs.html|Hello CQRS]] | * [[http://edisonxu.com/2017/03/23/hello-cqrs.html|Hello CQRS]] | ||
* [[https://medium.com/%E9%96%92%E8%AB%87%E8%BB%9F%E9%AB%94%E6%9E%B6%E6%A7%8B|閒談軟體架構]] | * [[https://medium.com/%E9%96%92%E8%AB%87%E8%BB%9F%E9%AB%94%E6%9E%B6%E6%A7%8B|閒談軟體架構]] | ||
+ | * [[https://medium.com/%E9%96%92%E8%AB%87%E8%BB%9F%E9%AB%94%E6%9E%B6%E6%A7%8B/%E9%96%92%E8%AB%87%E8%BB%9F%E9%AB%94%E6%9E%B6%E6%A7%8B-repository-c190c0d0e735|閒談軟體架構-Repository]] | ||
+ | * [[http://www.plainionist.net/Implementing-Clean-Architecture-UseCases/|Implementing-Clean-Architecture-UseCases]] | ||
+ | * [[https://docs.microsoft.com/zh-tw/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/domain-events-design-implementation|領域事件:設計和實作]] | ||
+ | * [[https://ithelp.ithome.com.tw/articles/10226734|DDD 戰術設計:Domain Event 領域中的重要事件]] | ||
+ | * [[https://teddy-chen-tw.blogspot.com/2019/12/blog-post_26.html?fbclid=IwAR1sIJaxTxlXvI2p9_6LYvnJVXMuaX1griUEvv9cKawIekOopxBK-Q7QZ5s|領域事件的發送與接收(上)]] | ||
+ | * [[https://docs.microsoft.com/zh-tw/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/|使用 DDD 與 CQRS 模式解決微服務中的商務複雜度]] | ||
+ | * [[https://craftsmanshipcounts.com/clean-architecture-compare-critique-java/|Clean Architecture: A Comparison to and Critique of Java Best Practice]] | ||
+ | * [[https://craftsmanshipcounts.com/clean-architecture-sorting-filtering-paging/|The Devil in the Details of Clean Architecture: Sorting, Filtering, and Paging]] | ||
+ | * [[https://foil-knee-12e.notion.site/Why-we-need-to-separate-domain-model-from-data-model-DTO-DB-model-ViewModel-5e62bca2c9414efbb07c3623af48b96d|Why we need to separate domain model from data model (DTO/ DB model/ViewModel)]] | ||
+ | * [[https://haitham-raik.medium.com/books-for-great-software-architect-34c81fc70e12|Books for Great Software Architects — Fundamentals Path]] | ||
==== OO ==== | ==== OO ==== | ||
* [[http://www.hitripod.com/blog/2011/12/object-oriented-design-five-principles-solid/|物件導向程式設計五大原則:SOLID]] | * [[http://www.hitripod.com/blog/2011/12/object-oriented-design-five-principles-solid/|物件導向程式設計五大原則:SOLID]] | ||
行 32: | 行 53: | ||
* [[https://www.jianshu.com/p/38cc6a5d0614|Collecting Parameter 收集参数模式 - 难寻的模式与技巧]] | * [[https://www.jianshu.com/p/38cc6a5d0614|Collecting Parameter 收集参数模式 - 难寻的模式与技巧]] | ||
* [[http://royvanrijn.com/blog/2010/09/annotated-field-injection-vs-constructor-injection/|Field injection vs Constructor injection]] | * [[http://royvanrijn.com/blog/2010/09/annotated-field-injection-vs-constructor-injection/|Field injection vs Constructor injection]] | ||
+ | * [[https://nicky-zs.github.io/2014/02/09/GRASP/|GRASP设计模式及OO设计原则]] | ||
=== Command Pattern === | === Command Pattern === | ||
* [[https://notfalse.net/4/command-pattern#i-10|命令模式 (Command Pattern)]] | * [[https://notfalse.net/4/command-pattern#i-10|命令模式 (Command Pattern)]] | ||
行 41: | 行 63: | ||
* [[https://medium.com/@GumtreeDevTeam/builder-pattern-and-inheritance-in-java-25ccd2d70c9d|Builder Pattern and Inheritance in Java]] | * [[https://medium.com/@GumtreeDevTeam/builder-pattern-and-inheritance-in-java-25ccd2d70c9d|Builder Pattern and Inheritance in Java]] | ||
* [[http://egalluzzo.blogspot.com/2010/06/using-inheritance-with-fluent.html|Using inheritance with fluent interfaces: get this]] | * [[http://egalluzzo.blogspot.com/2010/06/using-inheritance-with-fluent.html|Using inheritance with fluent interfaces: get this]] | ||
- | + | ==== Refactoring ==== | |
+ | * [[https://blogs.oracle.com/javamagazine/refactoring-java-part-3-regaining-business-agility-by-simplifying-legacy-code?source=:em:nw:mt:::RC_WWMK200429P00043:NSL400113756&elq_mid=180344&sh=15181307121302312825343122&cmid=WWMK200429P00043C0014|Refactoring Java, Part 3: Regaining business agility by simplifying legacy code]] | ||
==== Git ==== | ==== Git ==== |