Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

CodeSignal

Refactoring by Leveraging Your Tests with Rust

via CodeSignal

Overview

This course focuses on the Refactor step in TDD, teaching developers to spot code smells and resolve them through refactoring. Using real-world examples, you'll identify common issues, apply refactoring techniques, and ensure functionality is preserved with existing tests.

Syllabus

  • Unit 1: Eliminating Code Duplication and Refactoring in Rust
    • Refactor ShoppingCart Test Suite for Maintainability
    • Refactoring ShoppingCart Test Suite for Parameterization
    • Refactor ShoppingCart to Remove Duplication
    • Refactor ShoppingCart to Eliminate Loop Duplication
    • Refactor Magic Numbers into Constants in ShoppingCart
  • Unit 2: Refactoring Long Functions in Rust Using Extract Function Technique
    • Refactor User Validation Logic in Registration Service
    • Refactor Data Normalization Logic into Separate Function or Struct
  • Unit 3: Structs as Parameter Objects in Rust: Simplifying Complex Function Signatures
    • Refactor Code to Use ScoreWeights Parameter in ExamProcessor
    • Refactor Exam Processor with Parameter Object Pattern in Rust
    • Refactor Exam Score Function by Reordering Parameters
    • Refactor and Provide Defaults for Exam Processor API
  • Unit 4: Refactoring Feature Envy in Rust Using Struct Method Reallocation
    • Refactor GradeAnalyzer for Better Encapsulation in Rust
    • Refactor Grade Calculation to Student Struct
    • Refactoring GetFailedAssignments Function to Reduce Feature Envy
    • Refactoring Student Grade Management in Rust
  • Unit 5: Addressing the "Large Struct" Code Smell by Extracting Into Focused Structs
    • Refactor ShoppingCart to Use CartItemCollection for Item Management
    • Refactor ShoppingCart with PriceCalculator Struct
    • Refactor Discount Logic into DiscountCalculator Struct
    • Implementing and Testing Shopping Cart Calculators in Rust

Reviews

Start your review of Refactoring by Leveraging Your Tests with Rust

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.