https://github.com/1chooo/object-oriented-analysis-and-design-writeups
โ๐ป NCU-SE6029-2024-Spring-Object-Oriented Analysis and Design (OOAD) Notes
https://github.com/1chooo/object-oriented-analysis-and-design-writeups
cpp java mob-programming object-oriented-programming
Last synced: about 1 year ago
JSON representation
โ๐ป NCU-SE6029-2024-Spring-Object-Oriented Analysis and Design (OOAD) Notes
- Host: GitHub
- URL: https://github.com/1chooo/object-oriented-analysis-and-design-writeups
- Owner: 1chooo
- License: mit
- Created: 2024-02-24T11:34:42.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-22T17:58:24.000Z (almost 2 years ago)
- Last Synced: 2024-05-22T18:59:41.817Z (almost 2 years ago)
- Topics: cpp, java, mob-programming, object-oriented-programming
- Language: Java
- Homepage:
- Size: 6.23 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Object Oriented Analysis and Design Writeups
> 2024-Spring-OOAD
>
> *NO OFFENSE MEANS I AM ABOUT TO INSULT YOU, BUT DONT GET MAD*
## [`C++` Project Templates Structure](./templates/)
```
PROJECT_ROOT
โโโ bin/
โ โโโ main.out
โโโ include/
โ โโโ *.h
โโโ src/
โ โโโ *.cpp
โโโ test/
โ โโโ :
โโโ build.sh
```
### How to **compile and execute** the `MAIN PROGRAM` with this templates?
```sh
g++ -Iinclude -o src/*.cpp -o bin/main.out && ./bin/main.out
```
## Genuine Understanding V.S. Superficial Knowledge.
```cpp
class EmployeeCensus: public ListContainer {
public:
...
// public routines
void AddEmployee ( Employee employee );
void RemoveEmployee ( Employee employee );
Employee NextItemInList();
Employee FirstItem;
Employee LastItem;
...
private:
...
}
```
- ๆ็ฌ้ก็ฎ (ไพๅฆ๏ผๅ 10 ๅๆถ็ญ่
ๆๅ)
- ๅ่ฉ่งฃ้ (ๅ 30% ๆปฟๅ๏ผไธญ้ 30% 60 ๅ๏ผๅฐพๅทด 40% 30 ๅ)
- ๅด้ๆ่้ก (ๅฐๆฏ่ผ้่ฆ๏ผไธๆถ็ญ๏ผ็ตฆไฝ ๆปฟๆปฟ็ๆ้)
> [!WARNING]
> ๅ๏ผไฝ ๆ่ฅฒๅฐฑ 0 ๅ๏ผไฝ ็ตฆๅฅไบบๆ่ฅฒไฝ ๅฐฑ่ฎๆ 50% ๅๆธ
ๆฏไธ้กๅ
ฌๅไนๅๆๅ็ฅๅชไธ็จฎ้กๅ
## Materials
- [Software Engineering Basics](./materials/00-software-engineering-basics/)
- [Classes and Object](./materials/01-classes-and-object/)
- [Pointer, Reference](./materials/01-5-pointer-reference/)
- [Inheritance](./materials/02_inheritance/)
- [Why You Should Not Abuse Inheritance Over Composition](./materials/02-6-why-you-should-not-abuse-inheritance-over-composition/)
- [Polymorphism](./materials/03-polymorphism/)
- [Multiple Inheritance](./materials/04-multiple-inheritance/)
## Collaboration Guidelines
### Forking this Repository:
Fork the [`object-oriented-analysis-and-design-writeups`](https://github.com/1chooo/object-oriented-analysis-and-design-writeups) repository into your own workspace.
### Cloning the Repository to Your Workspace:
```shell
$ git clone git@github.com:/object-oriented-analysis-and-design-writeups.git
```
### Setting Upstream Remote:
```shell
$ git remote add upstream git@github.com:1chooo/object-oriented-analysis-and-design-writeups.git
$ git remote -v
origin git@github.com:/object-oriented-analysis-and-design-writeups.git (fetch)
origin git@github.com:/object-oriented-analysis-and-design-writeups.git (push)
upstream git@github.com:1chooo/object-oriented-analysis-and-design-writeups.git (fetch)
upstream git@github.com:1chooo/object-oriented-analysis-and-design-writeups.git (push)
```
### Pull Requests:
If you have any valuable ideas to contribute, please create a pull request and provide details about the outstanding work you've done.
### Issue Reporting:
If you encounter any problems while contributing to this project, please report the issues in the [object-oriented-analysis-and-design-writeups/issues](https://github.com/1chooo/object-oriented-analysis-and-design-writeups/issues) section.
### Important Notes:
> [!IMPORTANT]
> #### Make sure to synchronize and update your repository before initiating a pull request:
> 1. Run `git stash save` to temporarily stash your local changes.
> 2. Run `git fetch upstream` to sync the source project with your local copy.
> 3. Run `git checkout main` to switch to the main branch.
> 4. Run `git merge upstream/main` to merge the updated remote version into your local copy. If there are no conflicts, the update process is complete.
> 5. Run `git stash pop` to apply your temporarily stashed changes back to your working directory. Resolve any conflicts if necessary.
## CONTACT INFO.
> eCloudValley Cloud Developer Intern
> **Hugo ChunHo Lin**
>
>
> ๐ฉ E-mail: hugo970217@gmail.com
>
> ๐งณ Linkedin: Hugo ChunHo Lin
>
> ๐จ๐ปโ๐ป GitHub: 1chooo
>
>
## License
Released under [MIT](./LICENSE) by [Hugo ChunHo Lin](https://github.com/1chooo).
This software can be modified and reused without restriction.
The original license must be included with any copies of this software.
If a significant portion of the source code is used, please provide a link back to this repository.