این دوره آموزشی توسط Google طراحی شده و برای یادگیری مهارتهای اتوماسیون سیستمها با استفاده از Python، Git و Linux است.
بخش ۱: مبانی پایتون برای سیستمهای IT
فصل ۱: آشنایی با زبان پایتون در دنیای فناوری اطلاعات
-
معرفی نقش پایتون در خودکارسازی سیستمهای IT
-
مزایای استفاده از پایتون نسبت به زبانهای دیگر در مدیریت سیستم
-
تاریخچه و نسخههای مختلف پایتون
-
معرفی محیطهای توسعه (IDEs) مانند VS Code، PyCharm و Thonny
-
آشنایی با نحوه اجرای فایلهای پایتون در محیطهای لینوکس و ویندوز
-
بررسی ساختار کلی یک برنامه پایتونی
فصل ۲: مفاهیم پایه و نحوه اجرای دستورات پایتون
-
آشنایی با متغیرها و انواع دادهها (اعداد، رشتهها، بولین و…)
-
مفهوم type casting و تبدیل نوع دادهها
-
کار با عملگرهای ریاضی، منطقی و مقایسهای
-
استفاده از ورودی و خروجی استاندارد (input و print)
-
ساختار اجرای ترتیبی، شرطی و تکراری در پایتون
-
تمرینهای کاربردی در محیطهای واقعی IT
فصل ۳: ساختار دادهها و سازماندهی اطلاعات
-
لیستها (Lists): تعریف، افزودن، حذف و جستجوی عناصر
-
تاپلها (Tuples) و تفاوت آنها با لیستها
-
دیکشنریها (Dictionaries) برای نگهداری دادههای کلید–مقدار
-
مجموعهها (Sets) و کاربرد آنها در عملیات حذف دادههای تکراری
-
کار با توابع داخلی پایتون جهت پردازش دادهها
-
ترکیب ساختارهای داده برای مدیریت اطلاعات سیستمی
فصل ۴: توابع و ماژولها در پایتون
-
مفهوم تابع (Function) و اهمیت آن در کدنویسی ساختیافته
-
تعریف و فراخوانی توابع با پارامترها و مقادیر بازگشتی
-
متغیرهای محلی و سراسری
-
ماژولها (Modules) و کتابخانههای استاندارد پایتون
-
وارد کردن و استفاده از ماژولهای خارجی
-
سازماندهی کد در قالب ماژولها و پکیجها برای استفاده در پروژههای IT
فصل ۵: ساختارهای کنترلی و منطق برنامهنویسی
-
دستورات شرطی if، elif، else و کاربرد آنها در تصمیمگیری
-
حلقههای for و while برای پردازش دادههای تکراری
-
استفاده از break، continue و pass در کنترل جریان برنامه
-
طراحی منطق شرطی برای اتوماسیون فرآیندهای سیستمی
-
تمرینهای کاربردی در مدیریت فایلها و دادهها
فصل ۶: کار با رشتهها و پردازش متن
-
ایجاد، ادغام و قالببندی رشتهها
-
جستجو، جایگزینی و برش (Slicing) رشتهها
-
روشهای پاکسازی و بررسی محتوای متنی
-
استفاده از f-string برای قالببندی پیشرفته
-
کاربرد رشتهها در پردازش فایلهای متنی سیستم
-
تحلیل دادههای لاگ و خروجیهای سیستمی با پایتون
فصل ۷: کار با فایلها در سیستمعامل
-
مفهوم فایل و مسیر در سیستمهای لینوکس و ویندوز
-
باز کردن، خواندن و نوشتن فایلها با روشهای مختلف
-
بررسی خطاهای احتمالی هنگام خواندن یا نوشتن فایلها
-
مدیریت فایلهای متنی و باینری
-
پردازش گزارشها و فایلهای پیکربندی سیستم با پایتون
-
معرفی مفهوم Context Manager برای کار امن با فایلها
فصل ۸: خطاها، استثناها و رفع اشکال در برنامهها
-
درک مفهوم خطا (Error) و استثنا (Exception)
-
استفاده از بلوک try، except، else و finally
-
مدیریت خطاهای ورودی و فایل
-
روشهای تشخیص و رفع باگها در اسکریپتها
-
آشنایی با ابزارهای ساده دیباگ در پایتون
-
طراحی کد پایدار و مقاوم در محیطهای واقعی IT
فصل ۹: مستندسازی، خوانایی و بهترین شیوههای کدنویسی
-
اصول نوشتن کد قابلخواندن و نگهداری
-
اهمیت کامنتگذاری و مستندسازی کد
-
استانداردهای PEP8 در پایتون
-
مدیریت ساختار پوشهها و فایلهای پروژه
-
اهمیت نامگذاری درست متغیرها و توابع
-
آمادهسازی کد برای همکاری تیمی و نگهداری طولانیمدت
بخش ۲: استفاده از پایتون برای تعامل با سیستمعامل
فصل ۱: آشنایی با نقش پایتون در مدیریت سیستمعامل
-
تعریف تعامل بین پایتون و سیستمعامل
-
کاربردهای پایتون در مدیریت وظایف سیستمی
-
تفاوت اجرای پایتون در ویندوز و لینوکس
-
مروری بر ماژولهای استاندارد مخصوص سیستمعامل (os، sys، subprocess، shutil)
-
مفهوم اتوماسیون سیستمی و مزایای آن برای مدیران IT
فصل ۲: مدیریت فایلها و پوشهها
-
ساخت، حذف و تغییر نام فایلها و دایرکتوریها
-
خواندن و نوشتن دادهها در فایلهای متنی
-
بررسی اندازه فایلها، نوع آنها و مجوزها
-
مدیریت مسیرها و شاخهها با os.path
-
کار با ساختار درختی فایلها و پیمایش پوشهها
-
کاربرد shutil برای کپی و انتقال فایلها
فصل ۳: متغیرهای محیطی و مسیرهای سیستم
-
مفهوم Environment Variables در سیستمعامل
-
دریافت و تغییر متغیرهای محیطی با پایتون
-
کاربرد متغیر PATH در اجرای برنامهها
-
بررسی مسیرهای پیشفرض سیستم و کتابخانهها
-
تنظیم موقت و دائمی متغیرهای محیطی برای پروژههای اتوماسیون
-
مثالهای کاربردی از کنترل محیط اجرای برنامهها
فصل ۴: اجرای دستورات سیستم از طریق پایتون
-
معرفی ماژول subprocess برای اجرای دستورهای شل
-
تفاوت بین os.system و subprocess.run
-
بررسی نحوهی ارسال پارامترها به دستورات سیستم
-
خواندن خروجی دستورات و تحلیل نتیجه
-
کاربرد در سناریوهای واقعی مانند بررسی وضعیت سرویسها
-
کنترل خطا و زمانبندی اجرای دستورها
فصل ۵: بررسی و مدیریت پردازشها (Processes)
-
مفهوم فرآیند (Process) و شناسه پردازش (PID)
-
اجرای همزمان چند فرآیند با subprocess.Popen
-
متوقفکردن یا انتظار برای پایان پردازشها
-
مانیتورینگ مصرف منابع توسط فرآیندها
-
مدیریت پردازشهای پسزمینه در لینوکس و ویندوز
-
طراحی اسکریپت برای بررسی وضعیت اجرای برنامهها
فصل ۶: بررسی و کنترل مجوزها و مالکیتها
-
مفهوم دسترسیها و مجوزها در فایلسیستمها
-
نحوه بررسی سطح دسترسی فایلها
-
مدیریت مالک و گروه فایلها
-
تغییر مجوزها با os.chmod و بررسی محدودیتها
-
پیادهسازی کنترل دسترسی در سناریوهای سازمانی
-
تشخیص و رفع خطاهای Permission Denied در اتوماسیون
فصل ۷: کار با زمان و تاریخ در سیستمعامل
-
دریافت زمان و تاریخ فعلی سیستم
-
ثبت زمان در لاگها و گزارشها
-
محاسبه و مقایسه زمانها برای بررسی رویدادها
-
زمانبندی وظایف دورهای با پایتون و ابزارهای سیستمعامل
-
هماهنگی منطقه زمانی (Time Zone) در محیطهای مختلف
-
ثبت رویدادهای سیستمی با تاریخ دقیق
فصل ۸: کار با فایلهای پیکربندی و لاگها
-
ساختار و مفهوم فایلهای پیکربندی (config.ini، yaml، json)
-
خواندن و نوشتن تنظیمات با ماژولهای پایتون
-
بررسی و تجزیه محتوای لاگها برای تحلیل خطاها
-
استخراج دادههای خاص از فایلهای سیستمی
-
ثبت خروجی و گزارش عملکرد برنامهها در فایلهای لاگ
-
آمادهسازی دادهها برای تحلیل خودکار خطا
فصل ۹: اتوماسیون وظایف سیستمعامل
-
طراحی وظایف تکراری برای اجرای خودکار
-
ایجاد ساختار پوشهها، بکاپها و گزارشها
-
کنترل اجرای وظایف در زمانهای مشخص با Cron و Task Scheduler
-
ادغام اسکریپتها در فرآیندهای سازمانی
-
هماهنگی بین وظایف در چند سیستم یا سرور
-
اصول طراحی پایدار و مقاوم در برابر خطا در اتوماسیون
فصل ۱۰: تحلیل و نگهداری سیستم با پایتون
-
بررسی فضای دیسک، پردازنده و حافظه
-
تشخیص فایلهای غیرضروری یا حجیم
-
بررسی سلامت سیستم از طریق پایتون
-
تولید گزارشهای تحلیلی از وضعیت منابع
-
شناسایی الگوهای عملکردی در زمان اجرا
-
آمادهسازی گزارشهای مدیریتی و ارسال خودکار
بخش ۳: نسخهسازی و کنترل تغییرات با Git و GitHub
فصل ۱: مفاهیم پایهای کنترل نسخه (Version Control Concepts)
-
تعریف کنترل نسخه و اهمیت آن در پروژههای نرمافزاری
-
مشکلات توسعه بدون سیستم کنترل نسخه
-
معرفی Git به عنوان سیستم کنترل نسخه توزیعشده (Distributed VCS)
-
تفاوت بین Git و سایر ابزارها مانند SVN یا Mercurial
-
ساختار داخلی Git و مفهوم Snapshot
فصل ۲: شروع کار با Git (Getting Started with Git)
-
نصب Git در سیستمعاملهای مختلف
-
پیکربندی اولیه Git (نام، ایمیل، قالب خروجی)
-
ایجاد یک Repository جدید (محلی و راهدور)
-
بررسی ساختار فایلها و پوشههای Git
-
آشنایی با وضعیت فایلها (Untracked, Staged, Committed)
-
درک چرخه عمر فایلها در Git
فصل ۳: مدیریت تغییرات در پروژهها (Tracking Changes)
-
افزودن فایلها به Stage
-
ذخیره تغییرات با Commit و پیامهای توصیفی
-
مشاهده تاریخچه تغییرات با Log
-
مقایسه تغییرات بین نسخهها (Diff)
-
بازگردانی فایلها به وضعیت قبلی (Checkout و Reset)
-
حذف یا نادیدهگرفتن فایلها در Git با استفاده از .gitignore
فصل ۴: کار با شاخهها و ادغام تغییرات (Branching and Merging)
-
مفهوم شاخه (Branch) در توسعه نرمافزار
-
ایجاد، تغییر و حذف شاخهها
-
استفاده از Git Merge برای ادغام تغییرات
-
حل تعارضها (Conflicts) هنگام ادغام
-
استفاده از Git Rebase و تفاوت آن با Merge
-
استراتژیهای معمول شاخهبندی در پروژههای بزرگ (Git Flow, Feature Branching)
فصل ۵: همکاری تیمی با GitHub (Collaboration and Remote Repositories)
-
معرفی GitHub و نقش آن در توسعه تیمی
-
ایجاد Repository در GitHub
-
افزودن Remote Repository و همگامسازی با Local Repository
-
ارسال تغییرات به مخزن راهدور (Push) و دریافت تغییرات جدید (Pull, Fetch)
-
Fork، Clone و Pull Request در پروژههای تیمی
-
بررسی Workflow همکاری در پروژههای متنباز
فصل ۶: مدیریت نسخهها و انتشار (Version Management and Releases)
-
ایجاد برچسبها (Tags) برای نسخههای پایدار
-
مدیریت نسخههای نرمافزار با Semantic Versioning
-
ایجاد Snapshot از وضعیت پروژه در زمان مشخص
-
آمادهسازی نسخه برای انتشار در GitHub
-
مستندسازی تغییرات در فایل CHANGELOG
-
استفاده از GitHub Releases برای توزیع نرمافزار
فصل ۷: بررسی تاریخچه و تحلیل تغییرات (History and Change Analysis)
-
مشاهده تغییرات بهصورت گرافیکی
-
استفاده از Git Blame برای بررسی منبع هر خط از کد
-
بازیابی نسخههای حذفشده و بررسی خطاها
-
فیلتر کردن Commitها بر اساس نویسنده یا تاریخ
-
استخراج آمار مشارکت و فعالیت تیمی
-
تحلیل عملکرد پروژه با Git Stats
فصل ۸: بهترین شیوهها در کار با Git و GitHub (Best Practices)
-
نوشتن پیامهای Commit حرفهای و قابلفهم
-
زمانبندی مناسب Commitها
-
ساختاردهی به شاخهها برای تیمهای بزرگ
-
استفاده از Pull Request Template برای هماهنگی تیمی
-
قوانین بررسی کد (Code Review) و Merge Policy
-
نکات امنیتی در مدیریت دسترسی کاربران در GitHub
فصل ۹: یکپارچهسازی Git با پروژههای اتوماسیون پایتون
-
مدیریت نسخه اسکریپتهای Python با Git
-
بهکارگیری Git در فرآیند CI/CD
-
خودکارسازی Commit و Push در پروژههای اتوماسیون
-
استفاده از Webhooks در GitHub برای اجرای خودکار عملیات
-
ردیابی تغییرات در فایلهای پیکربندی سرورها
-
نگهداری مخزن مرکزی برای اسکریپتهای سازمانی
خدمات شبکه فراز نتورک | پیشرو در ارائه خدمات دیتاسنتری و کلود

نقد و بررسی وجود ندارد.