یادگیری در آکادمی کیوبیت

برنامه نویسی پایتون - ترم تکمیلی

ادامه مسیر پایتون مقدماتی با توابع پیشرفته، برنامه‌نویسی شیءگرا، ماژول‌ها و محیط مجازی؛ پردازش داده، API، Web Scraping، SQLite و رابط گرافیکی Tkinter. یادگیری پروژه‌محور و ساخت یک پروژه چندبخشی کاربردی؛ ویدئوها در SpotPlayer ارائه می‌شوند.

کامپیوتر و برنامه‌نویسیپیشرفته
شیوه برگزاریحضوری
ساختار دوره۱۰ سرفصل
این دوره را به اشتراک بگذارید qubitacademy.ir/c/e07
نگاهی به دوره آکادمی کیوبیت
برنامه نویسی پایتون - ترم تکمیلی

معرفی مدرسین دوره

همراه شما در مسیر یادگیری

۳ مدرس
محمدحسین علیزاده محمدحسین علیزادهکارشناسی مهندسی کامپیوتربرنامه‌نویس و توسعه‌دهنده وب - مهندسی هوش مصنوعیمشاهده پروفایل مدرس
۱ از ۳
معرفی دوره

درباره دوره پایتون تکمیلی

دوره پایتون تکمیلی آکادمی کیوبیت ادامه مسیر دوره مقدماتی است و شما را از برنامه‌نویسی پایه به توسعه برنامه‌های ساخت‌یافته، ماژولار و کاربردی می‌رساند. در این دوره قابلیت‌های پیشرفته زبان، برنامه‌نویسی شیءگرا و مدیریت پکیج‌ها را می‌آموزید و سپس سراغ پردازش متن و داده، کتابخانه استاندارد، ارتباط با سرویس‌های وب، استخراج داده از صفحات وب، پایگاه داده SQLite و ساخت رابط گرافیکی با Tkinter می‌روید.

پیش‌نیاز و مخاطبان

این دوره برای هنرجویانی مناسب است که به مباحث پایتون مقدماتی کیوبیت یا دانش معادل آن مسلط‌اند و می‌خواهند مهارت‌های کاربردی و پیشرفته خود را توسعه دهند.

در پایان دوره چه مهارت‌هایی خواهید داشت؟

  • طراحی توابع انعطاف‌پذیر با *args، **kwargs، Lambda و Comprehension.
  • درک Iterable، Iterator و Generator و استفاده مناسب از Decorator.
  • طراحی برنامه بر پایه Class، Encapsulation، Inheritance و Polymorphism.
  • سازمان‌دهی پروژه با Module و Package و مدیریت وابستگی‌ها با pip و Virtual Environment.
  • مدیریت خطاهای پیشرفته، Debugging، Logging و مستندسازی کد.
  • پردازش متن با Regex و کار با JSON، CSV و فایل‌های PDF.
  • کار با تاریخ و زمان، مسیرها، فایل‌ها، پوشه‌ها و آرشیو ZIP.
  • ارسال درخواست HTTP با Requests، مصرف API و استخراج داده با BeautifulSoup.
  • پیاده‌سازی عملیات CRUD و Queryهای پارامتری در SQLite.
  • ساخت رابط دسکتاپ با Tkinter و اتصال آن به پایگاه داده.
  • طراحی و ارائه یک پروژه چندبخشی با ساختار و اجزای مناسب.

شیوه یادگیری و پروژه نهایی

دوره بر درک مفاهیم، حل مسائل واقعی و پیاده‌سازی پروژه تمرکز دارد و هر بخش با مثال، تمرین و پروژه کوچک تکمیل می‌شود. در پروژه نهایی، می‌توانید یک سیستم مدیریت آموزشگاه، مدیریت فروش و انبار، دفترچه مخاطبین پیشرفته، مدیریت هزینه‌ها یا نرم‌افزار کتابخانه بسازید. پروژه با تحلیل نیازمندی‌ها، تفکیک مسئولیت‌ها، مدل‌سازی شیءگرا، ذخیره‌سازی داده، اعتبارسنجی و مدیریت خطا پیش می‌رود و متناسب با موضوع از API، پردازش فایل، Web Scraping یا رابط Tkinter استفاده می‌کند.

ساختار و نکات آموزشی

سرفصل دوره شامل ۱۰ بخش و ۳۶ مبحث است. مباحث random و math در قالب مرور ماژول‌ها و پروژه‌ها استفاده می‌شوند. در بخش Web Scraping از صفحات مجاز یا تمرینی با رعایت محدودیت‌های سایت‌ها استفاده می‌شود. عمق مبحث PDF متناسب با زمان و نیاز کلاس تنظیم می‌شود و JSON و CSV اولویت آموزشی بالاتری دارند. زمان‌بندی و تعداد جلسات هر بخش متناسب با تقویم آموزشی، مدت جلسات و سطح کلاس تعیین می‌شود.

سرفصل تفصیلی دوره

