I taught Principles of Programming (CSE110) for five years at Arizona State University –Summer 2022, Summer 2020, Summer 2019, Summer 2018, and Summer 2017.
CSE110 is an introductory course to programming using the Java programming language. It requires no previous background in programming and concentrates on problem-solving using Java, algorithm design, structured programming, fundamental algorithms and techniques, and computer systems concepts.
Syllabus
Lectures
This course includes 31 lectures, and the following topics are covered: classes, methods, and variables; data types; math class; input and formatted output; if statement; nested if-else; switch statement and operator ?; while loop; for loop; object-oriented programming; classes and objects; methods; methods: constructor, toString, getter, and setter; keywords null and this; arrays; references: parameters and arrays of objects; arrays as parameters; searching algorithms; searching and sorting; sorting; searching and sorting in arrays of objects; 2D arrays; multidimensional arrays; and recursion.
My slides for each lecture are available below:
- Course Presentation
- Introduction to Java
- Classes, Methods, and Variables
- Primitive Data Types
- Primitive Data Types
- Math Class
- Input and Formatted Output
- Conditional Statements
- Nested if-else Statements
- switch Statement and Operator ?
- First Midterm Review
- Loops: while and do/while Statements
- Loops: for Statements
- Loops and Conditional Statements
- Object-Oriented Programming
- Classes and Objects
- Methods
- Second Midterm Review
- Methods: constructor, getter, and setter
- toString method, null, and this
- Practice
- Arrays
- Arrays II
- References
- References as Parameters
- Recursion
- Searching Algorithms
- Sorting
- Bidimensional Arrays
- Multidimensional Arrays
- Final Review
Videos
Some lectures have been recorded and are available on my YouTube Channel