بسمه‌تعالی

با سلام خدمت همه دانشجویاری های عزیز

در خدمت شما هستیم با یک دوره بی‌نظیر از سلسله دوره‌های طراحی سایت با asp.net mvc5.2  از وب‌سایت دانشجویار

آموزش طراحی و پیاده‌سازی وب‌سایت بزرگ آپارات، با ASP.NET MVC5.2

پیشنهاد می‌کنم قبل از هر چیز سرفصل و توضیحات دوره رو ببینید.

در این دوره از آموزش Asp.net MVC 5.2.3 می‌خواهیم سیستم اشتراک ویدیو همانند سایت Aparat را داشته باشیم. این دوره ازلحاظ کیفیتی و محتوا کامل‌ترین دوره در بین دوره‌های قبلی مدرس می‌باشد دوره‌های قبلی را از لینک‌های زیر می‌توانید بررسی نماید:

 

  1. دوره برنامه‌نویسی سیستم سایت خبری – لینک
  2. دوره برنامه‌نویسی سیستم سایت جستجوگر خبر + اسپایدر مانند گوگل – لینک
  3. دوره برنامه‌نویسی سایت ایسام – لینک

همه یا بیشتر ما با سایت اشتراک ویدیوی آپارات و YouTube آشنای داریم و یا حداقل یک‌بار نام آن را شنیده‌ایم. در این دوره ما می خوایم یه سیستم اشتراک ویدیو ایجاد کنید که ازلحاظ کارای و امکانات میتونه با این سیستم‌ها برابری کنه و اگر هم مواردی را کمتر داشته باشه، موارد دیگری را به‌عنوان جبران اضافه کردیم.

دقت بکنید این سیستم از حالت چند سروری بودن پشتیبانی می کنه و شما می‌توانید بی‌نهایت سرور اضافه نماید که ویدیوها روی آن‌ها آپلود شوند و همچنین از پلاگین و کلاس‌های قدرتمندی برای کار با ویدیوها استفاده که با مشاهده‌ی ویدیوها می‌توانید به آن‌ها پی ببرید.

سخن مدرس:

اگر واقعاً می خواید یک سیستم اشتراک ویدیو را از پایه بنویسید و با Asp.net MVC هیچ آشنای ندارید من این دوره‌ی کامل را به شما پیشنهاد می‌کنم.

نکته:

در این دوره مباحث لازم برای کوچ به Asp.net MVC6 گفته‌شده و جای نگرانی نیست. دلیل اینکه از Asp.net MVC6 استفاده نکردم آینه که هنوز به‌صورت کامل و نسخه‌ی اصلیش بیرون نیومده و دارای باگ‌های می‌باشد که هرز گاهی مشکلات عجیب و غیرقابل‌حل رو پیش میارن. بنا به تشخیص من بهتر بود از نسخه‌ی Stable این زبان یعنی Asp.net MVC 5.2.3 استفاده بشه.

 

در این دوره چه چیزهای را می‌آموزیم:

آموزش Asp.net MVC5.2.3 از پایه و قدم‌به‌قدم

آموزش نحوه‌ ست کردن پلاگین پخش ویدیو FlowPlayer و توسعه‌ی آن

آموزش نمایش ویدیوها در آن

اضافه کردن امکان لیست ویدیوهای مشابه روی پلیر بعد از پایان ویدیو (توسعه)

آموزش کار با Microsoft Ajax

آموزش کار با Jquery Ajax

آموزش کار با ویدیوها

آموزش سیستم لاگین قوی

امنیت تا حد قابل‌قبول

سیستم آمارگیر پیشرفته و حرفه‌ای

آموزش کار با Chart

آموزش کار با FTP

آموزش پشتیبانی از چند سروری بودن

آموزش گرفتن فریم تصادفی از ویدیو

آموزش قرار دادن لوگو روی ویدیو

آموزش قرار دادن لوگو روی تصویر

آموزش بهینه‌سازی تصاویر هنگام آپلود

و….

 

موارد تدریس شده در هر ویدیو:

 

بخش ۱: (مقدماتی)

معرفی مدرس

معرفی پروژه

معرفی پیش‌نیازها

* در این ویدیوی به معرفی پروژه و موارد لازم می‌پردازیم *

بخش ۲ (مقدماتی):

معرفی IIS

معرفی mvc

* در این ویدیو به معرفی IIS به‌صورت مقدماتی و همچنین نحوه کار با mvc و همچنین معرفی Model، Controller، View می‌پردازیم و همچنین مباحث اولیه و تئوری MVC را یاد می‌گیریم *

