آموزش بهترین روش‌ها و اتوماسیون در Python DevOps - آخرین آپدیت

دانلود Python DevOps Best Practices and Automation

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: این دوره دارای قابلیت Coursera Coach است! روشی هوشمندتر برای یادگیری با گفتگوهای تعاملی و همزمان که به شما کمک می‌کند دانش خود را بسنجید، فرضیات را به چالش بکشید و با پیشرفت در دوره، درک خود را عمیق‌تر کنید. در این دوره، شما مهارت‌های لازم برای ادغام پایتون در فرآیندهای DevOps را از طریق تسلط بر بهترین روش‌ها برای اتوماسیون، تعامل با API، تایپ استاتیک (Static Typing)، تست‌نویسی و خط لوله‌های CI/CD کسب خواهید کرد. شما کار با پایتون برای تعامل با APIها، خودکارسازی وظایف DevOps و پیاده‌سازی بهترین روش‌ها برای نوشتن کد مستحکم را بررسی خواهید کرد. همچنین به بررسی عمیق تست‌نویسی با استفاده از Pytest و پیکربندی یک خط لوله کامل CI/CD برای خودکارسازی گردش‌های کاری توسعه و تسهیل استقرار (Deployment) خواهید پرداخت. دوره با معرفی تعامل با API با استفاده از کتابخانه requests شروع می‌شود، جایی که یاد می‌گیرید چگونه درخواست‌های GET و POST ارسال کنید، احراز هویت را مدیریت کنید و خطاهای HTTP را کنترل کنید. سپس، در تایپ استاتیک در پایتون مسلط خواهید شد و از Type Hints برای اطمینان از کد تمیزتر و قابل نگهداری‌تر استفاده خواهید کرد. این بخش همچنین شامل تکنیک‌هایی برای تایپ انعطاف‌پذیر با سیستم تایپ پایتون و بهترین روش‌ها برای استفاده از Generics و Type Hints در Decoratorها و Generatorها است. سپس یاد می‌گیرید که چگونه روش‌های تست مستحکم را با Pytest پیاده‌سازی کنید، از جمله نوشتن Assertionها، مدیریت شکست‌های تست، Mock کردن وابستگی‌های خارجی و ایجاد Fixtureهای قابل استفاده مجدد. این دوره همچنین یک راهنمای جامع برای ساخت خط لوله CI/CD ارائه می‌دهد و نشان می‌دهد که چگونه تست، نسخه‌گذاری، استقرار و موارد دیگر را با ابزارهایی مانند GitHub Actions، Pytest و Semantic Release خودکار کنید. این دوره برای توسعه‌دهندگان سطح متوسط پایتون که به دنبال بهینه‌سازی فرآیندهای DevOps خود هستند، در نظر گرفته شده است. آشنایی با اصول اولیه پایتون و مفاهیم DevOps الزامی است. در پایان دوره، شما دانش و تجربه عملی لازم برای خودکارسازی فرآیندها، تضمین کیفیت کد و ادغام بهترین روش‌های DevOps در پروژه‌های پایتون خود را خواهید داشت. در پایان دوره، شما قادر خواهید بود اپلیکیشن‌های پایتون مستحکم بسازید، گردش‌های کاری DevOps را خودکار کنید، کد کارآمد و قابل نگهداری بنویسید و خط لوله‌های خودکار CI/CD را از ابتدا تا انتها ایجاد کنید.

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

تعامل با API با استفاده از کتابخانه Requests API Interaction with the Requests Library

  • مقدمه بخش Section Introduction

  • ایجاد GitHub Personal Access Token برای دسترسی به API Generating a GitHub Personal Access Token for API Access

  • انجام درخواست‌های GET برای بازیابی داده‌ها Making GET Requests to Retrieve Data

  • ارسال داده‌ها با استفاده از Query Parameters Passing Data with Query Parameters

  • ارسال داده‌ها با درخواست‌های POST Sending Data with POST Requests

  • درک و تفسیر کدهای وضعیت HTTP Understanding and Interpreting HTTP Status Codes

  • ایجاد خودکار Exception برای خطاهای HTTP Automatic Exception Raising for HTTP Errors

  • پیاده‌سازی احراز هویت پایه (Basic Authentication) Implementing Basic Authentication

  • امن‌سازی درخواست‌ها با احراز هویت مبتنی بر توکن Securing Requests with Token-Based Authentication

  • جلوگیری از توقف نامحدود با استفاده از Timeout Preventing Indefinite Hangs with Timeouts

  • پیاده‌سازی یک مکانیزم ساده برای تلاش مجدد (Retry) Implementing a Simple Retry Mechanism

  • تلاش مجدد پیشرفته: Exponential Backoff و Jitter Advanced Retries: Exponential Backoff and Jitter

