برنامهنویسی شیءگرا (Object-Oriented Programming مخفف:OOP) یک شیوه برنامه نویسی است که ساختار یا بلوک اصلی اجزای آن، شیء (علوم رایانه)ها میباشند. در واقع در این شیوه برنامه نویسی، برنامه به شیء گرایش پیدا میکند. به این معنا که دادهها و توابعی که قرار است بر روی این دادهها عمل کنند، تا حد امکان در قالبی به نام شی در کنار یکدیگر قرار گرفته، جمعبندی شده و یک واحد (شی) را تشکیل داده و نسبت به محیط بیرونِ خود، کپسوله میشوند و از این طریق، توابع بیگانهٔ خارج از آن شی، دیگر امکان ایجاد تغییر در دادههای درون آن شی را ندارند. به طور مثال حساب بانکی شما که شامل مشخصات فردی شما و میزان سپردهٔ شما در بانک است، تشکیل یک شی را میدهند و به دلیل دارا بودن ویژگی کپسوله، امکان دستکاری در میزان سپرده یا مشخصات شما، توسط دیگران وجود ندارد. از دیگر ویژگیهای برنامه نویسی شی گرا، پیچیدگی کم، هزینه کم، امکان گسترش سریع برنامه با خطای کمتر نسبت به سایر پارادایمهای برنامه نویسی است. پایتون (Python) یک زبان برنامهنویسی همه منظوره، سطح بالا، شیءگرا و مفسر است که توسط خودو فان روسوم (به هلندی: Guido van Rossum) در سال ۱۹۹۱ در کشور هلند طراحی شد. فلسفهٔ ایجاد آن تأکید بر دو هدف اصلی خوانایی بالای برنامههای نوشته شده و کوتاهی و بازدهی نسبی بالای آن است. کلمات کلیدی و اصلی این زبان به صورت حداقلی تهیه شدهاند و در مقابل کتابخانههایی که در اختیار کاربر است بسیار وسیع هستند. در دوره آموزشی Udemy Core Python 3 and OOP - Course for Absolute Beginners با آموزش مقدماتی هسته پایتون 3 و شی گرایی اشنا خواهید شد.
جاوا اسکریپت، پیاده سازی ECMA Script است (با تلفظ اکما اسکریپت) که به صورت مخفف به آن ES هم گفته میشود و ES6، در حقیقت نگارش 6 این استاندارد است که به آن ECMA Script 2015 نیز میگویند (زمان نهایی شدن استاندارد آن سال 2015 است) و از زمان ارائهی جاوا اسکریپت، بزرگترین تغییر و تحول آن نیز محسوب میگردد. با ES6 مواردی مانند کلاسها، برنامه نویسی تابعی (functional programming)، ماژولها و غیره اضافه شدهاند. در طی 2 سال آینده، تمام فریم ورکهای جدید جاوا اسکریپتی، از بوت استرپ 4 تا AngularJS 2 تا Aurelia و غیره، همگی به ES6 کوچ خواهند کرد (و این اتفاق هم اکنون در حال رخ دادن است). بنابراین به زودی بدون فراگیری و تسلط بر ES6، در حوزهی وب، بیسواد محسوب خواهید شد و فراگیری آن یک باید است. در دوره آموزشی JavaScript: The Hard Parts, v2 با آموزش پیشرفته جاوا اسکریپت اشنا خواهید شد.
Microsoft SQL Server یک نرمافزار مدیریت پایگاه داده رابطهای است که توسط شرکت مایکروسافت توسعه داده میشود. از جمله ویژگیهای این سامانه، میتوان به ساخت و مدیریت بانک اطلاعاتی رابطهای، پشتیبانی از ACID، پشتیبانی از Referential integrity، قابلیتهای انتقال پایگاه و بسیاری از قابلیتهای دیگر داده اشاره کرد. این نرم افزار دارای ویرایشهای متنوع و متناسب با محیطهای کاری مختلف است. از جمله قابلیتهای کلیدی Microsoft SQL Server 2016، ساخت و مدیریت بانک اطلاعاتی رابطهای، پشتیبانی از ACID، پشتیبانی از Referential integrity، پشتیبانی از XML، رمز گذاری پیوسته اطلاعات، بهینه سازی موتور in-Memory OLTP، پشتیبانی از Microsoft Azure، انتقال پایگاه داده به سایر Platform ها و... می باشد. کوئری زبان پرس و جوی پایگاه داده است. با استفاده از زبان کوئری به ایجاد، حذف، به روزرسانی و انتخاب اطلاعات از پایگاه داده می پردازیم. در دوره آموزشی Udemy SQL Server - Master Class For Data Analysis با آموزش تجزیه و تحلیل داده ها در اس کیو ال سرور اشنا خواهید شد.
وب سرویس های آمازون یا خدمات وب آمازون (Amazon Web Services) مجموعهای از خدمات وب (وب سرویس) هستند که شرکت آمازون بر روی بستر ابر خود و از طریق اینترنت به عموم عرضه میکند. این سرویس ها زیرساخت های فناوری اطلاعات را به صورت سرویسهای انعطاف پذیر به مشتریان اجاره میدهد. این سرویسها شامل سرویس های محاسباتی و رایانشی (EC2)، ذخیره سازی (S3)، تحویل محتوا، پایگاه داده، تجارت الکترونیک، پرداخت و صدور صورتحساب و موارد دیگری میشود. آمازون ارائه این خدمات به عموم را از ابتدای سال ۲۰۰۶ آغاز نمود. Ansible یک ابزار متن باز اتوماسیون تامین سیستم ابری، مدیریت کانفیگ، تنظیمات و گسترش برنامه ها است. این ابزار به agent نیازی نداشته و اصطلاحا Agent Less است. با نصب و کانفیگ این ابزار بر روی Control Node میتوانید Node های Client را با استفاده از اتصال نوع SSH مدیریت نمایید. این ابزار DevOPS بر روی توضیع لینوکس CentOS, Debian, Redhat Enterprise قابل نصب و استفاده است. Ansible یک ابزار Remote Administration بسیار قوی با امکانات بسیار کارامد است. تمامی Node ها توسط یک Control Machine از طریق SSH مدیریت خواهد شد. برای تنظیم و مدیریت Node ها Ansible ماژول ها را از طریق SSH به Node ها انتقال میدهد. ماژول ها بهصورت موقت در Node ها ذخیره شده و از طریق پروتکل JSON با Control Machine با استفاده از خروجی استاندارد ارتباط برقرار میکند. زمانی که انسیبل در حال مدیریت Node ها نباشد هیچ برنامه و یا پردازشی بهصورت Background اجرا نشده و به همین دلیل منابعی نیز مصرف نخواهد شد. در دوره آموزشی Linux Academy Managing AWS with Ansible با آموزش مدیریت وب سرویس های آمازون با انسیبل اشنا خواهید شد.
یادگیری عمیق (Deep learning) (یادگیری ژرف ماشین، یادگیری ساختار ژرف یا یادگیری سلسله مراتبی) یک زیر شاخه از یادگیری ماشینی و بر مبنای مجموعهای از الگوریتمها است که در تلاش هستند مفاهیم انتزاعی سطح بالا در دادگان را مدل نمایند که این فرایند را با استفاده از یک گراف عمیق که دارای چندین لایه پردازشی متشکل از چندین لایه تبدیلات خطی و غیر خطی هستند، مدل میکنند. به بیان دیگر پایهٔ آن بر یادگیری نمایش دانش و ویژگیها در لایههای مدل است. یک نمونه آموزشی (برای نمونه: تصویر یک گربه) میتواند به صورتهای گوناگون بسان یک بردار ریاضی پر شده از مقدار به ازای هر پیکسل و در دید کلی تر به شکل یک مجموعه از زیرشکلهای کوچکتر (نظیر اعضای صورت گربه) مدل سازی شود. برخی از این روشهای مدل سازی سبب ساده شدن فرایند یادگیری ماشین (برای نمونه: تشخیص تصویر گربه) میشود. در یادگیری ژرف امید به جایگزینی استخراج این ویژگیهای تصویر به دست بشر (مانند اعضای گربه) با روشهای کامل خودکار بدون نظارت و نیمه نظارتی وجود دارد. انگیزهٔ نخستین در بوجود آمدن این ساختار یادگیری از راه بررسی ساختار عصبی در مغز انسان الهام گرفته شده است که در آن یاختههای عصبی با فرستادن پیام به یکدیگر درک را امکانپذیر میکنند. بسته به فرضهای گوناگون در مورد نحوهٔ اتصال این یاختههای عصبی، مدلها و ساختارهای مختلفی در این حوزه پیشنهاد و بررسی شدهاند، هرچند که این مدلها به صورت طبیعی در مغز انسان وجود ندارد و مغز انسان پیچیدگیهای بیشتری را دارا است. این مدلها نظیر شبکه عصبی عمیق، شبکه عصبی پیچیده، شبکه باور عمیق پیشرفتهای خوبی را در حوزههای پردازش زبانهای طبیعی، پردازش تصویر ایجاد کردهاند. در دوره آموزشی Deep Learning Foundation Nanodegree با آموزش اصول و مبانی یادگیری عمیق اشنا خواهید شد.
گوگل اپس یک سری از برنامه ها و ذخیره سازی فایل ها تحت وب و از طریق مرورگرهاست بدون آنکه کاربر نیاز به خریدن آن نرم افزارها داشته باشد. کاربران قادر خواهند بود به راحت وارد حساب کاربری خود وارد شده و به فایل ها و ابزارهای مورد نیازشان دسترسی داشته باشند. ابزارهای پیشنهادی شامل ابزارهای ارتباطی (Gmail-Gtalk و Google calendar) ابزارهای تولیدی (Google Docs شامل فایلهای متنی، جداول و فایلهای ارائه)، صفحه شروع قابل تغییر (iGoogle) و Google Sites برای توسعه صفحات وب. این ابزارها رایگان هستند ولی کاربران قادر خواهند بود تا با پرداخت هزینه، ابزارهای بیشتر و فضای بیشتری را خریداری نمایند. Google Apps به موسسات این اجازه را میدهد تا از این سرویس تحت دامنه شخصی خودشان استفاده کنند و حتی ظاهر این برنامه ها را مطابق سلیقه خودشان برای همخوانی با موسسه خویش تغییر دهند. بدین صورت دانشگاه ها یا مراکز آموزشی قادر خواهند بود تا منتخبی از برنامه های Google Apps را در ظاهری آشنا و کاربر پسند به دانش آموزان و دانشجویان ارائه دهند. در دوره آموزشی Linux Academy Google App Engine Deep Dive با آموزش کامل موتور گوگل اپ اشنا خواهید شد.
با توجه به استفاده ی فراوان از تلفن های همراه هوشمند و فراگیر شدن نرم افزارهای جانبی برای این دستگاه ها، توسعه دهندگان آن ها را نیز بیشتر شده است که بعضی از آن ها با جاوا و بعضی دیگر با فریم ورک های موجود برای این دستگاه ها بازی و برنامه تولید می کنند. آیونیک یک چارچوبی است برای توسعه ی نرم افزارهای موبایل بدون دانستن جاوا که هدف آن توسعه ی برنامه های ترکیبی از چند زبان مختلف مثل HTML5 ،CSS و جاوا اسکریپت است. آیونیک در زمینه ی طراحی ظاهر برنامه ها به شما کمک می کند به صورتی که به وسیله ی آن می توانید تمام تعاملات کاربر با برنامه خود را ایجاد و مدیریت کنید. می توان گفت فرم ورک آیونیک شبیه بوت استرپ است با این تفاوت که پشتیبانی آن طیف وسیعی از تلفن های هوشنمد را شامل می شود البته نمی توان این را گفت که شبیه به فریم ورک هایی هست که فقط عمل Responsive کردن را انجام می دهند بلکه اساس آن بر اساس المان ها و لایه هایی است که در طراحی ظاهری برنامه های موبایل iOS و Android استفاده می شود. در دوره آموزشی Udemy Ionic 4 Firebase with Angular-Build PWA, Native Android, iOS با آموزش آیونیک 4 فایربیس با آنگولار اشنا خواهید شد.
کوبرنتیس پیاده سازی جدیدی از بیش از یک دهه تجربه گوگل در اجرای نرم افزارهای سمت سرور در مقیاس بسیار بالاست که به صورت متن باز (open source) در اختیار همه قرار گرفته است. این نرم افزار وظیفه اجرا و مدیریت کانتینرها را بر روی گروهی از سرورهای موجود در یک یا چند مرکز داده ها (data center) به عهده دارد. کوبرنتیس در واقع نسل سوم از این فنآوریست که در شرکت گوگل از ابتدا به زبان گو (Go) پیاده سازی شده است. دو نسل قبلی آن برگ (Borg) نام داشته که پیاده سازی آن به زبان سی پلاس پلاس بوده است و گوگل همچنان از آن در محیط عملیاتی استفاده می کند. در کوبرنتیس یک یا چند کانتینر که به صورت مشترک برنامه ای کاربردی را تشکیل می دهند، به صورت واحدی جداگانه به نام پاد (pod) دسته بندی میشوند تا مدیریت و کشف (discovery) آنها آسانتر شود. مزیت کلیدی کوبرنتیس در این است که بدون نیاز به یک تیم بزرگ برای راه اندازی و نگهداری، میتوان آن را در مقیاس وسیع برای اجرای میلیاردها برنامه کاربردی به کار گرفت. از مزایای دیگر آن قابلیت اجرا بر روی بسترهای متفاوت است؛ از سرورهای یک مرکز داده های خصوصی گرفته تا سرویسهای ابری عمومی، یا حتی ترکیبی از هر دو. در دوره آموزشی Udemy Kubernetes Mastery: Hands-On Lessons From A Docker Captain با آموزش تسلط بر کوبرنتس اشنا خواهید شد.
جاوا اسکریپت، پیاده سازی ECMA Script است (با تلفظ اکما اسکریپت) که به صورت مخفف به آن ES هم گفته میشود و ES6، در حقیقت نگارش 6 این استاندارد است که به آن ECMA Script 2015 نیز میگویند (زمان نهایی شدن استاندارد آن سال 2015 است) و از زمان ارائهی جاوا اسکریپت، بزرگترین تغییر و تحول آن نیز محسوب میگردد. با ES6 مواردی مانند کلاسها، برنامه نویسی تابعی (functional programming)، ماژولها و غیره اضافه شدهاند. در طی 2 سال آینده، تمام فریم ورکهای جدید جاوا اسکریپتی، از بوت استرپ 4 تا AngularJS 2 تا Aurelia و غیره، همگی به ES6 کوچ خواهند کرد (و این اتفاق هم اکنون در حال رخ دادن است). بنابراین به زودی بدون فراگیری و تسلط بر ES6، در حوزهی وب، بیسواد محسوب خواهید شد و فراگیری آن یک باید است. در دوره آموزشی Udemy JavaScript Modern ES6 - 2020 - The Complete Course با آموزش کامل و مدرن جاوا اسکریپت ES6 اشنا خواهید شد.
اندروید استودیو یک محیط برنامه نویسی برای پلتفرم اندروید است. این برنامه در ۱۶ می ۲۰۱۳ توسط مدیران گوگل در کنفرانس گوگل آی/او معرفی شد. از ماه جوئن ۲۰۱۳ نسخه پیش نمایش این برنامه (به صورت رایگان) برای امتحان در دسترس توسعه دهندهها قرار گرفت. این محیط بر اساس نرمافزار محبوب جتبرینز طراحی شده است، این استودیو بطور اختصاصی برای اندروید طراحی شده است. از جمله ویژگی های آن کدنویسی زنده، رندر همزمان برنامه، راهنمای بهینهسازی، پشتیبانی از ساخت مبتنی بر Gradle، رفع و عیب یابی مخصوص اندروید، ابزار لینت برای گرفتن عملکرد، قابلیت Proguard و امضای برنامه و... می باشد. در دوره آموزشی Udemy Android App Development using Android Studio 2020 - Beginner با آموزش مقدماتی توسعه اپ اندروید با اندروید استودیو 2020 اشنا خواهید شد.