Autoplay
Autocomplete
Previous Lesson
Complete and Continue
How to Think Like a Java Programmer
0. Welcome and Setup
0.1. Hearty welcome to our course (21:09)
0.2. Setting up our learning environment (31:49)
0.3. Resources for course
Part 1
1.1. Anagram project structure (4:37)
1.2. WordLibrary abstract class (11:09)
1.3. Swing User Interface (UI) (3:54)
1.4. Demo of -New Word- button (10:41)
1.5. Demo of -Guess- button (1:54)
1.6. StaticWordLibrary (3:30)
1.7. Changing the StaticWordLibrary size (5:04)
1.8. Adding our own words to the StaticWordLibrary (6:57)
1.9. WordLibraryTest with JUnit (7:13)
1.10. Testing that words are anagrams (2:30)
1.11. Running JUnit (0:15)
1.12. isAnagram() method (3:21)
1.13. Fixing StaticWordLibrary (8:34)
1.14. WordLibraries facade (3:34)
1.15. Exercise - Add words to StaticWordLibrary (0:49)
1.16. Git - Create branch for work (1:21)
1.17. Git - Committing changes (4:52)
Part 2
2.1. Developer Roadmap by Devoxx (31:10)
2.2. Typical Maven directory structure (3:25)
2.3. IntelliJ Magic Shortcuts (1:03)
2.4. Avoid copy & paste programming (6:28)
2.5. Creating a ShuffledWordLibrary (6:57)
2.6. int array for shuffled instances (2:19)
2.7. Delegate to the other WordLibrary (3:20)
2.8. Trying out the -ShuffledWordLibrary- (1:30)
2.9. Committing our changes to Git (2:41)
2.10. Shuffling the int array (4:59)
2.11. Trying out the shuffled anagram list (2:53)
2.12. How can we test private methods? (0:53)
2.13. Moving the shuffle method to its own class (2:45)
2.14. Creating an ArrayShufflerTest (3:42)
2.15. Printing the indexes array (1:35)
2.16. Extending the tests (5:55)
2.17. The goat, the wolf, and the cabbage (5:09)
2.18. Testing the integer swapping code (2:17)
2.19. Testing before running the application (2:25)
2.20. Fixing the ArrayShuffler (3:15)
2.21. Integer swapping with XOR (5:46)
2.22. Value of source control systems (2:43)
2.23. Abstract class vs interface (2:12)
2.24. Change WordLibrary to be an interface (2:01)
2.25. Commit to Git (1:51)
Part 3
3.1. Part 3 welcome (1:23)
3.2. ScrambledWordLibrary (3:40)
3.3. SortedScrambledWordLibrary (3:40)
3.4. RandomScrambledWordLibrary (0:56)
3.5. Adding a shuffle(char[]) method (2:04)
3.6. Testing the shuffle(char[]) method (7:44)
3.7. Exercise - improving the shuffle(int[]) method (5:55)
3.8. Making shuffle() methods static (2:16)
3.9. Forcing use of static methods (2:18)
3.10. Avoid duplicate code (2:07)
3.11. Writing shuffleInternal() method with reflection (4:21)
3.12. Anonymous types and lambdas (7:55)
3.13. Font ligatures (0:57)
3.14. Making classes final where possible (3:17)
3.15. Sealing the interface and abstract class (2:53)
3.16. Commit and final push (2:04)
3.17. Conclusion (4:26)
Bonus Section
4.2. Using var keyword (10:01)
4.1. Testing all WordLibrary combinations (22:42)
4.3. Using streams to generate int arrays (6:09)
4.4. Strategy object for letter scrambling (13:47)
4.5. Hint button (22:58)
4.6. License text for all classes (4:22)
4.7. Javadocs for public methods and classes (6:16)
4.8. Java Platform Module System - Java Modules (4:56)
Teach online with
2.20. Fixing the ArrayShuffler
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock