Intermediate Programming, Spring 2024

Welcome to the website for Intermediate Programming (Spring 2024) at Johns Hopkins University!

Course description: This course teaches intermediate to advanced programming, using C and C++. (Prior knowledge of these languages is not expected.) We will cover low-level programming techniques, as well as object-oriented class design, and the use of class libraries. Specific topics include pointers, dynamic memory allocation, polymorphism, overloading, inheritance, templates, collections, exceptions, and others as time permits. Students are expected to learn syntax and some language specific features independently. Course work involves significant programming projects in both languages.

All public information about the course (assignments, exercises, etc.) will be posted on this website.

Use the links at the top of the page to navigate the site.

Github is used to facilitate team collaborations as well as group and individual source code version control. Scaffolding/starter files of exercises, homeworks, and projects are shared via the course public repository. You may never share your private repository with anyone else.

Piazza is the main communication channel. If you have any questions or concerns, post on Piazza. You can do either public or private posts (anonymously if you want!). If others could potentially benefit from your question, consider making it public. Never include your homework/project solution code in a public post.

Gradescope is used for assignment submission and handling. You make all your submissions on Gradescope and recieve feedback and your work in there. Regrade requests can be made and are processed on Gradescope as well. You can join Gradescope course page using the entry code RK2EPK.

News