دوستان و همراهان عزیز ، سرور اختصاصی مترجم فراز نتورک راه اندازی شد ، با توجه به api تخصصی خریداری شده برای سرور ، یه ترجمه حرفه ای تولید کرده و در اختیار شما بزرگواران قرار می دهیم

دانلود کتاب آموزشی Full-Stack Web Development with Python, Django, and React جلد اول

دسته‌بندی: برچسب: تاریخ به روز رسانی: 31 خرداد 1405 تعداد بازدید: 416 بازدید

۳۰۰,۰۰۰تومان

torobpay
هر قسط با ترب‌پی: ۷۵,۰۰۰تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
snapppay
هر قسط با اسنپ‌پی: ۷۵,۰۰۰تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.

دوره آموزشی Full-Stack Web Development with Python, Django, and React معمولاً برای کسانی طراحی می‌شود که می‌خواهند مهارت‌های توسعه وب کامل (Full-Stack) را با استفاده از Python, Django, و React یاد بگیرند. در این دوره، مفاهیم مرتبط با توسعه وب در هر دو سمت فرانت‌اند و بک‌اند پوشش داده می‌شود. در اینجا سرفصل‌های رایج این دوره آورده شده است:

بخش 1. مقدمه‌ای بر توسعه Full-Stack

 

فصل 1. تعریف Full-Stack Development

  • توضیح مفهوم Full-Stack Development و تفاوت آن با دیگر انواع توسعه وب (Frontend, Backend, یا تک‌لایه).
  • بررسی اجزای مختلف یک اپلیکیشن Full-Stack و نحوه همکاری آنها (فرانت‌اند، بک‌اند، پایگاه داده و غیره).

فصل 2. آشنایی با تکنولوژی‌های مختلف Full-Stack

  • معرفی تکنولوژی‌های رایج در توسعه Full-Stack:
    • Frontend: HTML, CSS, JavaScript, React.
    • Backend: Python, Django, Node.js.
    • Database: SQL (PostgreSQL, MySQL), NoSQL (MongoDB).
    • Version Control: Git, GitHub.
    • APIs: RESTful APIs, GraphQL.
    • DevOps: Docker, Continuous Integration/Continuous Deployment (CI/CD).

فصل 3. شرح ابزارهای مورد استفاده در این دوره

  • Python: زبان برنامه‌نویسی برای بک‌اند.
  • Django: فریم‌ورک توسعه سریع وب برای Python.
  • React: فریم‌ورک جاوا اسکریپت برای توسعه فرانت‌اند.
  • PostgreSQL / MySQL: پایگاه داده‌های رابطه‌ای.
  • Git: سیستم کنترل نسخه.
  • Docker: برای ساخت محیط‌های توسعه و استقرار پروژه.

فصل 4. نحوه همکاری بین فرانت‌اند و بک‌اند

  • Frontend vs Backend:
    • توضیح تفاوت‌ها و وظایف هر بخش در توسعه وب.
    • نحوه ارسال درخواست‌ها از فرانت‌اند به بک‌اند و دریافت پاسخ‌ها.
  • Architectural Patterns:
    • معرفی معماری‌های مختلف برای اپلیکیشن‌های Full-Stack (MVC, REST, microservices).
    • نحوه طراحی معماری یک اپلیکیشن Full-Stack.

فصل 5. مفهوم API در Full-Stack Development

  • معرفی API: توضیح چگونگی ارتباط بین فرانت‌اند و بک‌اند از طریق APIها.
  • RESTful APIs: آشنایی با اصول طراحی APIهای RESTful.
  • JSON: آشنایی با فرمت داده‌ای JSON و استفاده از آن در ارتباطات API.

فصل 6. آشنایی با مفاهیم Cloud Computing و استقرار اپلیکیشن‌ها

  • توضیح مفاهیم Cloud Computing (میزبانی وب در ابر) و سرویس‌های مختلف مانند AWS، Heroku و DigitalOcean.
  • مقدمه‌ای بر استقرار پروژه‌های Full-Stack در محیط‌های ابری.

فصل 7. مفاهیم مدیریت پروژه در توسعه Full-Stack

  • معرفی روش‌های مدیریت پروژه (Agile, Scrum).
  • ابزارهای مدیریت پروژه و کنترل نسخه (Trello, GitHub, Jira).

بخش 2. شروع با Django (بک‌اند)

 

