واقعیت افزوده (Augmented Reality) یک نمای فیزیکی زنده، مستقیم یا
غیرمستقیم (و معمولاً در تعامل با کاربر) است، که عناصری را پیرامون دنیای
واقعی افراد اضافه میکند. این عناصر بر اساس تولیدات کامپیوتری که از طریق
دریافت و پردازش اطلاعات کاربر توسط سنسورهای ورودی مانند صدا، ویدئو،
تصاویر گرافیکی یا دادههای GPS است ایجاد میشود. واقعیت رایانهای
مفهوم کلی واقعیت افزودهاست. در واقعیت افزوده معمولاً چیزی کم نمیشود
بلکه فقط اضافه میشود. همچنین واقعیت افزوده تا حدودی شبیه به واقعیت
مجازی است که توسط یک شبیهساز، دنیای واقعی را کاملاً شبیهسازی میکند.
در واقع وجه تمایز بین واقعیت مجازی و واقعیت افزوده این است که در واقعیت
مجازی کلیهٔ عناصر درک شده توسط کاربر، ساخته شده توسط کامپیوتر هستند. اما
در واقعیت افزوده بخشی از اطلاعاتی را که کاربر درک میکند، در دنیای
واقعی وجود دارند و بخشی توسط کامپیوتر ساخته شدهاند. در واقعیت افزوده،
عناصر معمولاً به صورت بیدرنگ نگاشته شده و بهطور هوشمند مرتبط با عناصر
محیطی میباشند، مانند نمایش امتیاز مسابقات ورزشی در زمان پخش از
تلویزیون. با کمک تکنولوژی پیشرفتهٔ واقعیت افزوده (برای مثال افزودن
قابلیت بینایی کامپیوتری و تشخیص اشیاء) میتوان اطلاعات مرتبط با دنیای
واقعی پیرامون کاربر را به صورت تعاملی و دیجیتالی به او ارائه کرد. همچنین
میتوان اطلاعات مرتبط با محیط و اشیاء اطراف را بر روی دنیای واقعی
نگاشت. ایده اولیه واقعیت افزوده اولین بار در سال ۱۹۹۰ توسط توماس کادل
کارمند بوئینگ مطرح شد. در دوره Udemy Complete ARKIT 2.0 : Build 15 Apps for iOS12 with Scenekit با آموزش کامل ای آر کیت 2.0: ساخت 15 اپ برای آی او اس 12 با سین کیت آشنا می شوید.
اوپنسیوی (OpenCV) یا همان Open Computer Vision Library مجموعه ای از کتابخانههای برنامهنویسی پردازش تصویر و یادگیری ماشین است. این مجموعه بیشتر بر پردازش تصویر بی درنگ (Real Time) تمرکز دارد. در ابتدا توسط اینتل ساخته و پشتیبانی میشد و هم اکنون توسط Willow Garage و Itseez پشتیبانی میگردد. استفاده از آن با پروانه فری بیاسدی آزاد است. اوپن سی وی کتابخانهای چندسکویی است و توسط سیستم عامل های ویندوز، لینوکس، مک اواس، آی او اِس و اندروید پشتیبانی میشود. همچنین دارای رابط برنامه نویسی به زبان های سی، سی++، پایتون، جاوا و متلب است. کیوت (Qt) مجموعهای از کتابخانهها و سرآیندهای نوشتهشده به زبان سی++ است که به برنامهنویس امکان توسعه آسان نرمافزارهای کاربردی را میدهد. کیوت شامل چندین کلاس برای کار با واسط گرافیکی، چندرسانه، ابزارهای پایگاهداده، شبکه و... است. نرمافزارهای نوشته شده با ابزار کیوت قادرند تا با استفاده از یک کامپایلر زبان سیپلاسپلاس برای طیف وسیعی از سیستمعاملها از جمله گنو/لینوکس (نسخههای رومیزی و وسیلههای قابل حمل)، ویندوز، ویندوز CE، مکاواس و... همگردانی شوند. بدین ترتیب حمل نرمافزار نوشته شده بدون تغییر در متن کد نوشته شده امکانپذیر است. از کیوت در زبانهای برنامهنویسی متعددی مانند سی++ و جاوا و پایتون میتوان استفادهکرد. در دوره آموزشی Udemy Cross-Platform Application Development with OpenCV 4 and Qt 5 با آموزش ساخت اپ های چند سکویی با اوپن سی وی 4 و کیو تی 5 آشنا می شوید.
در مدل رابطهای دادهها، زبان ساختارمند پرسشها یا اسکیوال یا سیکوال (Structured Query Language - SQL) زبانی است سطح بالا مبتنی بر زبان سطح پایین و ریاضی جبر رابطهای که برای ایجاد، تغییر، و بازیابی دادهها و نیز عملیات بر روی آنها بهکار میرود. زبان SQL به سمت مدل شیگرا - رابطهای نیز پیشرفت کرده است. Microsoft SQL Server یک نرمافزار مدیریت پایگاه داده رابطهای است که توسط شرکت مایکروسافت توسعه داده میشود. از جمله ویژگیهای این سامانه، میتوان به ساخت و مدیریت بانک اطلاعاتی رابطهای، پشتیبانی از ACID، پشتیبانی از Referential integrity، قابلیتهای انتقال پایگاه و بسیاری از قابلیتهای دیگر داده اشاره کرد. این نرم افزار دارای ویرایشهای متنوع و متناسب با محیطهای کاری مختلف است. از جمله قابلیتهای کلیدی Microsoft SQL Server 2016، ساخت و مدیریت بانک اطلاعاتی رابطهای، پشتیبانی از ACID، پشتیبانی از Referential integrity، پشتیبانی از XML، رمز گذاری پیوسته اطلاعات، بهینه سازی موتور in-Memory OLTP، پشتیبانی از Microsoft Azure، انتقال پایگاه داده به سایر Platform ها و... می باشد. در دوره آموزشی Udemy Mastering SQL (Using MySQL, Java, and Go) با آموزش تسلط بر اس کیو ال با استفاده از مای اس کیو ال، جاوا و گو آشنا می شوید.
گیت (Git) یک نرمافزار آزاد و متنباز برای بازنگری کد منبع توزیع شده و مدیریت منبع کد است که برروی سرعت تاکید میکند. گیت ابتدا برای توسعهٔ لینوکس توسط لینوس تروالدز به وجود آمد و اکنون پروژههای فراوانی از آن الهام گرفتهاند. هر دایرکتوری کاری در گیت یک مخزن کامل با تاریخچهٔ کامل تغییرات و قابلیت بازنگری تغییرات است و برای کار با آن نیازی به دسترسی به شبکه یا سرور مرکزی وجود ندارد. گیت یک نرمافزار آزاد است که تحت عنوان جیپیال نسخه ۲ توزیع شده است. گیتهاب (GitHub) یک سرویس میزبانی وب برای پروژههای است که از سیستم سورس کنترل گیت استفاده میکنند. گیتهاب با استفاده از روبی آن ریلز و ارلنگ ساخته شدهاست. این سرویس هم دارای گزینه رایگان برای پروژههای متنباز و هم پولی برای پروژههای تجاری است. گیت هاب در سال ۲۰۰۸ پایهگذاری گردید و بر اساس گزارشی در ژوئن ۲۰۱۱، این سرویس محبوبترین سرویس ارائهدهنده گیت است. در دوره آموزشی Udemy Git and GitHub Essentials با آموزش گیت و گیت هاب آشنا می شوید.
با توجه به استفاده ی فراوان از تلفن های همراه هوشمند و فراگیر شدن نرم افزارهای جانبی برای این دستگاه ها، توسعه دهندگان آن ها را نیز بیشتر شده است که بعضی از آن ها با جاوا و بعضی دیگر با فریم ورک های موجود برای این دستگاه ها بازی و برنامه تولید می کنند. آیونیک یک چارچوبی است برای توسعه ی نرم افزارهای موبایل بدون دانستن جاوا که هدف آن توسعه ی برنامه های ترکیبی از چند زبان مختلف مثل HTML5 ،CSS و جاوا اسکریپت است. آیونیک در زمینه ی طراحی ظاهر برنامه ها به شما کمک می کند به صورتی که به وسیله ی آن می توانید تمام تعاملات کاربر با برنامه خود را ایجاد و مدیریت کنید. می توان گفت فرم ورک آیونیک شبیه بوت استرپ است با این تفاوت که پشتیبانی آن طیف وسیعی از تلفن های هوشنمد را شامل می شود البته نمی توان این را گفت که شبیه به فریم ورک هایی هست که فقط عمل Responsive کردن را انجام می دهند بلکه اساس آن بر اساس المان ها و لایه هایی است که در طراحی ظاهری برنامه های موبایل iOS و Android استفاده می شود. در دوره آموزشی Udemy Ionic 4 - Build iOS, Android & Web Apps with Ionic & Angular با نآموزش ساخت اپ آی او اس، اندروید و وب اپ با آیونیک و آنگولار آشنا می شوید.
DevOps که از ترکیب دو واژه انگلیسی Development (به معنای توسعه) و Operations (به معنای عملیات و اجرا) ایجاد شده، حرکت و فرهنگی است که بر همکاری و ارتباط عمیق توسعهدهندگان نرمافزار و سایر متخصصان حوزه فناوری اطلاعات (IT)، در فرایند ارایه محصول نرمافزاری تأکید میکند. این حرکت تلاش دارد تا محیطی را فراهم کند که در آن امکان ساخت، آزمایش و ارایه نرمافزار با سرعت بیشتر و با پایداری بالاتر تحقق یابد. در گذشته، بکارگیری زیرساختها و بهروزرسانی اپلیکیشنها، باعث کند شدن چرخه عمر آنها میشد. امروز که تکنولوژی رایانش ابری به سازمانها اجازه میدهد منابع را به جای چند ماه در چند دقیقه فراهم کنند، وقت آن رسیده که چرخه عمر اپلیکیشنها هم به تناسب تغییر کند. در این زمینه، DevOps میتواند کمک کند، اما تنها در صورتی که فراتر از تغییرات فرهنگی و گسترش مداوم حرکت کند. DevOps (ترکیبی از دو کلمه Development به معنی توسعه و Operation به معنی عملیات)، روشی برای تولید نرمافزار است که بر ارتباطات، مشارکت و ادغام بین تولیدکنندگان نرمافزار و متخصصین IT تأکید میکند. در واقع، DevOps واکنشی به وابستگی متقابل تولید نرمافزار و عملیات IT است. هدف آن کمک به سازمانها است تا بتوانند به سرعت محصولات و خدمات نرمافزاری تولید کنند. در دوره آموزشی Udemy Project in DevOps - Build Real World Processes با آموزش ساخت فرآیند های واقعی با دوآپس آشنا می شوید.
RESTful (یا REST مخفف Representational state transfer) روشی برای ایجاد، خواندن، آپدیت نمودن و با حذف اطلاعات بر روی سروری است که از HTTP call های ساده استفاده می کنند. در واقع REST یک مدل طراحی برای برنامه های شبکه ای می باشد که ارتباط بین دو سیستم (client-server) را توسط یک پروتکل (مانند http، smtp، ftp و ...) ایجاد می کند. برنامه های بر پایه این روش/معماری، ReSTful application نامیده می شوند، چرا که فقط با request های CRUD (مخفف create update read delete) پروتکل واسط با هدف تعامل برقرار می کنند. در دوره Udemy RESTful API with Laravel: Build a real API with Laravel شما با ای پی آی های رست فول در لاراول آشنا می شوید.
MongoDB را میتوان یکی از پرمخاطبترین پایگاههای داده موجود در جمع اعضای خانواده NoSQL دانست که بنابر برخی آمارهای جمعآوری شده، لقب پرمخاطبترین را نیز بهخود اختصاص داده است. این پایگاه داده یک مدل منعطف، پویا و سندگرا را ارائه میکند که ساختاری با خروجی بسیار بالا و قابلیت مقیاسپذیری آسان را دارا است که در پروژهها و سیستمهای کلان داده یا همان Big Data به شدت مورد نیاز است. این پایگاه داده بهدلایل مختلفی از جمله مواردی که گفته شد، در سالهای گذشته مورد استقبال فراوانی قرار گرفته و راهاندازها و کتابخانههای توسعهداده شده برای آن برای اغلب زبانهای برنامهنویسی، از جمله زبان محبوب #C در دسترس قرار گرفته است. پایگاه داده MongoDB را میتوان جزء آندسته از پایگاههای دادهای دانست که اغلب پلتفرمهای مطرح دنیا را پشتیبانی کرده و برای نصب روی لینوکس، مکینتاش، ویندوز و سولاریس بستههای نصب ارائه میکند. در دوره Packt Learning Programmatic Access to MongoDB با آموزش دسترسی برنامه ای به مونگو دی بی آشنا می شوید.
پردازش زبانهای طبیعی رهیافت بسیار جذابی برای ارتباط بین انسان و ماشین محسوب میشود و در صورت عملی شدنش به طور کامل میتواند تحولات شگفتانگیزی را در پی داشتهباشد. سیستمهای قدیمی محدودی مانند SHRDLU که با واژههای محدود و مشخصی سر و کار داشتند، بسیار عالی عمل میکردند، به طوری که پژوهشگران را به شدت نسبت به این حوزه امیدوار کردهبودند. اما در تقابل با چالشهای جدیتر زبانی و پیچیدگیها و ابهامهای زبانها، این امیدها کمرنگ شدند. مسئلهٔ پردازش زبانهای طبیعی معمولاً یک مسئلهٔ AI-Complete محسوب میشود، چرا که محقق شدن آن به طور کامل مستلزم سطح بالایی از درک جهان خارج و حالات انسان برای ماشین است. SpaCy یک کتابخانه بسیار سریغ و کاربردی برای یادگیری نوشته ها، ساده سازی تکنیک های پردازی زبان طبیعی و... است. در دوره آموزشی Udemy NLP - Natural Language Processing with Python به آموزش کامل پردازش زبان طبیعی با پایتون می پردازیم.
در سپتامبر سال 2016، فریم ورک محبوب جاوا اسکریپت Vue.js نسخه ی v2 خود را منتشر کرد. Vue.js 2.0 آمار فوق العاده ای از عملکرد، حجم نسبتا کم (نسخه دارای runtime فشرده Vue هنگام کوچک شدن و zip شدن حجمی به اندازه ۱۶ کیلوبایت دارد)، آپدیت کتابخانه های همراه خود مانند vue-router و vuex، کتابخانه مدیریت وضعیت برای Vue. را به رخ می کشد. دامنهی عملکردهای Vue.js محدود به تعریف و تغییر متغیرها و تعریف مدلها نیست. امکانات پیشرفتهتری مانند نمایش شرطی، حلقهها و کامپوننتها، از جمله ابزارهای دیگری هستند که برنامهنویسی سیستمهای پیشرفته تحت وب را به کاری آسان و سریع تبدیل میکنند. در دوره آموزشی Lynda Vue.js Essential Training با ویو جی اس و ویژگی های آن آشنا می شوید.