... | @@ -3,8 +3,6 @@ Author: Thomas J Kennedy |
... | @@ -3,8 +3,6 @@ Author: Thomas J Kennedy |
|
Email: tkennedy@cs.odu.edu
|
|
Email: tkennedy@cs.odu.edu
|
|
---
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
> I am going to go for a Raymond Hettinger style presentation,
|
|
> I am going to go for a Raymond Hettinger style presentation,
|
|
> <https://www.cs.odu.edu/~tkennedy/cs330/s20/Public/languageResources/#python-programming-videos>.
|
|
> <https://www.cs.odu.edu/~tkennedy/cs330/s20/Public/languageResources/#python-programming-videos>.
|
|
>
|
|
>
|
... | @@ -34,8 +32,11 @@ interest is Rust (at the time of writing). |
... | @@ -34,8 +32,11 @@ interest is Rust (at the time of writing). |
|
I am going to pull from CS 330, CS 350, CS 411W, and CS 417 lecture notes
|
|
I am going to pull from CS 330, CS 350, CS 411W, and CS 417 lecture notes
|
|
|
|
|
|
- **CS 330 - Object Oriented Programming & Design**
|
|
- **CS 330 - Object Oriented Programming & Design**
|
|
|
|
- [S.O.L.I.D](https://www.cs.odu.edu/~tkennedy/cs330/s20/Public/reviewSOLID/)
|
|
|
|
- [Iterators](https://www.cs.odu.edu/~tkennedy/cs330/s20/Public/designDiscussionIterators/)
|
|
- **CS 350 - Introduction to Software Engineering**
|
|
- **CS 350 - Introduction to Software Engineering**
|
|
- **CS 411W - Professional Workforce Development II**
|
|
- **CS 411W - Professional Workforce Development II**
|
|
|
|
- [Git Review](https://www.cs.odu.edu/~tkennedy/cs411/s20/Public/gitIntro/)
|
|
- **CS 417 - Computational Methods & Software**
|
|
- **CS 417 - Computational Methods & Software**
|
|
- [Python non-linear solver discussion](https://www.cs.odu.edu/~tkennedy/cs417/s20/Public/solverDiscussion/)
|
|
- [Python non-linear solver discussion](https://www.cs.odu.edu/~tkennedy/cs417/s20/Public/solverDiscussion/)
|
|
|
|
|
... | @@ -74,6 +75,7 @@ reference a few other concepts... |
... | @@ -74,6 +75,7 @@ reference a few other concepts... |
|
- Code Linters
|
|
- Code Linters
|
|
- Style Checkers
|
|
- Style Checkers
|
|
|
|
|
|
|
|
|
|
## Testing & Development
|
|
## Testing & Development
|
|
|
|
|
|
- Test Driven Development
|
|
- Test Driven Development
|
... | @@ -91,12 +93,6 @@ changes to a codebase. This includes maintaining records of what changes were, |
... | @@ -91,12 +93,6 @@ changes to a codebase. This includes maintaining records of what changes were, |
|
when changes were made, and by whom changes were made. This not only facilitates
|
|
when changes were made, and by whom changes were made. This not only facilitates
|
|
tracking progress.
|
|
tracking progress.
|
|
|
|
|
|
Git allows one to:
|
|
|
|
|
|
|
|
1. Explore alternative approaches.
|
|
|
|
2. Reconcile conflicting changes (through `merge` and `rebase`).
|
|
|
|
3. Compare differences between *branches* and *commits*.
|
|
|
|
|
|
|
|
**Git is Not...**
|
|
**Git is Not...**
|
|
|
|
|
|
- [GitHub](https://github.com/)
|
|
- [GitHub](https://github.com/)
|
... | @@ -113,8 +109,14 @@ Git allows one to: |
... | @@ -113,8 +109,14 @@ Git allows one to: |
|
- By one person
|
|
- By one person
|
|
- By multiple people
|
|
- By multiple people
|
|
|
|
|
|
|
|
**Git allows one to...**
|
|
|
|
|
|
|
|
1. Explore alternative approaches.
|
|
|
|
2. Reconcile conflicting changes (through `merge` and `rebase`).
|
|
|
|
3. Compare differences between *branches* and *commits*.
|
|
|
|
|
|
|
|
|
|
# The Punchline - History
|
|
# The Punchline - Tracking History
|
|
|
|
|
|
At the most basic level Git tracks changes to source *text* (usually code).
|
|
At the most basic level Git tracks changes to source *text* (usually code).
|
|
|
|
|
... | @@ -125,7 +127,7 @@ At the most basic level Git tracks changes to source *text* (usually code). |
... | @@ -125,7 +127,7 @@ At the most basic level Git tracks changes to source *text* (usually code). |
|
- When was line 122 in `NaivePool` last modified?
|
|
- When was line 122 in `NaivePool` last modified?
|
|
- By whom was line 122 in `NaivePool` last modified?
|
|
- By whom was line 122 in `NaivePool` last modified?
|
|
|
|
|
|
Variants of
|
|
**Variants of...**
|
|
|
|
|
|
- `git log`
|
|
- `git log`
|
|
- `git blame`
|
|
- `git blame`
|
... | | ... | |