Skip to main content
Beta
This lesson is in the beta phase, which means that it is ready for teaching by instructors outside of the original author team.
Light
Dark
Auto
Learner View
Instructor View
Menu
Intermediate Research Software Development
Intermediate Research Software Development
Key Points
Glossary
Learner Profiles
More
Glossary
Search the All In One page
Intermediate Research Software Development
Toggle Theme
Light
Dark
Auto
Learner View
Instructor View
EPISODES
Summary and Setup
Setting the Scene
Section 1: Setting Up Environment For Collaborative Code Development
1.1 Introduction to Our Software Project
1.2 Virtual Environments For Software Development
1.3 Integrated Software Development Environments
1.4 Collaborative Software Development Using Git and GitHub
1.5 Python Code Style Conventions
1.6 Verifying Code Style Using Linters
Section 2: Ensuring Correctness of Software at Scale
2.1 Automatically Testing Software
2.2 Scaling Up Unit Testing
2.3 Continuous Integration for Automated Testing
2.4 Diagnosing Issues and Improving Robustness
Section 3: Software Development as a Process
3.1 Software Requirements
3.2 Software Architecture and Design
3.3 Programming Paradigms
3.4 Functional Programming
3.5 Object Oriented Programming
3.6 Architecture Revisited: Extending Software
Section 4: Collaborative Software Development for Reuse
4.1 Developing Software In a Team: Code Review
4.2 Preparing Software for Reuse and Release
4.3 Packaging Code for Release and Distribution
Section 5: Managing and Improving Software Over Its Lifetime
5.1 Managing a Collaborative Software Project
5.2 Assessing Software for Suitability and Improvement
5.3 Software Improvement Through Feedback
Wrap-up
RESOURCES
Key Points
Glossary
Learner Profiles
Glossary
See all in one page
Previous
Next
Home
Home
Glossary
Last updated on 2024-11-20 |
Edit this page
Expand All Solutions
Glossary
Branch
Commit
CSS
Git
GitHub
README
Repository/repo
Version Control
YAML
Previous
Next
Home
Home
Back
To Top