کلاس و دوره آموزشی نیمه خصوصی دوره جامع برنامه نویسی فرانت اند از صفر با استاد حسین اشرفی پور
ثبت نام در کلاس آنلاین نیمه خصوصی دوره جامع برنامه نویسی فرانت اند از صفر با قیمت مناسب که استاد حسین اشرفی پور برگزار می کند.
برگزار کننده: استاد حسین اشرفی پور زمان ثبت نام: 1403/06/03 19:00 - 1403/07/03 22:30 زمان برگزاری: 1403/08/02 19:00 - 1403/11/17 21:00 روزهای برگزاری: شنبه، دوشنبه، چهارشنبه 7 تا 9 شب- توضیحات دوره
- سرفصل ها
- نظرات
آموزش HTML
آموزش CSS
آموزش JavaScript
آموزش Git
آموزش Github
آموزش tailwindCSS
آموزش ری اکت جی اس
آموزش Typescript
مباحث اصلی این دوره هستند.
این دوره با رویکرد کلاس معکوس (Flipped Classroom) ارائه میشود، که در آن دانشجویان ابتدا به صورت مستقل ویدئوها و مطالب آموزشی را مطالعه میکنند و سپس در کلاسهای حضوری یا آنلاین به بحث و تمرین عملی میپردازند. این روش آموزش به دانشجویان اجازه میدهد تا درک عمیقتری از مباحث داشته باشند و با مشارکت فعال در کلاسها، سؤالات خود را مطرح کرده و مشکلات خود را حل کنند. این مدل آموزشی به ویژه برای یادگیری مفاهیم برنامه نویسی بسیار موثر است، زیرا دانشجویان میتوانند زمان بیشتری را صرف تمرین و پروژههای عملی کنند.
- آشنایی با HTML و تاریخچه آن
- ساختار کلی یک سند HTML
- اولین صفحه وب خود را ایجاد کنید
- المنتها و تگها
- تگهای متن (p, h1-h6, span, div)
- تگهای تصویر و ویدئو (img, video)
- تگهای فرم (form, input, textarea)
- انواع ورودیها (text, password, email)
- دکمهها و ارسال فرم
- تگ لینک (a)
- لیستهای مرتب و نامرتب (ul, ol, li)
- لینکهای داخلی و خارجی
- تگهای جدول (table, tr, td)
- سرصفحههای جدول (thead, th)
- ترکیب سلولها (colspan, rowspan)
- آشنایی با متا تگها
- نقش متا تگها در سئو
- بهینهسازی صفحات وب برای موتورهای جستجو
- اضافه کردن استایل به HTML
- استفاده از کلاسها و آیدیها
- طراحی و استایلدهی عناصر
- تگهای معنایی (semantic tags)
- تگهای مدیا (audio, embed)
- کار با SVG و Canvas
- آشنایی با CSS و تاریخچه آن
- نحوه افزودن CSS به یک سند HTML
- ساختار کلی یک فایل CSS
- مقدمهای بر انتخابگرها
- انتخابگرهای نوع، کلاس و ID
- انتخابگرهای ترکیبی و سلسله مراتبی
- ویژگیهای CSS: رنگها، فونتها و متنها
- مقدمهای بر مدل جعبهای
- حاشیهها (Margins)، پدینگ (Padding) و بوردر (Borders)
- عرض و ارتفاع المانها
- مدیریت فضاهای داخلی و خارجی
- مقدمهای بر طرحبندی
- چیدمانهای مبتنی بر بلاک و اینلاین
- استفاده از فلوَت (Float) و کلیر (Clear)
- استفاده از Flexbox
- استفاده از Grid Layout
- مقدمهای بر انیمیشنها
- ایجاد انیمیشن با استفاده از keyframes
- استفاده از تبدیلها (Transforms)
- استفاده از انیمیشنها و ترنزیشنها (Transitions)
- مقدمهای بر طراحی واکنشگرا
- استفاده از Media Queries
- طراحی برای دستگاههای مختلف
- استفاده از فریمورکهای CSS مانند Bootstrap
- معرفی جاوااسکریپت
- تاریخچه و کاربرد جاوااسکریپت
- معرفی مرورگرها و ویرایشگرهای کد
- ایجاد اولین اسکریپت جاوااسکریپت
- نحوه اجرای کد جاوااسکریپت در مرورگر
- متغیرها و انواع دادهها
- تعریف متغیرها با var، let و const
- انواع دادهها: اعداد، رشتهها، بولین، null، undefined
- عملیات پایهای روی دادهها
- دستورات شرطی و حلقهها
- دستورات شرطی: if، else if، else
- دستورات شرطی ترکیبی: switch
- حلقهها: for، while، do while
- توابع در جاوااسکریپت
- تعریف و فراخوانی توابع
- پارامترها و آرگومانها
- توابع بازگشتی
- توابع ناشناس و فلش فانکشنها
- آشنایی با شیگرایی
- مفهوم شی و کلاس
- ایجاد و استفاده از اشیاء
- متدها و خواص اشیاء
- کار با آرایهها و شیءهای Built-in
- تعریف و دسترسی به آرایهها
- متدهای مهم آرایهها: push، pop، shift، unshift، slice، splice
- اشیاء Date و Math
- مبانی DOM
- مفهوم DOM
- دسترسی به عناصر HTML با استفاده از جاوااسکریپت
- تغییر محتوای عناصر HTML
- رویدادها در جاوااسکریپت
- انواع رویدادها (کلیک، موس، کیبورد)
- افزودن و حذف Event Listener
- مدیریت رویدادها
- کار با فرمها و اعتبارسنجی
- دسترسی و تغییر مقادیر ورودیها
- اعتبارسنجی فرمها با جاوااسکریپت
- جلوگیری از ارسال فرم پیش از اعتبارسنجی
- تاریخچه و اهمیت گیت و گیتهاب
- نصب و راهاندازی گیت
- آشنایی با مفاهیم مخزن (Repository)
- ایجاد مخزن جدید و Clone کردن مخزن
- مفاهیم Commit و Push
- کار با شاخهها (Branching)
- بررسی تاریخچه تغییرات (History)
- دستورات پایه و پیشرفته گیت در خط فرمان
- مدیریت تغییرات و بررسی وضعیت مخزن (Status)
- برچسبگذاری (Tagging)
- ایجاد و مدیریت شاخهها
- ادغام شاخهها (Merging)
- حل تعارضها (Conflict Resolution)
- ایجاد حساب کاربری و مخزن در گیتهاب
- کار با Pull Requests
- مدیریت Issues و پروژهها
- کار با گیتهاب Actions
- معرفی ریاکت جیاس
- تاریخچه و مزایای استفاده از ریاکت
- نصب و راهاندازی محیط توسعه (Node.js، npm، Create React App)
- ایجاد اولین برنامه ریاکت
- ساختار فایلها و پوشهها در پروژه ریاکت
- معرفی JSX و نحوه استفاده از آن
- کامپوننتها و نحوه تعریف آنها
- تفاوت بین کامپوننتهای کلاسی و فانکشنال
- پراپسها و نحوه ارسال داده بین کامپوننتها
- مدیریت state در کامپوننتهای کلاسی و فانکشنال (useState)
- متدهای چرخه حیات کامپوننتها
- مدیریت رویدادها در ریاکت
- ارسال و پردازش دادههای فرم
- استفاده از رفرنسها (Refs)
- معرفی هوکها و چرایی استفاده از آنها
- استفاده از useEffect برای مدیریت اثرات جانبی
- هوکهای کاربردی دیگر مانند useContext، useReducer
- روشهای مختلف استایلدهی در ریاکت (CSS، CSS Modules، Styled Components)
- استفاده از کتابخانههای استایلدهی مانند TailwindCSS و Material-UI
- مدیریت دادهها با Context API
- ایجاد و استفاده از Context
- به اشتراکگذاری دادهها بین کامپوننتها
- مسیریابی در ریاکت
- تعریف مسیرها و کامپوننتهای مربوطه
- استفاده از لینکها و مدیریت مسیرها
- ارسال درخواستهای HTTP با استفاده از fetch
- مدیریت دادهها از API در state
- نمایش دادههای API در کامپوننتها
- تعریف پروژه: ایجاد یک برنامه وب ساده مانند Todo List یا مدیریت کارها
- پیادهسازی مرحله به مرحله
- رفع اشکال و بهینهسازی کد
- معرفی Redux برای مدیریت پیشرفته state
- مفهوم و ضرورت استفاده از Redux
- نصب و راهاندازی Redux
- ایجاد و استفاده از Store، Actions، Reducers
- بررسی کتابخانههای مکمل ریاکت (Redux Toolkit، React Query)
- نکات و ترفندهای بهینهسازی در ریاکت