CS 102 • Midterm • Object-Oriented Programming
“Tek kelimeyle harika. 3 günde hocanın 3 ayda anlattığı konuları her yönüyle anlayabiliyorsunuz.”
Ayberk Gültekin
Yönetim Bilişim Sistemleri
Bu derste Java-OOP temeline sağlam bir şekilde hakim olacaksın.
Class–object mantığı, constructor ve getters/setters gibi konular “parça parça” durmayacak; kodun içinde nasıl çalıştıklarını gerçekten anlayacaksın. Böylece sınavda “burada ne oluyor?” diye duraksamadan, daha hızlı ve daha emin ilerleyeceksin.
Eğitmenler
Nursena Köprücü Aslan
PhD in Computer Science
Koç Üniversitesi’nde Bilgisayar Mühendisliği okudum ve aynı zamanda Matematik alanında çift anadal yaptım. Ardından Imperial College London’da Machine Learning and Artificial Intelligence alanında yüksek lisansımı tamamladım. Şu anda University of Cambridge'te doktora çalışmalarımı sürdürüyorum.
Ertuğrul Altun
BSCS
Marmara Üniversitesi Bilgisayar Bilimi ve Mühendisliği bölümünden 2019 yılında mezun oldum. C/C++, Java, JavaScript ve TypeScript dillerinde ileri seviye programlama yapıyorum. 2020 yılından beri Software Engineer olarak bir özel şirkette çalışmaktayım. Okuduğum süre içerisinde ve sonrasında Bilgisayar Mühendisliği alanında çeşitli konularda özel ders verdim.
Konular
CS 101 Review
Variables -1
Variables -2
Conditional Statements -1
Conditional Statements -2
Loops -1
Loops -2
Methods -1
Methods -2
Introduction
What we're doing in advanced programming
Classes, Objects & Constructors
Java Class Design Basics: Building Your First Class Step by Step
Eclipse Demo: Build & Run Your First Account Class
Constructors to Console
Demo: Quick Run: Constructor Validation + Deposits in Console
Java Types: Defaults & Scanner
Quick Run: Types + Defaults + Scanner Trap
Highly Recommended Extra: Control Statements
Control structures: sequence, selection, iteration
Selection: if, if-else, else-if
Iteration: while
Demo: Student Class (Selection + Validation + Driver)
Structured Programming recap
For Loop
For vs While
Rewrite code
Expressions in For
Example: Sum of even numbers
Example: Compound interest
Do-While Loop
Infinite loop: why it happens
EOF + Scanner.hasNext()
Switch
break vs continue
Logical operators
Methods & Function Overloading
Why Methods?
Math Class
Method Parameters & Return
Return Value
Nested Method Calls & Local Variables
Three Ways to Call a Method
Three Ways to Return
Static vs Instance Access
Dice Simulation (Frequencies)
Scope & Shadowing
Scope in Action & Method Overloading
Method Call Stack & Stack Overflow
Arrays & ArrayLists
Arrays Fundamentals: Creation, Indexing, and Core Patterns
Fill + Print (1..10)
Off-by-One Trap
Grades Stats (sum, average, max, passed)
Bar Chart (stars)
Frequency Arrays and Exception Handling
Arrays of Objects and Enhanced for
Passing Arrays to Methods
Multidimensional Arrays
2D Arrays in Practice: GradeBook Case Study
Varargs & Command-Line Args
Arrays Utilities
Collections: ArrayList
Insert Sorted
Merging Arrays
Min/Max Grades
Objects & Memory
Encapsulation, Validation (Exceptions) and private Access
this
Constructors, Overloading and Composition
static (Class Variables/Methods), static import, and final Constants
Enum Types and EnumSet
Garbage Collection and Resource Leaks
Source Files, Multiple Classes, and Package Access
BigDecimal for Money: Precision, Rounding, setScale, and NumberFormat
Inheritance
Inheritance Foundations
Single Inheritance
What Can a Subclass Access?
Overriding
Constructors in Inheritance and Overriding
The Copy Paste Problem
Protected/Private in Subclass/Superclass
Constructor Chain & The Object Class
Inheritance vs. Composition
Polymorphism
What is Polymorphism?
Casting
Static / Dynamic Binding
Abstract Classes and Interfaces
Why we need them?
Abstract Classes
Usage of Abstract Classes
Interfaces
Class Diagrams
UML
Sample Midterm Questions
Constructors 1
Constructors 2
Constructors 3
Constructors 4
ArrayList 1
ArrayList 2
ArrayList 3
Inheritance 1
Inheritance 2
Inheritance 3
Inheritance 4
Inheritance 5
Inheritance 6
Polymorphism 1
Polymorphism 2
Abstract Classes and Interfaces 1
Abstract Classes and Interfaces 2
Abstract Classes and Interfaces 3
Abstract Classes and Interfaces 4
Abstract Classes and Interfaces 5
Sample Midterm Questions - 2
True / False + justify briefly
Write a class
Driver class / object creation / Scanner
Instance field vs Static field
Arrays / code writing
2D arrays / short code
Control statements / output prediction
Değerlendirmeler
Tek kelimeyle harika. 3 günde hocanın 3 ayda anlattığı konuları her yönüyle anlayabiliyorsunuz.
Sıkça Sorulan Sorular
Örneğin, Koç Üniversitesi - MATH 101 (Calculus) veya başka bir okulun benzer dersi olsun, paketlerimiz tam da o derse göre tasarlanır. Böylece nokta atışı çalışır, zaman kazanırsın.
Sınava özel videolar —konu anlatımları, çıkmış sorular ve çözümleri, özet notlar—içerir. Sınavda sıkça çıkan soruları hedefler. Eğitmenlerimiz, üniversitenin akademik takvimini takip ederek paketleri sürekli günceller. Böylece, gereksiz detaylarla vakit kaybetmeden başarını artırmaya odaklanabilirsin.
Ders İçeriği
CS 101 Review
Variables -1
Variables -2
Conditional Statements -1
Conditional Statements -2
Loops -1
Loops -2
Methods -1
Methods -2
Introduction
What we're doing in advanced programming
Classes, Objects & Constructors
Java Class Design Basics: Building Your First Class Step by Step
Eclipse Demo: Build & Run Your First Account Class
Constructors to Console
Demo: Quick Run: Constructor Validation + Deposits in Console
Java Types: Defaults & Scanner
Quick Run: Types + Defaults + Scanner Trap
Highly Recommended Extra: Control Statements
Control structures: sequence, selection, iteration
Selection: if, if-else, else-if
Iteration: while
Demo: Student Class (Selection + Validation + Driver)
Structured Programming recap
For Loop
For vs While
Rewrite code
Expressions in For
Example: Sum of even numbers
Example: Compound interest
Do-While Loop
Infinite loop: why it happens
EOF + Scanner.hasNext()
Switch
break vs continue
Logical operators
Methods & Function Overloading
Why Methods?
Math Class
Method Parameters & Return
Return Value
Nested Method Calls & Local Variables
Three Ways to Call a Method
Three Ways to Return
Static vs Instance Access
Dice Simulation (Frequencies)
Scope & Shadowing
Scope in Action & Method Overloading
Method Call Stack & Stack Overflow
Arrays & ArrayLists
Arrays Fundamentals: Creation, Indexing, and Core Patterns
Fill + Print (1..10)
Off-by-One Trap
Grades Stats (sum, average, max, passed)
Bar Chart (stars)
Frequency Arrays and Exception Handling
Arrays of Objects and Enhanced for
Passing Arrays to Methods
Multidimensional Arrays
2D Arrays in Practice: GradeBook Case Study
Varargs & Command-Line Args
Arrays Utilities
Collections: ArrayList
Insert Sorted
Merging Arrays
Min/Max Grades
Objects & Memory
Encapsulation, Validation (Exceptions) and private Access
this
Constructors, Overloading and Composition
static (Class Variables/Methods), static import, and final Constants
Enum Types and EnumSet
Garbage Collection and Resource Leaks
Source Files, Multiple Classes, and Package Access
BigDecimal for Money: Precision, Rounding, setScale, and NumberFormat
Inheritance
Inheritance Foundations
Single Inheritance
What Can a Subclass Access?
Overriding
Constructors in Inheritance and Overriding
The Copy Paste Problem
Protected/Private in Subclass/Superclass
Constructor Chain & The Object Class
Inheritance vs. Composition
Polymorphism
What is Polymorphism?
Casting
Static / Dynamic Binding
Abstract Classes and Interfaces
Why we need them?
Abstract Classes
Usage of Abstract Classes
Interfaces
Class Diagrams
UML
Sample Midterm Questions
Constructors 1
Constructors 2
Constructors 3
Constructors 4
ArrayList 1
ArrayList 2
ArrayList 3
Inheritance 1
Inheritance 2
Inheritance 3
Inheritance 4
Inheritance 5
Inheritance 6
Polymorphism 1
Polymorphism 2
Abstract Classes and Interfaces 1
Abstract Classes and Interfaces 2
Abstract Classes and Interfaces 3
Abstract Classes and Interfaces 4
Abstract Classes and Interfaces 5
Sample Midterm Questions - 2
True / False + justify briefly
Write a class
Driver class / object creation / Scanner
Instance field vs Static field
Arrays / code writing
2D arrays / short code
Control statements / output prediction