Skip to main content
HomePython

Case Study: Building Software in Python

Build real-world applications with Python—practice using OOP and software engineering principles to write clean and maintainable code.

Start Course for Free
3 hours10 videos29 exercises

Create Your Free Account

GoogleLinkedInFacebook

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.
Group

Training 2 or more people?

Try DataCamp for Business

Loved by learners at thousands of companies


Course Description

This course offers a hands-on introduction to software engineering by guiding you through the development of a practical application: a mortgage calculator. You’ll learn how to calculate monthly payments based on key inputs like loan amount, interest rate, and loan term. Along the way, you’ll apply essential software engineering principles to create code that is efficient, modular, and maintainable.

What You’ll Build

Using Python, you’ll design and implement a mortgage calculator that evolves from a basic tool into a robust solution. Starting with simple modules, you’ll expand the functionality using inheritance to create advanced calculators, including one that handles financial computations. This hands-on project will help you understand real-world software development techniques and how to structure scalable code.

Techniques You’ll Use

Throughout the course, you’ll follow best practices like the DRY (Don’t Repeat Yourself) principle and modularity to organize your code effectively. You’ll adhere to PEP 8 standards, use tools like Pylint to maintain code quality and write automated tests with pytest to ensure your application’s reliability. By the end of the course, you’ll have the skills to design, implement, and test real-world software solutions with confidence.
For Business

Training 2 or more people?

Get your team access to the full DataCamp platform, including all the features.
DataCamp for BusinessFor a bespoke solution book a demo.
  1. 1

    Introduction to the Case Study

    Free

    Get to know the brief and start building your calculators from scratch while recapping important object-oriented and software engineering principles such as the Don't Repeat Yourself (DRY) principle.

    Play Chapter Now
    Introducing the challenge
    50 xp
    BasicCalculator
    100 xp
    FinancialCalculator
    100 xp
    Software engineering principles
    50 xp
    Principles of Software Engineering
    100 xp
    Relative imports
    100 xp
    Absolute imports
    100 xp
    Inheritance reuses code
    50 xp
    Multilevel inheritance
    50 xp
    Create the mortgage calculator class
    100 xp
  2. 2

    Write a Python Module

    The basics are done, and now it's time to spruce them up! Continue with adding documentation and automated testing, and extend the functionality even further.

    Play Chapter Now
  3. 3

    Maintainability

    The main code is written so now it's time to make sure everything works as it should and follows the best practices. Learn how to review, refactor, and improve your code, as well as run more comprehensive tests.

    Play Chapter Now
For Business

Training 2 or more people?

Get your team access to the full DataCamp platform, including all the features.

collaborators

Collaborator's avatar
George Boorman
Collaborator's avatar
Arne Warnke
Collaborator's avatar
Katerina Zahradova

prerequisites

Intermediate Object-Oriented Programming in PythonSoftware Engineering Principles in Python
Mark Pedigo HeadshotMark Pedigo

Principal Data Scientist

An accomplished PhD data scientist with expertise in predictive modeling, statistical analysis, and data visualization, Mark has extensive experience in healthcare, government, and academia, including roles at UnitedHealth Group, Ring, and NASA. Known for strong problem-solving and mentorship skills, as well as exceptional communication abilities, he excels at fostering collaboration and building productive team environments.
See More

What do other learners have to say?

Join over 15 million learners and start Case Study: Building Software in Python today!

Create Your Free Account

GoogleLinkedInFacebook

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.