Transfers ToCSUDescriptionDesigned for computer science majors but open to all students. Emphasizes problem analysis skills and algorithm development. Software engineering skills will be developed for both procedural and object-oriented programming techniques. This course will be taught using Java. Extensive programming projects demonstrating problem-solving and implementation skills will be assigned throughout the semester, including use of data types, conditions and Boolean logic, loops, recursion, arrays, functions, references, and file input/output.