فصل 1. نصب و راه‌اندازی Django

  • نصب محیط Python و Django:
    • نصب Python و ایجاد محیط مجازی (Virtual Environment).
    • نصب Django از طریق pip و آشنایی با تنظیمات پروژه.
  • شروع یک پروژه Django جدید:
    • استفاده از دستور django-admin startproject برای شروع پروژه جدید.
    • بررسی ساختار پوشه‌ها و فایل‌های اصلی پروژه (manage.py، settings.py، urls.py، wsgi.py).
  • ایجاد اولین اپلیکیشن Django:
    • استفاده از دستور python manage.py startapp برای ساخت اپلیکیشن جدید.
    • بررسی ساختار اپلیکیشن و چگونگی ادغام آن با پروژه اصلی.

فصل 2. مدل‌ها، ویوها، و URLها در Django

  • مدل‌ها (Models):
    • تعریف مدل‌ها برای ذخیره‌سازی داده‌ها در پایگاه داده.
    • استفاده از Django ORM (Object-Relational Mapping) برای مدیریت داده‌ها.
    • ایجاد فیلدها و روابط بین مدل‌ها (OneToMany, ManyToMany, ForeignKey).
  • ویوها (Views):
    • ایجاد ویوها برای پردازش درخواست‌های HTTP.
    • استفاده از ویوهای تابعی (Function-Based Views) و ویوهای کلاسی (Class-Based Views).
    • ارسال پاسخ به کاربر (HTML، JSON، Redirect).
  • URLها (URLs):
    • تنظیم URLهای پروژه برای دسترسی به ویوها.
    • استفاده از دستور path() یا re_path() برای مسیریابی.
    • تنظیم URLهای مربوط به اپلیکیشن‌های مختلف و استفاده از include().

فصل 3. طراحی پایگاه داده و ارتباط با آن از طریق مدل‌ها

  • ساخت پایگاه داده (Database Migrations):
    • استفاده از دستور python manage.py makemigrations برای ساخت تغییرات مدل.
    • اعمال تغییرات به پایگاه داده با دستور python manage.py migrate.
    • مدیریت ساختار پایگاه داده از طریق Migrationهای Django.
  • ارتباط با پایگاه داده:
    • استفاده از مدل‌ها برای تعامل با پایگاه داده و انجام عملیات CRUD (Create, Read, Update, Delete).
    • استفاده از QuerySet برای فیلتر کردن داده‌ها و انجام جستجو.

فصل 4. ایجاد فرم‌ها و مدیریت داده‌ها

  • تعریف فرم‌ها (Forms):
    • استفاده از فرم‌های Django برای دریافت داده‌ها از کاربران.
    • ایجاد و اعتبارسنجی فرم‌ها با استفاده از forms.Form یا forms.ModelForm.
  • پردازش داده‌ها و ذخیره در پایگاه داده:
    • پردازش داده‌های فرم‌ها و ذخیره آن‌ها در مدل‌های Django.
    • اعتبارسنجی داده‌های ورودی و نمایش خطاهای مناسب.
  • ایجاد فرم‌های پویا و سفارشی:
    • استفاده از ویژگی‌های پیشرفته فرم‌ها مانند فیلدهای انتخابی (ChoiceFields)، فیلدهای تاریخ و زمان، و فیلدهای فایل.

فصل 5. سیستم احراز هویت (Authentication) در Django

  • سیستم ورود و ثبت‌نام کاربران:
    • استفاده از سیستم پیش‌فرض احراز هویت Django برای ثبت‌نام، ورود و خروج کاربران.
    • ایجاد فرم‌های ثبت‌نام و ورود با استفاده از AuthenticationForm و UserCreationForm.
  • مدیریت کاربران:
    • مدیریت اطلاعات کاربران با مدل پیش‌فرض User Django.
    • استفاده از فرم‌های سفارشی برای ویرایش پروفایل کاربر.
  • مجوزها و دسترسی‌ها (Permissions and Access):
    • استفاده از سیستم مجوزهای Django برای محدود کردن دسترسی به صفحات خاص.
    • پیاده‌سازی مجوزها در سطح ویوها و مدل‌ها.

