Video description
Two Hours of Video Instruction
Overview
Many Java developers today are working on applications written before the release of Java SE 8. Even after Java 8 is adopted for new features, it’s likely that these legacy applications will not take full advantage of Java 8 without significant refactoring.
Description
In Refactoring to Modern Java LiveLessons, Java Champion Trisha Gee discusses the benefits of using Java 8 and shows how to identify code to refactor. She also demonstrates how Java 8 can improve performance and the benefits of applying Java 8 idioms. In this video training, Trisha provides hands-on techniques using a real application, Morphia, written in Java 6, to show when and how to apply the new features in Java 8 to an existing mature code base.
Related Code Files:
The code for this training can be found at https://github.com/mongodb/morphia. To view the code after the refactoring has been completed, see this branch: https://github.com/trishagee/morphia/tree/r2j8.
About the Instructor
Trisha Gee has developed Java applications for a range of industries, including finance, manufacturing, technology, open source, and nonprofit, for companies of all sizes. She has expertise in Java high-performance systems and is passionate about enabling developer productivity. Trisha blogs regularly on subjects that she thinks developers and other humans should care about. She’s a leader of the Sevilla Java User Group, a key member of the London Java Community, and a Java Champion.
https://twitter.com/trisha_gee
https://es.linkedin.com/in/trishagee
Skill Level
Intermediate
What You Will Learn
- Understand the benefits of refactoring to Java 8
- Determine what you need to have in place before refactoring
- Identify sections of code to refactor
- Refactor code automatically and through developer insight
- Measure performance of the code before and after refactoring
- Weigh the pros and cons of the changes to determine what to refactor
Who Should Take This Course
Java developers who are working on an existing system. From a technical point of view, this is suitable for junior and senior developers, but senior/lead developers and architects will find this talk useful to decide whether to apply these changes in their applications and to provide guidance to the rest of their teams.
Course Requirements
Experience with the Java Programming language.
About LiveLessons Video Training
LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at http://www.informit.com/livelessons.
Table of Contents
Introduction
Refactoring to Modern Java: Introduction
Lesson 1: Getting Started—Why and How
1.1 Why Java 8?
1.2 Prerequisites
1.3 Project Code
Lesson 2: Refactor Using the New Features
2.1 Lambda Expressions
2.2 Collections and the Streams API
2.3 Getting to Grips with Optional
Lesson 3: Understanding Java 8 Performance
3.1 Performance of Anonymous Inner Classes versus Lambda Expressions
3.2 Performance of Lazy Methods
3.3 Performance of a For Loop versus the Stream API
3.4 Performance of Operations Performed in Serial and in Parallel
3.5 Performance of Optional Safety versus Comparing to Null
Lesson 4: Pros and Cons
4.1 Do Java 8 idioms make the code more readable?
4.2 Do Java 8 features give better performance?
4.3 Does Java 8 make it easier to write code?
4.4 Can code be automatically refactored to Java 8?
Summary: Should you modernize your code?
Refactoring to Modern Java: Summary