ENGRD 2110

ENGRD 2110

Course information provided by the 2026-2027 Catalog.

Intermediate programming in a high-level language and introduction to software engineering. Topics include object-oriented programming (objects, classes, subtypes, encapsulation, polymorphism), program correctness (specifications, invariants, testing), algorithm analysis (asymptotic complexity, big O notation), recursion, data structures (lists, trees, stacks, queues, heaps, hash tables, graphs), iteration and searching/sorting, graph algorithms, and concurrent and event-driven programming (graphical user interfaces, synchronization). Java is the principal programming language.


Prerequisites CS 1110 or CS 1112 or equivalent course on programming in a procedural language.

Distribution Requirements (SMR-AS)

Last 4 Terms Offered 2026SP, 2025FA, 2025SP, 2024FA

Learning Outcomes

  • Employ recursion and object-oriented programming concepts (e.g., classes, interfaces, polymorphism, inheritance) to solve computational problems.
  • Design, implement, and verify nontrivial Java programs (roughly 1000 lines of code), starting from an English language specification, leveraging features like encapsulation and unit tests to improve maintainability.
  • Build and modify event-driven graphical user interfaces (GUIs) expressed in Java.
  • Analyze the asymptotic complexity of algorithms and programs to evaluate their running times and memory requirements.
  • Implement basic data structures taught in the course (linked lists, binary search trees, heaps, hash tables, adjacency lists) and be able to use them in programs.

View Enrollment Information

Syllabi: none
  •   Regular Academic Session.  Choose one lecture and one discussion. Combined with: CS 2110

  • 4 Credits Opt NoAud

  •  6596 ENGRD 2110   LEC 001

    • TR
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

    Non-engineers must register for CS 2110. You may opt to enroll in a 1-credit Academic Excellence Workshop (AEW) to be taken in conjunction with this course. AEWs are weekly collaborative problem-solving workshops designed to enhance student understanding of course material. AEWs are facilitated by upper-level engineering students or CS majors. They are graded S/U based on attendance. In order to attend an AEW, you must enroll in an AEW section, listed under course number ENGRG 1011.

  •  6597 ENGRD 2110   DIS 201

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6598 ENGRD 2110   DIS 202

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6599 ENGRD 2110   DIS 203

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6600 ENGRD 2110   DIS 204

    • W
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6601 ENGRD 2110   DIS 205

    • W
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6602 ENGRD 2110   DIS 206

    • W
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6603 ENGRD 2110   DIS 207

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6604 ENGRD 2110   DIS 208

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6605 ENGRD 2110   DIS 209

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6606 ENGRD 2110   DIS 210

    • W
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6607 ENGRD 2110   DIS 211

    • W
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6608 ENGRD 2110   DIS 213

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6609 ENGRD 2110   DIS 214

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6610 ENGRD 2110   DIS 215

    • W
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person

  •  6611 ENGRD 2110   DIS 216

    • T
    • Aug 24 - Dec 7, 2026
    • Eichhorn, M

      Perlmutter, L

  • Instruction Mode: In Person