فصل 6. مدل‌های پیشرفته و کار با پایگاه داده

  • ایجاد و استفاده از مدل‌های پیشرفته:
    • استفاده از مدل‌های موروثی (Model Inheritance) برای ایجاد ساختارهای پیچیده.
    • مدل‌های چند زبانه (Multi-language) و نحوه مدیریت داده‌ها در زبان‌های مختلف.
  • بهینه‌سازی پایگاه داده:
    • استفاده از فیلترها و اعمال شرط‌ها در QuerySetها.
    • بهینه‌سازی کوئری‌ها و استفاده از select_related و prefetch_related برای جلوگیری از مشکلات N+1 Query.

فصل 7. آزمایش و دیباگ کردن اپلیکیشن

  • استفاده از ابزارهای دیباگینگ Django:
    • استفاده از ابزارهایی مانند django-debug-toolbar برای بررسی درخواست‌ها و پاسخ‌ها.
    • دیباگ کردن مشکلات پایگاه داده و مشاهده کوئری‌های SQL.
  • نوشتن تست‌ها برای اپلیکیشن:
    • استفاده از فریم‌ورک تست Django برای نوشتن تست‌های واحد (Unit Tests) و تست‌های کارکردی.
    • تست کردن مدل‌ها، ویوها، و فرم‌ها.

فصل 8. کار با تنظیمات پیشرفته و پیکربندی پروژه

  • پیکربندی تنظیمات پروژه:
    • تنظیمات پیشرفته برای پایگاه داده‌ها (مثل PostgreSQL)، ایمیل‌ها و فایل‌های استاتیک.
    • تنظیمات امنیتی مانند استفاده از HTTPS، تنظیمات امنیتی SECRET_KEY و محافظت در برابر حملات CSRF و XSS.
  • تنظیمات بین‌المللی و منطقه‌ای:
    • پیکربندی زبان، منطقه زمانی، و فرمت تاریخ در اپلیکیشن.

بخش 3. RESTful API با Django Rest Framework

 

فصل 1. مقدمه‌ای بر APIهای RESTful

  • آشنایی با مفهوم API (رابط برنامه‌نویسی کاربردی) و تفاوت‌های آن با سایر روش‌های ارتباطی.
  • توضیح اصول REST (Representational State Transfer) و ویژگی‌های APIهای RESTful.
  • آشنایی با متدهای اصلی HTTP: GET، POST، PUT، DELETE.

فصل 2. نصب و راه‌اندازی Django Rest Framework

  • نصب Django Rest Framework در پروژه Django.
  • پیکربندی تنظیمات Django برای استفاده از DRF.
  • معرفی ابزارهای کمک‌کننده مانند Browsable API برای تست و توسعه API.

فصل 3. ساخت مدل‌های API و Serialization

  • مدل‌سازی داده‌ها با Django ORM و ایجاد مدل‌های مناسب.
  • آشنایی با Serializers در DRF برای تبدیل داده‌های مدل‌ها به فرمت JSON و بالعکس.
  • ایجاد ModelSerializer برای ساده‌سازی فرآیند تبدیل داده‌ها.

فصل 4. ایجاد ViewSets و Class-based Views

  • آشنایی با ViewSets برای ساده‌تر کردن ایجاد ویوها.
  • معرفی APIView و نحوه استفاده از آن برای ایجاد کنترلرهای API.
  • ایجاد ModelViewSet و ReadOnlyModelViewSet برای عملیات CRUD.
  • استفاده از Generic Views برای انجام عملیات‌های مشترک (مثل لیست کردن داده‌ها، ایجاد، ویرایش و حذف).

فصل 5. مدیریت مسیرها (URLs) برای API

  • تنظیم URLs برای APIها با استفاده از routers در DRF.
  • تنظیم مسیرهای API برای GET, POST, PUT, DELETE.
  • استفاده از DefaultRouter و SimpleRouter برای تعریف مسیرهای خودکار.
  • نحوه استفاده از url() و path() برای ایجاد مسیرهای API.

فصل 6. اعتبارسنجی و امنیت API

  • پیاده‌سازی Authentication برای API (استفاده از JWT یا OAuth).
  • آشنایی با Permission classes در DRF برای کنترل دسترسی به داده‌ها.
  • پیاده‌سازی Token Authentication یا Session Authentication برای حفاظت از API.
  • استفاده از IsAuthenticated و IsAdminUser برای کنترل دسترسی به APIها.