بخش ۳: (مقدماتی)

آموزش نصب SQL Server 2008 (به درخواست کاربران)

آموزش مباحث اولیه‌ی SQL

* در این ویدیو به درخواست شمار زیادی از کاربرا نحوه نصب SQL Server را می‌آموزیم و بعداً با چگونگی کار با آن آشنا خواهیم شد *

بخش ۴: (مقدماتی)

آموزش مباحث لازم و ضروری برای انجام پروژه در SQL

* آموزش کار با SQL Server 2008 و معرفی مباحث تئوری و کار با آن به‌صورت عملی *

بخش ۵ و ۶ و ۷ و ۸: (متوسطه)

آموزش Linq

آموزش EntityFrameWork

آموزش کار با Sql در Asp.net mvc

* در این ۴ ویدیو به بررسی تکنولوژی لینک (Linq) می‌پردازیم که به چه دردی می خوره و چطور با آن کار می‌کنیم و همچنین با EntityFrameWork آشنا خواهیم شد و به بررسی اینکه چگونه از Linq To EntityFramework استفاده کنیم می‌پردازیم *

 

مباحث پیشرفته

بخش ۹ و ۱۰ و ۱۱:

آموزش ایجاد بانک اطلاعاتی مربوط به پروژه

* در این ویدیو به بررسی ساختار دیتابیس و نحوه پیاده‌سازی آن می‌پردازیم و همچنین ارتباط آن‌ها را نیز بررسی می‌کنیم و پایگاه داده‌ای تمیز و بهینه را پیاده‌سازی خواهیم کرد *

بخش ۱۲:

نصب پکیج‌های لازم از Nuget

شروع ایجاد لایوت

* Nuget مکانی است که برنامه نویسان.net پکیج‌های آماده‌ خود را قرار می‌دهند تا کاربران با کمترین دغدغه و سختی آن‌ها را دنبال نمایند و بتوانند از آن‌ها استفاده کنند. ما هم در این ویدیو پکیج‌های که به کارمان می‌آیند را از ناگت دانلود و نصب می‌کنیم. و همچنین لایوت یا قالب اصلی سیستم را ایجاد خواهیم کرد… *

بخش ۱۳ و ۱۴:

ادامه‌ی آموزش ساخت لایوت

* در این ویدیو ادامه‌ی طراحی قالب برای سیستم اشتراک ویدیو را انجام خواهیم داد *

بخش ۱۵:

آموزش مبحث مسیریابی و تغییر URL و شکل آن‌ها

آموزش ViewBag و ViewData و TempData و سشن

* اگر به آدرس URL سایت‌ها توجه کرده باشید می‌بینید که اکثرشان با یکدیگر تفاوت دارند ما در بحث مسیریابی در Asp.net MVC به نحوه تغییر این آدرس‌ها می‌پردازیم. و همچنین با مباحث مهمی همانند ViewBag ها و … که برای انتقال داده و یا متن از اکشن به ویو یا اکشن به اکشن و …. استفاده می‌شوند آشنا خواهیم شد… *

بخش ۱۶:

دریافت اطلاعات ویدیو

توسعه‌ی دیتابیس و بهینه‌سازی برای چند سروری

* در این ویدیو کم‌کم مباحث اصلی طراحی سیستم اشتراک ویدیو را شروع می‌کنیم و نحوه نمایش ویدیوها در صفحه اصلی را نمایش خواهیم داد. و همچنین یه تغییراتی در دیتابیس خواهیم داد برای اینکه از قابلیت چند سروری پشتیبانی کند *

بخش ۱۷:

مقداردهی اولیه

ایجاد جداول اخبار سایت و توابع توسعه

* جداول را مقداردهی اولیه می‌نمایم *

17

بخش ۱۸:

ایجاد بخش تاپیک ها

خودکار سازی بخش تاپیک ها

ایجاد بخش تبلیغات

ایجاد بخش لیست صفحات

* در این ویدیو به نحوه نمایش تاپیک ها می‌پردازیم و همچنین کاری می‌کنیم که از دیتابیس قابلیت تعیین نمایش ویدیوهای تاپیک را در صفحه اول داشته باشیم و همچنین تبلیغات را به‌صورت زمان‌بندی‌شده و نمایش تصادفی ایجاد خواهیم کرد *

بخش ۱۹:

نحوه ست کردن پلیر

خواندن یک ویدیوی آزمایشی از FTP

نحوه استفاده از پلیر خود HTML

کار با option های مختلف FlowPlayer