1. قابلیت‌های پیشرفته زبان پایتون

  1. توابع پیشرفته و پارامترهای انعطاف‌پذیر: مرور Function و Scope؛ آموزش *args و **kwargs؛ پارامترهای پیش‌فرض؛ ارسال آرگومان‌های نام‌دار؛ طراحی توابع انعطاف‌پذیر.
  2. Lambda و توابع مرتبه بالاتر: تعریف Lambda و استفاده عملی از map()، filter()، zip() و enumerate() در پردازش مجموعه‌های داده.
  3. Comprehensionها: List Comprehension، Dictionary Comprehension و Set Comprehension همراه با شرط؛ تبدیل حلقه‌های متداول به ساختارهای Pythonic.
  4. Iterable و Iterator: مفهوم قابل پیمایش بودن داده‌ها؛ سازوکار iter() و next()؛ درک نحوه عملکرد حلقه for در سطح داخلی.
  5. Generator و yield: ایجاد Generator Function؛ استفاده از yield؛ تفاوت Generator با List؛ کاربرد در پردازش داده‌های حجیم با مصرف کمتر منابع.
  6. Decorator: درک Function به‌عنوان Object؛ ساخت Wrapper و Decorator ساده؛ استفاده از @decorator؛ کاربردهایی مانند Logging و کنترل دسترسی.

2. برنامه‌نویسی شیءگرا

  1. Class، Object و Constructor: تعریف Class و Object؛ استفاده از __init__؛ مفهوم self؛ ساخت نمونه‌های مستقل از یک کلاس.
  2. Attribute و Method: Instance Attribute، Class Attribute و Instance Method؛ آشنایی کاربردی با Class Method و Static Method.
  3. Encapsulation و Property: کنترل دسترسی به داده‌های داخلی؛ قراردادهای نام‌گذاری؛ Getter و Setter؛ استفاده از @property برای مدیریت ویژگی‌ها.
  4. Inheritance و super(): طراحی رابطه وراثت؛ ساخت کلاس والد و فرزند؛ استفاده مجدد از رفتارها؛ فراخوانی سازنده و متدهای والد با super().
  5. Polymorphism و Method Overriding: بازنویسی رفتار کلاس والد؛ استفاده چندشکلی از اشیاء؛ طراحی رابط رفتاری مشترک بین کلاس‌ها.
  6. Magic Methods: آشنایی با متدهای ویژه مانند __str__، __repr__ و __len__؛ درک نحوه سفارشی‌سازی رفتار اشیاء پایتون.

3. ماژول‌ها، پکیج‌ها و محیط پروژه

  1. Modules و Packages: ساخت Module اختصاصی؛ Import به روش‌های مختلف؛ سازمان‌دهی کد در Package؛ تفکیک مسئولیت فایل‌های پروژه.
  2. نقطه ورود برنامه و اجرای مستقیم Module: درک نقطه ورود برنامه؛ استفاده از الگوی if __name__ == "__main__" برای جداسازی اجرای مستقیم از Import شدن Module.
  3. pip، Virtual Environment و وابستگی‌ها: ایجاد محیط مجازی؛ نصب و حذف پکیج‌ها با pip؛ استفاده از requirements.txt؛ اصول مدیریت وابستگی‌های پروژه.

4. کیفیت کد و مدیریت خطای پیشرفته

  1. Exception Handling پیشرفته: مرور try و except؛ آموزش else، finally و raise؛ ساخت Exception سفارشی؛ طراحی خطاهای قابل مدیریت در برنامه.
  2. Debugging، Logging و مستندسازی کد: استفاده از Debugger در VS Code؛ ثبت رویدادها با logging؛ نوشتن Docstring؛ آشنایی با Type Hint برای خوانایی و نگهداری بهتر کد.

5. پردازش متن و فرمت‌های داده

  1. Regular Expression: کار با ماژول re؛ الگوهای پایه Regex؛ توابع search، match، findall و sub برای اعتبارسنجی و استخراج اطلاعات از متن.
  2. JSON: ساختار JSON؛ تبدیل داده بین Python و JSON؛ خواندن و نوشتن فایل JSON؛ استفاده از داده JSON در برنامه‌ها و APIها.
  3. CSV: خواندن و نوشتن فایل‌های CSV با csv.reader، csv.writer، DictReader و DictWriter؛ پردازش داده‌های جدولی.
  4. کار با فایل‌های PDF: آشنایی با کتابخانه مناسب PDF؛ خواندن متن و اطلاعات پایه؛ ساخت یا پردازش ساده فایل‌های PDF در پروژه‌های کاربردی.

6. کتابخانه استاندارد و مدیریت فایل‌ها

  1. datetime و مدیریت تاریخ و زمان: ساخت و مقایسه تاریخ و زمان؛ محاسبه اختلاف زمانی؛ فرمت‌کردن و تبدیل رشته به تاریخ؛ استفاده از datetime و timedelta.
  2. os و pathlib: کار با مسیر فایل و پوشه؛ ایجاد و بررسی مسیرها؛ نام و پسوند فایل‌ها؛ استفاده از pathlib برای مدیریت File System.
  3. shutil و zipfile: کپی، انتقال و حذف فایل‌ها و پوشه‌ها؛ ایجاد و استخراج فایل‌های ZIP برای سناریوهای پشتیبان‌گیری و آرشیو.