نوشتن کد مستحکم با استفاده از Static Typing Writing Robust Code with Static Typing

  • مقدمه بخش Section Introduction

  • پیکربندی Pylance در VS Code برای بررسی بهینه تایپ Configuring Pylance in VS Code for Optimal Type Checking

  • مقدمه‌ای بر سیستم Type Hint در پایتون An Introduction to Python's Type Hint System

  • اجتناب از اشتباهات رایج در استفاده از Type Hinting Avoiding Common Pitfalls in Type Hinting

  • اعمال Type Hints بر روی لیست‌ها Applying Type Hints to Lists

  • تعیین تایپ برای دیکشنری‌ها، تاپل‌ها و مجموعه‌ها Typing Dictionaries, Tuples, and Sets

  • استفاده از Union و Optional برای تایپ انعطاف‌پذیر Using Union and Optional for Flexible Typing

  • ایجاد دیکشنری‌های با تایپ سختگیرانه با TypedDict Creating Strictly-Typed Dictionaries with TypedDict

  • افزودن Type Hints به کلاس‌ها Adding Type Hints to Classes

  • حل وابستگی‌های تایپ با استفاده از Forward References Resolving Type Dependencies with Forward References

  • مقدمه‌ای بر Generic Types An Introduction to Generic Types

  • ایجاد متغیرهای تایپ محدود شده Creating Constrained Type Variables

  • تعریف متغیرهای تایپ محدود (Bounded) Defining Bounded Type Variables

  • استفاده از Generics در کلاس‌ها Using Generics with Classes

  • اعمال Type Hints بر روی Decoratorها Applying Type Hints to Decorators

  • بهبود اطلاعات تایپ برای Decoratorها Enhancing Type Information for Decorators

  • افزودن Type Hints به Generatorها Adding Type Hints to Generators

  • تعیین تایپ برای Iterableها و Iteratorها Typing Iterables and Iterators

تسلط بر تست خودکار با Pytest Mastering Automated Testing with Pytest

  • مقدمه بخش Section Introduction

  • نوشتن Assertionها با Pytest Writing Assertions with Pytest

  • راهنمای عملی توسعه تست‌محور (TDD) A Practical Guide to Test-Driven Development (TDD)

  • تحلیل شکست‌های تست و مدیریت مقایسه اعداد اعشاری Analyzing Test Failures and Handling Floating-Point Comparisons

  • تایید مدیریت Exception در تست‌ها Verifying Exception Handling in Tests

  • مدیریت تست‌هایی که انتظار شکست آن‌ها می‌رود Handling Tests That Are Expected to Fail

  • پیکربندی Pytest برای پروژه‌های شما Configuring Pytest for Your Projects

  • نادیده کردن مشروط تست‌ها (Skipping) Conditionally Skipping Tests

  • علامت‌گذاری و پیگیری شکست‌های مورد انتظار Marking and Tracking Expected Failures

  • سازماندهی تست‌ها با استفاده از Markerهای سفارشی Organizing Tests with Custom Markers

  • ساده‌سازی تنظیمات تست با Fixtureها Simplifying Test Setups with Fixtures

  • کنترل چرخه حیات Fixture با استفاده از Scopes Controlling Fixture Lifecycle with Scopes

  • ایجاد Fixtureهای قابل اشتراک‌گذاری با conftest.py Creating Sharable Fixtures with conftest.py

  • اجرای تست‌ها با ورودی‌های متعدد از طریق Parametrization Running Tests with Multiple Inputs via Parametrization

  • تکنیک‌های پیشرفته Parametrization Advanced Parametrization Techniques

  • مفاهیم اصلی Mocking Core Concepts of Mocking

  • استفاده از Decorator patch و Fixture mocker Using the patch Decorator and mocker Fixture

  • سفارشی‌سازی رفتار اشیاء Mock Customizing Mock Object Behavior

  • شبیه‌سازی Exceptionها و مقادیر بازگشتی پویا Simulating Exceptions and Dynamic Return Values

  • Side Effects پیشرفته با استفاده از Callables Advanced Side Effects with Callables

  • انتخاب بین Mock و MagicMock Choosing Between Mock and MagicMock

