| 01. Getting Started with Java | |||
| 01. Welcome to the World of Java.mp4 | 22.19 MB | ||
| 01. Welcome to the World of Java.vtt | 3.97 KB | ||
| 02. What is Java.mp4 | 29.92 MB | ||
| 02. What is Java.vtt | 5.65 KB | ||
| 03. Installing JDK 21 + IntelliJ IDE on MacOS with SDKMan + Homebrew.mp4 | 261.44 MB | ||
| 03. Installing JDK 21 + IntelliJ IDE on MacOS with SDKMan + Homebrew.vtt | 20.22 KB | ||
| 04. Installing JDK 21 + IntelliJ IDE on Windows with Chocolatey.mp4 | 188.27 MB | ||
| 04. Installing JDK 21 + IntelliJ IDE on Windows with Chocolatey.vtt | 26.43 KB | ||
| 05. Legacy Lesson - Install JDK 17 on Windows.mp4 | 13.14 MB | ||
| 05. Legacy Lesson - Install JDK 17 on Windows.vtt | 3.35 KB | ||
| 06. Legacy Lesson - Install JDK 17 on MacOS.mp4 | 18.03 MB | ||
| 06. Legacy Lesson - Install JDK 17 on MacOS.vtt | 4.58 KB | ||
| 07. Legacy Lesson - Installing a Java Editor (IntelliJ IDE).mp4 | 54.7 MB | ||
| 07. Legacy Lesson - Installing a Java Editor (IntelliJ IDE).vtt | 6.79 KB | ||
| 08. Hello World Our First Simple Application.mp4 | 27.05 MB | ||
| 08. Hello World Our First Simple Application.vtt | 11.19 KB | ||
| 09. Asking for Help.mp4 | 24.63 MB | ||
| 09. Asking for Help.vtt | 8.01 KB | ||
| 10. Coding Exercises for the Whole Course.mp4 | 23.15 MB | ||
| 10. Coding Exercises for the Whole Course.vtt | 7.72 KB | ||
| 11. Playing with Java Quickly & Easily.html | 1.39 KB | ||
| assets | |||
| 10. Professional-Java-Developer-Career-Starter-Java-Foundations-Exercises-26-Supplements.pdf | 3.6 MB | ||
| external-links | |||
| 10. Exercise-Solutions.url | 83 B | ||
| 11. Learn-Experiment-with-Java-as-Fast-as-Scripting-Languages-with-Built-In-JShell.url | 54 B | ||
| 02. Classes, Object & Methods | |||
| 01. Object Orientation.mp4 | 488.17 MB | ||
| 01. Object Orientation.vtt | 43.69 KB | ||
| 02. Class Basics.mp4 | 45.1 MB | ||
| 02. Class Basics.vtt | 21.06 KB | ||
| 03. Variables & Data Types.mp4 | 53.86 MB | ||
| 03. Variables & Data Types.vtt | 21.95 KB | ||
| 04. var Variables.mp4 | 31.95 MB | ||
| 04. var Variables.vtt | 8.21 KB | ||
| 05. Simple Collections with Arrays.mp4 | 186.85 MB | ||
| 05. Simple Collections with Arrays.vtt | 21.58 KB | ||
| 06. Methods.mp4 | 131.6 MB | ||
| 06. Methods.vtt | 36.74 KB | ||
| 07. Varargs.mp4 | 44.73 MB | ||
| 07. Varargs.vtt | 12.17 KB | ||
| 08. Static Methods.mp4 | 26.62 MB | ||
| 08. Static Methods.vtt | 9.29 KB | ||
| 09. Static Variables.mp4 | 25.76 MB | ||
| 09. Static Variables.vtt | 7.57 KB | ||
| 10. Static Initializers.mp4 | 16.8 MB | ||
| 10. Static Initializers.vtt | 6.34 KB | ||
| 11. The Object Superclass.mp4 | 61.85 MB | ||
| 11. The Object Superclass.vtt | 16.22 KB | ||
| 12. Member Visibility Methods.mp4 | 297.97 MB | ||
| 12. Member Visibility Methods.vtt | 32.53 KB | ||
| 13. Member Visibility Fields.mp4 | 21.5 MB | ||
| 13. Member Visibility Fields.vtt | 7.31 KB | ||
| 14. Constructors.mp4 | 63.43 MB | ||
| 14. Constructors.vtt | 25.08 KB | ||
| 15. Getters & Setters.mp4 | 90.7 MB | ||
| 15. Getters & Setters.vtt | 25.65 KB | ||
| 16. Exercises.html | 102 B | ||
| 03. Working with Text | |||
| 01. Intro.mp4 | 2.49 MB | ||
| 01. Intro.vtt | 1.07 KB | ||
| 02. Creating Strings.mp4 | 47.5 MB | ||
| 02. Creating Strings.vtt | 19.33 KB | ||
| 03. Upper & Lower Casing.mp4 | 40.8 MB | ||
| 03. Upper & Lower Casing.vtt | 11.59 KB | ||
| 04. Strings Blank or Empty.mp4 | 15.78 MB | ||
| 04. Strings Blank or Empty.vtt | 6.12 KB | ||
| 05. Replacing Text Within Strings.mp4 | 19.16 MB | ||
| 05. Replacing Text Within Strings.vtt | 8.33 KB | ||
| 06. Removing White Space - strip().mp4 | 56.44 MB | ||
| 06. Removing White Space - strip().vtt | 22.52 KB | ||
| 07. Getting Individual Characters of a String - charAt().mp4 | 16.26 MB | ||
| 07. Getting Individual Characters of a String - charAt().vtt | 6.29 KB | ||
| 08. Comparing String for Alphabetical Order - compareTo().mp4 | 28.49 MB | ||
| 08. Comparing String for Alphabetical Order - compareTo().vtt | 10.4 KB | ||
| 09. Determining if Text is Contained in a String - contains().mp4 | 9.79 MB | ||
| 09. Determining if Text is Contained in a String - contains().vtt | 3.79 KB | ||
| 10. String Concatenation - concat.mp4 | 85.22 MB | ||
| 10. String Concatenation - concat.vtt | 33.7 KB | ||
| 11. Determining the Length of a String - length().mp4 | 32.24 MB | ||
| 11. Determining the Length of a String - length().vtt | 11.06 KB | ||
| 12. Getting Parts of a String - substring.mp4 | 58.66 MB | ||
| 12. Getting Parts of a String - substring.vtt | 23.43 KB | ||
| 13. Searching within a String - indexOf().mp4 | 474.9 MB | ||
| 13. Searching within a String - indexOf().vtt | 35.56 KB | ||
| 14. Splitting String Apart - split().mp4 | 128.38 MB | ||
| 14. Splitting String Apart - split().vtt | 26.16 KB | ||
| 15. Beginning & Ending of Strings - startsWith() & endsWith().mp4 | 24.66 MB | ||
| 15. Beginning & Ending of Strings - startsWith() & endsWith().vtt | 9.68 KB | ||
| 16. Comparing Strings for Equality - contentEquals().mp4 | 42.59 MB | ||
| 16. Comparing Strings for Equality - contentEquals().vtt | 16.48 KB | ||
| 17. JDK 21 String Templates.mp4 | 65.19 MB | ||
| 17. JDK 21 String Templates.vtt | 13.92 KB | ||
| 18. Exercises.html | 102 B | ||
| external-links | |||
| 01. Coding-exercises-for-text-manipulation-with-String-class.url | 84 B | ||
| 04. Regular Expressions | |||
| 01. Intro to Regular Expressions.mp4 | 10.18 MB | ||
| 01. Intro to Regular Expressions.vtt | 2.71 KB | ||
| 02. ABCs of Regular Expressions Part One.mp4 | 21.93 MB | ||
| 02. ABCs of Regular Expressions Part One.vtt | 14.92 KB | ||
| 03. ABCs of Regular Expressions Part Two.mp4 | 60.43 MB | ||
| 03. ABCs of Regular Expressions Part Two.vtt | 38.64 KB | ||
| 04. Capture Groups Part One.mp4 | 75.36 MB | ||
| 04. Capture Groups Part One.vtt | 32.29 KB | ||
| 05. Capture Groups Part Two.mp4 | 53.01 MB | ||
| 05. Capture Groups Part Two.vtt | 14.81 KB | ||
| 06. Named Capture Groups.mp4 | 40.04 MB | ||
| 06. Named Capture Groups.vtt | 14.12 KB | ||
| 07. Comments in Regular Expressions.mp4 | 34.63 MB | ||
| 07. Comments in Regular Expressions.vtt | 14.26 KB | ||
| 08. Wrapping Up Phone Number Parsing.mp4 | 20.26 MB | ||
| 08. Wrapping Up Phone Number Parsing.vtt | 8.11 KB | ||
| 09. Additional Character Classes.mp4 | 189.13 MB | ||
| 09. Additional Character Classes.vtt | 22.86 KB | ||
| 10. Parsing a Real Text Document.mp4 | 130.62 MB | ||
| 10. Parsing a Real Text Document.vtt | 47.81 KB | ||
| 11. Greedy Operators.mp4 | 84.55 MB | ||
| 11. Greedy Operators.vtt | 16.9 KB | ||
| 12. Finding Multiple Matches.mp4 | 44.23 MB | ||
| 12. Finding Multiple Matches.vtt | 18.3 KB | ||
| 13. Exercises.html | 102 B | ||
| assets | |||
| 10. Transcript-Example.txt | 162 B | ||
| 05. Numbers | |||
| 01. Introduction to Numbers.mp4 | 3.82 MB | ||
| 01. Introduction to Numbers.vtt | 1.06 KB | ||
| 02. Bits and Bytes.mp4 | 26.66 MB | ||
| 02. Bits and Bytes.vtt | 11.02 KB | ||
| 03. Hexadecimal Numbers.mp4 | 88.52 MB | ||
| 03. Hexadecimal Numbers.vtt | 9.55 KB | ||
| 04. Numeric Data Types.mp4 | 87.38 MB | ||
| 04. Numeric Data Types.vtt | 18.26 KB | ||
| 05. Bigger Numbers.mp4 | 109.61 MB | ||
| 05. Bigger Numbers.vtt | 12.83 KB | ||
| 06. Floating Point Numbers.mp4 | 180.61 MB | ||
| 06. Floating Point Numbers.vtt | 20.89 KB | ||
| 07. Beyond Decimal.mp4 | 78.59 MB | ||
| 07. Beyond Decimal.vtt | 27.66 KB | ||
| 08. Simple Math Operations.mp4 | 350.24 MB | ||
| 08. Simple Math Operations.vtt | 42.72 KB | ||
| 09. Standard Math Functions.mp4 | 53.51 MB | ||
| 09. Standard Math Functions.vtt | 20.73 KB | ||
| 10. More on Random Numbers.mp4 | 21.84 MB | ||
| 10. More on Random Numbers.vtt | 7.4 KB | ||
| 11. Coding Exercise Calculating the Area of a Circle.mp4 | 25.75 MB | ||
| 11. Coding Exercise Calculating the Area of a Circle.vtt | 6.66 KB | ||
| 12. Coding Exercise Calculating Centripetal Force.mp4 | 112.35 MB | ||
| 12. Coding Exercise Calculating Centripetal Force.vtt | 23.27 KB | ||
| 13. Comparing Numbers.mp4 | 17.5 MB | ||
| 13. Comparing Numbers.vtt | 6.44 KB | ||
| 14. Introducing BigDecimal.mp4 | 19.66 MB | ||
| 14. Introducing BigDecimal.vtt | 10.02 KB | ||
| 15. Using BigDecimal.mp4 | 33.8 MB | ||
| 15. Using BigDecimal.vtt | 15.28 KB | ||
| 16. More on BigDecimal & BigInteger.mp4 | 36.21 MB | ||
| 16. More on BigDecimal & BigInteger.vtt | 13.45 KB | ||
| 17. Coding Exercise Calculating Compound Interest.mp4 | 154.41 MB | ||
| 17. Coding Exercise Calculating Compound Interest.vtt | 33.41 KB | ||
| 18. Formatting Numbers.mp4 | 193.55 MB | ||
| 18. Formatting Numbers.vtt | 23.74 KB | ||
| 19. Customizing Number Formatters.mp4 | 85.33 MB | ||
| 19. Customizing Number Formatters.vtt | 16.34 KB | ||
| 20. Additional Ways to Format Numbers.mp4 | 144.1 MB | ||
| 20. Additional Ways to Format Numbers.vtt | 17.8 KB | ||
| 21. Numeric Wrapper Classes.mp4 | 69.96 MB | ||
| 21. Numeric Wrapper Classes.vtt | 25.53 KB | ||
| 22. Exercises.html | 102 B | ||
| 06. Control Flow | |||
| 01. Intro to Control Flow.mp4 | 105.9 MB | ||
| 01. Intro to Control Flow.vtt | 8.33 KB | ||
| 02. Conditionals with IfElse.mp4 | 138.4 MB | ||
| 02. Conditionals with IfElse.vtt | 32.17 KB | ||
| 03. Control Flow Inequalities.mp4 | 22.73 MB | ||
| 03. Control Flow Inequalities.vtt | 8.48 KB | ||
| 04. The Switch Statement.mp4 | 44.95 MB | ||
| 04. The Switch Statement.vtt | 22.12 KB | ||
| 05. Switch Statement New Features.mp4 | 60.67 MB | ||
| 05. Switch Statement New Features.vtt | 24.04 KB | ||
| 06. While Loops Part One.mp4 | 107.64 MB | ||
| 06. While Loops Part One.vtt | 31.75 KB | ||
| 07. Switch Statement Pattern Matching in JDK 21.mp4 | 87 MB | ||
| 07. Switch Statement Pattern Matching in JDK 21.vtt | 18.75 KB | ||
| 08. Legacy Lesson (see JDK 21 version) Switch Statement Pattern Matching JDK 17.mp4 | 49.69 MB | ||
| 08. Legacy Lesson (see JDK 21 version) Switch Statement Pattern Matching JDK 17.vtt | 13.64 KB | ||
| 09. While Loops Part Two.mp4 | 66.14 MB | ||
| 09. While Loops Part Two.vtt | 24.74 KB | ||
| 10. DoWhile Loops Part One.mp4 | 94.98 MB | ||
| 10. DoWhile Loops Part One.vtt | 35.9 KB | ||
| 11. DoWhile Loops Part Two.mp4 | 122.06 MB | ||
| 11. DoWhile Loops Part Two.vtt | 29.19 KB | ||
| 12. For Loops.mp4 | 139.12 MB | ||
| 12. For Loops.vtt | 30.45 KB | ||
| 13. A Simpler For Loop.mp4 | 38.91 MB | ||
| 13. A Simpler For Loop.vtt | 11.56 KB | ||
| 14. The Enhanced For Loop.mp4 | 13.68 MB | ||
| 14. The Enhanced For Loop.vtt | 5.08 KB | ||
| 15. Applying Loops to Regex.mp4 | 18.44 MB | ||
| 15. Applying Loops to Regex.vtt | 7.14 KB | ||
| 16. Exercises.html | 102 B | ||
| 07. Testing Code | |||
| 01. Intro to Testing.mp4 | 7.97 MB | ||
| 01. Intro to Testing.vtt | 2.92 KB | ||
| 02. Setting Up.mp4 | 69.79 MB | ||
| 02. Setting Up.vtt | 20.89 KB | ||
| 03. Our First Test.mp4 | 79.56 MB | ||
| 03. Our First Test.vtt | 31.12 KB | ||
| 04. Writing the Second Test.mp4 | 70.52 MB | ||
| 04. Writing the Second Test.vtt | 25.44 KB | ||
| 05. Testing Edge Cases.mp4 | 36.91 MB | ||
| 05. Testing Edge Cases.vtt | 14.42 KB | ||
| 06. Testing Annuity Calculation.mp4 | 100.07 MB | ||
| 06. Testing Annuity Calculation.vtt | 21.68 KB | ||
| 07. Reimplementing the Guessing Game with TDD.mp4 | 76.66 MB | ||
| 07. Reimplementing the Guessing Game with TDD.vtt | 23.64 KB | ||
| 08. Guessing Game TDD Part Two.mp4 | 152.86 MB | ||
| 08. Guessing Game TDD Part Two.vtt | 43.44 KB | ||
| 09. Implementing Randomness.mp4 | 81.76 MB | ||
| 09. Implementing Randomness.vtt | 23.96 KB | ||
| 10. Testing for Randomness A Deeper Explanation.mp4 | 202.71 MB | ||
| 10. Testing for Randomness A Deeper Explanation.vtt | 29.39 KB | ||
| 11. Tracking the Number of Guesses.mp4 | 145.85 MB | ||
| 11. Tracking the Number of Guesses.vtt | 41.78 KB | ||
| 12. Handling More than Four Guesses.mp4 | 61.37 MB | ||
| 12. Handling More than Four Guesses.vtt | 12.82 KB | ||
| 13. Wrapping up Testing.mp4 | 123.1 MB | ||
| 13. Wrapping up Testing.vtt | 29.74 KB | ||
| 14. Reimplementing the Guessing Game User Interface.mp4 | 67.74 MB | ||
| 14. Reimplementing the Guessing Game User Interface.vtt | 15.16 KB | ||
| 15. Debugging Code Part One.mp4 | 496.56 MB | ||
| 15. Debugging Code Part One.vtt | 44.1 KB | ||
| 16. Debugging Code Part Two.mp4 | 158.33 MB | ||
| 16. Debugging Code Part Two.vtt | 21.49 KB | ||
| 17. Exercises.html | 102 B | ||
| 08. More OOP | |||
| 01. Intro.mp4 | 4.39 MB | ||
| 01. Intro.vtt | 1.77 KB | ||
| 02. Enums.mp4 | 533.61 MB | ||
| 02. Enums.vtt | 34.16 KB | ||
| 03. Enum Ordinals.mp4 | 88.42 MB | ||
| 03. Enum Ordinals.vtt | 24.75 KB | ||
| 04. Enum Methods.mp4 | 62.75 MB | ||
| 04. Enum Methods.vtt | 22.91 KB | ||
| 05. Enum Fields.mp4 | 114.09 MB | ||
| 05. Enum Fields.vtt | 25.15 KB | ||
| 06. Enum ValueOf.mp4 | 61.65 MB | ||
| 06. Enum ValueOf.vtt | 12.36 KB | ||
| 07. The 'this' Keyword.mp4 | 69.01 MB | ||
| 07. The 'this' Keyword.vtt | 13.99 KB | ||
| 08. Setup for More Advanced OOP Topics.mp4 | 52.89 MB | ||
| 08. Setup for More Advanced OOP Topics.vtt | 14.06 KB | ||
| 09. Employee Salaries Continued.mp4 | 255.24 MB | ||
| 09. Employee Salaries Continued.vtt | 32.05 KB | ||
| 10. Completing Other Employee Cases.mp4 | 199.45 MB | ||
| 10. Completing Other Employee Cases.vtt | 24.09 KB | ||
| 11. Introducing a Programmer Class.mp4 | 328.82 MB | ||
| 11. Introducing a Programmer Class.vtt | 35.69 KB | ||
| 12. Implementing the Other Employee Classes.mp4 | 222.01 MB | ||
| 12. Implementing the Other Employee Classes.vtt | 26.47 KB | ||
| 13. Introducing Interfaces.mp4 | 266.06 MB | ||
| 13. Introducing Interfaces.vtt | 33.43 KB | ||
| 14. Revisiting Class Hierarchies.mp4 | 305.03 MB | ||
| 14. Revisiting Class Hierarchies.vtt | 24.13 KB | ||
| 15. Completing the Employee Class Hierarchy.mp4 | 77.61 MB | ||
| 15. Completing the Employee Class Hierarchy.vtt | 21.47 KB | ||
| 16. Dealing with the Null Case.mp4 | 68.62 MB | ||
| 16. Dealing with the Null Case.vtt | 8.83 KB | ||
| 17. Introducing Abstract Classes.mp4 | 94.51 MB | ||
| 17. Introducing Abstract Classes.vtt | 25.49 KB | ||
| 18. Factory Methods.mp4 | 220.42 MB | ||
| 18. Factory Methods.vtt | 31.18 KB | ||
| 19. Nested Classes.mp4 | 75.86 MB | ||
| 19. Nested Classes.vtt | 11.04 KB | ||
| 20. Other Types of Nested Classes.mp4 | 168.57 MB | ||
| 20. Other Types of Nested Classes.vtt | 20.31 KB | ||
| 21. Records.mp4 | 83.5 MB | ||
| 21. Records.vtt | 22.71 KB | ||
| 22. Lambdas Versus Anonymous Classes.mp4 | 172.78 MB | ||
| 22. Lambdas Versus Anonymous Classes.vtt | 21.41 KB | ||
| 23. Composition Versus Inheritance.mp4 | 104.03 MB | ||
| 23. Composition Versus Inheritance.vtt | 26.97 KB | ||
| 24. Default Methods.mp4 | 90.01 MB | ||
| 24. Default Methods.vtt | 23.69 KB | ||
| 25. Comparing Classes with 'instanceof'.mp4 | 151.33 MB | ||
| 25. Comparing Classes with 'instanceof'.vtt | 20.13 KB | ||
| 26. Unnamed Patterns.mp4 | 71.69 MB | ||
| 26. Unnamed Patterns.vtt | 13.37 KB | ||
| 27. OOP Recap.mp4 | 195.35 MB | ||
| 27. OOP Recap.vtt | 23.37 KB | ||
| 28. Exercises.html | 102 B | ||
| 29. Solutions & Explanations to Exercises 8.1.mp4 | 395.37 MB | ||
| 29. Solutions & Explanations to Exercises 8.1.vtt | 41.66 KB | ||
| 30. Solutions & Explanations to Exercises 8.2 - 8.3.mp4 | 610.04 MB | ||
| 30. Solutions & Explanations to Exercises 8.2 - 8.3.vtt | 51.09 KB | ||
| 31. Solutions & Explanations to Exercises 8.4 - 8.9.mp4 | 292.69 MB | ||
| 31. Solutions & Explanations to Exercises 8.4 - 8.9.vtt | 24.82 KB | ||
| 32. Solutions & Explanations to Exercises 8.10 - 8.19.mp4 | 273.42 MB | ||
| 32. Solutions & Explanations to Exercises 8.10 - 8.19.vtt | 25.01 KB | ||
| 33. Solutions & Explanations to Exercises 8.20 - 8.22.mp4 | 232.18 MB | ||
| 33. Solutions & Explanations to Exercises 8.20 - 8.22.vtt | 25.45 KB | ||
| assets | |||
| 08. PeopleMatching.java | 694 B | ||
| 09. Collections | |||
| 01. Intro to Collections.mp4 | 14.86 MB | ||
| 01. Intro to Collections.vtt | 5.52 KB | ||
| 02. List Basics.mp4 | 120.76 MB | ||
| 02. List Basics.vtt | 24.55 KB | ||
| 03. Linked Lists.mp4 | 138.64 MB | ||
| 03. Linked Lists.vtt | 27.98 KB | ||
| 04. Looping with Iterators.mp4 | 101.92 MB | ||
| 04. Looping with Iterators.vtt | 23.1 KB | ||
| 05. Loose Ends of Lists.mp4 | 60.17 MB | ||
| 05. Loose Ends of Lists.vtt | 8.12 KB | ||
| 06. Additional List Methods.mp4 | 141.01 MB | ||
| 06. Additional List Methods.vtt | 29.15 KB | ||
| 07. List.contains() & Object.equals().mp4 | 129.63 MB | ||
| 07. List.contains() & Object.equals().vtt | 49.13 KB | ||
| 08. Implementing Comparator to Sort Lists.mp4 | 405.27 MB | ||
| 08. Implementing Comparator to Sort Lists.vtt | 34.27 KB | ||
| 09. Implementing Comparable to Sort Lists.mp4 | 357.13 MB | ||
| 09. Implementing Comparable to Sort Lists.vtt | 41.91 KB | ||
| 10. Intro to Sets.mp4 | 185.6 MB | ||
| 10. Intro to Sets.vtt | 21.5 KB | ||
| 11. Sets & Hashcode.mp4 | 214.98 MB | ||
| 11. Sets & Hashcode.vtt | 25.99 KB | ||
| 12. LinkedHashSet.mp4 | 114.97 MB | ||
| 12. LinkedHashSet.vtt | 13.56 KB | ||
| 13. TreeSet.mp4 | 239.8 MB | ||
| 13. TreeSet.vtt | 27.69 KB | ||
| 14. Intro to Maps.mp4 | 12.38 MB | ||
| 14. Intro to Maps.vtt | 4.52 KB | ||
| 15. A Map Scenario.mp4 | 244.83 MB | ||
| 15. A Map Scenario.vtt | 27.68 KB | ||
| 16. Using Map Implementations.mp4 | 285.02 MB | ||
| 16. Using Map Implementations.vtt | 33.31 KB | ||
| 17. Additional Map Methods.mp4 | 232.44 MB | ||
| 17. Additional Map Methods.vtt | 27.12 KB | ||
| 18. JDK 21 Collections Changes.mp4 | 129.24 MB | ||
| 18. JDK 21 Collections Changes.vtt | 9.08 KB | ||
| 19. Wrapping Up.mp4 | 16.29 MB | ||
| 19. Wrapping Up.vtt | 4.7 KB | ||
| 20. Exercises.html | 102 B | ||
| 10. Streams & Lambdas | |||
| 01. Intro to Streams & Lambdas.mp4 | 8.08 MB | ||
| 01. Intro to Streams & Lambdas.vtt | 2.01 KB | ||
| 02. First Steps into Streams API.mp4 | 427.35 MB | ||
| 02. First Steps into Streams API.vtt | 25.11 KB | ||
| 03. Streams Explained.mp4 | 74.97 MB | ||
| 03. Streams Explained.vtt | 11.32 KB | ||
| 04. Creating Streams.mp4 | 418.47 MB | ||
| 04. Creating Streams.vtt | 48.52 KB | ||
| 05. Summing with Streams.mp4 | 90.61 MB | ||
| 05. Summing with Streams.vtt | 30.62 KB | ||
| 06. Sorting with Streams.mp4 | 106.17 MB | ||
| 06. Sorting with Streams.vtt | 30.13 KB | ||
| 07. Filtering with Streams.mp4 | 223.9 MB | ||
| 07. Filtering with Streams.vtt | 27.54 KB | ||
| 08. Additional Filtering Techniques.mp4 | 114.74 MB | ||
| 08. Additional Filtering Techniques.vtt | 22.35 KB | ||
| 09. Flattening Streams of Streams.mp4 | 459.49 MB | ||
| 09. Flattening Streams of Streams.vtt | 31.83 KB | ||
| 10. Alternatives to Filter.mp4 | 167.88 MB | ||
| 10. Alternatives to Filter.vtt | 35.61 KB | ||
| 11. The Map Reduce Pattern.mp4 | 246.03 MB | ||
| 11. The Map Reduce Pattern.vtt | 53.62 KB | ||
| 12. Intro to More Advanced Streams.mp4 | 128.91 MB | ||
| 12. Intro to More Advanced Streams.vtt | 28.4 KB | ||
| 13. Big Data Summing.mp4 | 841.06 MB | ||
| 13. Big Data Summing.vtt | 53.75 KB | ||
| 14. Domain Models with Streams API.mp4 | 172.4 MB | ||
| 14. Domain Models with Streams API.vtt | 22.64 KB | ||
| 15. Grouping Records.mp4 | 456.72 MB | ||
| 15. Grouping Records.vtt | 28.79 KB | ||
| 16. Summing by Groups.mp4 | 197.63 MB | ||
| 16. Summing by Groups.vtt | 27.74 KB | ||
| 17. Nested Groupings.mp4 | 277.92 MB | ||
| 17. Nested Groupings.vtt | 34.23 KB | ||
| 18. Reducing with Collect.mp4 | 100.26 MB | ||
| 18. Reducing with Collect.vtt | 22.54 KB | ||
| 19. Partitioning vs Grouping.mp4 | 57.34 MB | ||
| 19. Partitioning vs Grouping.vtt | 16.75 KB | ||
| 20. Functional Interfaces.mp4 | 67.84 MB | ||
| 20. Functional Interfaces.vtt | 16.35 KB | ||
| 21. Functional Methods of Collections.mp4 | 203.74 MB | ||
| 21. Functional Methods of Collections.vtt | 47.1 KB | ||
| 22. Exercises.html | 102 B | ||
| assets | |||
| 12. Hr5m.zip | 599.82 MB | ||
| 11. Loose Ends | |||
| 01. Exceptions.mp4 | 155.85 MB | ||
| 01. Exceptions.vtt | 42.29 KB | ||
| 02. Checked Exceptions.mp4 | 108.34 MB | ||
| 02. Checked Exceptions.vtt | 22.36 KB | ||
| 03. Generics Part One.mp4 | 130.77 MB | ||
| 03. Generics Part One.vtt | 34.94 KB | ||
| 04. Generics Part Two.mp4 | 188.79 MB | ||
| 04. Generics Part Two.vtt | 41.84 KB | ||
| 05. Optionals Part One.mp4 | 132.95 MB | ||
| 05. Optionals Part One.vtt | 38.13 KB | ||
| 06. Optionals Part Two.mp4 | 711.56 MB | ||
| 06. Optionals Part Two.vtt | 53.54 KB | ||
| 07. Dates & Times Intro.mp4 | 115.66 MB | ||
| 07. Dates & Times Intro.vtt | 32.97 KB | ||
| 08. Dates & Times Periods & Durations.mp4 | 24.22 MB | ||
| 08. Dates & Times Periods & Durations.vtt | 9.25 KB | ||
| 09. Dates & Times Time Zones.mp4 | 145.82 MB | ||
| 09. Dates & Times Time Zones.vtt | 17.68 KB | ||
| 10. Dates & Times Parsing & Formatting.mp4 | 522.01 MB | ||
| 10. Dates & Times Parsing & Formatting.vtt | 35.44 KB | ||
| 11. Dates & Times Temporal Adjustors & Immutability.mp4 | 66.86 MB | ||
| 11. Dates & Times Temporal Adjustors & Immutability.vtt | 15.09 KB | ||
| 12. Databases | |||
| 01. Getting Started with Databases.mp4 | 123.21 MB | ||
| 01. Getting Started with Databases.vtt | 14.28 KB | ||
| 02. Installing DBeaver SQL Client.mp4 | 27.12 MB | ||
| 02. Installing DBeaver SQL Client.vtt | 11.62 KB | ||
| 03. Installing Squirrel SQL Client.mp4 | 80.22 MB | ||
| 03. Installing Squirrel SQL Client.vtt | 17.14 KB | ||
| 04. Let's Learn Some SQL.mp4 | 192.45 MB | ||
| 04. Let's Learn Some SQL.vtt | 22.91 KB | ||
| 05. Creating & Retrieving Records.mp4 | 109.16 MB | ||
| 05. Creating & Retrieving Records.vtt | 24.13 KB | ||
| 06. Database Functions.mp4 | 65.2 MB | ||
| 06. Database Functions.vtt | 15.3 KB | ||
| 07. The UD in CRUD.mp4 | 118.67 MB | ||
| 07. The UD in CRUD.vtt | 14.25 KB | ||
| 08. Creating a New Database Project.mp4 | 119.61 MB | ||
| 08. Creating a New Database Project.vtt | 35.45 KB | ||
| 09. TDD for Saving a Person.mp4 | 168.42 MB | ||
| 09. TDD for Saving a Person.vtt | 23.35 KB | ||
| 10. Writing the JDBC Code to Save a Person.mp4 | 263.31 MB | ||
| 10. Writing the JDBC Code to Save a Person.vtt | 33.43 KB | ||
| 11. Tidying Up & Explaining Our Save Code.mp4 | 337.92 MB | ||
| 11. Tidying Up & Explaining Our Save Code.vtt | 43.53 KB | ||
| 12. Creating a Custom Save Exception.mp4 | 43.87 MB | ||
| 12. Creating a Custom Save Exception.vtt | 10.1 KB | ||
| 13. Finding a Person By ID.mp4 | 782.66 MB | ||
| 13. Finding a Person By ID.vtt | 49.53 KB | ||
| 14. FindById A Negative Case.mp4 | 47.3 MB | ||
| 14. FindById A Negative Case.vtt | 13.06 KB | ||
| 15. Deleting a Person.mp4 | 85.6 MB | ||
| 15. Deleting a Person.vtt | 11.05 KB | ||
| 16. Deleting Multiple People at Once.mp4 | 76.19 MB | ||
| 16. Deleting Multiple People at Once.vtt | 22.95 KB | ||
| 17. Updating a Person.mp4 | 308.94 MB | ||
| 17. Updating a Person.vtt | 41.97 KB | ||
| 18. Creating a Reusable CRUD Repository.mp4 | 346.95 MB | ||
| 18. Creating a Reusable CRUD Repository.vtt | 25.89 KB | ||
| 19. CRUD Repository FindById.mp4 | 46.27 MB | ||
| 19. CRUD Repository FindById.vtt | 10.83 KB | ||
| 20. CRUD Repository Completing the Remaining Methods.mp4 | 201.51 MB | ||
| 20. CRUD Repository Completing the Remaining Methods.vtt | 27.08 KB | ||
| 21. CRUD Repository Implementing a Custom Annotation.mp4 | 474.9 MB | ||
| 21. CRUD Repository Implementing a Custom Annotation.vtt | 38.56 KB | ||
| 22. CRUD Repository Allowing Multiple SQL Annotations.mp4 | 433.16 MB | ||
| 22. CRUD Repository Allowing Multiple SQL Annotations.vtt | 46.11 KB | ||
| 23. CRUD Repository Custom ID Annotation.mp4 | 461.05 MB | ||
| 23. CRUD Repository Custom ID Annotation.vtt | 36.25 KB | ||
| 24. Loading Five Million People with PeopleRepository.mp4 | 289.06 MB | ||
| 24. Loading Five Million People with PeopleRepository.vtt | 41.26 KB | ||
| 25. Speeding up the Queries with Indexes.mp4 | 207.39 MB | ||
| 25. Speeding up the Queries with Indexes.vtt | 28.42 KB | ||
| 26. Creating an Address Table.mp4 | 557.06 MB | ||
| 26. Creating an Address Table.vtt | 37.3 KB | ||
| 27. Saving One Address.mp4 | 650.69 MB | ||
| 27. Saving One Address.vtt | 50.92 KB | ||
| 28. Saving a Person without an Address.mp4 | 169.36 MB | ||
| 28. Saving a Person without an Address.vtt | 25.18 KB | ||
| 29. Fetching a Person with Their Address.mp4 | 283.25 MB | ||
| 29. Fetching a Person with Their Address.vtt | 24.51 KB | ||
| 30. Fetching Address in One Go with Join Queries.mp4 | 247.52 MB | ||
| 30. Fetching Address in One Go with Join Queries.vtt | 34.75 KB | ||
| 31. Joins with Missing Addresses.mp4 | 587.46 MB | ||
| 31. Joins with Missing Addresses.vtt | 48.83 KB | ||
| 32. Adding a Second Address Field.mp4 | 625.42 MB | ||
| 32. Adding a Second Address Field.vtt | 52.18 KB | ||
| 33. Brief Word of Encouragement.mp4 | 53.14 MB | ||
| 33. Brief Word of Encouragement.vtt | 5.35 KB | ||
| 34. Challenge Adding a Spouse.mp4 | 41.92 MB | ||
| 34. Challenge Adding a Spouse.vtt | 5.84 KB | ||
| 35. Adding Children.mp4 | 248.51 MB | ||
| 35. Adding Children.vtt | 35.26 KB | ||
| 36. Fetching Children in One Join.mp4 | 263.34 MB | ||
| 36. Fetching Children in One Join.vtt | 26.79 KB | ||
| 37. Writing Code to Fetch Children in One Join.mp4 | 381.71 MB | ||
| 37. Writing Code to Fetch Children in One Join.vtt | 40.69 KB | ||
| 38. Troubleshooting Techniques for Broken Tests.mp4 | 250.15 MB | ||
| 38. Troubleshooting Techniques for Broken Tests.vtt | 21.72 KB | ||
| 39. Fixing FindAll for Join-Fetched Child Code.mp4 | 422.95 MB | ||
| 39. Fixing FindAll for Join-Fetched Child Code.vtt | 36.33 KB | ||
| 40. Join Tables.mp4 | 116.63 MB | ||
| 40. Join Tables.vtt | 16.02 KB | ||
| 41. Optimizing with Caching.mp4 | 314.04 MB | ||
| 41. Optimizing with Caching.vtt | 33.5 KB | ||
| 42. Optimizing Prepared Statements.mp4 | 252.6 MB | ||
| 42. Optimizing Prepared Statements.vtt | 21.84 KB | ||
| 43. Conclusion.mp4 | 426.26 MB | ||
| 43. Conclusion.vtt | 42.66 KB | ||
| 13. Intro to the Spring Framework | |||
| 01. Introduction.mp4 | 45.25 MB | ||
| 01. Introduction.vtt | 11.56 KB | ||
| 02. Creating the PeopleDB-Web Project.mp4 | 42.97 MB | ||
| 02. Creating the PeopleDB-Web Project.vtt | 18.85 KB | ||
| 03. Implementing Web Hello World.mp4 | 25.76 MB | ||
| 03. Implementing Web Hello World.vtt | 10.6 KB | ||
| 04. Web & HTTP Basics.mp4 | 103.29 MB | ||
| 04. Web & HTTP Basics.vtt | 26.39 KB | ||
| 05. Displaying a Simple List of People.mp4 | 89.69 MB | ||
| 05. Displaying a Simple List of People.vtt | 26.99 KB | ||
| 06. Introducing a Bootstrap Table for People.mp4 | 212.27 MB | ||
| 06. Introducing a Bootstrap Table for People.vtt | 31.53 KB | ||
| 07. Formatting Dates & Salaries.mp4 | 241.84 MB | ||
| 07. Formatting Dates & Salaries.vtt | 36.4 KB | ||
| 08. Introducing Spring Data.mp4 | 653.38 MB | ||
| 08. Introducing Spring Data.vtt | 51.85 KB | ||
| 09. Saving People.mp4 | 213.43 MB | ||
| 09. Saving People.vtt | 47.89 KB | ||
| 10. UI & Database Tweaks.mp4 | 270.42 MB | ||
| 10. UI & Database Tweaks.vtt | 38.85 KB | ||
| 11. Validating Data.mp4 | 262.52 MB | ||
| 11. Validating Data.vtt | 35.6 KB | ||
| 12. Deleting People.mp4 | 142.5 MB | ||
| 12. Deleting People.vtt | 33.05 KB | ||
| 13. Updating People.mp4 | 322.23 MB | ||
| 13. Updating People.vtt | 46.4 KB | ||
| 14. Internationalization.mp4 | 591.66 MB | ||
| 14. Internationalization.vtt | 48.91 KB | ||
| 15. Uploading a File.mp4 | 501.9 MB | ||
| 15. Uploading a File.vtt | 40.99 KB | ||
| 16. Saving Uploaded Files.mp4 | 330.96 MB | ||
| 16. Saving Uploaded Files.vtt | 46.53 KB | ||
| 17. Retrieving Uploaded Files.mp4 | 295.93 MB | ||
| 17. Retrieving Uploaded Files.vtt | 44.29 KB | ||
| 18. Handling Exceptions in UI.mp4 | 300.05 MB | ||
| 18. Handling Exceptions in UI.vtt | 43.55 KB | ||
| 19. Introducing a Service Layer for Coordination & Logic.mp4 | 244.81 MB | ||
| 19. Introducing a Service Layer for Coordination & Logic.vtt | 35.01 KB | ||
| 20. Coordinating Deletes with a Service.mp4 | 154.5 MB | ||
| 20. Coordinating Deletes with a Service.vtt | 21.94 KB | ||
| 21. Custom Query Methods.mp4 | 90.4 MB | ||
| 21. Custom Query Methods.vtt | 20.7 KB | ||
| 22. Pagination.mp4 | 595.53 MB | ||
| 22. Pagination.vtt | 47.46 KB | ||
| 23. Importing a CSV File.mp4 | 579.16 MB | ||
| 23. Importing a CSV File.vtt | 48.3 KB | ||
| 24. Fixing Deletes & UI Loose Ends.mp4 | 223.89 MB | ||
| 24. Fixing Deletes & UI Loose Ends.vtt | 33.37 KB | ||
| 25. Items Not Covered Thoroughly.mp4 | 552.91 MB | ||
| 25. Items Not Covered Thoroughly.vtt | 42.53 KB | ||
| 26. Where to Go from Here.mp4 | 673.15 MB | ||
| 26. Where to Go from Here.vtt | 41.75 KB | ||
| 27. Bonus Lecture Check out my other courses.html | 1.08 KB |
Обучающие видео » Компьютерные видеоуроки и обучающие интерактивные DVD » Программирование (видеоуроки)
Java Foundations: The Complete Course with Java 21 Updates
Год выпуска: 11/2023
Производитель: Udemy
Сайт производителя: https://www.udemy.com/course/neutrino-java-foundations
Автор: Terry Martin
Продолжительность: 89h 47m 26s
Тип раздаваемого материала: Видеоурок
Язык: Английский
Субтитры: Английский
Описание:
Covers Java 21 & Earlier, Streams/Lambdas, Regex, TDD/Testing, Optionals, JDBC/SQL Intro to Spring & More Using IntelliJ
What you'll learn Foundations of the Java programming language
Object-oriented programming
Classes & Objects
Functional programming with Lambdas & Streams API
Testing & Test-Driven Development (TDD) with JUnit
Regular Expressions
Powerful features of IntelliJ IDE (Editor): Refactoring, Debugger, Creation of Project Types: Native, Maven, Gradle
JDBC & SQL Requirements No programming experience needed.
You should be familiar with downloading files to your computer from the Internet.
You should know how to find files on your computer.
You should know how to install typical software on your computer. Description
Note: This course is intended for absolute beginners to programming OR those who don't mind a slower pace to learning Java. If you're looking for a faster-paced course, this may not be for you (though you can play back at 2x speed & may still find great things to learn). Also, even for those who already know some basic Java, you could skip over the parts you already know and focus on those you may not, like Regex, Streams/Lambdas API, Optionals, Date/Time, SQL/Database/JDBC sections that even seasoned Java developers may not know as well as they should. Many of my sections on these APIs are as long or longer than MANY stand-alone courses dedicated to just one of these topics - for similar prices. Check out my preview videos from each of those sections to gauge how deep I go into each topic.
If you're interested in starting a new career as a professional software developer, learn the fundamentals from an instructor who has interviewed, hired, managed & mentored numerous developers over the years. This course will teach you all the REAL Java skills you need to land your first job and excel. It focuses on skills you're actually likely to use most often and tries to de-emphasize more "academic" knowledge. The instructor has taken his experiences and observations of both successful and unsuccessful developer candidates to create a course that tries to ensure success in landing highly-coveted developer roles
[spoiler="In this course, you'll learn such topics as:"]
Object Oriented Programming (OOP) Too many so-called "Java" developers have learned the syntax of the language but have no idea how to harness its actual power to write sophisticated software that's easier to maintain and collaborate on. Regular Expressions Another unfortunate observation is that a majority of Java developers are very weak with Regular Expressions. This is unfortunate because so much of what Java tends to be used for, involves processing text and checking that it is valid or parsing key information out of it. Without the use of Regular Expressions, these tasks require considerable amounts of error-prone code that is inflexible and difficult to maintain. Functional Programming with Lambdas & Streams API Another sore-spot among a large number of Java developers. As of 2023, Java 21 is out, but the Functional programming APIs of Lambdas & Streams were introduced into Java with version 8. We've observed that developers simply aren't keeping up with these powerful (not-so-new anymore) techniques that help keep Java competitive and efficient in an increasingly functional programming world. You can sift through large datasets with ease and significantly less code with these APIs. Optionals Tony Hoare, the inventor of the programming concept of "null", called its invention his "billion-dollar mistake" dating back to 1965. That mistake has gone on to wreak havoc across numerous programming language ever since. Optionals seek to remedy that mistake. Unfortunately, not enough Java developers have learned and embraced the power of using Optionals. This topic seeks to remedy that shortcoming Java 8 Date/Time API Java was introduced in 1995 and heralded as the great, shiny new programming language of our time. To a large degree, one could argue that it is indeed, that. However, mistakes were made along the way. One of those mistakes was the way dates & times were handled. Java 8 made major strides in fixing those mistakes, but as with Optionals, Lambdas and many other topics mentioned, not enough developers have taken the time to learn the new and greatly improved Java 8 Date/Time API. We'll show you how to keep time the right way. Working with Databases & SQL One of the topics where it seems Java developers actually have kept up (mostly) is in learning modern ways to work with databases in Java - primarily through the use of frameworks like Spring Boot. However, one unfortunate side-effect of the massive levels of abstraction these frameworks afford us, is that many developers have little-to-no idea of what these frameworks are doing or how to use them to maximum effect. We'll peel back the covers and give a solid foundation of the basics to better empower developers as they inevitably continue to use frameworks to make this work easier. An Introduction to The Spring Framework & Spring Boot The Spring Framework & its sibling, Spring Boot, have absolutely revolutionized modern Java software development - particularly for business. Dare I say virtually no company doing Java these days, even considers doing it without Spring or at least one of its few and much less popular competitors. You WILL have to learn Spring to be a true and well-rounded Java developer competitive in the job market. Though this course if focused on the fundamentals of Java, we knew we had to whet your appetite for the full(er) stack of Java development. Spring is what most companies use to enable their Java applications to become web applications and web services and talk to databases. This module will set you up for Neutrino's upcoming course dedicated to the topic in full (because it deserves its own course).
[/spoiler]
So, if you're willing to put in the work, come join us and begin the next phase of your career.
Who this course is for: People with little to no experience programming (If you're already proficient w/another language, watch preview videos to confirm the pacing is to your liking. The first half of course is paced for absolute beginners)
People interested in starting a new career as a professional software developer
Students wanting to learn Java or the basics of modern computer programming
People interested in learning more about Object-Oriented Programming (OOP) Формат видео: MP4
Видео: avc, 1280x720, 16:9, 30.000 к/с, 710 кб/с
Аудио: aac lc sbr, 48.0 кгц, 62.7 кб/с, 2 аудио
[spoiler="MediaInfo"]
General
Complete name : D:\2_1\Udemy - Java Foundations The Complete Course with Java 21 Updates (11.2023)\10. Streams & Lambdas\10. Alternatives to Filter.mp4
Format : MPEG-4
Format profile : Base Media
Codec ID : isom (isom/iso2/avc1/mp41)
File size : 168 MiB
Duration : 30 min 8 s
Overall bit rate : 779 kb/s
Frame rate : 30.000 FPS
Writing application : Lavf61.9.100
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : [email protected]
Format settings : CABAC / 4 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 4 frames
Format settings, GOP : M=4, N=60
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 30 min 7 s
Bit rate : 710 kb/s
Nominal bit rate : 800 kb/s
Width : 1 280 pixels
Height : 720 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 30.000 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.026
Stream size : 153 MiB (91%)
Writing library : x264 core 148
Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x1:0x111 / me=umh / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=22 / lookahead_threads=3 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=60 / keyint_min=6 / scenecut=0 / intra_refresh=0 / rc_lookahead=60 / rc=cbr / mbtree=1 / bitrate=800 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=800 / vbv_bufsize=1600 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00
Codec configuration box : avcC
Audio
ID : 2
Format : AAC LC SBR
Format/Info : Advanced Audio Codec Low Complexity with Spectral Band Replication
Commercial name : HE-AAC
Format settings : Explicit
Codec ID : mp4a-40-2
Duration : 30 min 8 s
Bit rate mode : Constant
Bit rate : 62.7 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 48.0 kHz
Frame rate : 23.438 FPS (2048 SPF)
Compression mode : Lossy
Stream size : 13.5 MiB (8%)
Language : English
Default : Yes
Alternate group : 1
[/spoiler]
[spoiler="Скриншоты"]
![]()
[/spoiler]
| torrent name | size | uploader | age | seed | leech |
|---|---|---|---|---|---|
| 321.5 MB | freecoursewb | 4 months | 5 | 2 | |
| 508.2 MB | freecoursewb | 6 months | 0 | 0 | |
| 292.4 MB | freecoursewb | 9 months | 5 | 1 | |
| 1.4 GB | freecoursewb | 2 years | 5 | 0 | |
| 99.49 MB | 2010kaiser | 13 years | 0 | 0 |
All Comments