I am teaching Principles of Programming (CSE110) this Summer. I have taught this COURSE for a years –Summer 2017, and Summer 2018. This is an introductory course to programming using Java language. The course requires no previous background in programming. It concentrates on concepts of problem solving using Java, algorithm design, structured programming, fundamental algorithms and techniques, and computer systems concepts.
CSE110 has 34 lectures and includes 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: