وب سایت تخصصی شرکت فرین
دسته بندی دوره ها

The Software Designer Mindset

سرفصل های دوره

01 - Course Introduction
  • 01 - Welcome

  • 02 - Mastering The Tools - Setting Up Your Development Environment
  • 01 - VS Code Extensions
  • 02 - Vim Editor Plugin
  • 03 - AI Tools And Autoformatting
  • 04 - VS Code And Pylint Settings
  • 05 - Pyenv
  • settings.zip

  • 03 - Types And Type Hints
  • 01 - Static Vs. Dynamic Typing
  • 02 - Strong Vs. Weak Typing
  • 03 - Type Hints
  • 04 - Callables
  • 05 - Types Are A Tool For Developers
  • 06 - Nominal Vs. Structural Typing
  • 07 - Three Trade-offs With Type Hints
  • 08 - Quiz.pdf

  • 04 - Data Structures
  • 01 - Introduction And Numeric Data Types
  • 02 - Lists
  • 03 - Dictionaries
  • 04 - Strings
  • 05 - Formatted Strings
  • 06 - Enums
  • 07 - Tuples
  • 07 - tuples.zip
  • 08 - Final Thoughts
  • 09 - data structures solution sheet.pdf
  • 10 - cheatsheet.pdf

  • 05 - Classes And Dataclasses
  • 01 - Introduction
  • 02 - What Is A Class
  • 03 - Data Classes
  • 04 - Object Initialization
  • 05 - Advanced Object Initialization
  • 06 - Read-Only Objects
  • 07 - Final Thoughts
  • dataclasses example.zip

  • 05.1 - The Mighty Function
  • 01-Introduction
  • 02-Pure Functions And Side Effects
  • 03-Callables
  • 04-Higher-Order Functions
  • 05-Closures And Partial Function Application
  • 06-Grouping Functions
  • 07-Classes Vs. Functions
  • Exercises.txt
  • functions example.zip

  • 06 - Inheritance, ABCs And Protocols
  • 01 - Introduction
  • 02 - Abstract Base Classes
  • 03 - Protocols
  • 04 - Interface Segregation Using Protocols
  • 05 - Differences Between Protocol And ABC
  • 06 - When To Use Which One
  • 07 - Final Thoughts
  • abc protocol code examples.zip

  • 07 - The 7 Principles Of Modern Software Design
      01 - Favor Composition Over Inheritance
    • 01 - Why You Need To Be Careful With Inheritance
    • 02 - First Attempt Using Inheritance
    • 03 - Second Attempt Using Composition
    • 04 - A More Generic Solution With Abstraction
    • 05 - Analysis Of What Weve Done
    • 06 - Exercise Apply Composition To The Vehicle Example
    • 07 - Final Thoughts
    • car example.zip
    • employee example.zip
    • exercise.zip
      02 - High Cohesion
    • 01 - What Is Cohesion
    • 02 - Increasing Order Cohesion
    • 03 - Increasing Payment Processor Cohesion
    • 04 - Organising Vehicle Data
    • 05 - Increasing The Main Function Cohesion
    • 06 - Cohesion And Single Responsibility
    • cohesion code examples.zip
      03 - Low Coupling
    • 01 - What Is Coupling
    • 02 - Different Types Of Coupling
    • 03 - The Law Of Demeter
    • 04 - Exercise Reduce Coupling In The Vehicle Example
    • 05 - Final Thoughts
    • 06 - design principles 1 solution sheet.pdf
      04 - Start With The Data
    • 01 - Introduction
    • 02 - Analysis Of The Example
    • 03 - Improving The Rental Contract Structure
    • 04 - Remove Coupling From The Main Function
    • 05 - Improving Object Communication
    • 06 - Exercise- Apply This Technique Yourself
    • exercise 2.zip
    • order example 2.zip
      05 - Depend On Abstractions
    • 01 - Introduction And Analysis
    • 02 - Abstracting The Authorizer Functions
    • 03 - Abstracting The Order Class
    • 04 - Abstracting The Payment Processor
    • 05 - Final Thoughts
    • order example 2.zip
      06 - Separate Creation From Use
    • 01 - Introduction
    • 02 - Analysis Of The Example
    • 03 - The Factory Pattern
    • 04 - Using The Factory Pattern
    • 05 - Another Creation Example
    • 06 - Taking Control Over Creation
    • 07 - Final Thoughts And The Open-Closed Principle
    • factory example.zip
    • pos example.zip
      07 - Keep Things Simple
    • 01 - Introduction
    • 02 - DRY - Dont Repeat Yourself
    • 03 - KISS - Keep It Stupidly Simple
    • 04 - YAGNI - You Aint Gonna Need It
    • 05 - Final Thoughts
    • 06 - design principles 2 solution sheet.pdf
    • code examples.zip

    08 - Being A Responsible Developer
      01 - Mixins
    • 01 - What Is A Mixin
    • 02 - Why You Need To Be Careful With Mixins
    • 03 - Conventions And Restrictions
    • 04 - Why I Dont Recommend Using Mixins
    • 05 - Final Thoughts
    • example.zip
      02 - Dealing With Errors
    • 01 - Introduction
    • 02 - Basic Error Handling
    • 03 - Dealing With Multiple Exceptions
    • 04 - The Finally Block
    • 05 - Context Managers
    • 06 - Tips And Caveats
    • error example.zip
      03 - Setting Up A Complex Software Project
    • 01 - Introduction
    • 02 - Project Files
    • 03 - Project Folders
    • 04 - Modules And Packages
    • 05 - Absolute Vs Relative Imports
    • 06 - Multiple Packages
    • 07 - Import Tips
    • 08 - Organising Your Code
    • 09 - Architecture As Structure
    • 10 - Security Tips
    • project example.zip
      04 - Course Wrap Up
    • 01 - Wrapping Things Up
    • Resources.txt

    09 - BONUS Material
  • 01 - Domain Modelling And Levels Of Software Design
  • 02 - History of Computing, Data Vs Processing
  • 03 - Mixins And Composition
  • 04 - How To Do Great Code Reviews
  • 05 - A Code Review Of Python Fire
  • 06 - Being A Developer At A Startup.mp3

  • 10 - Q&A Sessions
  • 01 - May 2022

  • 11 - Extension
      01 - Case Study Developing An API
        01 - Introduction And Domain Model
      • 01 - Why Understanding The Domain Is Important
      • 02 - Modelling The Domain
      • hotel db.zip
      02 - Scaffolding Of The Project
    • 01 - What Is An API-
    • 02 - Creating An API Server
    • 03 - Setting Up The Database Models
    • 04 - Relationships Between Models
    • 05 - Creating The Database System
    • 06 - Patching Everything Up
      03 - The Layered Architecture
    • 01 - Why Scaffolding Is Useful
    • 02 - What Is The Layered Architecture-
    • 03 - Creating A Layered Architecture
    • 04 - Analysis
      04 - Completing The API
    • 01 - Developing A Basic Customer API
    • 02 - Creating A New Customer
    • 03 - Converting Database Query Results
    • 04 - Updating An Existing Customer
    • 05 - Adding Booking Operations
    • 06 - Adding The Booking Router
    • 07 - Analysis
    • hotel example v1.zip
      05 - Designing A Testable API
    • 01 - Introduction
    • 02 - Creating An Abstract Data Interface
    • 03 - Database Implementation
    • 04 - Updating The Booking Operation
    • 05 - Updating The Booking Router
    • 06 - Writing Unit Tests
    • 07 - Final Thoughts
    • 08 - Challenge.txt
    • hotel example v2.zip
      06 - Design Wins
    • 01 - Avoid Type Abuse
    • 02 - Use Built-In Constructs
    • 03 - Use Clear Names
    • 04 - Avoid Flags
    • 05 - Dont Use Too Many Arguments
    • 06 - Use Shallow Nesting
    • 07 - Avoid Deeply Nested Conditionals
    • 08 - No Wildcard Imports
    • 09 - Write Symmetrical Code
    • 10 - Only Use Self If Needed
    • 11 - Keep Classes Small
    • 12 - Tell Dont Ask
    • 13 - Use Meaningful Instance Variables
    • 14 - Avoid Redundancy
    • 15 - Dont Redefine Programming Concepts
    • 16 - BONUS #1- Protocol Segregation
    • 17 - BONUS #2- Function Composition
    • asymmetry example.zip
    • avoid redundancy example.zip
    • built in example.zip
    • clear names example.zip
    • flags example.zip
    • function composition example.zip
    • keep classes small example.zip
    • many arguments.zip
    • meaningful instance vars example.zip
    • nested conditionals example.zip
    • no self example.zip
    • protocol segregation example.zip
    • redefining concepts example.zip
    • shallow nesting example.zip
    • tell dont ask.zip
    • type abuse example.zip
    • wildcard imports example.zip
      07 - Resources
    • all code extension.zip
    139,000 تومان
    بیش از یک محصول به صورت دانلودی میخواهید؟ محصول را به سبد خرید اضافه کنید.
    خرید دانلودی فوری

    در این روش نیاز به افزودن محصول به سبد خرید و تکمیل اطلاعات نیست و شما پس از وارد کردن ایمیل خود و طی کردن مراحل پرداخت لینک های دریافت محصولات را در ایمیل خود دریافت خواهید کرد.

    ایمیل شما:
    تولید کننده:
    شناسه: 12448
    حجم: 3690 مگابایت
    مدت زمان: 796 دقیقه
    تاریخ انتشار: ۴ تیر ۱۴۰۲
    طراحی سایت و خدمات سئو

    139,000 تومان
    افزودن به سبد خرید