May 09, 2024  
2023-2024 Undergraduate Academic Catalog-June Update 
    
2023-2024 Undergraduate Academic Catalog-June Update [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

CSC 1110A - Software Development

4 lecture hours 2 lab hours 4 credits
Course Description
This course provides an introduction to object-oriented software development using the Java programming language. The “A” course provides additional student support with an additional meeting time each week. Students design, document, and implement software solutions based on written problem descriptions. Topics covered include Java program structure, algorithmic problem solving and modularization, I/O statements, control constructs, looping techniques, class libraries, arrays, ArrayLists, abstraction, encapsulation, declaring and implementing abstract data types, interfaces, and inheritance, exception handling, and file I/O. Note: students may receive credit for only one of BUS 2730, CSC 1110 , and CSC 1110A. (prereq: none)
Course Learning Outcomes
Upon successful completion of this course, the student will be able to:
  • Design and document an algorithmic solution for a given problem statement
  • Use if/if-else/switch statements to control program flow in algorithmic solutions
  • Select the appropriate selection control statement for a given task
  • Create and interpret complex expressions that use relational and Boolean operators
  • Use while/do-while/for statements to control repetition in algorithmic solutions
  • Select the appropriate repetition control statement for a given task
  • Translate UML class diagrams into Java code
  • Design and implement simple classes
  • Design and implement class and object methods
  • Use existing Java class libraries
  • Design and implement simple Java programs
  • Declare and use collections of primitive and object data using arrays
  • Declare and use collections of object data using ArrayLists
  • Explain the rationale for object-oriented design and programming
  • Apply composition, inheritance, and interfaces
  • Distinguish between extending a class (inheritance) and implementing an interface
  • Design and implement simple Java classes and packages
  • Document the implementation of small software systems
  • Make appropriate use of exception handling
  • Use classes from the Java standard library to read and write files on disk
  • Use the Java API specification (javadoc) to determine correct use of standard library classes

Prerequisites by Topic
  • None

Course Topics
  • Java programming fundamentals
  • Control structures
  • Looping
  • Classes
  • Interfaces
  • Inheritance
  • Exception handling
  • File input and output

Coordinator
Dr. Chris Taylor



Add to Portfolio (opens a new window)