Academics
  /  
Courses
  /  
Descriptions
GEN_ENG 151: Honors Programming for Engineers


VIEW ALL COURSE TIMES AND SESSIONS

Prerequisites

Comp_Sci 1CA

Description

This course shares the same core learning objectives as GEN_ENG 151 but expects students to already have significant object-oriented programming experience at the level of AP CS A (either through AP exam credit or through an equivalent placement exam). The course will use the Python programming language to explore ideas and topics both in computer science and engineering more broadly. Because students will enter with programming experience, this course will focus on translating students’ existing skills into a new language at an accelerated pace. Additionally, it will dive deeper computational ideas (e.g. data structures, search algorithms, memory models, etc.) than GEN_ENG 150. The course will also address the design and features of programming languages, not limited to Python, that engineers may encounter and utilize in their careers.

If you feel you are still not yet comfortable with your programming skills and abilities, it is recommended you take either GEN_ENG 150 (McCormick majors) or COMP_SCI 150 (other majors) instead.

Detailed Topics
  • Data abstraction, Simple procedures, Primitive data
  • Procedural Programming Fundamentals (Conditional Execution, Iteration, Recursion, Modularity and Procedural abstraction)
  • Composite data - lists, dictionaries, and inductive data structures
  • Object-Oriented Principles (Composite data structs, Encapsulation, Inheritance)
  • Functions as first-class objects
Auxiliary Textbook (not required):
Ramalho, L. (2022). Fluent Python: Clear, Concise, and Effective Programming (2nd ed.). O'Reilly Media. (free access through NU Library)
  • Students cannot receive credit for more than one of: GEN_ENG 150, GEN_ENG 151, COMP_SCI 150
COURSE COORDINATORS: Connor Bain
COURSE INSTRUCTOR: Connor Bain