Date |
Summary |
2017.5.20 |
Object class (equals, compare, clone), generics 1;
|
2017.5.21 |
generics 2 (see covariance and contravariance rule and Java generics and type erasure for array types and generics), reflection (see more in Java Reflection Tutorial by Jakob Jenkov; also see off. ref., Class class; also read metaprogramming), Java annotations (see java annotation design, annotations, javadoc);
|
2017.6.4 |
multithreading, synchronization, multithreaded server (see Java Socket Programming Examples);
|
2017.6.10 |
Java 8 Lambda Expressions & Streams (see lambda expressions and functional programming, Implementing lambda expressions in Java , parallel functional programming; the official document for Java Aggregate Operations, Lambdas and Streams in Java 8 Libraries; more examples in practice: Java 8 No More Loop), JUnit (also see unit testing);
|
2017.6.11 |
JVM, analysis of algorithms, array list, linked list, stack, queue;
|
2017.6.17 |
(reivew on lambda: reduce: identity, accumulator; collect: supplier, accumulator, combiner; also read Lambdas & Streams In JDK 8: Beyond The Basics, JDK 8: Stream Style), priority queue (+ heaps and heap sort), symbol tables;
|
2017.6.18 |
binary search tree, hash table;
|
2017.6.25 |
(review on hash table: for the reason of ``one of a billion bug'', see integer overflow; also read universal hashing, universal and perfect hashing; for information security, see cryptographic hash functions, Cryptographic Hash Functions: Theory and Practice; bitcoin hash functions explained), undirected graph, graph traversal (DFS, BFS), directed graph; feedback;
|
2017.7.1 |
event-driven programming: events, listeners, callbacks, Java graphics and GUIs, Java event handling, Java 2D games tutorial (see snake game), JavaFX tutorial, class design, design patterns 1; android architecture;
|
2017.7.2 |
Anderson's OOAD lectures (Design Patterns, Facade & Adapter, Expanding Our Horizons, Strategy, Bridge & Factory, Principles of Design Patterns) (see design patterns 2, design_pattern_tutorial, dependency injection; also see Java 8 Stream API and RxJava Comparison and ReactFX), MVC patterns, data compression, feedback;
|