از طریق بهینه سازی کد Python می توانید اطمینان حاصل کنید که کد شما از منابع کمتری استفاده می کند و سریع تر از قبل عمل می کند. در این دوره پیشرفته، نکات و تکنیک هایی را می آموزیم که در بهینه سازی کد به شما کمک می کنند تا کارآیی بهتری به دست آورید. مربی Miki Tebeka ابزار کلی کار از جمله نحوه ی استفاده از ابزارهایی که Python برای اندازه گیری زمان ارائه می دهد و همچنین نحوه ی استفاده از line_profiler برای دریافت خط به خط اطلاعات پروفایل را توضیح می دهد. او همچنین چگونگی انتخاب ساختارهای مناسب داده، چگونگی سرعت بخشیدن به کد از طریق الگوریتم های تقریبی و نحوه ی استفاده از NumPy برای محاسبات عددی سریع تر را نشان می دهد. مربی این دوره را با بحث درباره روش اتمام فرآیند به پایان می رساند.

سرفصل ها:

  • قوانین بهینه سازی
  • اندازه گیری زمان
  • استفاده از line_profiler
  • انتخاب ساختار مناسب اطلاعات
  • استفاده از ماژول bisect
  • تخصیص حافظه در پایتون
  • ذخیره سازی، cheating و محاسبات موازی
  • NumPy، Numba و Cython
  • طراحی و بررسی کد
  • مقدمه:
  • بزار کار
  • همیشه ابتدا پروفایل
  • نکات کلی
  • اندازه گیری زمان
  • CPU profiling
  • line_profiler
  • ردیابی تخصیص حافظه
  • memory_profiler
  • انتخاب ساختار درست اطلاعات
  • نشانه گذاری Big-O
  • دو بخش کردن
  • ردیف
  • Heapq
  • فراتر از کتابخانه استاندارد
  • ترفندهای کار
  • ذخیره سازی نام های محلی
  • حذف فرمان های تابع
  • استفاده از  slot ها
  • Built-ins
  • تخصیص
  • ذخیره سازی
  • بررسی اجمالی
  • قبل از محاسبه
  • lru_cache
  • Joblib
  • Cheating
  • چه زمانی تقریب ها به اندازه کافی خوب هستند
  • نمونه های Cheating
  • محاسبات موازی
  • Amdahl’s Law
  • موضوعات
  • فرآیندها
  • فراتر از Python
  • NumPy
  • Numba
  • Cython
  • PyPy
  • پسوند C
  • اضافه کردن بهینه سازی به فرآیند شما
  • چرا ما به پروسه نیاز داریم؟
  • طراحی و بررسی کد
  • معیارهای
  • نظارت و هشدار
  • نتیجه
  • مراحل بعدی