| title | Topics |
|---|---|
| navigation_order | 2 |
Programming 2 material and assignments are posted on Google Classroom.
This site is for reference only. Some of this material is irrelevant to Prog 2.
| Topic | Description |
|---|---|
| [Introduction](introduction) | [Introduction to course and goals](introduction), prerequisites, topics, and grading. |
| [Git]({{ISP}}git) | [Git commands and common tasks]({{site.ISP}}/git), structure of a git repo, branches, merging, and remote repos. [Visualize][GitVisualizer] a repo as a graph. [Use SSH Keys](https://help.github.com/articles/connecting-to-github-with-ssh/) for authentication instead of your Github password. |
| Github and Development | [Using Github]({{site.ISP}}/git/Using-Github) and [slides]({{site.ISP}}/git/Using-Github.pdf). |
| [Unit Testing]({{site.ISP}}/testing) | Testing "units" of code. Testing behavior - not just methods. [Unit test in Python]({{site.ISP}}/testing/PythonUnitTesting.pdf) [Code Coverage]({{site.ISP}}/testing/code-coverage) |
| [Code Quality]({{site.ISP}}/code-quality) | Principles, guides, tips, and [tools]({{site.ISP}}/code-quality/code-quality-tools) for writing good quality "clean" code. Coding standard, [docstring comments]({{site.ISP}}/code-quality/docstrings) and [code checkers]({{site.ISP}}/code-quality/code-quality-tools). Essential for all developers! |
| [Assertions]({{site.ISP}}/code-quality/assertion) | "Asserts" are tests of what should be true at some point in code. Assertions reduce errors and document code-level assumptions. |
| [UML]({{site.ISP}}/uml) | The standard for visual software modeling and design. You should be able to understand common UML diagrams. |
To do: use Git Submodules to pull in shares topics.