7. وب، API و Web Scraping

  1. مبانی HTTP: آشنایی با Request، Response، URL، Header، Query String و Status Code؛ متدهای مهم HTTP مانند GET و POST.
  2. کتابخانه Requests: ارسال درخواست‌های HTTP و دریافت Response؛ بررسی Header و Status Code؛ استفاده از Query Parameter؛ مدیریت خطاهای ارتباطی.
  3. API و داده‌های JSON: مفهوم API و REST در سطح کاربردی؛ دریافت و ارسال داده؛ کار با JSON Response؛ ساخت برنامه مصرف‌کننده API.
  4. Web Scraping با BeautifulSoup: دریافت HTML با Requests؛ تحلیل DOM؛ یافتن عناصر؛ استخراج متن، لینک و داده؛ رعایت اصول پایه و محدودیت‌های Web Scraping با استفاده از صفحات مجاز یا تمرینی.

8. پایگاه داده و SQLite

  1. مبانی پایگاه داده رابطه‌ای و SQL: مفاهیم Database، Table، Row، Column و Primary Key؛ دستورات اصلی SQL شامل CREATE، SELECT، INSERT، UPDATE و DELETE.
  2. اتصال Python به SQLite: کار با sqlite3؛ ایجاد Connection و Cursor؛ ساخت دیتابیس و جدول؛ مدیریت تراکنش و بستن صحیح منابع.
  3. CRUD در SQLite: پیاده‌سازی کامل Create، Read، Update و Delete از داخل برنامه Python؛ سازمان‌دهی عملیات دیتابیس در Functionهای مستقل.
  4. Query پیشرفته و Parameterized Query: فیلتر، مرتب‌سازی و جست‌وجوی داده‌ها؛ WHERE و ORDER BY؛ استفاده از پارامترها برای جلوگیری از ساخت Query ناامن.

9. رابط گرافیکی با Tkinter

  1. مبانی Tkinter و Widgetها: ساخت Window؛ کار با Label، Button، Entry و Text و سایر Widgetهای پایه برای طراحی رابط کاربری دسکتاپ.
  2. Layout، Event و اعتبارسنجی فرم: چیدمان با pack، grid و place؛ مدیریت Event؛ دریافت اطلاعات کاربر؛ اعتبارسنجی ورودی در فرم‌ها.
  3. اتصال Tkinter به SQLite: ساخت رابط گرافیکی CRUD؛ ثبت، نمایش، ویرایش و حذف داده‌ها؛ اتصال لایه رابط کاربری به پایگاه داده SQLite.

10. پروژه نهایی

  1. پروژه نهایی دوره: طراحی و پیاده‌سازی یک پروژه چندبخشی با استفاده ترکیبی از OOP، Module، Package، مدیریت خطا، فایل یا SQLite، API و در صورت نیاز Tkinter. نمونه‌های پیشنهادی: سیستم مدیریت آموزشگاه، مدیریت فروش و انبار، دفترچه مخاطبین پیشرفته، مدیریت هزینه‌ها یا نرم‌افزار مدیریت کتابخانه. چارچوب پیشنهادی: تحلیل نیازمندی‌ها، تفکیک مسئولیت‌ها، مدل‌سازی با Class، ذخیره‌سازی و CRUD، اعتبارسنجی و Logging، استفاده متناسب از API یا Web Scraping یا فایل، و ارائه ساختار و تصمیم‌های فنی پروژه.

دسترسی به ویدئوها

ویدئوهای دوره از طریق SpotPlayer ارائه می‌شوند.

دریافت فایل سرفصل رسمی دوره

آموزش برنامه‌نویسی شی‌گرا (OOP)اجرای پروژه‌های واقعی و کاربردیآموزش مدیریت خطاها و دیباگ حرفه‌ایکار با فایل‌ها، JSON و ماژول‌های کاربردیآموزش Git و اصول مدیریت پروژهآشنایی با Virtual Environment و Package Managementآموزش استانداردهای کدنویسی (Clean Code)تقویت مهارت حل مسئله و تفکر الگوریتمیآمادگی برای ورود به هوش مصنوعی، توسعه وب و تحلیل دادهمناسب برای ورود به بازار کار و انجام پروژه‌های حرفه‌ای
شهریه حضوری ۵,۰۰۰,۰۰۰تومان
۴ قسط ۱,۲۵۰,۰۰۰ تومانی با دیجی‌پی
ثبت‌نام
در حال اتصال دوباره... اتصال دوباره برقرار نشد نشست منقضی شد ارتباط با سرور برای چند لحظه قطع شده؛ لطفاً چند ثانیه صبر کنید. تلاش از ، تلاش بعدی تا ثانیه دیگر امکان اتصال دوباره وجود ندارد. صفحه را تازه‌سازی کنید. این نشست دیگر روی سرور فعال نیست. صفحه را تازه‌سازی کنید.