فصل 7. فیلتر کردن و جستجو در داده‌ها

  • استفاده از filters برای جستجو و فیلتر کردن داده‌ها در API.
  • پیاده‌سازی DjangoFilterBackend برای فیلتر کردن داده‌ها به‌صورت پویا.
  • استفاده از SearchFilter برای جستجوی داده‌ها بر اساس فیلدهای خاص.

فصل 8. اعتبارسنجی داده‌ها

  • انجام اعتبارسنجی داده‌های ورودی در DRF با استفاده از Serializers.
  • استفاده از validators برای بررسی صحت داده‌ها.
  • پیاده‌سازی اعتبارسنجی پیچیده برای داده‌ها و مدیریت خطاهای آن.

فصل 9. ایجاد و مدیریت روابط بین مدل‌ها (Relationships)

  • استفاده از ForeignKey, ManyToManyField, OneToOneField در مدل‌ها برای ایجاد روابط بین داده‌ها.
  • پیاده‌سازی روابط پیچیده در Serializers و نحوه نمایش داده‌ها به صورت مرتبط.
  • مدیریت داده‌های وابسته و حذف داده‌ها با استفاده از تنظیمات on_delete.

فصل 10. استفاده از Serializer Methods

  • تعریف serializer methods برای انجام عملیات خاص هنگام سریال‌سازی داده‌ها.
  • پیاده‌سازی custom validation در serializer.
  • استفاده از SerializerMethodField برای محاسبات سفارشی در هنگام سریال‌سازی.

فصل 11. استفاده از Pagination برای داده‌های بزرگ

  • پیاده‌سازی pagination برای مدیریت داده‌های زیاد در API.
  • پیکربندی PageNumberPagination, LimitOffsetPagination, و CursorPagination.
  • مدیریت صفحه‌بندی داده‌ها و نحوه استفاده از آن در API.

فصل 12. تست و مستندسازی API

  • استفاده از Browsable API برای مشاهده و آزمایش API در محیط توسعه.
  • نصب و پیکربندی drf-yasg برای تولید مستندات Swagger.
  • انجام تست‌های خودکار برای API با استفاده از ابزارهای مانند Postman یا Django TestCase.

فصل 13. بهینه‌سازی و بهبود عملکرد API

  • استفاده از Caching برای بهینه‌سازی عملکرد API.
  • پیاده‌سازی Etag و Last-Modified برای کش کردن پاسخ‌ها.
  • استفاده از Django Redis یا Memcached برای ذخیره‌سازی کش.

فصل 14. پیاده‌سازی API برای اپلیکیشن‌های موبایل

  • طراحی و پیاده‌سازی APIهایی که با اپلیکیشن‌های موبایل تعامل دارند.
  • استفاده از CORS برای ارتباط API با اپلیکیشن‌های موبایل (Cross-Origin Resource Sharing).
  • مدیریت درخواست‌های cross-origin در API.

بخش 4. ایجاد رابط کاربری با React (فرانت‌اند)

 

فصل 1. نصب و راه‌اندازی React

  • نصب Node.js و NPM (Node Package Manager) برای مدیریت بسته‌ها.
  • استفاده از Create React App برای راه‌اندازی پروژه React جدید.
  • آشنایی با ساختار پروژه ایجاد شده توسط Create React App.
  • راه‌اندازی محیط توسعه با استفاده از ابزارهایی مانند Visual Studio Code.

فصل 2. آشنایی با کامپوننت‌ها و JSX

  • مفهوم کامپوننت‌ها در React و نحوه استفاده از آنها.
  • تفاوت بین کامپوننت‌های کلاس و توابعی (Function Components).
  • معرفی JSX (JavaScript XML) و نحوه نوشتن HTML در JavaScript.
  • استفاده از props برای ارسال داده‌ها به کامپوننت‌ها.
  • معرفی و کاربرد state برای مدیریت وضعیت در کامپوننت‌ها.
  • نحوه بازنویسی و استفاده مجدد از کامپوننت‌ها.

فصل 3. مدیریت state و props

  • درک نحوه مدیریت داده‌ها و وضعیت (state) در React.
  • ارسال داده‌ها به کامپوننت‌ها از طریق props.
  • تفاوت بین state و props و نحوه مدیریت آن‌ها در React.
  • استفاده از useState Hook برای مدیریت state در کامپوننت‌های تابعی.
  • مدیریت وضعیت‌ها در کامپوننت‌های توابعی با useState.

