tips you need to know about guava for simpler and cleaner code without java 8
TRANSCRIPT
![Page 1: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/1.jpg)
Tips you need to know about Guava for simpler and cleaner
code without JAVA 8
黃俊喬( Kosmos Banking)
![Page 2: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/2.jpg)
About Woody
• 黃俊喬 [email protected]
• Worked @ Academia Sinica
• Worked @ B&S Link
• Worked @ HTC
• Work @ Kosmos Banking
• Sample code in Github: https://goo.gl/iVWBiy
![Page 3: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/3.jpg)
Tip 1 Optional – prior to Java 8
![Page 4: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/4.jpg)
Tip 1 Optional – Guava
• Optional in Java 8
![Page 5: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/5.jpg)
Functional Programming
• Function can be used as input parameter or return value:
• Map: Determines the output based on an input value
• Filter: Determines a true or false value for a given input
• Reduce: Processes (using a combiner) a list of elements and generates the return value [Guava doesn’t support for the sake of readability]
![Page 6: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/6.jpg)
Tip 2 Predicate<T> - prior to Java 8
![Page 7: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/7.jpg)
Tip 2 Predicate<T> - Guava
• Predicate in Java 8
![Page 8: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/8.jpg)
Tip 3 Function<F,T> - Guava
• Function in Java 8
![Page 9: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/9.jpg)
Tip 4 FluentIterable - prior to Java 8
![Page 10: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/10.jpg)
Tip 4 FluentIterable - Guava
• stream in Java 8
![Page 11: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/11.jpg)
Tip 5 MultiMap - prior to Java 8
![Page 12: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/12.jpg)
Tip 5 MultiMap - Guava
• stream collector in Java 8
![Page 13: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/13.jpg)
Tip 6 Ordering<T> - prior to Java 8
![Page 14: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/14.jpg)
Tip 6 Ordering<T> - Guava
• Ordering in Java 8
![Page 15: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/15.jpg)
Tip 7 ComparisonChain - Guava
• Comparator.thenComparing in Java 8
![Page 16: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/16.jpg)
Tip 8 ListenableFuture - prior to Java 8
![Page 17: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/17.jpg)
Tip 8 ListenableFuture - Guava
• CompletableFuture in Java 8
![Page 18: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/18.jpg)
Questions & Discussion
![Page 19: Tips you need to know about guava for simpler and cleaner code without JAVA 8](https://reader036.vdocuments.pub/reader036/viewer/2022062522/58729f5d1a28ab07208b5677/html5/thumbnails/19.jpg)
Thank You