updated (2022.12.06): my notes on OOP
[1] Intro to Object-oriented programming - classes, objects, constructors, keywords[2] Intro to Object-oriented programming - All about the “static” keyword[3] Intro to Object-oriented programming - 4 Basic Principles of OOP[4] Intro to Object-oriented programming - Access control and about the Object class[5] Intro to Object-oriented programming - Abstract classes and Interfaces in Javagoing back to basics
Get the fundamentals down and the level of everything you do will rise - Michael Jordan
It’s been 2 years since I took Algorithm Analysis course (final grade: A+), 3 years since I took the Data Structures course (final grade: B+) and 4 years since the Object Oriented Programming course (final grade: A0).
Not that I’ve completely forgotten how to apply the concepts I learned as a CS major - but honestly when working in the industry, I find myself googling simple concepts that I should have memorized? before
I understand that there’s a reason why software companies and university courses require you to have a strong technical understanding of data structures, algorithms and OOP because it helps you immensely when tackling a problem.
the
actual
reason why
As someone who aspires to
- be a
greatabove-average full-stack developer (so that includes back-end in addition to my current skill-set)
- apply for MEng in Computer Science courses at top US universities (courses which are industry-oriented rather than research-oriented)
I should be familiar with the topics which are considered prerequisites:
Cornell MEng in CS prerequisites
UC Berkeley MEng in CS prerequisites:
(technically, I have finished the prerequisites in university but I feel the need to strengthen the fundamentals further which will hopefully make me a better problem-solver 😁)
my study plan
I have designed a course for myself to revise the important courses I took years ago, and re-activate the logical reasoning part of my brain 😂
All the resources listed below are free, available on YouTube.
With each video lecture, I will be posting my notes on the topic on this blog - stay tuned for that! The code will be provided in GitHub repos and I’ll be mainly using JAVA for coding.
Object-oriented programming:
Following is the playlist I’ll be using:
Language used: JAVA or C++
Data structures
Language used: JAVA and Python and maybe even TypeScript
Algorithm analysis
This playlist helped me SO MUCH when I had trouble understanding the concepts taught in class (yonsei’s online lectures make me sleepy 😆🤡)
ISTG this professor is one of the best on YouTube
Language used: JAVA or Python
my expectations
- strengthening my technical background further,
- practicing having a clear language to convey or express logical ideas,
- preparing myself to be successful in a MEng in CS course
- future employment at big tech followed by becoming a founding member of a startup (either in Korea or the US)