* با نحوه ست کردن ویدیو پلیر Flow Player آشنا می‌شویم و یک ویدیو را که از قبل روی FTP آپلود نموده‌ایم را توسط آن نمایش خواهیم داد و همچنین به بررسی بیشتر خود ویدیو پلیر و آپشن هاش می‌پردازیم *

بخش ۲۰:

بخش جزئیات اخبار

بخش تعیین بازدیدهای خبر

تکمیل بخش قالب اخبار

* به نحوه نمایش اخبار همانند سایت آپارات خواهیم پرداخت *

بخش ۲۱:

تکمیل بخش سیستم لایک و دیس لایک

اولین مثال از ajax

ایجاد بخش کامنت های اخبار

* با بحث اجکس در Asp.net MVC آشنا خواهیم شد و همچنین کامنت های مربوط به اخبار را ایجاد می‌کنیم *

بخش ۲۲:

ایجاد قسمت نمایش نظرات

ایجاد بخش ثبت نظرات

بخش ۲۳:

ایجاد صفحه Redirect برای جلوگیری از سئوی منفی

* اگر توجه کرده باشید اکثر سایت‌ها وقتی روی لینک داخلشان کلید می‌شود اگر لینک خارجی باشد آن را از داخل سایت توسط جاوا اسکریپت بعداً از چند ثانیه ریدایرکت می‌کنند تا در سئو تأثیر منفی نداشته باشد ما نیز چنین امکانی خواهیم ساخت *

بخش ۲۴:

نوشتن پلاگین ساده برای پلیر FlowPlayer

ساخت و کد نویسی بخش لیست ویدیو بعد از اتمام پخش (پلاگین آماده غیر رایگان بودند)

* به دلیل پولی بودن پلاگین های FlowPlayer ما یک پلاگین ساده به جهت نمایش لیست ویدیوهای مرتبط بعد از اتمام ویدیو ایجاد می‌کنیم *

بخش ۲۵ و ۲۶:

شروع نوشتن بخش مربوط به جزئیات ویدیوها

ایجاد ظاهری همانند Aarat-

* در این بخش جزئیات ویدیو را به نمایش خواهیم گذاشت مانند کلمات کلیدی، نظرات، زمان، و همچنین بخش‌های مثل کد qr و نمایش ویدیو در دیگر سایت‌ها و … *

26

بخش ۲۷:

ایجاد بخش مربوط به ثبت نظرات

ایجاد کد کپچا

چگونه بااعتبار سنجی سمت کاربر کارکنیم

* کد کپچا برای جلوگیری از ثبت داده توسط ربات استفاده می‌شود و همچنین اعتبار سنجی سمت سرور و کلاینت را نیز انجام خواهیم داد *

بخش ۲۸:

قسمت مربوط به نمایش نظرات

معرفی پارشیال ویو ها

صفحه‌بندی ایجکسی همانند آپارات

* نظرات ثبت‌شده را نمایش می‌دهیم و با پارشیال ویو ها آشنا خواهیم شد و همچنین قالب صفحه‌بندی ایجکسی برای کامنت ها را همانند آپارات ایجاد می‌کنیم *

بخش ۲۹:

استفاده از جی کویری ایجکس

برنامه‌نویسی سمت سرور برای صفحه‌بندی ایجکسی

آشنای با JSON و قوانین لازم برای استفاده

* با Jquery Ajax آشنا می‌شویم و نحوه پیاده‌سازی صفحه‌بندی به‌صورت ایجکسی را می‌آموزیم *

بخش ۳۰:

ایجاد MessageBox و کلاس آن همانند کادر پیغام ویندوزی

نحوه استفاده و توسعه‌ Noty

کد نویسی سمت سرور افزودن کامنت

* در برنامه‌های تحت وب پیغام‌های مسیج باکس خیلی خشک هستند ما اینجا کاری کردیم که همانند برنامه‌نویسی تحت ویندوز ما کلاس مربوط به نمایش پیغام را داشته باشیم *

بخش ۳۱:

ایجاد سیستم لایک و دیس لایک ویدیو به‌صورت ایجکسی

بخش مربوط به کد ویدیو و نمایش در سایت دیگر

* برای نمایش ویدیو در دیگر سایت‌ها راهکارهای زیادی وجود دارد که ساده‌ترین آن‌ها نوشتن توابع جاوا اسکریپتی می‌باشد که با فراخوانی آن‌ها کاربران بتوانند ویدیوها را در سایت‌های خود نمایش دهند *

بخش ۳۲:

