Software Architecture with Python
Use Software Architecture with Python course and lab to get to know how Python fits into an application architecture. The lab is cloud-based, device-enabled, and can easily be integrated with an LMS. The software architecture training will help you gain an understanding of the different architectural quality requirements to help build a product that satisfies business needs. The course also provides knowledge and skills required to work with various techniques such as incorporating DevOps, Continuous Integration, and more to make your application robust.
- Price: $279.99
- Delivery method: eLearning
- DIR Discount: 20%
Submit form to obtain discount
Test Prep
71+ Pre Assessment Questions |
85+ Post Assessment Questions |
Features
27+ LiveLab |
00+ Minutes
Why choose TOPTALENT?
- Get assistance every step of the way from our Texas-based team, ensuring your training experience is hassle-free and aligned with your goals.
- Access an expansive range of over 3,000 training courses with a strong focus on Information Technology, Business Applications, and Leadership Development.
- Have confidence in an exceptional 95% approval rating from our students, reflecting outstanding satisfaction with our course content, program support, and overall customer service.
- Benefit from being taught by Professionally Certified Instructors with expertise in their fields and a strong commitment to making sure you learn and succeed.
Outline
Lessons 1:
Preface
- What this course covers
- Conventions
Lessons 2:
Principles of Software Architecture
- Defining software architecture
- Characteristics of software architecture
- Importance of software architecture
- System versus enterprise architecture
- Architectural quality attributes
- Summary
Lessons 3:
Writing Modifiable and Readable Code
- What is modifiability?
- Aspects related to modifiability
- Understanding readability
- Fundamentals of modifiability – cohesion and coupling
- Exploring strategies for modifiability
- Metrics – tools for static analysis
- Refactoring code
- Summary
Lessons 4:
Testability – Writing Testable Code
- Understanding testability
- White-box testing principles
- Summary
Lessons 5:
Good Performance is Rewarding!
- What is performance?
- Software performance engineering
- Performance testing and measurement tools
- Performance complexity
- Measuring performance
- Profiling
- Other tools
- Programming for performance – data structures
- Summary
Lessons 6:
Writing Applications that Scale
- Scalability and performance
- Concurrency
- Thumbnail generator
- Multithreading – Python and GIL
- Multithreading versus multiprocessing
- Pre-emptive versus cooperative multitasking
- The asyncio module in Python
- Waiting for a future – async and await
- Concurrent futures – high-level concurrent processing
- Scaling for the web
- Scaling workflows – message queues and task queues
- Celery – a distributed task queue
- Summary
Lessons 7:
Security – Writing Secure Code
- Information security architecture
- Secure coding
- Common security vulnerabilities
- Is Python secure?
- Security issues with web applications
- Strategies for security – Python
- Secure coding strategies
- Summary
Lessons 8:
Design Patterns in Python
- Design patterns – elements
- Categories of design patterns
- Patterns in Python – creational
- Patterns in Python – structural
- Patterns in Python – behavioral
- Summary
Lessons 9:
Python – Architectural Patterns
- Introducing MVC
- Event-driven programming
- Microservice architecture
- Pipe and Filter architectures
- Summary
Lessons 10:
Deploying Python Applications
- Deployability
- Tiers of software deployment architecture
- Software deployment in Python
- Deployment – patterns and best practices
- Summary
Lessons 11:
Techniques for Debugging
- Maximum subarray problem
- Simple debugging tricks and techniques
- Logging as a debugging technique
- Debugging tools – using debuggers
- Advanced debugging – tracing
- Summary
Appendix – A
- Installing Python
- Running Python
- Basic syntax
- Conditional statements and loops
- Data structures
- Functions
- Summary
Appendix – B
- Object-oriented programming
- Modules and packages
- File operations
- Error and exception handling
- Summary