From 7e0438554e338f5a032613f7f8a5b0e2edd18ce9 Mon Sep 17 00:00:00 2001 From: Stoia_Roland-Viorel Date: Sat, 15 Apr 2023 10:46:49 +0300 Subject: [PATCH 1/3] Am adaugat prima clasa --- .../java/code/_1_study/_1_hello_world/HelloWorld.java | 1 + .../src/main/java/code/_3_in_class/ClasaBunaZiua.java | 8 ++++++++ 2 files changed, 9 insertions(+) create mode 100644 _1_basics/src/main/java/code/_3_in_class/ClasaBunaZiua.java diff --git a/_1_basics/src/main/java/code/_1_study/_1_hello_world/HelloWorld.java b/_1_basics/src/main/java/code/_1_study/_1_hello_world/HelloWorld.java index a426c46d8..39102f635 100644 --- a/_1_basics/src/main/java/code/_1_study/_1_hello_world/HelloWorld.java +++ b/_1_basics/src/main/java/code/_1_study/_1_hello_world/HelloWorld.java @@ -2,6 +2,7 @@ public class HelloWorld { public static void main(String[] args) { + System.out.println("hello world"); } } \ No newline at end of file diff --git a/_1_basics/src/main/java/code/_3_in_class/ClasaBunaZiua.java b/_1_basics/src/main/java/code/_3_in_class/ClasaBunaZiua.java new file mode 100644 index 000000000..eae39dddc --- /dev/null +++ b/_1_basics/src/main/java/code/_3_in_class/ClasaBunaZiua.java @@ -0,0 +1,8 @@ +package code._3_in_class; + +public class ClasaBunaZiua { + public static void main(String[] args) { + //psvm genereaza mainu + System.out.println("Fain"); + } +} From c4156a23429e408ecae15a30b80fc84df0b3adc3 Mon Sep 17 00:00:00 2001 From: Stoia_Roland-Viorel Date: Sat, 22 Apr 2023 11:36:47 +0300 Subject: [PATCH 2/3] BoxingMatch --- .../PostfixIncrement.java | 2 +- .../_1_study/_5_slow_loops/SlowLoops.java | 2 ++ .../src/main/java/code/_3_in_class/Boxer.java | 19 ++++++++++++ .../src/main/java/code/_3_in_class/Main.java | 29 +++++++++++++++++++ 4 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 _2_oo/src/main/java/code/_3_in_class/Boxer.java diff --git a/_1_basics/src/main/java/code/_1_study/_2_postfix_increment/PostfixIncrement.java b/_1_basics/src/main/java/code/_1_study/_2_postfix_increment/PostfixIncrement.java index d0dd68b1b..954403120 100644 --- a/_1_basics/src/main/java/code/_1_study/_2_postfix_increment/PostfixIncrement.java +++ b/_1_basics/src/main/java/code/_1_study/_2_postfix_increment/PostfixIncrement.java @@ -12,7 +12,7 @@ public static void main(String[] args) { private static void checkForXValue(int x) { int expectedXValue = 11; - System.out.println("Guessed correctly the value of x ? - " + (x == expectedXValue)); + System.out.println("Guessed correctly the value of x ? - " + (x == 11)); } diff --git a/_1_basics/src/main/java/code/_1_study/_5_slow_loops/SlowLoops.java b/_1_basics/src/main/java/code/_1_study/_5_slow_loops/SlowLoops.java index 0b7297de3..774c5471a 100644 --- a/_1_basics/src/main/java/code/_1_study/_5_slow_loops/SlowLoops.java +++ b/_1_basics/src/main/java/code/_1_study/_5_slow_loops/SlowLoops.java @@ -15,6 +15,8 @@ private static void loopUsingWrapper() { Instant stop2 = Instant.now(); Duration duration2 = Duration.between(start2, stop2); System.out.println("using wrapper: " + duration2); //why is duration1 so different from duration2 ? + //durata este diferita din cauza ca aici accesam niste clase deja create prin intermediu Integer, astfel este o metoda + //apelata in contiunu creand o durata mai mare de iteratie } private static void loopUsingPrimitive() { diff --git a/_2_oo/src/main/java/code/_3_in_class/Boxer.java b/_2_oo/src/main/java/code/_3_in_class/Boxer.java new file mode 100644 index 000000000..e1c8511ac --- /dev/null +++ b/_2_oo/src/main/java/code/_3_in_class/Boxer.java @@ -0,0 +1,19 @@ +package code._3_in_class; + +public class Boxer { + + String name; + int health = 100; + int damagePerAttack = 10; + + void attack(Boxer opponent) { + opponent.health -= damagePerAttack; + }; + void defend(){}; + + public Boxer(String nume, int health, int damagePerAttack){ + this.name = name; + this.health = health; + this.damagePerAttack =damagePerAttack; + } +} diff --git a/_2_oo/src/main/java/code/_3_in_class/Main.java b/_2_oo/src/main/java/code/_3_in_class/Main.java index 3b87b4563..092d9c443 100644 --- a/_2_oo/src/main/java/code/_3_in_class/Main.java +++ b/_2_oo/src/main/java/code/_3_in_class/Main.java @@ -1,8 +1,37 @@ package code._3_in_class; +import java.util.Random; + public class Main { public static void main(String[] args) { //TODO put your code changes in here + Boxer ionBoxer = new Boxer("Ion", 100, 10); + + Boxer vasileBoxer = new Boxer("Vasile", 100, 20); + Random random = new Random(); + + matchMaking(ionBoxer, vasileBoxer, random); + showWinner(ionBoxer); + } + + private static void showWinner(Boxer ionBoxer) { + if(ionBoxer.health < 0){ + System.out.println("Vasile e smecher"); + } else { + System.out.println("Ion e smecher"); + } + } + + private static void matchMaking(Boxer ionBoxer, Boxer vasileBoxer, Random random) { + while(ionBoxer.health > 0 && vasileBoxer.health > 0 ) + { + int zeroOrOne = random.nextInt(2); + if(zeroOrOne == 0){ + ionBoxer.attack(vasileBoxer); + }else { + vasileBoxer.attack(ionBoxer); + } + } } } \ No newline at end of file From ca6f83cf240ead546882b790339de64215dfc1bc Mon Sep 17 00:00:00 2001 From: Stoia_Roland-Viorel Date: Sat, 20 May 2023 10:41:19 +0300 Subject: [PATCH 3/3] Final Project --- .../src/main/java/code/_3_in_class/Arici.java | 6 ++ .../src/main/java/code/_3_in_class/Boxer.java | 8 ++- .../main/java/code/_3_in_class/Gloves.java | 12 ++++ .../main/java/code/_3_in_class/IBoxer.java | 6 ++ .../src/main/java/code/_3_in_class/Main.java | 3 + .../src/main/java/code/_3_in_class/Siret.java | 6 ++ .../java/code/_4_student_effort/Bicycle.java | 17 +++++ .../java/code/_4_student_effort/Bottom2.java | 13 ++++ .../java/code/_4_student_effort/Main.java | 2 + .../java/code/_4_student_effort/Numbers.java | 14 ++++ .../main/java/code/_4_student_effort/Top.java | 8 +++ .../requirements/BurgerFactory.java | 64 +++++++++++++++++++ .../design_patterns/requirements/Client1.java | 24 +++++++ .../design_patterns/requirements/Client2.java | 24 +++++++ .../design_patterns/requirements/Client3.java | 23 +++++++ .../design_patterns/requirements/Clients.java | 15 +++++ .../design_patterns/requirements/Main.java | 28 +++++++- 17 files changed, 269 insertions(+), 4 deletions(-) create mode 100644 _2_oo/src/main/java/code/_3_in_class/Arici.java create mode 100644 _2_oo/src/main/java/code/_3_in_class/Gloves.java create mode 100644 _2_oo/src/main/java/code/_3_in_class/IBoxer.java create mode 100644 _2_oo/src/main/java/code/_3_in_class/Siret.java create mode 100644 _2_oo/src/main/java/code/_4_student_effort/Bicycle.java create mode 100644 _2_oo/src/main/java/code/_4_student_effort/Bottom2.java create mode 100644 _2_oo/src/main/java/code/_4_student_effort/Numbers.java create mode 100644 _2_oo/src/main/java/code/_4_student_effort/Top.java create mode 100644 clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/BurgerFactory.java create mode 100644 clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client1.java create mode 100644 clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client2.java create mode 100644 clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client3.java create mode 100644 clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Clients.java diff --git a/_2_oo/src/main/java/code/_3_in_class/Arici.java b/_2_oo/src/main/java/code/_3_in_class/Arici.java new file mode 100644 index 000000000..5964b77d9 --- /dev/null +++ b/_2_oo/src/main/java/code/_3_in_class/Arici.java @@ -0,0 +1,6 @@ +package code._3_in_class; + +public class Arici { + int size; + String color; +} diff --git a/_2_oo/src/main/java/code/_3_in_class/Boxer.java b/_2_oo/src/main/java/code/_3_in_class/Boxer.java index e1c8511ac..c84323cc8 100644 --- a/_2_oo/src/main/java/code/_3_in_class/Boxer.java +++ b/_2_oo/src/main/java/code/_3_in_class/Boxer.java @@ -1,15 +1,17 @@ package code._3_in_class; -public class Boxer { +public class Boxer implements IBoxer { String name; int health = 100; int damagePerAttack = 10; - void attack(Boxer opponent) { + public void attack(Boxer opponent) { opponent.health -= damagePerAttack; }; - void defend(){}; + public int defend(){ + return 0; + }; public Boxer(String nume, int health, int damagePerAttack){ this.name = name; diff --git a/_2_oo/src/main/java/code/_3_in_class/Gloves.java b/_2_oo/src/main/java/code/_3_in_class/Gloves.java new file mode 100644 index 000000000..bcd947ff8 --- /dev/null +++ b/_2_oo/src/main/java/code/_3_in_class/Gloves.java @@ -0,0 +1,12 @@ +package code._3_in_class; + +public class Gloves { + int size; + String Color; + + Arici arici; + public Gloves(int size, String Color){ + this.size = size; + this.Color = Color; + } +} diff --git a/_2_oo/src/main/java/code/_3_in_class/IBoxer.java b/_2_oo/src/main/java/code/_3_in_class/IBoxer.java new file mode 100644 index 000000000..d67ddc735 --- /dev/null +++ b/_2_oo/src/main/java/code/_3_in_class/IBoxer.java @@ -0,0 +1,6 @@ +package code._3_in_class; + +public interface IBoxer { + public void attack(Boxer opponent); + public int defend(); +} diff --git a/_2_oo/src/main/java/code/_3_in_class/Main.java b/_2_oo/src/main/java/code/_3_in_class/Main.java index 092d9c443..45d31c5db 100644 --- a/_2_oo/src/main/java/code/_3_in_class/Main.java +++ b/_2_oo/src/main/java/code/_3_in_class/Main.java @@ -4,6 +4,9 @@ public class Main { + Gloves stanga; + Gloves dreapta; + public static void main(String[] args) { //TODO put your code changes in here Boxer ionBoxer = new Boxer("Ion", 100, 10); diff --git a/_2_oo/src/main/java/code/_3_in_class/Siret.java b/_2_oo/src/main/java/code/_3_in_class/Siret.java new file mode 100644 index 000000000..690bbf340 --- /dev/null +++ b/_2_oo/src/main/java/code/_3_in_class/Siret.java @@ -0,0 +1,6 @@ +package code._3_in_class; + +public class Siret { + int size; + String color; +} diff --git a/_2_oo/src/main/java/code/_4_student_effort/Bicycle.java b/_2_oo/src/main/java/code/_4_student_effort/Bicycle.java new file mode 100644 index 000000000..8999bb7f2 --- /dev/null +++ b/_2_oo/src/main/java/code/_4_student_effort/Bicycle.java @@ -0,0 +1,17 @@ +package code._4_student_effort; + +public class Bicycle { + int speed = 0; + int gear = 1; + void changeGear(int newValue){ + this.gear = newValue; + } + + void speedUp(int increment){ + this.speed += increment; + } + + void applyBrakes(int decrement){ + this.speed -= decrement; + } +} diff --git a/_2_oo/src/main/java/code/_4_student_effort/Bottom2.java b/_2_oo/src/main/java/code/_4_student_effort/Bottom2.java new file mode 100644 index 000000000..4bfbbaab2 --- /dev/null +++ b/_2_oo/src/main/java/code/_4_student_effort/Bottom2.java @@ -0,0 +1,13 @@ +package code._4_student_effort; + +public class Bottom2 extends Top { + public Bottom2(String s) { + super(); + System.out.println("D"); + } + + public static void main(String[] args) { + new Bottom2("C"); + System.out.println(" "); + } +} diff --git a/_2_oo/src/main/java/code/_4_student_effort/Main.java b/_2_oo/src/main/java/code/_4_student_effort/Main.java index 95bb1182c..597617865 100644 --- a/_2_oo/src/main/java/code/_4_student_effort/Main.java +++ b/_2_oo/src/main/java/code/_4_student_effort/Main.java @@ -4,5 +4,7 @@ public class Main { public static void main(String[] args) { //TODO put your code changes in here + //pentru a apela ce e inauntr lui Numbers + System.out.println(Numbers.Number1.getName()); } } diff --git a/_2_oo/src/main/java/code/_4_student_effort/Numbers.java b/_2_oo/src/main/java/code/_4_student_effort/Numbers.java new file mode 100644 index 000000000..f2ab883e4 --- /dev/null +++ b/_2_oo/src/main/java/code/_4_student_effort/Numbers.java @@ -0,0 +1,14 @@ +package code._4_student_effort; + +public enum Numbers { + Number1("Hello 1"),Number2("Hello 2"); + + String name; + Numbers(String name){ + this.name = name; + } + + public String getName(){ + return name; + } +} diff --git a/_2_oo/src/main/java/code/_4_student_effort/Top.java b/_2_oo/src/main/java/code/_4_student_effort/Top.java new file mode 100644 index 000000000..9a31f487c --- /dev/null +++ b/_2_oo/src/main/java/code/_4_student_effort/Top.java @@ -0,0 +1,8 @@ +package code._4_student_effort; + +public class Top { + public Top() { + System.out.println("B"); + } +} + diff --git a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/BurgerFactory.java b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/BurgerFactory.java new file mode 100644 index 000000000..5259635fe --- /dev/null +++ b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/BurgerFactory.java @@ -0,0 +1,64 @@ +package clean.code.design_patterns.requirements; + +public class BurgerFactory { + private boolean salad; + private boolean sauce; + private String typeOfSauce; + private String typeOfMeat; + + //Singelton Design pattern + public boolean getSalad(){ + return this.salad; + } + + public String getTypeOfSauce(){ + return this.typeOfSauce; + } + + public boolean getSauce(){ + return this.sauce; + } + + public String getTypeOfMeat(){ + return this.typeOfMeat; + } + private BurgerFactory(BuilderBurgerFactory builder){ + this.salad = builder.salad; + this.sauce = builder.sauce; + this.typeOfMeat = builder.typeOfMeat; + this.typeOfSauce = builder.typeOfSauce; + } + + public static class BuilderBurgerFactory{ + private boolean salad; + private boolean sauce; + private String typeOfSauce; + private String typeOfMeat; + + //builder design patern + public BuilderBurgerFactory(String meat){ + this.typeOfMeat = meat; + } + + public BuilderBurgerFactory setSauce(boolean sauce, String typeOfSauce){ + this.sauce = sauce; + if( sauce == true) setTypeOfSauce(typeOfSauce); + return this; + } + + public BuilderBurgerFactory setTypeOfSauce(String sauce){ + this.typeOfSauce = sauce; + return this; + } + + public BuilderBurgerFactory setSalad(boolean salad){ + this.salad = salad; + return this; + } + + public BurgerFactory build(){ + return new BurgerFactory(this); + } + + } +} diff --git a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client1.java b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client1.java new file mode 100644 index 000000000..ab08f955d --- /dev/null +++ b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client1.java @@ -0,0 +1,24 @@ +package clean.code.design_patterns.requirements; + +public class Client1 extends Clients { + + @Override + public boolean salad() { + return true; + } + + @Override + public boolean sauce() { + return true; + } + + @Override + public String typeOfSauce() { + return "Maioneza"; + } + + @Override + public String typeOfMeat() { + return "Pui"; + } +} diff --git a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client2.java b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client2.java new file mode 100644 index 000000000..6ed752d31 --- /dev/null +++ b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client2.java @@ -0,0 +1,24 @@ +package clean.code.design_patterns.requirements; + +public class Client2 extends Clients{ + @Override + public boolean salad() { + return false; + } + + @Override + public boolean sauce() { + return true; + } + + @Override + public String typeOfSauce() { + return "barbecue"; + } + + @Override + public String typeOfMeat() { + return "vita"; + } +} + diff --git a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client3.java b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client3.java new file mode 100644 index 000000000..ace900b45 --- /dev/null +++ b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Client3.java @@ -0,0 +1,23 @@ +package clean.code.design_patterns.requirements; + +public class Client3 extends Clients{ + @Override + public boolean salad() { + return true; + } + + @Override + public boolean sauce() { + return false; + } + + @Override + public String typeOfSauce() { + return null; + } + + @Override + public String typeOfMeat() { + return "pui"; + } +} diff --git a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Clients.java b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Clients.java new file mode 100644 index 000000000..aa92b3340 --- /dev/null +++ b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Clients.java @@ -0,0 +1,15 @@ +package clean.code.design_patterns.requirements; +//Template Method Pattern +public abstract class Clients { + public final void messages(){ + salad(); + sauce(); + typeOfSauce(); + typeOfMeat(); + } + + public abstract boolean salad(); + public abstract boolean sauce(); + public abstract String typeOfSauce(); + public abstract String typeOfMeat(); +} diff --git a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Main.java b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Main.java index 8a9fccb7b..941b064fe 100644 --- a/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Main.java +++ b/clean_code_projects/_2_project_requirements_design_patterns/src/main/java/clean/code/design_patterns/requirements/Main.java @@ -3,6 +3,32 @@ public class Main { public static void main(String[] args) { - //TODO implement your design patterns in this package + + Client1 client1 = new Client1(); + Client2 client2 = new Client2(); + Client3 client3 = new Client3(); + String salataTrue = " cu salata"; + String salataFalse = " fara salata"; + String sosFalse = " fara sos"; + long i = 5000000000L; + + + System.out.println("Buna ziua, bine v-am gasit la fabrica mea de burgeri digitali"); + System.out.println("Se pare ca avem azi 3 clienti, sa auzim ce vrea fiecare"); + + System.out.print("Primul client doreste : " + client1.typeOfMeat()); + if(client1.salad() == true) System.out.print(salataTrue); + else System.out.print(salataFalse); + if(client1.sauce() == true) System.out.print(" si cu " + client1.typeOfSauce()); + else System.out.print(sosFalse); + System.out.println(); + System.out.print("Burgerul se pregateste "); + while(i >0 ){ + if ( i % 1000000000L == 0) System.out.print(". "); + i--; + } + System.out.println(""); + BurgerFactory burger = new BurgerFactory.BuilderBurgerFactory(client1.typeOfMeat()).setSalad(client1.salad()).setSauce(client1.sauce(),client1.typeOfSauce()).build(); + System.out.println("Burgerul s-a pregatit, pofta buna!"); } }