Giới thiệu thử thách

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Mark Pedigo, PhD

Principal Data Scientist

Nghiên cứu tình huống là gì?

  • Áp dụng kỹ năng vào bài toán thực tế
  • Học phần tiên quyết
    • Nguyên tắc Kỹ thuật Phần mềm bằng Python
    • Lập trình hướng đối tượng trung cấp trong Python

Hai người trong cuộc họp thảo luận nghiên cứu tình huống

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Kịch bản nghiên cứu tình huống

Xác định khoản vay mua nhà mới

  • Chuyên viên tín dụng tại PyBank Financial
  • Xây dựng chương trình để
    • Xác định khả năng chi cho nhà
    • Tính khoản trả hàng tháng
  • Lưu ý: Chỉ minh họa

loan_officer.jpg

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Kế hoạch hành động

  • Phần mềm tự động hóa phép tính
  • Áp dụng nguyên tắc Kỹ thuật Phần mềm, dựa trên lớp
  • Các giai đoạn
    • Máy tính cơ bản
      • +, -, *, /, **
    • Máy tính tài chính
      • Tính lãi, lãi suất
    • Máy tính thế chấp
      • Tính khoản vay, số tiền trả góp

Ba máy tính, tăng dần kích thước

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Kế thừa

Tái sử dụng mã giữa các lớp

  • Lớp con (FinancialCalculator) kế thừa toàn bộ chức năng từ lớp cha (BasicCalculator)
  • Lớp con có thể bổ sung chức năng mới
class BasicCalculator:
    def multiply(self, x, y):
        result = x * y
        return result
  ...
# Child of BasicCalculator
class FinancialCalculator(BasicCalculator):
    def months_from_years(self, years):
        # Inherits the .multiply() method
        return self.multiply(years, 12)
    ...
Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Ôn tập nguyên tắc kỹ thuật phần mềm

  • Mã mô-đun, sạch, dễ đọc, hiệu quả
    • Kế thừa, phương thức
  • Tận dụng thư viện, framework, giải pháp có sẵn
    • Chỉnh sửa mã sẵn có
    • Tối ưu quy trình phát triển
  • Tài liệu rõ ràng, chú thích mã, hướng dẫn sử dụng
    • Tài liệu hóa
  • Kiểm thử
    • doctest và unit test

Hình máy tính với các biểu tượng kỹ thuật phần mềm xung quanh

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Lộ trình

Lộ trình thể hiện các phần của dự án.

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Bắt đầu xây dựng!

Nghiên cứu tình huống: Xây dựng phần mềm bằng Python

Preparing Video For Download...