From 17803e54507fec0aa81cf9ab752644e491f03183 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 18:56:43 -0500 Subject: [PATCH 001/123] Create weel-three.md --- weel-three.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 weel-three.md diff --git a/weel-three.md b/weel-three.md new file mode 100644 index 0000000..551651d --- /dev/null +++ b/weel-three.md @@ -0,0 +1,10 @@ +Recognize and apply the Template Method design pattern to solve a given problem. + +Explain how interfaces reduce coupling while increasing code reuse. + +Write generic algorithms that use polymorphism to act on covariant data types. + +Explain what design patterns are and how they are used. + +Recognize and apply the Strategy design pattern to solve a given problem. + From d110b2bd94769889e545cb6887af565c71fbe429 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 18:57:16 -0500 Subject: [PATCH 002/123] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 0c34b92..3626ee4 100644 --- a/README.md +++ b/README.md @@ -4,3 +4,5 @@ [WEEK TWO](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-two.md) + +[WEEK THREE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-three.md) From 85bedfa8edee4704a6902055da579f6a811da1ab Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 18:58:28 -0500 Subject: [PATCH 003/123] name change --- weel-three.md => week-three.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename weel-three.md => week-three.md (100%) diff --git a/weel-three.md b/week-three.md similarity index 100% rename from weel-three.md rename to week-three.md From 2c071ee20dfdbf73418caaaa453e35ab42f3a1c6 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 19:32:08 -0500 Subject: [PATCH 004/123] e --- week-two.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-two.md b/week-two.md index ba24924..a9016b8 100644 --- a/week-two.md +++ b/week-two.md @@ -12,6 +12,7 @@ - none of the methods in an interface are implemented, the interface only lists the signatures of the methods (name, return type, parameters) - if a subclass implements an interface, it must define each method listed in the interface - there are no properties defined in an interface +- a class can `extend` only one class, but it can `implement` as many interfaces as needed - you can design a program to have an interface the then an abstract superclass that implements the interface, then subclasses that extend the abstract class - let's say we have an `interface Person`, that describes what each `Person` type _has_ to be able to do - then an abstract class (`AbstractPerson`) either implements each method from the interface _or_ marks it abstract to force the subclasses to implement them From 6214361e8afd375b1ab88d813220085861ae7215 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 19:35:41 -0500 Subject: [PATCH 005/123] e --- week-two.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-two.md b/week-two.md index a9016b8..bfcf059 100644 --- a/week-two.md +++ b/week-two.md @@ -1,4 +1,5 @@ ### abstract classes vs interfaces +- classes and abstract classes define what an object _is_; an interface defines what an object can _do_ - neither of these can be instantiated (you can't "new" them up) - you "extend" abstract classes, and then you can create objects from those subclasses - you "implement" interfaces, and then you can create objects from those subclasses From 3e1d1c31a78deb75abd8c14c411e31fa23b0fdc3 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 19:36:27 -0500 Subject: [PATCH 006/123] e --- week-two.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-two.md b/week-two.md index bfcf059..26a4a32 100644 --- a/week-two.md +++ b/week-two.md @@ -68,7 +68,7 @@ public boolean equals(Object object) - (interfaces aren't classes, they're more like blueprints for classes) ### composition - +- **???** ### open-closed, interface segregation, and dependency inversion principles (SOLID) - open-closed From 23addca188a5018a206db5830d2e6c3c20695a5f Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 19:40:40 -0500 Subject: [PATCH 007/123] e --- week-two.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-two.md b/week-two.md index 26a4a32..2cd0ca6 100644 --- a/week-two.md +++ b/week-two.md @@ -80,6 +80,7 @@ public boolean equals(Object object) - dependency inversion - high-level modules shouldn't depend on low-level modules, they shouldn't have to know what's going on in them - another way to put it, the coupling between two classes should be as low as possible, one class doesn't have to know about or bother with the implementation of another class it's using + - changing one of the classes shouldn't change how the other class (the dependent class) uses it ### cohesion and coupling - the goal: classes should have strong cohesion, weak coupling From 6633ca0e055b97a795b78ee88bdb2407534de43c Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 19:43:21 -0500 Subject: [PATCH 008/123] e --- week-two.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-two.md b/week-two.md index 2cd0ca6..7f1235b 100644 --- a/week-two.md +++ b/week-two.md @@ -3,6 +3,7 @@ - neither of these can be instantiated (you can't "new" them up) - you "extend" abstract classes, and then you can create objects from those subclasses - you "implement" interfaces, and then you can create objects from those subclasses + - **but** you can assign an object that implements, say, the Measurable interface to a variable of type Measurable; you can't instantiate a Measurable, but you can use it as a variable type - classes derived from interfaces or abstract classes are called "concrete classes"; these are classes that can be instantiated (i.e. you can create objects from them) - abstract classes - abstract classes can have implemented methods, abstract methods and properties From d5248b73e72e2ec21b5ddedceace988dbe42d5d4 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:11:42 -0500 Subject: [PATCH 009/123] e --- week-two.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/week-two.md b/week-two.md index 7f1235b..e1dd14b 100644 --- a/week-two.md +++ b/week-two.md @@ -3,11 +3,11 @@ - neither of these can be instantiated (you can't "new" them up) - you "extend" abstract classes, and then you can create objects from those subclasses - you "implement" interfaces, and then you can create objects from those subclasses - - **but** you can assign an object that implements, say, the Measurable interface to a variable of type Measurable; you can't instantiate a Measurable, but you can use it as a variable type + - **but** you can assign an object that implements, say, the Measurable interface to a variable of type Measurable; you can't instantiate a Measurable, but you can use it as a variable type - classes derived from interfaces or abstract classes are called "concrete classes"; these are classes that can be instantiated (i.e. you can create objects from them) - abstract classes - abstract classes can have implemented methods, abstract methods and properties - - abstract methods aren't implemented (i.e., they don't have bodies) in the abstract class, but in the subclasses they _must_ be implemented + - abstract methods aren't implemented (i.e., they don't have bodies) in the abstract class, but they _must_ be implemented in the subclasses - if a subclass doesn't have a constructor, then when you create a new subclass object, Java will run the superclass' constructor - interfaces - an interface defines how we interact with the object (what the object can do) @@ -71,6 +71,9 @@ public boolean equals(Object object) ### composition - **???** +### callback methods +- **???** + ### open-closed, interface segregation, and dependency inversion principles (SOLID) - open-closed - a system can be extended but should not be modified From 7554fd1509d64c78a56af9f42ffe9990b9996952 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:26:14 -0500 Subject: [PATCH 010/123] e --- week-two.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/week-two.md b/week-two.md index e1dd14b..a068b6e 100644 --- a/week-two.md +++ b/week-two.md @@ -60,12 +60,12 @@ public boolean equals(Object object) - `Math.abs(oneValue - otherValue) < 1e-6` ### types of classes -- concrete: a class that can be instantiated (you can "new" it up) -- base: -- derived: -- final: -- static: -- abstract: +- concrete: a regualr class; it can be instantiated (you can "new" it up) +- base: a parent class, a class that another class extends +- derived: a child class, a class that extends another class +- abstract: a class that has one or more abstract methods in it +- static: you can't create an object from a static class; you use a member defined in a static class with `ClassName.MethodName()/PropertyName`; +- final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed - (interfaces aren't classes, they're more like blueprints for classes) ### composition From 3fe12029dfabb83cf92c242101f04bd2ebde9210 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:27:38 -0500 Subject: [PATCH 011/123] e --- week-two.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-two.md b/week-two.md index a068b6e..3baf528 100644 --- a/week-two.md +++ b/week-two.md @@ -65,7 +65,7 @@ public boolean equals(Object object) - derived: a child class, a class that extends another class - abstract: a class that has one or more abstract methods in it - static: you can't create an object from a static class; you use a member defined in a static class with `ClassName.MethodName()/PropertyName`; -- final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed +- final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed; final methods cannot be overriden; final variables can only be assigned once - (interfaces aren't classes, they're more like blueprints for classes) ### composition From b0755aaef0f976cec506af5259fca7487b543bb4 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:42:54 -0500 Subject: [PATCH 012/123] e --- week-two.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/week-two.md b/week-two.md index 3baf528..28ea654 100644 --- a/week-two.md +++ b/week-two.md @@ -60,16 +60,18 @@ public boolean equals(Object object) - `Math.abs(oneValue - otherValue) < 1e-6` ### types of classes -- concrete: a regualr class; it can be instantiated (you can "new" it up) +- concrete: a regular class; it can be instantiated (you can "new" it up) - base: a parent class, a class that another class extends - derived: a child class, a class that extends another class - abstract: a class that has one or more abstract methods in it -- static: you can't create an object from a static class; you use a member defined in a static class with `ClassName.MethodName()/PropertyName`; -- final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed; final methods cannot be overriden; final variables can only be assigned once +- static: you can't create an object from a static class; you use a member defined in a static class with `ClassName.MethodName()/PropertyName`; +- final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed; final methods cannot be overridden; final variables can only be assigned once - (interfaces aren't classes, they're more like blueprints for classes) ### composition -- **???** +- composition is when an object contains another object +- the contained object cannot exist outside of the container class +- if inheritance makes "is a" relationships, then composition makes "has a" relationships ### callback methods - **???** From 34e69fd06666a7abf98a43d8ac67732ff3a66ae0 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:46:14 -0500 Subject: [PATCH 013/123] e --- week-two.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-two.md b/week-two.md index 28ea654..4ec120c 100644 --- a/week-two.md +++ b/week-two.md @@ -74,7 +74,8 @@ public boolean equals(Object object) - if inheritance makes "is a" relationships, then composition makes "has a" relationships ### callback methods -- **???** +- you can pass a method into another method and call the first method inside the second +![callback pattern](https://github.com/ruthrootz/java-oop-class-notes/blob/main/callback-methods.png) ### open-closed, interface segregation, and dependency inversion principles (SOLID) - open-closed From 6ced0a896e467902da9ca86a95ba06987f12edff Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:47:29 -0500 Subject: [PATCH 014/123] Add files via upload --- callback-methods.png | Bin 0 -> 61131 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 callback-methods.png diff --git a/callback-methods.png b/callback-methods.png new file mode 100644 index 0000000000000000000000000000000000000000..3be62fb8466e30b3cf6839fbf76e02f0febd3617 GIT binary patch literal 61131 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 Ef(j2W$p8QV literal 0 HcmV?d00001 From b2fead25c923996b15176ec4e1d2b0322e07f830 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:49:36 -0500 Subject: [PATCH 015/123] e --- week-one.md | 10 +++++----- week-two.md | 20 ++++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/week-one.md b/week-one.md index 502b90f..47df876 100644 --- a/week-one.md +++ b/week-one.md @@ -1,4 +1,4 @@ -### inheritance +## inheritance - what it is - a hierarchy of classes, each one defining a more specific subset of the parent class (or "superclass") - the subclass "is a" version of the superclass @@ -38,7 +38,7 @@ vehicle - parent methods and properties need to be `public` for them to be accessible in subclasses (or by actual instances of the subclass) - every class implicitly extends Java's base Object class; Object is the parent class of all classes -### override and overload +## override and overload - override (decorator: `@Override`) - you're "overriding" when you make a method with the same name and signature of a method in the superclass - when called by an instance of the subtype, the subtype/overridden version of the method will be run @@ -49,7 +49,7 @@ vehicle - within the same class, you can have multiple versions of the same method - the return types and names must be the same, but the types, number and order of the parameters can be different -### polymorphism +## polymorphism - what it means - you can call the same methods and/or use the same logic with objects of different types - a different method is called depending on the type of the object @@ -57,11 +57,11 @@ vehicle - an object gets its type checked and then the correct override of a method is chosen and invoked - this happens dynamically, during runtime -### late binding +## late binding - what it is - **???** -### Liskov substitution principle and SOLID +## Liskov substitution principle and SOLID - what SOLID stands for - single responsibility principle: each class should represent one thing, each method should do only one thing, etc. - open-closed principle diff --git a/week-two.md b/week-two.md index 4ec120c..29c2dfa 100644 --- a/week-two.md +++ b/week-two.md @@ -1,4 +1,4 @@ -### abstract classes vs interfaces +## abstract classes vs interfaces - classes and abstract classes define what an object _is_; an interface defines what an object can _do_ - neither of these can be instantiated (you can't "new" them up) - you "extend" abstract classes, and then you can create objects from those subclasses @@ -20,7 +20,7 @@ - then an abstract class (`AbstractPerson`) either implements each method from the interface _or_ marks it abstract to force the subclasses to implement them - each subclass that extends `AbstractPerson` must implement any methods marked as abstract in `AbstractPerson` -### implicit and explicit object conversion +## implicit and explicit object conversion - implicit - objects of a subclass can be used anywhere that a superclass object can be used without having to be cast into the parent type - if you have a `Student` object, it can be used anywhere a `Person` object is required (assuming `Student` extends/implements `Person`) @@ -28,7 +28,7 @@ - explicit conversion is when an object is cast into another type - a `Person` object has to be cast with `(Student)personObject` if you want to use `Student` methods on it -### overriding equals method +## overriding equals method - the default `equals()` method in the `Object` class only returns true if the objects being compared are the exact same object ``` Person x = new Person("tony"); @@ -59,7 +59,7 @@ public boolean equals(Object object) - you should check to see if the values are "close enough", since they could vary by tiny amounts - `Math.abs(oneValue - otherValue) < 1e-6` -### types of classes +## types of classes - concrete: a regular class; it can be instantiated (you can "new" it up) - base: a parent class, a class that another class extends - derived: a child class, a class that extends another class @@ -68,16 +68,16 @@ public boolean equals(Object object) - final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed; final methods cannot be overridden; final variables can only be assigned once - (interfaces aren't classes, they're more like blueprints for classes) -### composition +## composition - composition is when an object contains another object - the contained object cannot exist outside of the container class - if inheritance makes "is a" relationships, then composition makes "has a" relationships -### callback methods -- you can pass a method into another method and call the first method inside the second +## callback methods ![callback pattern](https://github.com/ruthrootz/java-oop-class-notes/blob/main/callback-methods.png) +- you can pass a method into another method and call the first method inside the second -### open-closed, interface segregation, and dependency inversion principles (SOLID) +## open-closed, interface segregation, and dependency inversion principles (SOLID) - open-closed - a system can be extended but should not be modified - e.g., you can add a subclass but you can't (or don't have to) change the superclass @@ -89,7 +89,7 @@ public boolean equals(Object object) - another way to put it, the coupling between two classes should be as low as possible, one class doesn't have to know about or bother with the implementation of another class it's using - changing one of the classes shouldn't change how the other class (the dependent class) uses it -### cohesion and coupling +## cohesion and coupling - the goal: classes should have strong cohesion, weak coupling - cohesion: each class should do only one thing - coupling @@ -97,5 +97,5 @@ public boolean equals(Object object) - classes shouldn't depend on the details of another class, the classes should work independently - changing how one of them works shouldn't break the other -### access modifiers +## access modifiers ![access modifiers](https://github.com/ruthrootz/java-oop-class-notes/blob/main/access-modifiers.png) From ff0632f4e468dae4dbc06f7a0551902f6b2de584 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 20:50:16 -0500 Subject: [PATCH 016/123] e --- week-one.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/week-one.md b/week-one.md index 47df876..0e159cd 100644 --- a/week-one.md +++ b/week-one.md @@ -58,8 +58,7 @@ vehicle - this happens dynamically, during runtime ## late binding -- what it is - - **???** +- **???** ## Liskov substitution principle and SOLID - what SOLID stands for From 6868e8031737394c4250e8d1132183bf3e0a697f Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 21:07:10 -0500 Subject: [PATCH 017/123] e --- week-two.md | 1 - 1 file changed, 1 deletion(-) diff --git a/week-two.md b/week-two.md index 29c2dfa..5b6761f 100644 --- a/week-two.md +++ b/week-two.md @@ -4,7 +4,6 @@ - you "extend" abstract classes, and then you can create objects from those subclasses - you "implement" interfaces, and then you can create objects from those subclasses - **but** you can assign an object that implements, say, the Measurable interface to a variable of type Measurable; you can't instantiate a Measurable, but you can use it as a variable type -- classes derived from interfaces or abstract classes are called "concrete classes"; these are classes that can be instantiated (i.e. you can create objects from them) - abstract classes - abstract classes can have implemented methods, abstract methods and properties - abstract methods aren't implemented (i.e., they don't have bodies) in the abstract class, but they _must_ be implemented in the subclasses From 6a1232c24c2478ddc028d3dfd070fdc5e3580b6c Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 31 Jan 2022 21:17:34 -0500 Subject: [PATCH 018/123] e --- week-two.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-two.md b/week-two.md index 5b6761f..8fbdb35 100644 --- a/week-two.md +++ b/week-two.md @@ -64,7 +64,7 @@ public boolean equals(Object object) - derived: a child class, a class that extends another class - abstract: a class that has one or more abstract methods in it - static: you can't create an object from a static class; you use a member defined in a static class with `ClassName.MethodName()/PropertyName`; -- final: creates an immutable class; values remain the same throughout the program; cannot be extended/subclassed; final methods cannot be overridden; final variables can only be assigned once +- final: final classes cannot be extended; final **methods** cannot be overridden; final **variables** can only be assigned once - (interfaces aren't classes, they're more like blueprints for classes) ## composition From b9b59af2e2b318958af2116f4dcd79146c8861ca Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 14:01:58 -0500 Subject: [PATCH 019/123] e --- week-three.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/week-three.md b/week-three.md index 551651d..6d36f69 100644 --- a/week-three.md +++ b/week-three.md @@ -1,10 +1,10 @@ -Recognize and apply the Template Method design pattern to solve a given problem. +## Recognize and apply the Template Method design pattern to solve a given problem. -Explain how interfaces reduce coupling while increasing code reuse. +## Explain how interfaces reduce coupling while increasing code reuse. -Write generic algorithms that use polymorphism to act on covariant data types. +## Write generic algorithms that use polymorphism to act on covariant data types. -Explain what design patterns are and how they are used. +## Explain what design patterns are and how they are used. -Recognize and apply the Strategy design pattern to solve a given problem. +## Recognize and apply the Strategy design pattern to solve a given problem. From 60773456bd907b70a90f2d74babc69b018128910 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 15:59:57 -0500 Subject: [PATCH 020/123] e --- week-three.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/week-three.md b/week-three.md index 6d36f69..eaa616e 100644 --- a/week-three.md +++ b/week-three.md @@ -1,10 +1,15 @@ ## Recognize and apply the Template Method design pattern to solve a given problem. + ## Explain how interfaces reduce coupling while increasing code reuse. + ## Write generic algorithms that use polymorphism to act on covariant data types. + ## Explain what design patterns are and how they are used. +- design patterns are "common solutions to common problkems" +- they're tried-and-true ways to organize classes and behaviors ## Recognize and apply the Strategy design pattern to solve a given problem. From e8ac6ad22cfade99f84e84465e97b7dd2042c300 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 16:41:21 -0500 Subject: [PATCH 021/123] e --- week-one.md | 8 +++++++- week-three.md | 5 +++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/week-one.md b/week-one.md index 0e159cd..e95ac12 100644 --- a/week-one.md +++ b/week-one.md @@ -58,7 +58,13 @@ vehicle - this happens dynamically, during runtime ## late binding -- **???** +- this is when ther JVM determines the type of an object during runtime + - say you have an interface `Comparable` and classes `Blanket` and `Lightbulb` that implement it + - `Comparable` defines a method `compareTo()` that is obviously written differently in each subclass + - lastly, you have a class that uses `Comparable` objects and calls `compareTo()` in one of its methods + - this method takes in type `Comparable` + - the exact type of the object (and its specific version of `compareTo()` to call) is determined during runtime by the JVM +- early binding is when the type of an object is determined during compile time ## Liskov substitution principle and SOLID - what SOLID stands for diff --git a/week-three.md b/week-three.md index eaa616e..45c12af 100644 --- a/week-three.md +++ b/week-three.md @@ -1,5 +1,6 @@ ## Recognize and apply the Template Method design pattern to solve a given problem. - +- you have a fixed algorithm that does different things for different types +- ## Explain how interfaces reduce coupling while increasing code reuse. @@ -8,7 +9,7 @@ ## Explain what design patterns are and how they are used. -- design patterns are "common solutions to common problkems" +- design patterns are "common solutions to common problems" - they're tried-and-true ways to organize classes and behaviors ## Recognize and apply the Strategy design pattern to solve a given problem. From 398f338691abad07305c8c24da4f4d4572dbcf90 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 16:43:42 -0500 Subject: [PATCH 022/123] e --- week-three.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-three.md b/week-three.md index 45c12af..1003c13 100644 --- a/week-three.md +++ b/week-three.md @@ -1,6 +1,7 @@ ## Recognize and apply the Template Method design pattern to solve a given problem. - you have a fixed algorithm that does different things for different types -- +- a method takes objects of any class that implements some interface and calls a method defined in that interface +- that method calls a different version of the interface method depending on the specific subclass/type of the object being passed in ## Explain how interfaces reduce coupling while increasing code reuse. From 24d84446885b1eeb48d4db2bc1a963f1addfadd2 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 16:44:04 -0500 Subject: [PATCH 023/123] e --- week-three.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/week-three.md b/week-three.md index 1003c13..751ea91 100644 --- a/week-three.md +++ b/week-three.md @@ -3,6 +3,9 @@ - a method takes objects of any class that implements some interface and calls a method defined in that interface - that method calls a different version of the interface method depending on the specific subclass/type of the object being passed in +## Recognize and apply the Strategy design pattern to solve a given problem. + + ## Explain how interfaces reduce coupling while increasing code reuse. @@ -12,6 +15,3 @@ ## Explain what design patterns are and how they are used. - design patterns are "common solutions to common problems" - they're tried-and-true ways to organize classes and behaviors - -## Recognize and apply the Strategy design pattern to solve a given problem. - From 8ef8257669b95b210c5d0f6ea9c2bfa683c705a6 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 16:53:14 -0500 Subject: [PATCH 024/123] e --- week-three.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/week-three.md b/week-three.md index 751ea91..4123b18 100644 --- a/week-three.md +++ b/week-three.md @@ -1,17 +1,21 @@ +## Explain what design patterns are and how they are used. +- design patterns are "common solutions to common problems" +- they're tried-and-true ways to organize classes and behaviors + ## Recognize and apply the Template Method design pattern to solve a given problem. - you have a fixed algorithm that does different things for different types - a method takes objects of any class that implements some interface and calls a method defined in that interface - that method calls a different version of the interface method depending on the specific subclass/type of the object being passed in ## Recognize and apply the Strategy design pattern to solve a given problem. - +- only some animals fly, so don't put `fly()` in an `Animal` class +- also, you should try to avoid creating interfaces just to force the creation of a method/action +- a change in a superclass/interface shouldn't break the subclasses +- use strategy pattern + - create an interface `Flies` with `flies()` + - create two classes that implement `Flies`, one called `CanFly` and one called `CantFly` + - +- this doesn't break old classes and allows us to add multiple types of flying (e.g., can fly, can't fly, can flap, can fly when it reaches a certain age, etc.) ## Explain how interfaces reduce coupling while increasing code reuse. - -## Write generic algorithms that use polymorphism to act on covariant data types. - - -## Explain what design patterns are and how they are used. -- design patterns are "common solutions to common problems" -- they're tried-and-true ways to organize classes and behaviors From ca5490edfca6f10acf7e954b275dee7738a633f6 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 16:55:53 -0500 Subject: [PATCH 025/123] e --- week-three.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/week-three.md b/week-three.md index 4123b18..a7dcb00 100644 --- a/week-three.md +++ b/week-three.md @@ -14,7 +14,9 @@ - use strategy pattern - create an interface `Flies` with `flies()` - create two classes that implement `Flies`, one called `CanFly` and one called `CantFly` - - + - add an instance of `Fly` to `Animal` + - then write a method `tryToFly()` that calls `fly()` on the instance we created in the last step + - you can also add `setFlyingAbility()` to `Animal` so you can change the flying type for each animal - this doesn't break old classes and allows us to add multiple types of flying (e.g., can fly, can't fly, can flap, can fly when it reaches a certain age, etc.) ## Explain how interfaces reduce coupling while increasing code reuse. From f0f62befb9726f126b6f52fa33533670310f8885 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 16:58:14 -0500 Subject: [PATCH 026/123] e --- week-three.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/week-three.md b/week-three.md index a7dcb00..336bc2e 100644 --- a/week-three.md +++ b/week-three.md @@ -14,9 +14,10 @@ - use strategy pattern - create an interface `Flies` with `flies()` - create two classes that implement `Flies`, one called `CanFly` and one called `CantFly` - - add an instance of `Fly` to `Animal` - - then write a method `tryToFly()` that calls `fly()` on the instance we created in the last step + - add an instance of `Fly` called `flyingType` to `Animal` + - then write a method `tryToFly()` that calls `flyingType.fly()` - you can also add `setFlyingAbility()` to `Animal` so you can change the flying type for each animal + - all the subclasses of `Animal`, you can now set `flyingType` to an instance of whichever `Flies` subclass is appropriate - this doesn't break old classes and allows us to add multiple types of flying (e.g., can fly, can't fly, can flap, can fly when it reaches a certain age, etc.) ## Explain how interfaces reduce coupling while increasing code reuse. From 646f3da6cbba5a60406880ba0a00577f6a74d00e Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Feb 2022 17:03:53 -0500 Subject: [PATCH 027/123] e --- week-three.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-three.md b/week-three.md index 336bc2e..008f79b 100644 --- a/week-three.md +++ b/week-three.md @@ -21,4 +21,5 @@ - this doesn't break old classes and allows us to add multiple types of flying (e.g., can fly, can't fly, can flap, can fly when it reaches a certain age, etc.) ## Explain how interfaces reduce coupling while increasing code reuse. - +- interfaces reduce coupling and code duplication by allowing all classes that implement the same interface to be used by the same methods +- instead of writing a different method for each class, you can write one that takes in arguments of the interface type From b12b75d0a774002bfa617ede706efd51068e0d1d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Tue, 8 Feb 2022 19:34:02 -0500 Subject: [PATCH 028/123] e --- week-three.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/week-three.md b/week-three.md index 008f79b..3c4e50e 100644 --- a/week-three.md +++ b/week-three.md @@ -1,3 +1,8 @@ +## example of interface vs. abstract +- "sortable" would be an interface because it describes the abilities/behaviors that a sortable object must have (e.g., a method called sort()) +- "shape" would probably be an abstract class because shapes are objects in themselves that all share certain methods AND properties (e.g., numberOfSides, calculateArea(), etc.) +- abstract classes can have properties, while interfaces can't + ## Explain what design patterns are and how they are used. - design patterns are "common solutions to common problems" - they're tried-and-true ways to organize classes and behaviors From 0d006b7397ae613896dc6b475c1296c64773ec57 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Tue, 8 Feb 2022 21:31:18 -0500 Subject: [PATCH 029/123] e --- week-three.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/week-three.md b/week-three.md index 3c4e50e..aacefd2 100644 --- a/week-three.md +++ b/week-three.md @@ -1,6 +1,6 @@ ## example of interface vs. abstract -- "sortable" would be an interface because it describes the abilities/behaviors that a sortable object must have (e.g., a method called sort()) -- "shape" would probably be an abstract class because shapes are objects in themselves that all share certain methods AND properties (e.g., numberOfSides, calculateArea(), etc.) +- "sortable" would be an interface because it describes the abilities/behaviors that a sortable object must have (e.g., a method called `sort()`) +- "shape" would probably be an abstract class because shapes are objects in themselves that all share certain methods AND properties (e.g., `numberOfSides`, `calculateArea()`, etc.) - abstract classes can have properties, while interfaces can't ## Explain what design patterns are and how they are used. From 83439b638d5aa2af256e19c0ba8bd7cacbe16cc0 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Tue, 8 Feb 2022 21:35:24 -0500 Subject: [PATCH 030/123] e --- week-four.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 week-four.md diff --git a/week-four.md b/week-four.md new file mode 100644 index 0000000..23bbbee --- /dev/null +++ b/week-four.md @@ -0,0 +1,9 @@ +Read and write text files. +Explain the purpose and use of exception handling for error detection and correction. +Differentiate between checked and unchecked exceptions. +Use the keywords throws, try, throw, catch, and finally to implement exception handling. +Define and use a domain-specific exception hierarchy. +Read and write binary files. +Read and write serialized object files. +Define and explain the Serializable interface +Distinguish between random and sequential access files. From 583101d2306f1093d4a4834ce207fa1bfd2f24ef Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:20:02 -0500 Subject: [PATCH 031/123] e --- week-four.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index 23bbbee..8dcb895 100644 --- a/week-four.md +++ b/week-four.md @@ -1,8 +1,9 @@ -Read and write text files. Explain the purpose and use of exception handling for error detection and correction. Differentiate between checked and unchecked exceptions. Use the keywords throws, try, throw, catch, and finally to implement exception handling. Define and use a domain-specific exception hierarchy. + +Read and write text files. Read and write binary files. Read and write serialized object files. Define and explain the Serializable interface From e5ef9b2d65935d3f81c9d3e0d1068ff81aaf8769 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:23:34 -0500 Subject: [PATCH 032/123] e --- README.md | 3 ++- week-four.md | 13 +++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 3626ee4..b7b00af 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,8 @@ [WEEK ONE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-one.md) - [WEEK TWO](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-two.md) [WEEK THREE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-three.md) + +[WEEK FOUR](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-four.md) diff --git a/week-four.md b/week-four.md index 8dcb895..0c5fe0b 100644 --- a/week-four.md +++ b/week-four.md @@ -1,7 +1,12 @@ -Explain the purpose and use of exception handling for error detection and correction. -Differentiate between checked and unchecked exceptions. -Use the keywords throws, try, throw, catch, and finally to implement exception handling. -Define and use a domain-specific exception hierarchy. +## Explain the purpose and use of exception handling for error detection and correction. +- exception handling is used when the point at which an exception occurs is different from the point at which that error can or could have been corrected +## Differentiate between checked and unchecked exceptions. +- checked exceptions are exceptions that are explicitly thrown in the code +- unchecked exceptions are + +## Use the keywords throws, try, throw, catch, and finally to implement exception handling. + +## Define and use a domain-specific exception hierarchy. Read and write text files. Read and write binary files. From af3c65e76d18344fba504f5a91fbe6fe935f226d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:28:52 -0500 Subject: [PATCH 033/123] e --- week-four.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/week-four.md b/week-four.md index 0c5fe0b..4f75302 100644 --- a/week-four.md +++ b/week-four.md @@ -1,10 +1,26 @@ ## Explain the purpose and use of exception handling for error detection and correction. - exception handling is used when the point at which an exception occurs is different from the point at which that error can or could have been corrected +- uncaught exceptions terminate the program + ## Differentiate between checked and unchecked exceptions. - checked exceptions are exceptions that are explicitly thrown in the code - unchecked exceptions are ## Use the keywords throws, try, throw, catch, and finally to implement exception handling. +- `throw` indicates you've found an error, something that you can't fix +- `try` blocks wrap code that _might_ throw an exception +- you can then `catch` exceptions in the catch block +- a caught exception doesn't terminate the program +``` +try +{ + var result = methodThatMightThrowException(); +} +catch (ExceptionType e) +{ + // handle error here +} +``` ## Define and use a domain-specific exception hierarchy. From 245c0605f6b5135b3e7118a8bc9375825c21dcc4 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:31:44 -0500 Subject: [PATCH 034/123] e --- week-four.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index 4f75302..607d716 100644 --- a/week-four.md +++ b/week-four.md @@ -11,15 +11,25 @@ - `try` blocks wrap code that _might_ throw an exception - you can then `catch` exceptions in the catch block - a caught exception doesn't terminate the program +- you can chain `catch` blocks to catch specific exception types +- the `finally` block always runs, whether an exception was thrown or not ``` try { var result = methodThatMightThrowException(); } -catch (ExceptionType e) +catch (SomeExceptionType e) { // handle error here } +catch (RuntimeException e) +{ + // handle error here +} +finally +{ + // this code will run no matter what +} ``` ## Define and use a domain-specific exception hierarchy. From 9d51269887acedf676c9c73ee7ef9c95d8f75de6 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:32:54 -0500 Subject: [PATCH 035/123] e --- week-four.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index 607d716..462af30 100644 --- a/week-four.md +++ b/week-four.md @@ -4,7 +4,8 @@ ## Differentiate between checked and unchecked exceptions. - checked exceptions are exceptions that are explicitly thrown in the code -- unchecked exceptions are +- unchecked exceptions are exceptions that are due to programmer error + - thr programmer can write code to avoid these exceptions ## Use the keywords throws, try, throw, catch, and finally to implement exception handling. - `throw` indicates you've found an error, something that you can't fix @@ -31,6 +32,7 @@ finally // this code will run no matter what } ``` +- `throws` ## Define and use a domain-specific exception hierarchy. From fdcaa68f9eccce046279bdff00f6ea0045a7de1c Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:33:06 -0500 Subject: [PATCH 036/123] e --- week-four.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/week-four.md b/week-four.md index 462af30..fbd2b9f 100644 --- a/week-four.md +++ b/week-four.md @@ -3,9 +3,9 @@ - uncaught exceptions terminate the program ## Differentiate between checked and unchecked exceptions. -- checked exceptions are exceptions that are explicitly thrown in the code - unchecked exceptions are exceptions that are due to programmer error - - thr programmer can write code to avoid these exceptions + - the programmer can write code to avoid these exceptions +- checked exceptions are exceptions that are explicitly thrown in the code ## Use the keywords throws, try, throw, catch, and finally to implement exception handling. - `throw` indicates you've found an error, something that you can't fix From 9e312b7dfc75f38a1705a64315e4bc1b88f30a1a Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:40:23 -0500 Subject: [PATCH 037/123] e --- week-four.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index fbd2b9f..c438250 100644 --- a/week-four.md +++ b/week-four.md @@ -1,11 +1,19 @@ ## Explain the purpose and use of exception handling for error detection and correction. - exception handling is used when the point at which an exception occurs is different from the point at which that error can or could have been corrected - uncaught exceptions terminate the program +- the place where an exception is thrown is always different than the place it gets caught + - because you can't or don't want to fix the error in the same place where it happened ## Differentiate between checked and unchecked exceptions. -- unchecked exceptions are exceptions that are due to programmer error +- unchecked exceptions are exceptions that happen during runtime + - unchecked exceptions are subclasses of `RuntimeException` + - they happen due to programmer error - the programmer can write code to avoid these exceptions - checked exceptions are exceptions that are explicitly thrown in the code + - checked exceptions are subclasses of `Exception` + - they account for things that happen that are outside of the programmer's control + - all checked exceptions must be caught or delcared to be thrown + - ## Use the keywords throws, try, throw, catch, and finally to implement exception handling. - `throw` indicates you've found an error, something that you can't fix From d630eac6e07604f3f52af5d8c816bcf31a7fd8ae Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:41:46 -0500 Subject: [PATCH 038/123] e --- week-four.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index c438250..a58a650 100644 --- a/week-four.md +++ b/week-four.md @@ -13,7 +13,8 @@ - checked exceptions are subclasses of `Exception` - they account for things that happen that are outside of the programmer's control - all checked exceptions must be caught or delcared to be thrown - - + - `throws` is used to show that a method throws checked exceptions + - `public void someMethod() throws FileNotFoundException, SomeOtherCheckedException` ## Use the keywords throws, try, throw, catch, and finally to implement exception handling. - `throw` indicates you've found an error, something that you can't fix From 8a5981430d8b28ecd4ea797b3b25c66f40d7a582 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:43:26 -0500 Subject: [PATCH 039/123] e --- week-four.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-four.md b/week-four.md index a58a650..06c9f29 100644 --- a/week-four.md +++ b/week-four.md @@ -15,6 +15,7 @@ - all checked exceptions must be caught or delcared to be thrown - `throws` is used to show that a method throws checked exceptions - `public void someMethod() throws FileNotFoundException, SomeOtherCheckedException` + - wherever the function is called, it has to either be in a method that is marked with `throws` or it has to catch the exception/s ## Use the keywords throws, try, throw, catch, and finally to implement exception handling. - `throw` indicates you've found an error, something that you can't fix From 8a1ff4d06e6a44c44888b6ba65c55ca879c9d328 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:45:10 -0500 Subject: [PATCH 040/123] e --- week-four.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index 06c9f29..5636f5e 100644 --- a/week-four.md +++ b/week-four.md @@ -42,9 +42,9 @@ finally // this code will run no matter what } ``` -- `throws` ## Define and use a domain-specific exception hierarchy. +- **???** Read and write text files. Read and write binary files. From 2ed6b7af36fc355c3608ce37ad1fcb7c142448f0 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:46:21 -0500 Subject: [PATCH 041/123] e --- week-four.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index 5636f5e..7d7bc27 100644 --- a/week-four.md +++ b/week-four.md @@ -12,7 +12,7 @@ - checked exceptions are exceptions that are explicitly thrown in the code - checked exceptions are subclasses of `Exception` - they account for things that happen that are outside of the programmer's control - - all checked exceptions must be caught or delcared to be thrown + - all checked exceptions must be caught or declared to be thrown - `throws` is used to show that a method throws checked exceptions - `public void someMethod() throws FileNotFoundException, SomeOtherCheckedException` - wherever the function is called, it has to either be in a method that is marked with `throws` or it has to catch the exception/s From 9865ab23c1356fdf2eb1152414ec17c299839ddb Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 19:55:08 -0500 Subject: [PATCH 042/123] e --- week-four.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/week-four.md b/week-four.md index 7d7bc27..0462e82 100644 --- a/week-four.md +++ b/week-four.md @@ -23,6 +23,9 @@ - you can then `catch` exceptions in the catch block - a caught exception doesn't terminate the program - you can chain `catch` blocks to catch specific exception types + - when chaining, you have to put the catch blocks in order of most to least specific exception types + - e.g., put `IOException` after `FileNotFoundException` because `FileNotFoundException` is a subclass of `IOException` + - if you caught them in the other order, `IOException` first, all `IOExceptions` _and_ `FileNotFoundExceptions` would be caught by the fist block (`IOException`), since `FileNotFoundException` _is an_ `IOException` - the `finally` block always runs, whether an exception was thrown or not ``` try @@ -46,8 +49,12 @@ finally ## Define and use a domain-specific exception hierarchy. - **???** -Read and write text files. -Read and write binary files. -Read and write serialized object files. -Define and explain the Serializable interface -Distinguish between random and sequential access files. +## Read and write text files. +``` + +``` + +## Read and write binary files. +## Read and write serialized object files. +## Define and explain the Serializable interface +## Distinguish between random and sequential access files. From fcab9ee36c22d00694182ffe4e389eb446956184 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 20:03:57 -0500 Subject: [PATCH 043/123] e --- week-four.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/week-four.md b/week-four.md index 0462e82..d474aa9 100644 --- a/week-four.md +++ b/week-four.md @@ -55,6 +55,10 @@ finally ``` ## Read and write binary files. +``` + +``` + ## Read and write serialized object files. ## Define and explain the Serializable interface ## Distinguish between random and sequential access files. From 3a54797f035ffced2421139cbeaf3565d85b3c42 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 20:11:21 -0500 Subject: [PATCH 044/123] e --- week-four.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/week-four.md b/week-four.md index d474aa9..923e415 100644 --- a/week-four.md +++ b/week-four.md @@ -49,12 +49,15 @@ finally ## Define and use a domain-specific exception hierarchy. - **???** -## Read and write text files. +## Read and write binary files. ``` ``` -## Read and write binary files. +## Read and write text files. +- line endings in Unix- vs. Windows-based machines + - Windows machines end lines with `\r\n` + - Unix-based machines end lines with just `\n` ``` ``` From efe7fd99270ae4d518d6f4214ba5abcbcd836cb1 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 9 Feb 2022 21:23:47 -0500 Subject: [PATCH 045/123] e --- week-four.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-four.md b/week-four.md index 923e415..7161308 100644 --- a/week-four.md +++ b/week-four.md @@ -25,7 +25,7 @@ - you can chain `catch` blocks to catch specific exception types - when chaining, you have to put the catch blocks in order of most to least specific exception types - e.g., put `IOException` after `FileNotFoundException` because `FileNotFoundException` is a subclass of `IOException` - - if you caught them in the other order, `IOException` first, all `IOExceptions` _and_ `FileNotFoundExceptions` would be caught by the fist block (`IOException`), since `FileNotFoundException` _is an_ `IOException` + - if you caught them in the other order, `IOException` first, all `IOExceptions` _and_ `FileNotFoundExceptions` would be caught by the first block (`IOException`), since `FileNotFoundException` _is an_ `IOException` - the `finally` block always runs, whether an exception was thrown or not ``` try From 818226e575c15ad5b68e3642d3de52e5ba5d29ed Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 10:45:40 -0500 Subject: [PATCH 046/123] e --- README.md | 2 ++ week-five.md | 0 2 files changed, 2 insertions(+) create mode 100644 week-five.md diff --git a/README.md b/README.md index b7b00af..f6cd5c5 100644 --- a/README.md +++ b/README.md @@ -7,3 +7,5 @@ [WEEK THREE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-three.md) [WEEK FOUR](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-four.md) + +[WEEK FFIVEOUR](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-five.md) diff --git a/week-five.md b/week-five.md new file mode 100644 index 0000000..e69de29 From d3bbb967b4feccbabf25e322308f1188b50afda6 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 10:47:01 -0500 Subject: [PATCH 047/123] e --- week-five.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/week-five.md b/week-five.md index e69de29..0e1d329 100644 --- a/week-five.md +++ b/week-five.md @@ -0,0 +1,14 @@ +## Compare and contrast iterative versus sequential software lifecycle approaches. + + +## Use CRC cards to capture the responsibilities of each class and the relationships between classes. + + +## Use UML class diagrams to illustrate relationships between classes. + + +## Use primitive operation counts and deductive reasoning to determine the efficiency of algorithms. + + +## Given a set of initial conditions, predict how the runtime of an algorithm is affected by increased input size + From cd1c51cc9330ee91fc5b31ad90f0f209ae864854 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 10:55:06 -0500 Subject: [PATCH 048/123] e --- week-five.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/week-five.md b/week-five.md index 0e1d329..5028655 100644 --- a/week-five.md +++ b/week-five.md @@ -1,5 +1,26 @@ ## Compare and contrast iterative versus sequential software lifecycle approaches. - +- steps of SDLC, waterfall style + - requirements analysis: what should the product do? + - design + - what are the business rules? + - user stories are written at this point + - development + - what technologies will it use? + - what software design patterns? + - actual coding! + - testing + - unit testing + - integration testing (how all the modules work together) + - user testing (how long does it take user to complete tasks?) + - regression testing + - white box testing: testing the code while knowing about the code and how it works (unit testing) + - black box testing: testing the code as a user would use it, not knowing about how the code is working + - production + - maintenance + - change requests + - bug reports + - software spends most of its time here +- ## Use CRC cards to capture the responsibilities of each class and the relationships between classes. From abc68c47af7f5183df992759d1d07c8f026fd744 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 11:00:06 -0500 Subject: [PATCH 049/123] e --- week-five.md | 55 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 33 insertions(+), 22 deletions(-) diff --git a/week-five.md b/week-five.md index 5028655..ce1edc1 100644 --- a/week-five.md +++ b/week-five.md @@ -1,26 +1,37 @@ ## Compare and contrast iterative versus sequential software lifecycle approaches. -- steps of SDLC, waterfall style - - requirements analysis: what should the product do? - - design - - what are the business rules? - - user stories are written at this point - - development - - what technologies will it use? - - what software design patterns? - - actual coding! - - testing - - unit testing - - integration testing (how all the modules work together) - - user testing (how long does it take user to complete tasks?) - - regression testing - - white box testing: testing the code while knowing about the code and how it works (unit testing) - - black box testing: testing the code as a user would use it, not knowing about how the code is working - - production - - maintenance - - change requests - - bug reports - - software spends most of its time here -- +- waterfall model of SDLC + - phases + - requirements analysis: what should the product do? + - design + - what are the business rules? + - user stories are written at this point + - development + - what technologies will it use? + - what software design patterns? + - actual coding! + - testing + - unit testing + - integration testing (how all the modules work together) + - user testing (how long does it take user to complete tasks?) + - regression testing + - white box testing: testing the code while knowing about the code and how it works (unit testing) + - black box testing: testing the code as a user would use it, not knowing about how the code is working + - production + - maintenance + - change requests + - bug reports + - software spends most of its time here + - disadvantages + - costly to fix bugs + - slow + - not flexible + - produces software that isn't actually what the user wants +- spiral model + - uses short sprints + - each sprint goes through all the steps of SDLC + - adaptable to change + - build products incrementally + - gets user feedback regularly ## Use CRC cards to capture the responsibilities of each class and the relationships between classes. From 7a69c8d8070b09164dd275888a2f0b87ab2d303e Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 11:01:52 -0500 Subject: [PATCH 050/123] e --- week-five.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/week-five.md b/week-five.md index ce1edc1..75e005f 100644 --- a/week-five.md +++ b/week-five.md @@ -1,5 +1,6 @@ ## Compare and contrast iterative versus sequential software lifecycle approaches. -- waterfall model of SDLC +- steps in SDLC: requirements analysis, development, testing, production, maintanance +- waterfall model - phases - requirements analysis: what should the product do? - design @@ -26,12 +27,16 @@ - slow - not flexible - produces software that isn't actually what the user wants -- spiral model +- spiral (scrum, agile) model - uses short sprints - each sprint goes through all the steps of SDLC - adaptable to change - build products incrementally - gets user feedback regularly + - disadvantages + - complex process + - dificult to estimate + - not easy for project managers ## Use CRC cards to capture the responsibilities of each class and the relationships between classes. From 40ba80db4dba02a93f802cfc8a18364df5d8bf84 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 11:30:10 -0500 Subject: [PATCH 051/123] e --- week-five.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/week-five.md b/week-five.md index 75e005f..54babbd 100644 --- a/week-five.md +++ b/week-five.md @@ -42,7 +42,9 @@ ## Use UML class diagrams to illustrate relationships between classes. - +- identify classes by finiding the nouns in the requirements analysis +- identify methods by finding the verbs +- identify interfaces by looking for adjectives (?) ## Use primitive operation counts and deductive reasoning to determine the efficiency of algorithms. From 681774627778af3545b104d92e0b867b07955709 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 11:30:29 -0500 Subject: [PATCH 052/123] e --- week-five.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/week-five.md b/week-five.md index 54babbd..b5b3da1 100644 --- a/week-five.md +++ b/week-five.md @@ -38,14 +38,14 @@ - dificult to estimate - not easy for project managers -## Use CRC cards to capture the responsibilities of each class and the relationships between classes. - - ## Use UML class diagrams to illustrate relationships between classes. - identify classes by finiding the nouns in the requirements analysis - identify methods by finding the verbs - identify interfaces by looking for adjectives (?) +## Use CRC cards to capture the responsibilities of each class and the relationships between classes. + + ## Use primitive operation counts and deductive reasoning to determine the efficiency of algorithms. From 86c8c28e5514872e030305572a8b58cd9078e2a2 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 12 Feb 2022 12:13:16 -0500 Subject: [PATCH 053/123] e --- week-five.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/week-five.md b/week-five.md index b5b3da1..bee9cce 100644 --- a/week-five.md +++ b/week-five.md @@ -1,5 +1,5 @@ ## Compare and contrast iterative versus sequential software lifecycle approaches. -- steps in SDLC: requirements analysis, development, testing, production, maintanance +- steps in SDLC: requirements analysis, development, testing, production, maintenance - waterfall model - phases - requirements analysis: what should the product do? @@ -35,11 +35,11 @@ - gets user feedback regularly - disadvantages - complex process - - dificult to estimate + - difficult to estimate - not easy for project managers ## Use UML class diagrams to illustrate relationships between classes. -- identify classes by finiding the nouns in the requirements analysis +- identify classes by finding the nouns in the requirements analysis - identify methods by finding the verbs - identify interfaces by looking for adjectives (?) From 07a683816b8f43a828496144a9f2ba773bc63b58 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 10:10:45 -0500 Subject: [PATCH 054/123] e --- week-six.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 week-six.md diff --git a/week-six.md b/week-six.md new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/week-six.md @@ -0,0 +1 @@ + From 8b12e2fb749fafd81b5909f7514ba05e9eef81b9 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 10:11:40 -0500 Subject: [PATCH 055/123] e --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f6cd5c5..d4148bb 100644 --- a/README.md +++ b/README.md @@ -8,4 +8,6 @@ [WEEK FOUR](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-four.md) -[WEEK FFIVEOUR](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-five.md) +[WEEK FIVE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-five.md) + +[WEEK SIX](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-six.md) From 4a552798bd4e5cf3d91d944931588a6cd28a25a9 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 10:36:46 -0500 Subject: [PATCH 056/123] e --- week-six.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/week-six.md b/week-six.md index 8b13789..f434332 100644 --- a/week-six.md +++ b/week-six.md @@ -1 +1,6 @@ - +## generics +- generic types cannot be primitives + - you have to use the wrapper classes Java provides (`Integer` instead of `int`, etc.) + - this is called "boxing", putting a primitieve into a value type + - unboxing is where you convert a value type into a primitive +- From 16d5d8c418a70af5959bee7fd7661cf366b20368 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 11:10:28 -0500 Subject: [PATCH 057/123] e --- week-six.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/week-six.md b/week-six.md index f434332..d5e467d 100644 --- a/week-six.md +++ b/week-six.md @@ -1,6 +1,12 @@ ## generics - generic types cannot be primitives - you have to use the wrapper classes Java provides (`Integer` instead of `int`, etc.) - - this is called "boxing", putting a primitieve into a value type + - this is called "boxing", putting a primitive into a value type - unboxing is where you convert a value type into a primitive -- +- `Collection` + - it's an interface that extends `Iterable` + - various data structures inherit `Collection` + - its generic, so when you instantiate a collection you have to provide a type + - collections don't guarantee order +- `List` + - lists maintain order From 249a0ec7a12550214b58505060cfc5f31be05c34 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 11:29:15 -0500 Subject: [PATCH 058/123] e --- week-six.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/week-six.md b/week-six.md index d5e467d..8835313 100644 --- a/week-six.md +++ b/week-six.md @@ -8,5 +8,7 @@ - various data structures inherit `Collection` - its generic, so when you instantiate a collection you have to provide a type - collections don't guarantee order + - if you want to iterate over a collection, you have to create a class that implements `Iterator` and returns an `Iterator` + - you can then use that iterator object returned from your concrete `Iterator` class to loop over your collections - `List` - lists maintain order From b4833723b5bbcb9fe78fcf0e6f07597449ea9d0f Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 11:30:50 -0500 Subject: [PATCH 059/123] e --- week-six.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/week-six.md b/week-six.md index 8835313..995478d 100644 --- a/week-six.md +++ b/week-six.md @@ -8,7 +8,7 @@ - various data structures inherit `Collection` - its generic, so when you instantiate a collection you have to provide a type - collections don't guarantee order - - if you want to iterate over a collection, you have to create a class that implements `Iterator` and returns an `Iterator` - - you can then use that iterator object returned from your concrete `Iterator` class to loop over your collections + - if you want to iterate over a collection, you have to create a class that implements `Iterator` + - you can then instantiate and use that iterator in your collection class to loop over your collections - `List` - lists maintain order From a25542ef05c879abc1160853835cf748130d459a Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 11:41:47 -0500 Subject: [PATCH 060/123] e --- week-six.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-six.md b/week-six.md index 995478d..5c12d9e 100644 --- a/week-six.md +++ b/week-six.md @@ -8,7 +8,8 @@ - various data structures inherit `Collection` - its generic, so when you instantiate a collection you have to provide a type - collections don't guarantee order - - if you want to iterate over a collection, you have to create a class that implements `Iterator` + - if you want to iterate over a collection, you have to create a class that implements `Iterator` - you can then instantiate and use that iterator in your collection class to loop over your collections + - there should be a method in your colelction class that returns a new `Iterator` / `ConcreteIteratorClassYouMade` - `List` - lists maintain order From 9c5964637fc20606765b2049a60bd44929abb5ab Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 11:44:53 -0500 Subject: [PATCH 061/123] e --- week-six.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/week-six.md b/week-six.md index 5c12d9e..106a23e 100644 --- a/week-six.md +++ b/week-six.md @@ -11,5 +11,7 @@ - if you want to iterate over a collection, you have to create a class that implements `Iterator` - you can then instantiate and use that iterator in your collection class to loop over your collections - there should be a method in your colelction class that returns a new `Iterator` / `ConcreteIteratorClassYouMade` + - if your collection class implements `Iterable` (i.e. it has a method `iterator()` that creates an `Iterator`), then you should be able to use a for-each loop on it + - `for ([whatever your collection type is] i : collection) { }` - `List` - lists maintain order From 8a38019967f2814f49ca6a7088aca6a4e65cb65d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 12:02:05 -0500 Subject: [PATCH 062/123] e --- week-six.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/week-six.md b/week-six.md index 106a23e..21f9133 100644 --- a/week-six.md +++ b/week-six.md @@ -9,9 +9,26 @@ - its generic, so when you instantiate a collection you have to provide a type - collections don't guarantee order - if you want to iterate over a collection, you have to create a class that implements `Iterator` + - _AND_ the collection class must implement `iterator()` that returns an instance of the `Iterator` class + - the requirement for `iterator()` comes from the `Iterable` interface - you can then instantiate and use that iterator in your collection class to loop over your collections - there should be a method in your colelction class that returns a new `Iterator` / `ConcreteIteratorClassYouMade` - if your collection class implements `Iterable` (i.e. it has a method `iterator()` that creates an `Iterator`), then you should be able to use a for-each loop on it - `for ([whatever your collection type is] i : collection) { }` + - the iterator class can have a `remove()` method + ``` + public void remove() { + if (!nextCalled) { + throw new IllegalStateException("No prior call to next"); + } + --index; + data[index] = data[size - 1]; + data[size - 1] = null; + --size; + nextCalled = false; + } + ``` + - `nextCalled` is set to true each time `next()` is called because the element at `index` cannot be removed if it hasn't been iterated over using yet + - you wouldn't know what you're removing if you don't call `next()` first - `List` - lists maintain order From 1f8ec893a865471d973d9e061f25a39ad80b2af3 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 12:02:32 -0500 Subject: [PATCH 063/123] e --- week-six.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/week-six.md b/week-six.md index 21f9133..20dcd64 100644 --- a/week-six.md +++ b/week-six.md @@ -7,7 +7,7 @@ - it's an interface that extends `Iterable` - various data structures inherit `Collection` - its generic, so when you instantiate a collection you have to provide a type - - collections don't guarantee order + - unlike `Lists`, collections don't guarantee order - if you want to iterate over a collection, you have to create a class that implements `Iterator` - _AND_ the collection class must implement `iterator()` that returns an instance of the `Iterator` class - the requirement for `iterator()` comes from the `Iterable` interface @@ -30,5 +30,3 @@ ``` - `nextCalled` is set to true each time `next()` is called because the element at `index` cannot be removed if it hasn't been iterated over using yet - you wouldn't know what you're removing if you don't call `next()` first -- `List` - - lists maintain order From 2b169d4a6356a08f5e086ccb1570bdac91c736e1 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 12:04:42 -0500 Subject: [PATCH 064/123] e --- week-six.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/week-six.md b/week-six.md index 20dcd64..3472744 100644 --- a/week-six.md +++ b/week-six.md @@ -30,3 +30,5 @@ ``` - `nextCalled` is set to true each time `next()` is called because the element at `index` cannot be removed if it hasn't been iterated over using yet - you wouldn't know what you're removing if you don't call `next()` first + - this design, where you have a method (`iterator()`) that returns a new object that can be called on to do a job is the "factory pattern" + - the facotry class is the concrete class that creates/implements `Iterator` From 7cf3195753d74bff0cb2b2f1b2eb8096b797e968 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 12:05:12 -0500 Subject: [PATCH 065/123] e --- week-six.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-six.md b/week-six.md index 3472744..773472c 100644 --- a/week-six.md +++ b/week-six.md @@ -30,5 +30,5 @@ ``` - `nextCalled` is set to true each time `next()` is called because the element at `index` cannot be removed if it hasn't been iterated over using yet - you wouldn't know what you're removing if you don't call `next()` first - - this design, where you have a method (`iterator()`) that returns a new object that can be called on to do a job is the "factory pattern" + - this design, where you have a method (`iterator()`) that returns a new object that can be called on to do a job is the **factory pattern** - the facotry class is the concrete class that creates/implements `Iterator` From 38b07c3f74ba7365d5df1d77de330595fc03f4b8 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 12:20:28 -0500 Subject: [PATCH 066/123] e --- week-six.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/week-six.md b/week-six.md index 773472c..ffee598 100644 --- a/week-six.md +++ b/week-six.md @@ -32,3 +32,12 @@ - you wouldn't know what you're removing if you don't call `next()` first - this design, where you have a method (`iterator()`) that returns a new object that can be called on to do a job is the **factory pattern** - the facotry class is the concrete class that creates/implements `Iterator` + +## type parameters +A type parameter is essentially a variable that holds a reference to a type instead of a value. Generic classes are classes that take in a type parameter and create an instance of the class that uses that type parameter wherever it is used in the generic class definition. Example, you can create an instance of `SomeConcereteCollection` that holds a collection of `Person` like this: `new SomeConcereteCollection()`. + +## bound type parameter +The method `binarySearch()` needs to compare the values in the array `arr` in order to perform the search, so the array that gets passed in must be a type that implements `Comparable`. The bound parameter `T extends Comparable` makes sure of this. + +## type erasure +Type erasure happens when the Java compiler replaces generic types with the concrete types implied by the parts of the code that instantiate the generic classes. By the time the JVM gets to runtime, the bytecode has no reference to generic types. Everything has been given concrete types. From 48ba8c4fda58603c5efb6098b3bdf0fd42cb94df Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 19 Feb 2022 12:21:16 -0500 Subject: [PATCH 067/123] e --- week-six.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/week-six.md b/week-six.md index ffee598..562b010 100644 --- a/week-six.md +++ b/week-six.md @@ -12,7 +12,7 @@ - _AND_ the collection class must implement `iterator()` that returns an instance of the `Iterator` class - the requirement for `iterator()` comes from the `Iterable` interface - you can then instantiate and use that iterator in your collection class to loop over your collections - - there should be a method in your colelction class that returns a new `Iterator` / `ConcreteIteratorClassYouMade` + - there should be a method in your collection class that returns a new `Iterator` / `ConcreteIteratorClassYouMade` - if your collection class implements `Iterable` (i.e. it has a method `iterator()` that creates an `Iterator`), then you should be able to use a for-each loop on it - `for ([whatever your collection type is] i : collection) { }` - the iterator class can have a `remove()` method @@ -31,7 +31,7 @@ - `nextCalled` is set to true each time `next()` is called because the element at `index` cannot be removed if it hasn't been iterated over using yet - you wouldn't know what you're removing if you don't call `next()` first - this design, where you have a method (`iterator()`) that returns a new object that can be called on to do a job is the **factory pattern** - - the facotry class is the concrete class that creates/implements `Iterator` + - the factory class is the concrete class that creates/implements `Iterator` ## type parameters A type parameter is essentially a variable that holds a reference to a type instead of a value. Generic classes are classes that take in a type parameter and create an instance of the class that uses that type parameter wherever it is used in the generic class definition. Example, you can create an instance of `SomeConcereteCollection` that holds a collection of `Person` like this: `new SomeConcereteCollection()`. From b02fbbfc22508b134dd5f04705c279be48eeb8e9 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 28 Feb 2022 04:46:27 -0500 Subject: [PATCH 068/123] e --- week-five.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-five.md b/week-five.md index bee9cce..94b6399 100644 --- a/week-five.md +++ b/week-five.md @@ -1,5 +1,5 @@ ## Compare and contrast iterative versus sequential software lifecycle approaches. -- steps in SDLC: requirements analysis, development, testing, production, maintenance +- steps in SDLC: requirements analysis, design, development, testing, production, maintenance - waterfall model - phases - requirements analysis: what should the product do? From a4344c0ad559ff623072fca55614de31784424eb Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Mar 2022 15:19:01 -0500 Subject: [PATCH 069/123] e --- week-seven.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 week-seven.md diff --git a/week-seven.md b/week-seven.md new file mode 100644 index 0000000..e69de29 From 373b6198c58abd0e984da302193cede7d6886b39 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 5 Mar 2022 15:21:55 -0500 Subject: [PATCH 070/123] e --- week-seven.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/week-seven.md b/week-seven.md index e69de29..b6871e8 100644 --- a/week-seven.md +++ b/week-seven.md @@ -0,0 +1,4 @@ +## List the common operations and properties of all lists as distinct from collections. +## Extend the AbstractCollection implementation into AbstractList and ArrayList implementations and justify design decisions. +## Analyze the ArrayList implementation to determine algorithmic efficiency. +## Use an ArrayList data structure to solve a problem. From 1f7169b9fbdc23582f8387871c658dc7f32e6fa3 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 7 Mar 2022 15:27:51 -0500 Subject: [PATCH 071/123] Update week-seven.md --- week-seven.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/week-seven.md b/week-seven.md index b6871e8..3f27acc 100644 --- a/week-seven.md +++ b/week-seven.md @@ -1,4 +1,18 @@ ## List the common operations and properties of all lists as distinct from collections. +- lists + - ordered + - operations happen at a particular index + - grow/shrink to accommodate add/remove actions +- collections + - unordered + - have size limits + - can be equal to each other even if the order of the elements is different + ## Extend the AbstractCollection implementation into AbstractList and ArrayList implementations and justify design decisions. + + ## Analyze the ArrayList implementation to determine algorithmic efficiency. + + ## Use an ArrayList data structure to solve a problem. + From 987ad2bf6182caaa8437240a56f211e28f45fb26 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 7 Mar 2022 15:37:36 -0500 Subject: [PATCH 072/123] Update week-seven.md --- week-seven.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/week-seven.md b/week-seven.md index 3f27acc..91d8eb2 100644 --- a/week-seven.md +++ b/week-seven.md @@ -3,10 +3,12 @@ - ordered - operations happen at a particular index - grow/shrink to accommodate add/remove actions + - `List` extends `Collection` and `Iterable` - collections - unordered - have size limits - can be equal to each other even if the order of the elements is different + - `Collection` extends `Iterable` ## Extend the AbstractCollection implementation into AbstractList and ArrayList implementations and justify design decisions. From 37f783d6d8a88b327cdb8634b51764eeef70e2fc Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 7 Mar 2022 15:47:52 -0500 Subject: [PATCH 073/123] Update week-seven.md --- week-seven.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/week-seven.md b/week-seven.md index 91d8eb2..d1cfaea 100644 --- a/week-seven.md +++ b/week-seven.md @@ -9,6 +9,10 @@ - have size limits - can be equal to each other even if the order of the elements is different - `Collection` extends `Iterable` +- `ListIterator` + - extends `Iterator` + - adds `hasPrevious()`, `next/previousIndex()`, etc. + - can be initialized at specific indexes ## Extend the AbstractCollection implementation into AbstractList and ArrayList implementations and justify design decisions. From 070a8335f84de8aa45d144aa18d75ec86aa33d05 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Tue, 8 Mar 2022 19:39:34 -0500 Subject: [PATCH 074/123] e --- week-seven.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/week-seven.md b/week-seven.md index d1cfaea..3512cf9 100644 --- a/week-seven.md +++ b/week-seven.md @@ -14,6 +14,12 @@ - adds `hasPrevious()`, `next/previousIndex()`, etc. - can be initialized at specific indexes +## autoboxing +- this is when Java automatically converts primitive types into their `Object`/wrapper types +- example where this would be needed: when adding an `int` to an `ArrayList` +- primitive -> object is "boxing" +- object -> primitive is "unboxing" + ## Extend the AbstractCollection implementation into AbstractList and ArrayList implementations and justify design decisions. From 07747b1b960db5324920b57b953f1ac83dd07816 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Tue, 8 Mar 2022 19:39:59 -0500 Subject: [PATCH 075/123] e --- week-seven.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-seven.md b/week-seven.md index 3512cf9..b292f40 100644 --- a/week-seven.md +++ b/week-seven.md @@ -14,7 +14,7 @@ - adds `hasPrevious()`, `next/previousIndex()`, etc. - can be initialized at specific indexes -## autoboxing +## autoboxing (boxing/unboxing) - this is when Java automatically converts primitive types into their `Object`/wrapper types - example where this would be needed: when adding an `int` to an `ArrayList` - primitive -> object is "boxing" From 1058c0fb56840cd1dbc4d48d04d10b4ee03504b5 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 23 Mar 2022 10:20:27 -0400 Subject: [PATCH 076/123] e --- week-nine.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 week-nine.md diff --git a/week-nine.md b/week-nine.md new file mode 100644 index 0000000..ae32597 --- /dev/null +++ b/week-nine.md @@ -0,0 +1,2 @@ +## decorator pattern + From 1fd8cf7a392cf482bc55359a4880c8e24ea867d7 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 23 Mar 2022 10:20:55 -0400 Subject: [PATCH 077/123] e --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index d4148bb..46ef280 100644 --- a/README.md +++ b/README.md @@ -11,3 +11,7 @@ [WEEK FIVE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-five.md) [WEEK SIX](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-six.md) + +[WEEK SEVEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-seven.md) + +[WEEK NINE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-nine.md) From 33e30b92f5373ea912a5898fde2e6349569eb66d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 23 Mar 2022 10:21:31 -0400 Subject: [PATCH 078/123] e --- README.md | 2 ++ week-eight.md | 0 2 files changed, 2 insertions(+) create mode 100644 week-eight.md diff --git a/README.md b/README.md index 46ef280..bfdb89f 100644 --- a/README.md +++ b/README.md @@ -14,4 +14,6 @@ [WEEK SEVEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-seven.md) +[WEEK EIGHT](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-eight.md) + [WEEK NINE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-nine.md) diff --git a/week-eight.md b/week-eight.md new file mode 100644 index 0000000..e69de29 From b6f6c529a055c47702450808ab00e2436749ae93 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 08:26:19 -0400 Subject: [PATCH 079/123] e --- week-nine.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/week-nine.md b/week-nine.md index ae32597..6051993 100644 --- a/week-nine.md +++ b/week-nine.md @@ -1,2 +1,6 @@ ## decorator pattern - +- a decorator class implements some interface + - it _is a_ [insert interface name here] +- BUT it also _has an_ instance of that interface (well, a concrete subclass of that interface) +- if you create a concrete implementation of this decorator class... + - instances of this concrete class are _immutable_ instances [insert interface name here] From dd91fa4998aec05cabd6aa4d20b677dd57af83ff Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 08:28:08 -0400 Subject: [PATCH 080/123] e --- week-nine.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/week-nine.md b/week-nine.md index 6051993..7eb0785 100644 --- a/week-nine.md +++ b/week-nine.md @@ -2,5 +2,6 @@ - a decorator class implements some interface - it _is a_ [insert interface name here] - BUT it also _has an_ instance of that interface (well, a concrete subclass of that interface) -- if you create a concrete implementation of this decorator class... +- if you create a concrete implementation of this decorator class (i.e. extends the decorator class)... - instances of this concrete class are _immutable_ instances [insert interface name here] + - it makes those isntances readonly From e548a39831c5a68f4f8ad68dfda55ddf9f0f0c0c Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 08:41:15 -0400 Subject: [PATCH 081/123] e --- week-nine.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/week-nine.md b/week-nine.md index 7eb0785..c6edcff 100644 --- a/week-nine.md +++ b/week-nine.md @@ -1,7 +1,9 @@ ## decorator pattern - a decorator class implements some interface - - it _is a_ [insert interface name here] -- BUT it also _has an_ instance of that interface (well, a concrete subclass of that interface) -- if you create a concrete implementation of this decorator class (i.e. extends the decorator class)... - - instances of this concrete class are _immutable_ instances [insert interface name here] - - it makes those isntances readonly + - it _is an_ [insert interface name here] +- BUT it also _has an_ instance of that interface +- "decoratee" is the instance of the interface that the decorator class has +- if you extend the decorator class... + - instances of this concrete class can make the instance in the decorator class _immutable_ + - IF you `@Override` all the methods that modify the decoratee + - this way you can safely make an instance of the concrete decorator that has an imutable [insert interface name here] From 48a3deac9c119efc03b66a91a8df866609d9ea05 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 08:42:31 -0400 Subject: [PATCH 082/123] e --- week-nine.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-nine.md b/week-nine.md index c6edcff..b601524 100644 --- a/week-nine.md +++ b/week-nine.md @@ -7,3 +7,4 @@ - instances of this concrete class can make the instance in the decorator class _immutable_ - IF you `@Override` all the methods that modify the decoratee - this way you can safely make an instance of the concrete decorator that has an imutable [insert interface name here] +- any subclasses the interface requires must also be decorated, both in the decorator class and any concrete classes that extend the decorator From 16ebf40fcc962b4befdc96991b9d3612ff45844d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 08:43:02 -0400 Subject: [PATCH 083/123] e --- week-nine.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-nine.md b/week-nine.md index b601524..dd38fda 100644 --- a/week-nine.md +++ b/week-nine.md @@ -6,5 +6,5 @@ - if you extend the decorator class... - instances of this concrete class can make the instance in the decorator class _immutable_ - IF you `@Override` all the methods that modify the decoratee - - this way you can safely make an instance of the concrete decorator that has an imutable [insert interface name here] + - this way you can safely make an instance of the concrete decorator that has an immutable [insert interface name here] - any subclasses the interface requires must also be decorated, both in the decorator class and any concrete classes that extend the decorator From f34af216fd1a6928bfaaf907cb1b69c3472310ab Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 08:47:24 -0400 Subject: [PATCH 084/123] e --- week-nine.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/week-nine.md b/week-nine.md index dd38fda..48c1375 100644 --- a/week-nine.md +++ b/week-nine.md @@ -8,3 +8,9 @@ - IF you `@Override` all the methods that modify the decoratee - this way you can safely make an instance of the concrete decorator that has an immutable [insert interface name here] - any subclasses the interface requires must also be decorated, both in the decorator class and any concrete classes that extend the decorator + +## decorator example (from Dr. Whittaker) +- `CollectionDecorator` + - +- `UnmodifiableCollection` + - From 3525a3102e11399a5966b5e20a89733003a301b5 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 17:36:53 -0400 Subject: [PATCH 085/123] e --- week-nine.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/week-nine.md b/week-nine.md index 48c1375..cbaeb57 100644 --- a/week-nine.md +++ b/week-nine.md @@ -11,6 +11,13 @@ ## decorator example (from Dr. Whittaker) - `CollectionDecorator` - - + - the decorator class itself + - implements `Collection` + - has an instance of `Collection` + - also has a subclass `IteratorDecorator` that implements `Iterator` and has an instance of `Iterator` - `UnmodifiableCollection` - - + - extends `CollectionDecorator` + - overrides all of its methods + - leaves methods that modify the collection unimplemented (i.e. they throw `Unimplemented` exceptions) + - also has a subclass `UnmodifiableIterator` that extends `IteratorDecorator` + - the iterator methods that modify the collection (`remove`, `add`, etc.) throw `Unimplemented` exceptions From 7f32c7ea987e2caed940d2660f6019d0b673a448 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 24 Mar 2022 17:37:15 -0400 Subject: [PATCH 086/123] e --- week-nine.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-nine.md b/week-nine.md index cbaeb57..3c599d8 100644 --- a/week-nine.md +++ b/week-nine.md @@ -13,7 +13,7 @@ - `CollectionDecorator` - the decorator class itself - implements `Collection` - - has an instance of `Collection` + - has an instance of `Collection` called `decoratee` - also has a subclass `IteratorDecorator` that implements `Iterator` and has an instance of `Iterator` - `UnmodifiableCollection` - extends `CollectionDecorator` From f1783c4f2fa46e4be9efb91cb4bea35a5851244f Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:12:42 -0400 Subject: [PATCH 087/123] e --- README.md | 2 ++ week-ten.md | 0 2 files changed, 2 insertions(+) create mode 100644 week-ten.md diff --git a/README.md b/README.md index bfdb89f..631a11f 100644 --- a/README.md +++ b/README.md @@ -17,3 +17,5 @@ [WEEK EIGHT](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-eight.md) [WEEK NINE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-nine.md) + +[WEEK TEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-ten.md) diff --git a/week-ten.md b/week-ten.md new file mode 100644 index 0000000..e69de29 From be06ee65efd5de812b1b2700de40458107704d5d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:13:02 -0400 Subject: [PATCH 088/123] e --- week-ten.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/week-ten.md b/week-ten.md index e69de29..b351aa5 100644 --- a/week-ten.md +++ b/week-ten.md @@ -0,0 +1,5 @@ +## stacks + + +## infix and postfix + From e82ccef05ececf4c53742da88da35388a807776f Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:17:17 -0400 Subject: [PATCH 089/123] e --- week-ten.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/week-ten.md b/week-ten.md index b351aa5..8e33d62 100644 --- a/week-ten.md +++ b/week-ten.md @@ -2,4 +2,12 @@ ## infix and postfix - +- infix notation + - e.g. 3 + 7 * 2 - 8 / (6 - 2) + - it's easy for humans to perform because we jump back and forth and easily follow order of opperations + - but computers don't have the same top-down view of the problem like we do +- postfix notation + - e.g. 3 7 2 * + 8 6 2 - / - + - this is easy for a computer to calculate + - a computer simply goes through the characters/numbers one at a time + - it doesn't have to have a top-down view of the problem or jump around to figure out the order in which opperations have to be done From e704426a99b0a5b114eaefb213f925bb7eb502ff Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:18:38 -0400 Subject: [PATCH 090/123] e --- week-ten.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/week-ten.md b/week-ten.md index 8e33d62..8618815 100644 --- a/week-ten.md +++ b/week-ten.md @@ -8,6 +8,8 @@ - but computers don't have the same top-down view of the problem like we do - postfix notation - e.g. 3 7 2 * + 8 6 2 - / - + - - this is easy for a computer to calculate - a computer simply goes through the characters/numbers one at a time - it doesn't have to have a top-down view of the problem or jump around to figure out the order in which opperations have to be done + - you can use a stack to evaluate the expressionwith a simple algorithm From 8d642196dd2ec555667f5472d4f29313752c6856 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:21:46 -0400 Subject: [PATCH 091/123] e --- week-ten.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/week-ten.md b/week-ten.md index 8618815..06e5eac 100644 --- a/week-ten.md +++ b/week-ten.md @@ -8,7 +8,13 @@ - but computers don't have the same top-down view of the problem like we do - postfix notation - e.g. 3 7 2 * + 8 6 2 - / - - - + - you loop over the expression, left to right + - you add each element to a stack (3, then 7, then 2, then *) + - when you reach an opperand, you pop the last two numbers off the stack and perform the opperation on them + - pop off 2 and 7 and multiply them + - then you add the result to the stack + - the stack now looks like 3, 14 + - you end up with one number on the stack, the final answer - this is easy for a computer to calculate - a computer simply goes through the characters/numbers one at a time - it doesn't have to have a top-down view of the problem or jump around to figure out the order in which opperations have to be done From 731931633415f57a127eef58327d80bbc4dc67b0 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:26:30 -0400 Subject: [PATCH 092/123] e --- week-ten.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/week-ten.md b/week-ten.md index 06e5eac..22c18a8 100644 --- a/week-ten.md +++ b/week-ten.md @@ -4,18 +4,18 @@ ## infix and postfix - infix notation - e.g. 3 + 7 * 2 - 8 / (6 - 2) - - it's easy for humans to perform because we jump back and forth and easily follow order of opperations + - it's easy for humans to perform because we jump back and forth and easily follow order of operations - but computers don't have the same top-down view of the problem like we do - postfix notation - e.g. 3 7 2 * + 8 6 2 - / - - you loop over the expression, left to right - you add each element to a stack (3, then 7, then 2, then *) - - when you reach an opperand, you pop the last two numbers off the stack and perform the opperation on them + - when you reach an operand, you pop the last two numbers off the stack and perform the operation on them - pop off 2 and 7 and multiply them - then you add the result to the stack - the stack now looks like 3, 14 - you end up with one number on the stack, the final answer - this is easy for a computer to calculate - a computer simply goes through the characters/numbers one at a time - - it doesn't have to have a top-down view of the problem or jump around to figure out the order in which opperations have to be done - - you can use a stack to evaluate the expressionwith a simple algorithm + - it doesn't have to have a top-down view of the problem or jump around to figure out the order in which operations have to be done + - you can use a stack to evaluate the expression with a simple algorithm From 942d39e4e807a2c3f962851817edd1af40206cf6 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:29:24 -0400 Subject: [PATCH 093/123] e --- week-ten.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/week-ten.md b/week-ten.md index 22c18a8..dc8f1c6 100644 --- a/week-ten.md +++ b/week-ten.md @@ -1,5 +1,12 @@ ## stacks - +- stacks are LIFO structures (last in, first out) +- they're an array of elements where you can only add to the end and remove from the end +- examples of real-world stacks include a stack of chairs or plates and PEZ dispensers +- methods that stacks (should) implement + - `bool push(E data)` + - `E pop()` + - `E peek()` + - `bool isEmpty()` ## infix and postfix - infix notation From a0d136335a6be3609da9f7b278d0fb63357a9579 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Sat, 26 Mar 2022 13:30:42 -0400 Subject: [PATCH 094/123] e --- week-ten.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/week-ten.md b/week-ten.md index dc8f1c6..eb50ac9 100644 --- a/week-ten.md +++ b/week-ten.md @@ -3,10 +3,10 @@ - they're an array of elements where you can only add to the end and remove from the end - examples of real-world stacks include a stack of chairs or plates and PEZ dispensers - methods that stacks (should) implement - - `bool push(E data)` - - `E pop()` - - `E peek()` - - `bool isEmpty()` + - `bool push(E data)` adds `data` to the end of the array + - `E pop()` removes and returns the last element in the array + - `E peek()` returns the last element in the array without removing it + - `bool isEmpty()` tells whether the array has any elements in it (obviously) ## infix and postfix - infix notation From bb2e41a271e8995339585d76333475cd75cb5ba3 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:37:22 -0400 Subject: [PATCH 095/123] e --- README.md | 2 ++ week-eleven.md | 0 2 files changed, 2 insertions(+) create mode 100644 week-eleven.md diff --git a/README.md b/README.md index 631a11f..a98b906 100644 --- a/README.md +++ b/README.md @@ -19,3 +19,5 @@ [WEEK NINE](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-nine.md) [WEEK TEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-ten.md) + +[WEEK ELEVEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-eleven.md) diff --git a/week-eleven.md b/week-eleven.md new file mode 100644 index 0000000..e69de29 From 008934368c78013d51c56ec844895630050c9e69 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:37:39 -0400 Subject: [PATCH 096/123] e --- week-eleven.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/week-eleven.md b/week-eleven.md index e69de29..5b5c320 100644 --- a/week-eleven.md +++ b/week-eleven.md @@ -0,0 +1,2 @@ +## queues +- From 75538b403babc0fcecce299a867fc5041a3b486b Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:39:56 -0400 Subject: [PATCH 097/123] e --- week-eleven.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/week-eleven.md b/week-eleven.md index 5b5c320..fffa4d9 100644 --- a/week-eleven.md +++ b/week-eleven.md @@ -1,2 +1,9 @@ ## queues -- +- queues are FIFO structures (first in, first out) +- they're an array of elements where you can only add to the beginning and remove from the end +- examples of real-world queues +- methods that queues (should) implement + - `bool queue(E data)` adds `data` to the begining of the array + - `E enqueue()` removes and returns the last element in the array + - `E peek()` returns the last element in the array without removing it + - `bool isEmpty()` tells whether the array has any elements in it (obviously) From 426ed0258e78908527535e301583e9ef7e4f41f1 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:40:20 -0400 Subject: [PATCH 098/123] e --- week-eleven.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week-eleven.md b/week-eleven.md index fffa4d9..491441d 100644 --- a/week-eleven.md +++ b/week-eleven.md @@ -3,7 +3,7 @@ - they're an array of elements where you can only add to the beginning and remove from the end - examples of real-world queues - methods that queues (should) implement - - `bool queue(E data)` adds `data` to the begining of the array + - `bool queue(E data)` adds `data` to the beginning of the array - `E enqueue()` removes and returns the last element in the array - `E peek()` returns the last element in the array without removing it - `bool isEmpty()` tells whether the array has any elements in it (obviously) From a6166c59ce032abd3bf82e517975cd90bd39c8ba Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:45:11 -0400 Subject: [PATCH 099/123] e --- week-eleven.md | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/week-eleven.md b/week-eleven.md index 491441d..fc1ccce 100644 --- a/week-eleven.md +++ b/week-eleven.md @@ -1,9 +1,15 @@ ## queues - queues are FIFO structures (first in, first out) -- they're an array of elements where you can only add to the beginning and remove from the end -- examples of real-world queues +- they're an array of elements where you can only add to the end and remove from the begining +- examples of real-world queues include people waiting in a checkout line - methods that queues (should) implement - - `bool queue(E data)` adds `data` to the beginning of the array - - `E enqueue()` removes and returns the last element in the array - - `E peek()` returns the last element in the array without removing it + - `bool queue(E data)` adds `data` to the end of the array + - `E enqueue()` removes and returns the first element in the array + - `E peek()` returns the first element in the array without removing it - `bool isEmpty()` tells whether the array has any elements in it (obviously) +- `LinkedLists` are the best structure to use to implement queues + - it's fast to add to the end of them + - and fast to remove from the beginning + - because of the head and tail nodes + - `ArrayLists` are only fast to remove/add to the end (O(1)) + - any opperation at the beginning of an `ArrayList` will be an O(n) opperation From 76d950f076a71d0ee2afcbc5dccde74170f9857b Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:48:04 -0400 Subject: [PATCH 100/123] e --- week-eleven.md | 1 + 1 file changed, 1 insertion(+) diff --git a/week-eleven.md b/week-eleven.md index fc1ccce..cdd2dd0 100644 --- a/week-eleven.md +++ b/week-eleven.md @@ -2,6 +2,7 @@ - queues are FIFO structures (first in, first out) - they're an array of elements where you can only add to the end and remove from the begining - examples of real-world queues include people waiting in a checkout line +- queues are most often used in scheduling algorithms - methods that queues (should) implement - `bool queue(E data)` adds `data` to the end of the array - `E enqueue()` removes and returns the first element in the array From 9d408e1f96838a8ab2bba90cf04f520fa8ddc430 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Wed, 30 Mar 2022 18:04:58 -0400 Subject: [PATCH 101/123] e --- week-eleven.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/week-eleven.md b/week-eleven.md index cdd2dd0..dec92e2 100644 --- a/week-eleven.md +++ b/week-eleven.md @@ -1,8 +1,9 @@ ## queues - queues are FIFO structures (first in, first out) -- they're an array of elements where you can only add to the end and remove from the begining +- they're an array of elements where you can only add to the end and remove from the beginning - examples of real-world queues include people waiting in a checkout line - queues are most often used in scheduling algorithms + - particularly in scheduling algorithms that deal with Poisson-distributed events - methods that queues (should) implement - `bool queue(E data)` adds `data` to the end of the array - `E enqueue()` removes and returns the first element in the array @@ -13,4 +14,4 @@ - and fast to remove from the beginning - because of the head and tail nodes - `ArrayLists` are only fast to remove/add to the end (O(1)) - - any opperation at the beginning of an `ArrayList` will be an O(n) opperation + - any operation at the beginning of an `ArrayList` will be an O(n) operation From 83200be6759fd367ad0e7c4ee2456c55997d1e59 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 14 Apr 2022 16:13:23 -0600 Subject: [PATCH 102/123] e --- README.md | 2 ++ final-exam.md | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 final-exam.md diff --git a/README.md b/README.md index a98b906..e4b2e4c 100644 --- a/README.md +++ b/README.md @@ -21,3 +21,5 @@ [WEEK TEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-ten.md) [WEEK ELEVEN](https://github.com/ruthrootz/java-oop-class-notes/blob/main/week-eleven.md) + +[FINAL EXAM](https://github.com/ruthrootz/java-oop-class-notes/blob/main/final-exam.md) diff --git a/final-exam.md b/final-exam.md new file mode 100644 index 0000000..d366bd9 --- /dev/null +++ b/final-exam.md @@ -0,0 +1,53 @@ +Decorator Pattern coding problem: +1) Desc: Need to create a system to allow for basic seat reservations and decorations for adding wifi. +2) You're given a UML diagram where you'll need to implement a few classes. +3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method +4) You will be given an sample of what your output should look like. +5) you will be given a 'RunMe.java' file with starter code. + + +Go over what the Decorator classes do: +1) Remember to declare your main object, FightSeat +2) then just code up your getters and remember to instantiate the constructor + +For the Classes extending the decorator classes +1) just call the super class (FltSeatDecorator) and do your modifications locally + + +Stacks problem + +1) Desc: The given problem is about balancing parentheses, obv you have to make sure each parentheses has it's open and respective closed parentheses +2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT +3) Using a stack you need to check if a particular string is balanced or not. Return a true or false +4) tips: perhaps a string of opening strings, like {({ +5) have a string of closing strings like })] +6) What you need to do is to iterate through the tokens +7) if the tokens are starting strings then push to the stack +8) if not then see that means it is an ending string so see if that particular string matches the top of the stack +9) work your way through the rest of the tokens +10) return false if any of the above steps don't work. +11) if the stack is empty then you know it's true, so return that +12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() + +Queues problem + +1) Desc - Need to implement a publish/subscribe model (like YouTube, etc) by implementing two classes +2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification +3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll) , getting number of notifications(size), +check if two subscribers are equal +4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. + +Lists problem + +1) Desc: Implement two methods using the List class. +2) You will do the following: reverse a list in place in O(n) time, should not need to create any new lists + merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. Result should be ordered ascending. Links to the applicable Java API + will be available. +3) Need to know the following interfaces: List and ListIterator methods and understand what they do. +3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? +4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list +5) How do you declare a ListIterator obj; + + ListIterator blah - 'somelist'.listIterator(); + Then manipulate blah to do the merge operation. + you're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result From 42cb0b3a624279f8d21d390c8ab599c3990db2c7 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 14 Apr 2022 17:44:32 -0600 Subject: [PATCH 103/123] e --- final-exam.md | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/final-exam.md b/final-exam.md index d366bd9..f090476 100644 --- a/final-exam.md +++ b/final-exam.md @@ -1,21 +1,16 @@ -Decorator Pattern coding problem: +### Decorator Pattern coding problem: 1) Desc: Need to create a system to allow for basic seat reservations and decorations for adding wifi. 2) You're given a UML diagram where you'll need to implement a few classes. 3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method 4) You will be given an sample of what your output should look like. 5) you will be given a 'RunMe.java' file with starter code. - - Go over what the Decorator classes do: 1) Remember to declare your main object, FightSeat 2) then just code up your getters and remember to instantiate the constructor - For the Classes extending the decorator classes 1) just call the super class (FltSeatDecorator) and do your modifications locally - -Stacks problem - +### Stacks problem 1) Desc: The given problem is about balancing parentheses, obv you have to make sure each parentheses has it's open and respective closed parentheses 2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT 3) Using a stack you need to check if a particular string is balanced or not. Return a true or false @@ -29,25 +24,20 @@ Stacks problem 11) if the stack is empty then you know it's true, so return that 12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() -Queues problem - +### Queues problem 1) Desc - Need to implement a publish/subscribe model (like YouTube, etc) by implementing two classes 2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification 3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll) , getting number of notifications(size), check if two subscribers are equal 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. -Lists problem - -1) Desc: Implement two methods using the List class. -2) You will do the following: reverse a list in place in O(n) time, should not need to create any new lists - merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. Result should be ordered ascending. Links to the applicable Java API - will be available. +### Lists problem +1) Desc: Implement two methods using the List class. Links to the applicable Java API will be available. +2) You will do the following: +- Reverse a list in place in O(n) time, should not need to create any new lists. +- Merge two sorted lists in O(n+m) time. same as what was done in the Polynomial HW. result should be ordered ascending. 3) Need to know the following interfaces: List and ListIterator methods and understand what they do. 3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? 4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list -5) How do you declare a ListIterator obj; - - ListIterator blah - 'somelist'.listIterator(); - Then manipulate blah to do the merge operation. - you're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result +5) How do you declare a ListIterator obj? `ListIterator blah = somelist.listIterator();` +6) Then manipulate blah to do the merge operation. You're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result. From e3b4aed0ed05e666f3b72869aaf877404a6448bd Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 14 Apr 2022 17:45:14 -0600 Subject: [PATCH 104/123] e --- final-exam.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/final-exam.md b/final-exam.md index f090476..b5ad818 100644 --- a/final-exam.md +++ b/final-exam.md @@ -1,3 +1,9 @@ +## final exam topics + + + +## final exam coding problems + ### Decorator Pattern coding problem: 1) Desc: Need to create a system to allow for basic seat reservations and decorations for adding wifi. 2) You're given a UML diagram where you'll need to implement a few classes. @@ -6,8 +12,7 @@ 5) you will be given a 'RunMe.java' file with starter code. Go over what the Decorator classes do: 1) Remember to declare your main object, FightSeat -2) then just code up your getters and remember to instantiate the constructor -For the Classes extending the decorator classes +2) then just code up your getters and remember to instantiate the constructor for the Classes extending the decorator classes 1) just call the super class (FltSeatDecorator) and do your modifications locally ### Stacks problem From c4921fda2052a29a30176fdaff3abae147cf1e8c Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 14 Apr 2022 17:48:34 -0600 Subject: [PATCH 105/123] e --- final-exam.md | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/final-exam.md b/final-exam.md index b5ad818..9c9cd09 100644 --- a/final-exam.md +++ b/final-exam.md @@ -1,8 +1,26 @@ -## final exam topics +# final exam topics +## essay questions +- Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. +- Also, there is a bonus question. Hints: know the ‘shunting yard algorithm’, the idea of semaphores, the shortest path algorithm and the structured programming movement. +## short answer questions +1) stack Big(O) +2) Queue principles +3) Adapter design principles +4) Decorator design pattern principle +5) ArrayList principles +6) Lists and Big(O) +7) LinkedList principles +8) Know your interfaces and what they do: iterator, iterable, listIterator, Collection, list -## final exam coding problems +## multiple-choice +1) ArrayList and LikedList efficiencies - efficiencies for removing, adding , etc +2) Choose best collection to apply for a given situations: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, Driving dispatching system like uber + +Basically make sure you know the ins and outs of the following data structures: ArrayList, LinkedList, Queue, or Stack + +## coding problems ### Decorator Pattern coding problem: 1) Desc: Need to create a system to allow for basic seat reservations and decorations for adding wifi. From 08785d4a0667bc00878e75db70a6e6158c285f4d Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 14 Apr 2022 17:54:51 -0600 Subject: [PATCH 106/123] e --- final-exam.md | 8 +++++++- week-ten.md | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/final-exam.md b/final-exam.md index 9c9cd09..885d6e0 100644 --- a/final-exam.md +++ b/final-exam.md @@ -2,7 +2,13 @@ ## essay questions - Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. -- Also, there is a bonus question. Hints: know the ‘shunting yard algorithm’, the idea of semaphores, the shortest path algorithm and the structured programming movement. +- Know... + - the ‘Shunting-yard algorithm’ + - e.g. 3 + 7 * 2 - 8 / (6 - 2) + - e.g. 3 7 2 * + 8 6 2 - / - + - the idea of semaphores + - the shortest path algorithm + - the structured programming movement ## short answer questions 1) stack Big(O) diff --git a/week-ten.md b/week-ten.md index eb50ac9..4b0c41b 100644 --- a/week-ten.md +++ b/week-ten.md @@ -16,7 +16,7 @@ - postfix notation - e.g. 3 7 2 * + 8 6 2 - / - - you loop over the expression, left to right - - you add each element to a stack (3, then 7, then 2, then *) + - you add each element to a stack (3, then 7, then 2) - when you reach an operand, you pop the last two numbers off the stack and perform the operation on them - pop off 2 and 7 and multiply them - then you add the result to the stack From 1295eb2658605cb19d2b8b69914b8a5f9c5b1aad Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Thu, 14 Apr 2022 17:55:13 -0600 Subject: [PATCH 107/123] e --- final-exam.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/final-exam.md b/final-exam.md index 885d6e0..d34aa22 100644 --- a/final-exam.md +++ b/final-exam.md @@ -4,8 +4,8 @@ - Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. - Know... - the ‘Shunting-yard algorithm’ - - e.g. 3 + 7 * 2 - 8 / (6 - 2) - - e.g. 3 7 2 * + 8 6 2 - / - + - infix: 3 + 7 * 2 - 8 / (6 - 2) + - postfix: 3 7 2 * + 8 6 2 - / - - the idea of semaphores - the shortest path algorithm - the structured programming movement From 1646d79c0d0e5c0b79debff9502183d99b6f1e8b Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:13:19 -0600 Subject: [PATCH 108/123] e --- final-exam.md | 1 + 1 file changed, 1 insertion(+) diff --git a/final-exam.md b/final-exam.md index d34aa22..78961f3 100644 --- a/final-exam.md +++ b/final-exam.md @@ -2,6 +2,7 @@ ## essay questions - Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. + - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementatoins of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code usuing these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. - Know... - the ‘Shunting-yard algorithm’ - infix: 3 + 7 * 2 - 8 / (6 - 2) From 3e8cb4c36d8ec7275a2a208ef96bc6cc93da43fa Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:14:11 -0600 Subject: [PATCH 109/123] e --- final-exam.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/final-exam.md b/final-exam.md index 78961f3..c723c85 100644 --- a/final-exam.md +++ b/final-exam.md @@ -2,7 +2,8 @@ ## essay questions - Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. - - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementatoins of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code usuing these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. + - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementatoins of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code usuing these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. Using these out-of-the-box implementations also aids with code-reuse... + - code reuse: - Know... - the ‘Shunting-yard algorithm’ - infix: 3 + 7 * 2 - 8 / (6 - 2) From 80177d0463c35404150c7bd1da4b9bcaf0930e5a Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:18:02 -0600 Subject: [PATCH 110/123] e --- final-exam.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/final-exam.md b/final-exam.md index c723c85..46d4bdc 100644 --- a/final-exam.md +++ b/final-exam.md @@ -3,11 +3,14 @@ ## essay questions - Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementatoins of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code usuing these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. Using these out-of-the-box implementations also aids with code-reuse... - - code reuse: - Know... - the ‘Shunting-yard algorithm’ - infix: 3 + 7 * 2 - 8 / (6 - 2) - postfix: 3 7 2 * + 8 6 2 - / - + - steps + - add each number to the stack, one by one + - when you reach an opperator, pop off the two top numbers, perform the opperation, and add the result back to the stack + - there should be only one number on the stack at the end, and that's the answer to the problem - the idea of semaphores - the shortest path algorithm - the structured programming movement From 5821a43ab31f20423b64f751c01335e7c707f83b Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:21:12 -0600 Subject: [PATCH 111/123] e --- final-exam.md | 1 + 1 file changed, 1 insertion(+) diff --git a/final-exam.md b/final-exam.md index 46d4bdc..0fa4ae2 100644 --- a/final-exam.md +++ b/final-exam.md @@ -14,6 +14,7 @@ - the idea of semaphores - the shortest path algorithm - the structured programming movement + - make code as modular as possible so that it's clear and easy to modify ## short answer questions 1) stack Big(O) From 295347b805d3317474314eebed6a8ab1df4e98e3 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:24:27 -0600 Subject: [PATCH 112/123] e --- final-exam.md | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/final-exam.md b/final-exam.md index 0fa4ae2..f961262 100644 --- a/final-exam.md +++ b/final-exam.md @@ -2,19 +2,20 @@ ## essay questions - Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. - - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementatoins of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code usuing these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. Using these out-of-the-box implementations also aids with code-reuse... + - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementations of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code using these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. Using these out-of-the-box implementations also aids with code-reuse... - Know... - the ‘Shunting-yard algorithm’ - infix: 3 + 7 * 2 - 8 / (6 - 2) - postfix: 3 7 2 * + 8 6 2 - / - - steps - add each number to the stack, one by one - - when you reach an opperator, pop off the two top numbers, perform the opperation, and add the result back to the stack + - when you reach an operator, pop off the two top numbers, perform the operation, and add the result back to the stack - there should be only one number on the stack at the end, and that's the answer to the problem - the idea of semaphores - the shortest path algorithm - the structured programming movement - make code as modular as possible so that it's clear and easy to modify + - elements: control structures, subroutines, blocks ## short answer questions 1) stack Big(O) @@ -27,17 +28,17 @@ 8) Know your interfaces and what they do: iterator, iterable, listIterator, Collection, list ## multiple-choice -1) ArrayList and LikedList efficiencies - efficiencies for removing, adding , etc -2) Choose best collection to apply for a given situations: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, Driving dispatching system like uber +1) ArrayList and LikedList efficiencies - efficiencies for removing, adding , etc. +2) Choose best collection to apply for a given situations: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, driving dispatching system like Uber. -Basically make sure you know the ins and outs of the following data structures: ArrayList, LinkedList, Queue, or Stack +Basically make sure you know the ins and outs of the following data structures: ArrayList, LinkedList, Queue, or Stack. ## coding problems ### Decorator Pattern coding problem: 1) Desc: Need to create a system to allow for basic seat reservations and decorations for adding wifi. 2) You're given a UML diagram where you'll need to implement a few classes. -3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method +3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method. 4) You will be given an sample of what your output should look like. 5) you will be given a 'RunMe.java' file with starter code. Go over what the Decorator classes do: @@ -46,9 +47,9 @@ Go over what the Decorator classes do: 1) just call the super class (FltSeatDecorator) and do your modifications locally ### Stacks problem -1) Desc: The given problem is about balancing parentheses, obv you have to make sure each parentheses has it's open and respective closed parentheses +1) Desc: The given problem is about balancing parentheses, obv you have to make sure each parentheses has it's open and respective closed parentheses. 2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT -3) Using a stack you need to check if a particular string is balanced or not. Return a true or false +3) Using a stack you need to check if a particular string is balanced or not. Return a true or false. 4) tips: perhaps a string of opening strings, like {({ 5) have a string of closing strings like })] 6) What you need to do is to iterate through the tokens @@ -60,10 +61,10 @@ Go over what the Decorator classes do: 12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() ### Queues problem -1) Desc - Need to implement a publish/subscribe model (like YouTube, etc) by implementing two classes -2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification +1) Desc - Need to implement a publish/subscribe model (like YouTube, etc) by implementing two classes . +2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. 3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll) , getting number of notifications(size), -check if two subscribers are equal +check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. ### Lists problem @@ -73,6 +74,6 @@ check if two subscribers are equal - Merge two sorted lists in O(n+m) time. same as what was done in the Polynomial HW. result should be ordered ascending. 3) Need to know the following interfaces: List and ListIterator methods and understand what they do. 3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? -4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list +4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. 5) How do you declare a ListIterator obj? `ListIterator blah = somelist.listIterator();` 6) Then manipulate blah to do the merge operation. You're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result. From c8ef7a71090ea807a232fd15a1edfa277ab59628 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:27:55 -0600 Subject: [PATCH 113/123] e --- final-exam.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/final-exam.md b/final-exam.md index f961262..dcdbd65 100644 --- a/final-exam.md +++ b/final-exam.md @@ -29,17 +29,17 @@ ## multiple-choice 1) ArrayList and LikedList efficiencies - efficiencies for removing, adding , etc. -2) Choose best collection to apply for a given situations: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, driving dispatching system like Uber. +2) Choose best collection to apply to a given situation: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, driving dispatching system like Uber. Basically make sure you know the ins and outs of the following data structures: ArrayList, LinkedList, Queue, or Stack. ## coding problems ### Decorator Pattern coding problem: -1) Desc: Need to create a system to allow for basic seat reservations and decorations for adding wifi. +1) description: Need to create a system to allow for basic seat reservations and decorations for adding wifi. 2) You're given a UML diagram where you'll need to implement a few classes. 3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method. -4) You will be given an sample of what your output should look like. +4) You will be given a sample of what your output should look like. 5) you will be given a 'RunMe.java' file with starter code. Go over what the Decorator classes do: 1) Remember to declare your main object, FightSeat @@ -47,7 +47,7 @@ Go over what the Decorator classes do: 1) just call the super class (FltSeatDecorator) and do your modifications locally ### Stacks problem -1) Desc: The given problem is about balancing parentheses, obv you have to make sure each parentheses has it's open and respective closed parentheses. +1) description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. 2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT 3) Using a stack you need to check if a particular string is balanced or not. Return a true or false. 4) tips: perhaps a string of opening strings, like {({ @@ -61,17 +61,17 @@ Go over what the Decorator classes do: 12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() ### Queues problem -1) Desc - Need to implement a publish/subscribe model (like YouTube, etc) by implementing two classes . +1) description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes . 2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. -3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll) , getting number of notifications(size), +3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll), getting number of notifications(size), check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. ### Lists problem -1) Desc: Implement two methods using the List class. Links to the applicable Java API will be available. +1) description: Implement two methods using the List class. Links to the applicable Java API will be available. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. -- Merge two sorted lists in O(n+m) time. same as what was done in the Polynomial HW. result should be ordered ascending. +- Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. result should be ordered ascending. 3) Need to know the following interfaces: List and ListIterator methods and understand what they do. 3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? 4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. From 102760872723e10d48bdfa04705c7b8557a7316a Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:36:19 -0600 Subject: [PATCH 114/123] e --- complexity.png | Bin 0 -> 403895 bytes final-exam.md | 16 ++++++++-------- 2 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 complexity.png diff --git a/complexity.png b/complexity.png new file mode 100644 index 0000000000000000000000000000000000000000..af6529010b750778e29bdf0c0658b04533d658cd GIT binary patch literal 403895 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%0DyI^R1jO~aS+ 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�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 a^!(+hJP`)~ literal 0 HcmV?d00001 diff --git a/final-exam.md b/final-exam.md index dcdbd65..d36a04e 100644 --- a/final-exam.md +++ b/final-exam.md @@ -18,14 +18,14 @@ - elements: control structures, subroutines, blocks ## short answer questions -1) stack Big(O) -2) Queue principles -3) Adapter design principles -4) Decorator design pattern principle -5) ArrayList principles -6) Lists and Big(O) -7) LinkedList principles -8) Know your interfaces and what they do: iterator, iterable, listIterator, Collection, list +1) Queue principles +2) Adapter design principles +3) Decorator design pattern principle +4) ArrayList principles +5) LinkedList principles +6) Know your interfaces and what they do: iterator, iterable, listIterator, Collection, list +7) Time complexity for Array, List, Stack, Queue +![time complexity](complexity.png) ## multiple-choice 1) ArrayList and LikedList efficiencies - efficiencies for removing, adding , etc. From 7a88abdb1952cc097d04b8520e41d3f8ed0ed58a Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:37:59 -0600 Subject: [PATCH 115/123] e --- final-exam.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/final-exam.md b/final-exam.md index d36a04e..7d13387 100644 --- a/final-exam.md +++ b/final-exam.md @@ -28,7 +28,7 @@ ![time complexity](complexity.png) ## multiple-choice -1) ArrayList and LikedList efficiencies - efficiencies for removing, adding , etc. +1) ArrayList and LikedList efficiencies - efficiencies for removing, adding, etc. 2) Choose best collection to apply to a given situation: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, driving dispatching system like Uber. Basically make sure you know the ins and outs of the following data structures: ArrayList, LinkedList, Queue, or Stack. From 00fbe31487e31be2b896025355d065ca78472c79 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:45:03 -0600 Subject: [PATCH 116/123] e --- final-exam.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/final-exam.md b/final-exam.md index 7d13387..594659a 100644 --- a/final-exam.md +++ b/final-exam.md @@ -35,16 +35,16 @@ Basically make sure you know the ins and outs of the following data structures: ## coding problems -### Decorator Pattern coding problem: +### Decorator Pattern problem 1) description: Need to create a system to allow for basic seat reservations and decorations for adding wifi. 2) You're given a UML diagram where you'll need to implement a few classes. 3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method. 4) You will be given a sample of what your output should look like. -5) you will be given a 'RunMe.java' file with starter code. +5) You will be given a 'RunMe.java' file with starter code. Go over what the Decorator classes do: -1) Remember to declare your main object, FightSeat -2) then just code up your getters and remember to instantiate the constructor for the Classes extending the decorator classes -1) just call the super class (FltSeatDecorator) and do your modifications locally +1) Remember to declare your main object, FightSeat. +2) Then just code up your getters and remember to instantiate the constructor for the classes extending the decorator classes. +3) Call the super class (FlightSeatDecorator) and do your modifications locally. ### Stacks problem 1) description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. From 779d1ab898cc27a6379408565d49a51561da4a3f Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:46:33 -0600 Subject: [PATCH 117/123] e --- final-exam.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/final-exam.md b/final-exam.md index 594659a..4524962 100644 --- a/final-exam.md +++ b/final-exam.md @@ -36,8 +36,8 @@ Basically make sure you know the ins and outs of the following data structures: ## coding problems ### Decorator Pattern problem -1) description: Need to create a system to allow for basic seat reservations and decorations for adding wifi. -2) You're given a UML diagram where you'll need to implement a few classes. +1) Description: Need to create a system to allow for basic seat reservations and decorations for adding wifi. +2) You're given a UML diagram where you'll need to implement a few classes. 3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method. 4) You will be given a sample of what your output should look like. 5) You will be given a 'RunMe.java' file with starter code. @@ -47,28 +47,28 @@ Go over what the Decorator classes do: 3) Call the super class (FlightSeatDecorator) and do your modifications locally. ### Stacks problem -1) description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. -2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT +1) Description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. +2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT. 3) Using a stack you need to check if a particular string is balanced or not. Return a true or false. -4) tips: perhaps a string of opening strings, like {({ -5) have a string of closing strings like })] -6) What you need to do is to iterate through the tokens -7) if the tokens are starting strings then push to the stack -8) if not then see that means it is an ending string so see if that particular string matches the top of the stack -9) work your way through the rest of the tokens -10) return false if any of the above steps don't work. -11) if the stack is empty then you know it's true, so return that +4) Tips: perhaps a string of opening strings, like {({. +5) Have a string of closing strings like })]. +6) What you need to do is to iterate through the tokens. +7) If the tokens are starting strings then push to the stack. +8) If not then see that means it is an ending string so see if that particular string matches the top of the stack. +9) Work your way through the rest of the tokens. +10) Return false if any of the above steps don't work. +11) If the stack is empty then you know it's true, so return that. 12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() ### Queues problem -1) description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes . +1) Description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes . 2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. 3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll), getting number of notifications(size), check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. ### Lists problem -1) description: Implement two methods using the List class. Links to the applicable Java API will be available. +1) Description: Implement two methods using the List class. Links to the applicable Java API will be available. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. - Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. result should be ordered ascending. From 036a21758b7ed07b16aea38082c72c08e70e7fcd Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:48:48 -0600 Subject: [PATCH 118/123] e --- final-exam.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/final-exam.md b/final-exam.md index 4524962..5b185a8 100644 --- a/final-exam.md +++ b/final-exam.md @@ -48,8 +48,8 @@ Go over what the Decorator classes do: ### Stacks problem 1) Description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. -2) Example: "[{}], {}, ([{}])" are balanced, [{}, {, ({) are NOT. -3) Using a stack you need to check if a particular string is balanced or not. Return a true or false. +2) Example: [{}], {}, ([{}]) are balanced, [{}, {, ({) are NOT. +3) Using a stack you need to check if a particular string is balanced or not. Return a true or false. 4) Tips: perhaps a string of opening strings, like {({. 5) Have a string of closing strings like })]. 6) What you need to do is to iterate through the tokens. @@ -61,8 +61,8 @@ Go over what the Decorator classes do: 12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() ### Queues problem -1) Description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes . -2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. +1) Description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes. +2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. 3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll), getting number of notifications(size), check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. @@ -72,8 +72,8 @@ check if two subscribers are equal. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. - Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. result should be ordered ascending. -3) Need to know the following interfaces: List and ListIterator methods and understand what they do. +3) Need to know the following interfaces: List and ListIterator methods and understand what they do. 3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? -4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. +4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. 5) How do you declare a ListIterator obj? `ListIterator blah = somelist.listIterator();` 6) Then manipulate blah to do the merge operation. You're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result. From 6ef3a91490043849d85f4ddeebfa85ff3ec3bd66 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:50:00 -0600 Subject: [PATCH 119/123] e --- final-exam.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/final-exam.md b/final-exam.md index 5b185a8..179398c 100644 --- a/final-exam.md +++ b/final-exam.md @@ -58,17 +58,17 @@ Go over what the Decorator classes do: 9) Work your way through the rest of the tokens. 10) Return false if any of the above steps don't work. 11) If the stack is empty then you know it's true, so return that. -12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop() +12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop(). ### Queues problem 1) Description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes. 2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. -3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll), getting number of notifications(size), +3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll), getting number of notifications (size), check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. ### Lists problem -1) Description: Implement two methods using the List class. Links to the applicable Java API will be available. +1) Description: Implement two methods using the List class. Links to the applicable Java API docs will be available. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. - Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. result should be ordered ascending. From 6dcf56cbafed93a6018f41fb84f7bf0d4cd85215 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:53:05 -0600 Subject: [PATCH 120/123] e --- final-exam.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/final-exam.md b/final-exam.md index 179398c..bcf819c 100644 --- a/final-exam.md +++ b/final-exam.md @@ -18,20 +18,20 @@ - elements: control structures, subroutines, blocks ## short answer questions -1) Queue principles +1) `Queue` principles 2) Adapter design principles 3) Decorator design pattern principle -4) ArrayList principles -5) LinkedList principles -6) Know your interfaces and what they do: iterator, iterable, listIterator, Collection, list -7) Time complexity for Array, List, Stack, Queue +4) `ArrayList` principles +5) `LinkedList` principles +6) Know your interfaces and what they do: `Iterator`, `Iterable`, `ListIterator`, `Collection`, `List`. +7) Time complexity for `Array`, `List`, `Stack`, `Queue` ![time complexity](complexity.png) ## multiple-choice 1) ArrayList and LikedList efficiencies - efficiencies for removing, adding, etc. 2) Choose best collection to apply to a given situation: storing payroll calculations, program to track progress in a maze, keeping track of customers in alphabetical order, driving dispatching system like Uber. -Basically make sure you know the ins and outs of the following data structures: ArrayList, LinkedList, Queue, or Stack. +Basically make sure you know the ins and outs of the following data structures: `ArrayList`, `LinkedList`, `Queue`, or `Stack`. ## coding problems @@ -40,7 +40,7 @@ Basically make sure you know the ins and outs of the following data structures: 2) You're given a UML diagram where you'll need to implement a few classes. 3) What you need to do is to look at the UML diagram and simply implement the methods using the decorator method. 4) You will be given a sample of what your output should look like. -5) You will be given a 'RunMe.java' file with starter code. +5) You will be given a `RunMe.java` file with starter code. Go over what the Decorator classes do: 1) Remember to declare your main object, FightSeat. 2) Then just code up your getters and remember to instantiate the constructor for the classes extending the decorator classes. @@ -49,7 +49,7 @@ Go over what the Decorator classes do: ### Stacks problem 1) Description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. 2) Example: [{}], {}, ([{}]) are balanced, [{}, {, ({) are NOT. -3) Using a stack you need to check if a particular string is balanced or not. Return a true or false. +3) Using a stack you need to check if a particular string is balanced or not. Return a `true` or `false`. 4) Tips: perhaps a string of opening strings, like {({. 5) Have a string of closing strings like })]. 6) What you need to do is to iterate through the tokens. @@ -58,12 +58,12 @@ Go over what the Decorator classes do: 9) Work your way through the rest of the tokens. 10) Return false if any of the above steps don't work. 11) If the stack is empty then you know it's true, so return that. -12) Conclusion: know how stacks work and know your stacks methods: empty(), push(), pop(). +12) Conclusion: know how stacks work and know your stacks methods: `empty()`, `push()`, `pop()`. ### Queues problem 1) Description: Need to implement a publish/subscribe model (like YouTube, etc.) by implementing two classes. 2) Will be given a UML diagram for the methods and variable for each class you need to implement. There are links to APIs you may need embedded in the specification. -3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (poll), getting number of notifications (size), +3) You will be given a Queue object of a particular class will need to do such things as reading and removing oldest notifications (`poll()`), getting number of notifications (`size()`), check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. @@ -71,9 +71,9 @@ check if two subscribers are equal. 1) Description: Implement two methods using the List class. Links to the applicable Java API docs will be available. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. -- Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. result should be ordered ascending. -3) Need to know the following interfaces: List and ListIterator methods and understand what they do. -3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? -4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. -5) How do you declare a ListIterator obj? `ListIterator blah = somelist.listIterator();` +- Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. Result should be ordered ascending. +3) Need to know the following interfaces: `List` and `ListIterator` methods and understand what they do. +3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? +4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. +5) How do you declare a `ListIterator` obj? `ListIterator blah = somelist.listIterator();` 6) Then manipulate blah to do the merge operation. You're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result. From a8d7d3e3722ddf02bd07fd68861fec759f01bce8 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:54:37 -0600 Subject: [PATCH 121/123] e --- final-exam.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/final-exam.md b/final-exam.md index bcf819c..bce4b06 100644 --- a/final-exam.md +++ b/final-exam.md @@ -71,9 +71,9 @@ check if two subscribers are equal. 1) Description: Implement two methods using the List class. Links to the applicable Java API docs will be available. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. -- Merge two sorted lists in O(n+m) time. Same as what was done in the Polynomial HW. Result should be ordered ascending. +- Merge two sorted lists in O(n+m) time. Same as what was done in the polynomial homework. Result should be ordered ascending. 3) Need to know the following interfaces: `List` and `ListIterator` methods and understand what they do. -3) So how do you reverse a list? Possibly have two list iterators from List class and iterate between both lists with one list starting from the end? +3) So how do you reverse a list? Possibly have two list iterators from `List` class and iterate between both lists with one iterator starting from the end? 4) How do you merge a list? May need to do some comparisons. Again call list iterator from each list. 5) How do you declare a `ListIterator` obj? `ListIterator blah = somelist.listIterator();` 6) Then manipulate blah to do the merge operation. You're comparing each letter in each list to see if one comes before the other in alphabet and take that one and add to result. From bd2f6b57b73d363abe51be5f2e09a7c33ff91c7e Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Fri, 15 Apr 2022 16:55:36 -0600 Subject: [PATCH 122/123] e --- final-exam.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/final-exam.md b/final-exam.md index bce4b06..e66728b 100644 --- a/final-exam.md +++ b/final-exam.md @@ -1,7 +1,7 @@ # final exam topics ## essay questions -- Value of implementing Data Structures and Code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. +- Value of implementing data structures and code reuse. These questions are sort of ‘in your opinion’ questions and what I would be looking for is to use your knowledge of those topics and provide to me a response of a particular question. No coding required for those two questions. - data structures: These are tried-and-true structures that are implemented in the most efficient way that has been discovered so far! Almost all big modern languages already have implementations of these structures. Most programmers know how to use them, so using them increases code clarity when someone reads the code using these structures. Some problems are uniquely suited to these structures as well. Scheduling tasks, for example, works just like a queue does, making it a perfect problem to use queues for. Using these out-of-the-box implementations also aids with code-reuse... - Know... - the ‘Shunting-yard algorithm’ @@ -24,7 +24,7 @@ 4) `ArrayList` principles 5) `LinkedList` principles 6) Know your interfaces and what they do: `Iterator`, `Iterable`, `ListIterator`, `Collection`, `List`. -7) Time complexity for `Array`, `List`, `Stack`, `Queue` +7) Know time complexity for `Array`, `List`, `Stack`, `Queue`. ![time complexity](complexity.png) ## multiple-choice From 3254a043e18e95dda6f07824c1a799772e6ccb88 Mon Sep 17 00:00:00 2001 From: Ruth Oldja <48135255+ruthrootz@users.noreply.github.com> Date: Mon, 10 Oct 2022 13:17:41 -0400 Subject: [PATCH 123/123] Update final-exam.md --- final-exam.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/final-exam.md b/final-exam.md index e66728b..fc5b1e5 100644 --- a/final-exam.md +++ b/final-exam.md @@ -42,9 +42,9 @@ Basically make sure you know the ins and outs of the following data structures: 4) You will be given a sample of what your output should look like. 5) You will be given a `RunMe.java` file with starter code. Go over what the Decorator classes do: -1) Remember to declare your main object, FightSeat. +1) Remember to declare your main object, `FlightSeat`. 2) Then just code up your getters and remember to instantiate the constructor for the classes extending the decorator classes. -3) Call the super class (FlightSeatDecorator) and do your modifications locally. +3) Call the super class (`FlightSeatDecorator`) and do your modifications locally. ### Stacks problem 1) Description: The given problem is about balancing parentheses, obviously you have to make sure each parentheses has its open and respective closed parentheses. @@ -68,7 +68,7 @@ check if two subscribers are equal. 4) Conclusion: pretty simple problem, know how to use poll and size methods of queue. ### Lists problem -1) Description: Implement two methods using the List class. Links to the applicable Java API docs will be available. +1) Description: Implement two methods using the `List` class. Links to the applicable Java API docs will be available. 2) You will do the following: - Reverse a list in place in O(n) time, should not need to create any new lists. - Merge two sorted lists in O(n+m) time. Same as what was done in the polynomial homework. Result should be ordered ascending.