تکمیل بخش نمایش کد

ایجاد بخش کد QR برای هر ویدیو

* کد qr برای این طراحی‌شده است که کاربران با موبایل بتوانند از طریق دوربین صفحه را ابراز نمایند ما ایجاد برای این‌که به سرور کمترین فشار وارد بشه از qr ساز گوگل استفاده نموده‌ایم *

32

بخش ۳۳:

تکمیل بخش تگ‌های ویدیو

ایجاد بخش گروه‌بندی کانال مربوط به ویدیو

نمایش ویدیوهای هر دسته

بخش ۳۴ و ۳۵:

ایجاد بخش نمایش کانال

ایجاد ظاهر بخش مربوط به کانال مثل آپارات

نمایش ویدیوها

صفحه‌بندی

* در این قسمت ما صفحه‌بندی حرفه ایی و متناسب با سئو ایجاد خواهیم کرد که ازلحاظ امنیتی نیز عالی باشد *

بخش ۳۶:

تکمیل بخش کانال‌ها

ایجاد صفحه‌بندی برای صفحه اول

ایجاد بخش جستجوی در سایت

بخش ۳۷ و ۳۸:

ایجاد بخش گزارش تخلف

ایجاد بخش سمت سرور گزارش تخلف

رفع یک سری باگ در قالب

نمایش صفحات سایت و لود آن‌ها

بخش ۳۹:

ایجاد بخش تاپیک های اصلی و عمومی

بخش ۴۰:

ایجاد بخش وبلاگ سایت همانند آپارات

صفحه‌بندی شماره‌ای غیر ایجکسی مطابق با سئو

بخش ۴۱:

ایجاد صفحه لاگین به‌صورت ایجکسی

کدنویسی سمت سرور لاگین

* در این جا ما به نحوه ساخت یک صفحه لاگین قدرتمند می‌پردازیم که به‌صورت ایجکسی عمل می‌کند و همچنین دارای امنیت قابل‌قبولی است *

بخش ۴۲:

ایجاد بخش دنبال کردن

ایجاد بخش سمت سرور دنبال کردن کانال

* چگونه کانالی را دنبال کنیم و اینکه از دنبال کردن کانال‌های تکراری خودداری کنیم و کاربران نتوانند کانال خود را دنبال کنند *

بخش ۴۳:

ایجاد بخش ثبت‌نام در سایت

بررسی تکراری نبودن ایمیل

بررسی تکراری نبودن نام کاربری

بخش ۴۴:

نحوه ارسال ایمیل فعال‌سازی

چگونه از طریق ایمیل حساب فعال شود (کلیک روی لینک)

* چگونه در Asp.ne MVC ایمیل را ارسال کنیم و از سرویس‌های مختلف همانند جیمیل و … بهره بگیریم *

بخش ۴۵:

ایجاد بخش کاربری

نمایش ویدیوهای کانال‌های دنبال شده در صفحه اول همانندِ آپارات

بخش ۴۶:

ایجاد بخش مدیریت

ایجاد بخش ویرایش پروفایل

* در بخش ویرایش پروفایل کاربر می‌تواند ایمیل را ویرایش کند در صورت ویرایش کردن ایمیل درصورتی‌که ایمیل تغییر کرده باشد ایمیل فعال‌سازی دوباره ارسال می‌شود و در غیر این صورت ارسال نمی‌شود  *

بخش ۴۷:

کد نویسی سمت سرور ویرایش پروفایل

چگونه تصویر را آپلود نمایم

مدیریت کانال‌های دنبال شده

* مبانی آپلود فایل و یا تصویر و تأمین امنیت آن و همچنین نحوه استفاده از HttpPostedFileBase را می‌آموزیم*

بخش ۴۸:

چه کاربرانی کدام کانال شمارا دنبال کرده‌اند

ایجاد بخش بازیابی حساب کاربری

* نحوه ایجاد صفحه بازیابی حساب کاربری و ارسال مشخصات حساب کاربری به سمت ایمیل کاربر *

بخش ۴۹:

بهینه‌سازی قالب مدیریت

ایجاد بخش مدیریت کانال‌های شما

بخش ۵۰:

چگونگی حذف یک کانال به‌صورت ایجکسی

شروع کار با FTP

بررسی وجود فایل در FTP

حذف فایل از FTP

