| مدرس: دکتر حمید ضرابی زاده | پیشنیاز: برنامهسازی پایتون |
| ترم: | محل برگزاری: کلاس مجازی |
| زمان ارائه: یکشنبه ۱۷:۰۰ تا ۲۰:۰۰ | مشاهده: دریافت لایسنس |
برنامهسازی وب؛ از طراحی صفحات تا توسعه و استقرار نرمافزارهای تحت وب
بخش بزرگی از نرمافزارهایی که هر روز استفاده میکنیم، از سامانههای فروشگاهی و خدمات آنلاین گرفته تا ابزارهای مدیریتی و آموزشی، بر بستر وب اجرا میشوند. توسعه چنین نرمافزارهایی به چیزی فراتر از طراحی یک صفحه وب نیاز دارد؛ برنامهنویس باید بتواند رابط کاربری مناسبی طراحی کند، منطق برنامه را در سمت سرور پیادهسازی کند و ارتباط میان این دو بخش را بهدرستی مدیریت کند.
در این درس، با اصول برنامهسازی وب و اجزای اصلی یک نرمافزار تحت وب آشنا میشوید. ابتدا ساختار صفحات را با HTML و CSS طراحی میکنید و با کمک JavaScript، تعاملپذیری صفحات و تغییر پویای عناصر آنها را میآموزید. سپس مفاهیمی مانند پردازش فرمها، ارتباط ناهمگام با سرور، کار با APIها و تبادل داده با قالب JSON را بررسی میکنید تا درک روشنی از ارتباط میان مرورگر و سرور به دست آورید.
بخش اصلی درس به چارچوب جنگو (Django)، یکی از چارچوبهای پرکاربرد مبتنی بر پایتون برای توسعه نرمافزارهای تحت وب، اختصاص دارد. در این بخش با معماری جنگو و اجزای مختلف آن، از جمله مدلها، نماها و قالبها آشنا میشوید و نحوه مدیریت دادهها، پردازش فرمها، احراز هویت و کنترل دسترسی کاربران را یاد میگیرید. در پایان نیز مباحثی مانند استقرار نرمافزار، استفاده از Docker، تنظیم وبسرور و بهینهسازی را بررسی میکنید تا با مراحل رساندن یک نرمافزار تحت وب از محیط توسعه به محیط اجرا آشنا شوید.
در پایان این درس چه تواناییهایی کسب میکنید؟
این درس برای دانشجویان و دانشآموختگان مهندسی کامپیوتر و علوم کامپیوتر، برنامهنویسان و افرادی مناسب است که میخواهند وارد حوزه توسعه وب شوند یا تواناییهای خود را در این زمینه گسترش دهند. اگر قصد دارید علاوه بر طراحی صفحات وب، توسعه سمت سرور را با پایتون یاد بگیرید و با چارچوبی پرکاربرد برای ساخت نرمافزارهای تحت وب آشنا شوید، این درس میتواند نقطه شروع مناسبی باشد.
آشنایی مقدماتی با برنامهنویسی و مفاهیمی مانند متغیرها، شرطها، حلقهها و توابع برای گذراندن این درس توصیه میشود. آشنایی قبلی با HTML، CSS، JavaScript یا Django ضروری نیست؛ مباحث مربوط به طراحی صفحات وب و توسعه نرمافزار با جنگو در طول درس ارائه میشوند.