بهترین روش‌ها برای ساختاردهی به پروژه‌های پایتون Best Practices for Structuring Python Projects

  • مقدمه بخش Section Introduction

  • درک ماژول‌های پایتون Understanding Python Modules

  • سازماندهی کد با استفاده از Packageهای پایتون Organizing Code with Python Packages

  • ساختاردهی پروژه‌ها با استفاده از Subpackageها Structuring Projects with Subpackages

  • مقایسه Importهای Absolute در مقابل Relative Absolute vs. Relative Imports: A Comparison

  • عیب‌یابی خطاهای رایج در Import Troubleshooting Common Import Errors

  • اجرای ماژول‌ها به عنوان اسکریپت Executing Modules as Scripts

  • پیکربندی مدرن پروژه با pyproject.toml Modern Project Configuration with pyproject.toml

  • ادغام تست‌ها در ساختار پروژه چند فایلی Integrating Tests into a Multi-File Project Structure

ساخت یک خط لوله کامل CI/CD برای پروژه‌های پایتون Building a Full CI/CD Pipeline for Python Projects

  • مقدمه بخش Section Introduction

  • ایجاد رابط خط فرمان (CLI) با استفاده از Click Creating Command-Line Interfaces with Click

  • انتخاب ابزارهای مناسب CI/CD برای پایتون Selecting the Right CI/CD Tools for Python

  • مروری بر طراحی خط لوله CI/CD ما An Overview of Our CI/CD Pipeline Design

  • راه‌اندازی مخزن GitHub و فضای کاری محلی Setting Up the GitHub Repository and Local Workspace

  • تدوین برنامه اجرای پروژه Outlining the Project Implementation Plan

  • تعریف Metadata پروژه با pyproject.toml Defining Project Metadata with pyproject.toml

  • توسعه ماژول اصلی HTTP Checker Developing the Core HTTP Checker Module

  • ساخت CLI – بخش اول Building the CLI – Part 1

  • ساخت CLI – بخش دوم Building the CLI – Part 2

  • ایجاد یک گردش کار حداقلی با GitHub Actions Creating a Minimal Viable Workflow with GitHub Actions

  • ادغام بررسی‌های Linting و قالب‌بندی کد Integrating Linting and Code Formatting Checks

  • گنجاندن تحلیل‌های تایپ استاتیک و امنیتی Incorporating Static Type and Security Analysis

  • پیکربندی Pytest برای خط لوله CI/CD Configuring Pytest for the CI/CD Pipeline

  • نوشتن تست برای HTTP Checker Writing Tests for the HTTP Checker

  • توسعه تست‌ها برای CLI Developing Tests for the CLI

  • خودکارسازی اجرای تست در گردش کار Automating Test Execution in the Workflow

  • بسته‌بندی پروژه به عنوان یک کتابخانه قابل توزیع Packaging the Project as a Distributable Library

  • امن‌سازی انتشار در PyPI با استفاده از OIDC Securing PyPI Publishing with OIDC

  • خودکارسازی نسخه‌گذاری با Semantic Release Automating Versioning with Semantic Release

  • ادغام Semantic Release در خط لوله Integrating Semantic Release into the Pipeline

  • استقرار در مخزن TestPyPI Deploying to the TestPyPI Repository

  • انتشار بسته شما در PyPI رسمی Publishing Your Package to the Official PyPI

  • بهینه‌سازی گردش کار CI/CD با Release Assets Optimizing the CI/CD Workflow with Release Assets

نمایش نظرات

آموزش بهترین روش‌ها و اتوماسیون در Python DevOps
جزییات دوره
12h 28m
84
(آخرین آپدیت)
24
- از 5
دارد
دارد
دارد
Chris Croft
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Chris Croft Chris Croft

مربی مدیریت، سخنران، نویسنده