* زمانی که ما یک کانال را حذف می‌کنیم باید تمامی دسته‌بندی‌های مربوطه نیز حذف گردند و همچنین اگر کانال حذف شد دیگر به ویدیوهای آن کانال نیز نیاز نداریم و بهتر است آن‌ها نیز حذف شوند ولی ویدیوها که روی سرور خارجی قرار دارد پس بحث مربوط به کار با FTP در Asp.Net MVC به میان می‌آید و این مباحث را دنبال می‌کنیم چگونه وجود یک فایل را در FTP بررسی نماییم و در صورت وجود فایل را از طریق FTP حذف نماییم *

بخش ۵۱:

آموزش افزودن کانال جدید

آموزش ویرایش کانال

بخش ۵۲:

نحوه نمایش جزئیات یک کانال

چگونه به کانال دسته اضافه نمایم

بخش ۵۳:

شروع بخش مدیریت ویدیوها

نحوه حذف یک ویدیو از سایت و سرور مربوطه

بخش  ۵۴ و ۵۵:

نحوه‌ ویرایش ویدیو

نوشتن کدهای سمت سرور ویرایش ویدیو

لود به‌صورت ایجکس دسته‌بندی‌ها بر اساس کانال انتخاب‌شده

* در این بخش به بررسی اینکه چگونه با تغییر در حالت یک Select یا لیست کشویی بر اساس مقدار انتخاب‌شده داده‌ها در لیست کشویی بعدی به حالت اتوماتیک لود شوند *

بخش ۵۶:

ایجاد بخش مدیریت کامنت ها

حذف یک نظر

تائید نظرات

بخش ۵۷:

شروع بخش افزودن ویدیو

نحوه‌ آپلود ویدیو

بیرون کشیدن یک تصویر از ویدیو

ویرایش ویدیو

افزودن لوگو به ویدیو

* ادامه‌ نحوه‌ کار با FTP را در این ویدیو خواهیم داشت چگونه می‌توانیم ویدیویی را روی سرور توسط Ftp و برنامه‌نویسی Asp.net MVC آپلود نماییم و همچنین نحوه‌ ویرایش ویدیو و قرار دادن لوگو روی آن را نیز خواهیم دید و چگونگی واکشی یک تصویر از ویدیو و قرار دادن لوگو روی تصویر. توجه کنید که قسمت چند سروری اینجاست که تعیین می‌کند که ویدیو روی کام سرور ثبت‌شده در دیتابیس آپلود شود *

بخش ۵۸:

بیرون کشیدن مشخصات ویدیو

افزودن مدت‌زمان ویدیو به‌عنوان لوگوی تصویر

نحوه‌ آپلود ویدیو روی سرور اصلی بعد از آپلود

* برای اینکه مشخصات ویدیو را بیرون بکشیم باید از کلاس‌های دیگری استفاده کنیم مثلاً مدت‌زمان ویدیو و یا قالب ویدیو و … *

بخش ۵۹ و ۶۰:

افزودن بخش آمار سایت

ایجاد جداول مربوطه

چگونه مشخصات کاربر واردشده را بخوانیم (صفحه‌ بازدید شده، صفحه‌ ارجاعی، مشخصات سیستم و …)

* در این بخش به درخواست کاربران یک سیستم آمارگیر حرفه‌ای ایجاد می‌کنیم که بتواند مشخصات کاربر وارد شونده به سایت را بگیرد و اطلاعات وی را ثبت کند مانند آدرس IP و نام مرورگر و سیستم‌عامل و آدرس صفحه‌ ارجاع دهنده و آدرس صفحه‌ بازدید شده و همچنین مدت‌زمان ماندن در صفحه *

بخش ۶۱:

ایجاد بخش مدیریت سایت

مدیریت تبلیغات سایت

بخش ۶۲:

مدیریت آمار سایت

نمایش جزئیات کامل بازدید

(آدرس Ip، نمایش نام کاربری در صورت لاگین شدن، مدت‌زمان ماندن در صفحه بازدید شده و …)

آشنایی و کار با چارت‌ها

* در این بخش با نحوه‌ استفاده از مدیریت آمار آشنا می‌شویم و همچنین با نحوه‌ استفاده از پارت‌ها نیز آشنا خواهیم شد که چگونه داده‌ها و آمار را در انواع نمودار نمایش دهیم *

بخش ۶۳:

آپلود سایت

نحوه‌ کار با کنترل پنل پلسک (مباحث موردنیاز)

* این بخش که بخش نهایی می‌باشد نحوه کار با کنترل پنل پلسک و آپلود دیتابیس روی سرور آشنا خواهیم شد و تمامی چالش‌ها و مشکلات را رفع خواهیم کرد *

 

امیدوارم موفق باشید