فصل 4. کار با روتر در React برای ایجاد مسیرهای مختلف

  • معرفی React Router برای مدیریت مسیرهای مختلف در یک برنامه React.
  • نصب و پیکربندی React Router در پروژه.
  • استفاده از Route و Link برای مدیریت مسیریابی بین صفحات.
  • ایجاد صفحات مختلف در برنامه و مسیریابی بین آنها.
  • ایجاد صفحات محافظت‌شده و مسیریابی بر اساس وضعیت احراز هویت.

فصل 5. استفاده از Fetch یا Axios برای ارتباط با APIهای Django

  • ارسال درخواست‌های HTTP به APIهای بک‌اند (Django) با استفاده از Fetch یا Axios.
  • تفاوت بین GET, POST, PUT, DELETE و نحوه استفاده از آنها در React.
  • پردازش پاسخ‌های دریافتی از API (از جمله مدیریت داده‌ها و خطاها).
  • استفاده از Async/Await برای مدیریت درخواست‌های غیرهمزمان (Asynchronous).
  • ایجاد یک لایه مدیریت داده (Data Layer) برای تعامل با API.

فصل 6. مدیریت داده‌ها با Context API یا Redux

  • معرفی Context API و استفاده از آن برای مدیریت وضعیت‌های سراسری در برنامه.
  • نحوه ایجاد یک Context برای مدیریت داده‌ها و ارسال آن‌ها به کامپوننت‌های مختلف.
  • معرفی Redux و استفاده از آن برای مدیریت وضعیت پیچیده در برنامه‌های بزرگ.
  • آشنایی با actions, reducers, و store در Redux.
  • نحوه اتصال React به Redux با استفاده از useDispatch و useSelector.

فصل 7. طراحی صفحات واکنش‌گرا (Responsive)

  • مفهوم طراحی واکنش‌گرا (Responsive Design) برای نمایش بهینه صفحات در دستگاه‌های مختلف.
  • استفاده از Media Queries برای تنظیم استایل‌ها بر اساس اندازه صفحه نمایش.
  • استفاده از Flexbox و CSS Grid برای طراحی لایه‌بندی‌های انعطاف‌پذیر.
  • بهینه‌سازی رابط کاربری برای نمایش در موبایل، تبلت و دسکتاپ.
  • استفاده از کتابخانه‌هایی مانند Bootstrap یا Material-UI برای ساخت رابط کاربری واکنش‌گرا.
  • تنظیم استایل‌های قابل تطبیق با استفاده از Styled Components یا CSS Modules.

فصل 8. تعاملات فرم‌ها در React و ارسال داده‌ها به Django

  • ایجاد فرم‌های تعاملی در React برای دریافت ورودی‌های کاربر.
  • استفاده از controlled components برای مدیریت فرم‌ها در React.
  • پردازش داده‌های ورودی از فرم‌ها و ارسال آن‌ها به APIهای Django.
  • استفاده از Formik یا React Hook Form برای مدیریت فرم‌های پیچیده.
  • اعتبارسنجی فرم‌ها و نمایش پیام‌های خطا.
  • ارسال داده‌ها به Django API از طریق Axios یا Fetch.

فصل 9. استفاده از React DevTools برای دیباگ کردن برنامه

  • نصب و استفاده از React Developer Tools برای اشکال‌زدایی برنامه.
  • تحلیل و بررسی state و props در کامپوننت‌ها با استفاده از DevTools.
  • مشاهده ساختار درخت کامپوننت‌ها و بررسی عملکرد آن‌ها.
  • استفاده از ابزارهای دیباگینگ مرورگر مانند Chrome DevTools برای اشکال‌زدایی.

فصل 10. بهینه‌سازی عملکرد برنامه React

  • شناسایی مشکلات عملکردی در React و نحوه بهینه‌سازی آن‌ها.
  • استفاده از React.memo برای جلوگیری از رندر مجدد غیرضروری کامپوننت‌ها.
  • بهینه‌سازی استفاده از useEffect و useCallback برای کاهش تعداد رندرهای غیرضروری.
  • استفاده از lazy loading برای بارگذاری بخش‌های مختلف برنامه به‌صورت تدریجی.
نقد و بررسی‌ها

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

فقط مشتریانی که وارد سیستم شده اند و این محصول را خریداری کرده اند می توانند نظر بدهند.

سبد خرید

سبد خرید شما خالی است.

ورود به سایت