Mar 28, 2024  
2020-2021 Undergraduate Academic Catalog 
    
2020-2021 Undergraduate Academic Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

SE 1021 - Software Development II

3 lecture hours 2 lab hours 4 credits
Course Description
This course continues the study of objected-oriented software development using the Java programming language. Students design, document and implement software classes and incorporate these classes into larger applications. Topics covered include abstraction, encapsulation, declaring and implementing abstract data types, interfaces, inheritance, polymorphism, graphical user interfaces, simple event-driven programming, exception handling, and file I/O. (prereq: SE 1011 )
Course Learning Outcomes
Upon successful completion of this course, the student will be able to:
  • Explain the rationale for object-oriented design and programming
  • Translate UML class and sequence diagrams into Java code
  • Apply composition, inheritance, and interfaces
  • Distinguish between extending a class (inheritance) and implementing an interface
  • Define polymorphism
  • 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
  • Selection and iteration statements
  • Simple Java programs
  • Simple Java classes
  • UML class diagrams into Java code
  • Arrays and ArrayLists

Course Topics
  • Java fundamentals
  • GUI
  • Event-driven programming
  • Aggregation, composition, generalization, and realization in UML class diagrams
  • Inheritance and polymorphism
  • Interfaces/abstract classes
  • Exception handling
  • File I/O

Laboratory Topics
  • ArrayLists
  • Inheritance
  • Interfaces
  • GUI
  • Event handling
  • Exception handling
  • File I/O

Coordinator
Dr. Christopher Taylor



Add to Portfolio (opens a new window)