Apr 19, 2024  
2019-2020 Catalog 
    
2019-2020 Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

IT 301 - Systems Programming

Credits: 5
Introduces students to 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.

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)