Apr 27, 2024  
2020-2021 Catalog 
    
2020-2021 Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

SDEV 301 - Systems Programming

Credits: 5
Introduces computer systems from the perspective of a programmer. Topics include data and program representation, the memory hierarchy, processes and threads, network programming and run-time analysis. Previously IT 301.

Prerequisite: Instructor’s permission.

Course Outcomes:
Students who successfully complete this class will be able to:

  1. Represent and manipulate twos-complement integers at the binary level.
  2. Describe the characteristics of an instruction set architecture, including the roles of registers, op-codes, assembly and machine languages.
  3. Explain the roles of Java Virtual Machine components: class loader, compiler, interpreter, and garbage collector.
  4. Understand how memory is allocated to heap space or stack memory in the Java Virtual Machine.
  5. Compare primary, secondary and cache memory and how they impact program performance.
  6. Develop a program that uses multiple threads to perform work simultaneously.
  7. Develop a client-server program that uses a socket API to communicate over a network.

Program Outcomes
  1. Develop stable, robust, secure, and efficient code following best practices in database design and software construction.
  2. Write technical documentation to support software lifecycle activities.


College-wide Outcomes
  • Quantitative and Symbolic Reasoning - Quantitative Reasoning encompasses abilities necessary for a student to become literate in today’s technological world. Quantitative reasoning begins with basic skills and extends to problem solving.



Add to Portfolio (opens a new window)