Date |
Summary |
2018.6.2 |
OOP: a quick review;
|
2018.6.3 |
generics (also see generics tutorial by Oracle), Object class with equals, compare and clone;
|
2018.6.9 |
(lecture cancellation)
|
2018.6.10 (3h30m) |
reflection and annotation (see java annotation design and javadoc), multithreads;
|
2018.6.16 |
(lecture cancellation)
|
2018.6.17 |
(lecture cancellation)
|
2018.6.23 (3h30m) |
synchronization, multithreaded server (client_server_model_sample.zip; see Java Socket Programming Examples), lambdas and streams (MonteCarloByStream.zip; also see parallel functional programming in Java, lambda expressions and functional programming, Lambdas & Streams In JDK 8: Beyond The Basics, JDK 8: Stream Style, and Java 8 Lambda Expressions & Streams; more examples in practice: Java 8 No More Loop);
|
2018.6.24 (3h30m) |
JUnit in Eclipse (also read unit test), JVM (see Animated PPT slides for Java Activation Records for Bank Account example), analysis of algorithms, array list, linked list, stack, queue;
|
2018.6.30 (3h30m) |
priority queue, heaps and heap sort (particle collision simulation), symbol tables;
|
2018.7.1 (3h30m) |
binary search tree, hash table (for the reason of ``one of a billion bug'', see integer overflow; you may also see Bitcoin and bitcoin tutorial for the most surging cryptocurrency these years);
|
2018.7.7 (3h30m) |
undirected graph, directed graph, minimum spanning tree, shortest path, tries, regular expressions, data compression;
|
2018.7.8 |
event-driven programming: Java graphics and GUIs, Java event handling (see more events, listeners, callbacks, Java 2D games tutorial, snake game), design patterns 1, design patterns 2, MVC patterns (also see Principles of Design Patterns, Java 8 Stream API and RxJava Comparison, and android architecture);
|