Skip to content

3S00mc/mastering-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

☕ Java Mastery Series

A organização dos estudos está dividida em: Fundamental, Orientacao a objetos e Topicos Avancados. Cada topico possui projetos e exercicios para fixacao dos conceitos.

O projeto final do módulo fundamental está disponivel em mastery-java.jar no diretório out/artifacts/mortgage_calculator_refactored.

💻 Code Structure

src/
└── main/
    └── java/
        └── com/
            └── mastery/
                ├── advanced/
                │
                └── fundamentals/
                    ├── cleancode/
                    │   ├── CreatingMethods.java
                    │   └── Refactoring.java
                    │
                    ├── controlflow/
                    │   ├── BreakContinue.java
                    │   ├── ComparisonOperators.java
                    │   ├── DoWhileLoops.java
                    │   ├── FizzBuzzExercise.java
                    │   ├── ForEachLoops.java
                    │   ├── ForLoops.java
                    │   ├── IfStatement.java
                    │   ├── LogicalOperators.java
                    │   ├── SimplifyingIfStatements.java
                    │   ├── SimplifySwitchStatements.java
                    │   ├── SwitchStatement.java
                    │   ├── TernaryOperator.java
                    │   └── WhileLoops.java
                    │
                    ├── getstarted/
                    │   └── Main.java
                    │
                    ├── projects/
                    │   ├── MortgageCalculator.java
                    │   ├── MortgageCalculatorV2.java
                    │   └── MortgageCalculatorV3.java
                    │
                    └── types/
                        ├── ArithmeticExpressions.java
                        ├── ArraysJava.java
                        ├── Casting.java
                        ├── Constants.java
                        ├── EscapeSequences.java
                        ├── FormattingNumbers.java
                        ├── MathClass.java
                        ├── MultidimensionalArrays.java
                        ├── OrderOfOperations.java
                        ├── PrimitiveTypes.java
                        ├── ReadingInputs.java
                        ├── ReferenceTypes.java
                        ├── Strings.java
                        └── Variables.java

===========================================================================

📘 Fundamentals

🎯 Introduction

[1] - Getting Started (Hello World)


🧠 Types & Core Concepts

[1] - Variables

[2] - Primitive Types

[3] - Reference Types

[4] - Strings

[5] - Escape Sequences

[6] - Arrays

[7] - Multidimensional Arrays

[8] - Constants

[9]- Arithmetics Expressions

[10] - Order of Operations

[11] - Casting

[12] - The Math Class

[13] - Formatting Numbers

[14] - Reading Inputs

  • 🚀 PROJECT -> Mortgage Calculator

🔁 Control Flow

[1] - Comparison Operators

[2] - Logical Operators

[3] - If Statements

[4] - Simplifying If Statements

[5] - Ternary Operators

[6] - Switch Statements

  • 🚀 EXERCISE - FizzBuzz

[7] - For Loops

[8] - While Loops

[9] - Do While Loops

[10] - Break and Continue Statements

[11] - For Each Loops

  • 🚀 PROJECT -> Mortgage Calculator

🧹 Clean Code

[1] - Clean Codding

[2] - Creating Methods

[3] - Extracting Methods

[4] - Refactoring Repetitive Patterns

[5] - Refactoring the Code

  • 🚀PROJECT -> Payment Schedule

🛠 Debugging and Deploying Applications

[1] - Finding and Fixing Errors

[2] - Types of errors

[3] - Common Syntax erros

[4] - Debugging

[5] - Packaging and Deploying Applications

===========================================================================

📘 Object-oriented Programming

📦 Classes

[1] - Encapsulation

[2] - Abstraction

[3] - Constructors

[4] - Getters and Setters

[5] - Method Overloading

[6] - Static Members


🔧 Refactoring Towards an Object-Oriented Design

  • 🚀 PROJECT -> Mortgage Calculator

🧬 Inheritance

[1] - Constructors

[2] - Access Modifiers

[3] - Overriding Methods

[4] - Upcasting and Downcasting

[5] - Comparing Objects

[6] - Polymorphism

[7] - Abstract Classes and Methods

[8] - Final Classes and Methods

[9] - Deep Inheritance Hierarchies

[10] - Multiple Inheritance, in Java [ YAGNI ]


🔌 interfaces

[1] - Qhat is an interface?

[2] - Why we need them

[3] - How to use them "properly"

[4] - Dependency injection

- Constructor Injection
- Setter Injection
- Method Injection

[5] - Interface Segregation Principle

- Fields
- Static Methods
- Private Methods
- Interfaces and Abstract Classes

[6] - When to Use Interfaces

  • 🚀 PROJECT -> MyTube Video Platform

===========================================================================

📘 Advanced Topics

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages