Download Faster Without Limitation

The data center of free servers has applied a non-Iranian IP restriction on some servers
There is no limitation for VIP servers

Description

Software Design for Python Programmers, Video Edition. This course teaches Python programmers how to create more structured, maintainable, and advanced programs by applying software design principles and patterns. Software Design for Python Programmers shows participants how to move from writing simple Python code to designing professional applications. Using intuitive examples and before-and-after comparisons of code improvements, learners learn how to effectively program and execute Python programs and avoid errors related to mismanaged program state, weak classes, inflexible functions, and the like. Great, successful software uses established design principles and patterns that maximize performance, maintainability, and stability. This course helps students master the Python approach to architectural principles such as encapsulation, abstraction, method modifications, and more. Although all examples are implemented using Python, the techniques presented in this course are applicable to any other object-oriented language. Great software starts with careful and thoughtful design. A developer who can decide how data flows in applications, build a successful software architecture, and structure functions, classes, and modules before writing a single line of code will undoubtedly become a much more efficient and effective force. This practical course is a practical guide to creating structured software in Python, helping developers best solve real-world challenges.

What you will learn

  • Requirements analysis and planning: Detailed review of needs and planning for the architectural structure of applications.
  • Iterative design development: Evolving and improving software design through iterative development processes.
  • Optimal class design: Building Python classes with high coherence and low dependencies on each other.
  • Using decorators: Employ decorators to create abstraction, impose constraints, and enrich code behavior.
  • Employ industry standard principles: Maintain modularity and maintainability of code based on proven principles.
  • Selecting design patterns: Identifying and implementing appropriate design patterns to address complex software challenges.
  • Transforming vague requirements: Transforming vague demands into comprehensive and robust designs in the system.

This course is suitable for people who:

  • Python programmers: People who are fully proficient in Python grammar and want to advance their knowledge in software architecture.
  • Software developers: Engineers who want to write cleaner, more modular, and more extensible code.
  • Web and system developers: People who deal with building scalable applications and seek to reduce structural errors.

Course details

  • Publisher:  Oreilly
  • Instructor: Ron Mak
  • Education level: Intermediate
  • Training duration: 9 hours and 5 minutes

Course topics

  • Part 1 Introduction
  • Chapter 1 The path to well-designed software
  • Chapter 1 What you will learn from this book
  • Chapter 1 The benefits of good software design
  • Chapter 1 A few design examples
  • Chapter 1 Make sure we_re going to build the right application; then, build it right
  • Chapter 1 Good design doesn’t come easily
  • Chapter 1 Change and complexity are the enemies of good design
  • Chapter 1 Design with object-oriented programming concepts
  • Chapter 1 What about AI-generated code
  • Chapter 1 Summary
  • Chapter 2 Iterate to achieve good design
  • Chapter 2 Don_t let changes leak out
  • Chapter 2 Iterate to achieve good design
  • Chapter 2 Summary
  • Part 2 Design the right application
  • Chapter 3 Get requirements to build the right application
  • Chapter 3 Functional requirements What must the application do
  • Chapter 3 Nonfunctional requirements Constraints on the application
  • Chapter 3 How to get requirements
  • Chapter 3 Unified Modeling Language diagrams for creating and documenting design
  • Chapter 3 Use cases provide context for the requirements
  • Chapter 3 The functional specification and software validation
  • Chapter 3 Where do classes come from
  • Chapter 3 Summary
  • Chapter 4 Good class design to build the right application
  • Chapter 4 Two important goals for good class design
  • Chapter 4 UML class diagrams to document class design
  • Chapter 4 UML state diagram How an object changes state
  • Chapter 4 UML sequence diagram How objects interact [optional]
  • Chapter 4 The design specification and software verification
  • Chapter 4 Summary
  • Part 3 Design the right application
  • Chapter 5 Hide class implementations
  • Chapter 5 Public getter and setter methods access hidden implementation selectively
  • Chapter 5 Class Date A case study of implementation hiding
  • Chapter 5 Public setter methods carefully modify hidden implementation
  • Chapter 5 Beware of dangerous setter methods
  • Chapter 5 Rules from the Law of Demeter support the Principle of Least Knowledge
  • Chapter 5 But is the implementation really hidden
  • Chapter 5 The Open-Closed Principle supports code stability
  • Chapter 5 Summary
  • Chapter 6 Don’t surprise your users
  • Chapter 6 Poor performance is an unwelcome surprise
  • Chapter 6 Programming by contract helps eliminate surprises [optional]
  • Chapter 6 Summary
  • Chapter 7 Design subclasses right
  • Chapter 7 The Liskov Substitution Principle and proper subclasses
  • Chapter 7 Choosing the is-a and has-a relationships
  • Chapter 7 Use a factory function with the Code to the Interface Principle
  • Chapter 7 Programming by contract with subclasses [optional]
  • Chapter 7 Summary
  • Part 4 Design patterns solve application architecture problems
  • Chapter 8 The Template Method and Strategy Design Patterns
  • Chapter 8 The Strategy Design Pattern encapsulates algorithms
  • Chapter 8 Choosing between Template Method and Strategy
  • Chapter 8 Summary
  • Chapter 9 The Factory Method and Abstract Factory Design Patterns
  • Chapter 9 The Abstract Factory Design Pattern creates families of objects
  • Chapter 9 Choosing between Factory Method and Abstract Factory
  • Chapter 9 Summary
  • Chapter 10 The Adapter and Fa_ade Design Patterns
  • Chapter 10 The Fa_ade Design Pattern hides a subsystem of interfaces
  • Chapter 10 Choosing between Adapter and Fa_ade
  • Chapter 10 Summary
  • Chapter 11 The Iterator and Visitor Design Patterns
  • Chapter 11 The Visitor Design Pattern Different algorithms operate on a single data collection
  • Chapter 11 Choosing between Iterator and Visitor
  • Chapter 11 Summary
  • Chapter 12 The Observer Design Pattern
  • Chapter 12 Summary
  • Chapter 13 The State Design Pattern
  • Chapter 13 Choosing between State and Visitor
  • Chapter 13 Summary
  • Chapter 14 The Singleton, Composite, and Decorator Design Patterns
  • Chapter 14 The Composite Design Pattern Treat individual and composite objects uniformly
  • Chapter 14 The Decorator Design Pattern Dynamically add object responsibilities
  • Chapter 14 Summary
  • Part 5 Additional design techniques
  • Chapter 15 Designing solutions with recursion and backtracking
  • Chapter 15 Finding the largest value in a list by recursion
  • Chapter 15 Reversing a list with recursion
  • Chapter 15 Solving the Towers of Hanoi puzzle by recursion
  • Chapter 15 Recursive algorithms for a binary search tree
  • Chapter 15 Quicksorting a list with recursion
  • Chapter 15 The Fibonacci sequence and a recursion disaster
  • Chapter 15 Dynamic backtracking increases the power of recursion
  • Chapter 15 Solving the eight queens puzzle with recursion and backtracking
  • Chapter 15 Solving Sudoku puzzles with recursion and backtracking
  • Chapter 15 Summary
  • Chapter 16 Designing multithreaded programs
  • Chapter 16 A mutex enforces mutual exclusion
  • Chapter 16 A semaphore accepts multiple threads
  • Chapter 16 Condition objects synchronize threads
  • Chapter 16 A final note on multithreading
  • Chapter 16 Summary

Images of the Software Design for Python Programmers, Video Edition course

Software Design for Python Programmers, Video Edition

Sample course video

Installation Guide

After Extract, view with your favorite player.

Subtitles: English

Quality: 720p

Download link

Download Part 1 – 1 GB

Download Part 2 – 644 MB

Rapidgator link

Download Part 1 – 1 GB

Download Part 2 – 644 MB

File(s) password: www.downloadly.ir

File size

1.6 GB

Share this page

Notice: Only English comments will be considered.

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Menu