I am teaching Principles of Programming (CSE110) this Summer. I have taught this course for a year –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.
The course includes 34 lectures and covers the following topics: 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: