差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 | ||
java:java [2019/11/20 23:47] tony [Architecture] |
java:java [2023/01/04 13:26] tony [Security] |
||
---|---|---|---|
行 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]] | ||
+ | * [[https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml|TLS有效的cipher查詢]] | ||
+ | ==== 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]] | ||
行 24: | 行 36: | ||
* [[http://www.plainionist.net/Implementing-Clean-Architecture-UseCases/|Implementing-Clean-Architecture-UseCases]] | * [[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://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]] | ||
行 45: | 行 64: | ||
* [[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 ==== |