علم داده (Data Science)، دانشی میانرشتهای پیرامون استخراج دانش و آگاهی از مجموعهای داده و اطلاعات است. علم داده از ترکیب مباحث مختلفی به وجود آمده و بر مبانی و روشهای موجود در حوزههای مختلف علمی بنا شدهاست. تعدادی از این حوزهها عبارتند از: ریاضیات، آمار، مهندسی داده، بازشناخت الگو و... هدف این علم، استخراج مفهوم از داده و تولید محصولات دادهمحور است. آقایان توماس دونپورت و دی جی پاتیل در سال ۲۰۱۲ در مقاله «علم داده: جذابترین شغل قرن بیست و یکم» متخصصین علم داده را این طور تعریف میکنند: کسانی که میدانند چگونه میتوان از انبوه اطلاعات بدون ساختار پاسخ سوالهای کسبوکار را پیدا کرد. استنتون در سال ۲۰۱۳ علم داده را این طور تعریف میکند: علم داده رشته در حال ظهوری است که به جمعآوری، آمادهسازی، تحلیل، بصریسازی، مدیریت و نگهداشت اطلاعات در حجم بالا میپردازد. دریسکول در سال ۲۰۱۴ علم داده را این طور تعریف میکند: علم داده مهندسی عمران دادههاست. متخصص علم داده دانشی کاربردی از دادهها و ابزارها دارد به علاوه درک تئوریکی دارد که مشخص میکند چه چیزی از نظر علمی ممکن است. به شاغلین در حوزهٔ علم داده، متخصص علم داده (data scientist) میگویند. در دوره آموزشی Udemy The Data Science Course 2019: Complete Data Science Bootcamp با مباحث مربوط به علوم داده ها به طور کامل آشنا می شوید.
++C یک زبان پیشرفته، شی گرا و چند منظوره است که برگرفته و توسعه یافته زبان قدرتمند C است و در اوائل دهه 1980 توسط استراس تروپ؛ دانشمند دانمارکی آزمایشگاههای بل طراحی شد. سی پلاس پلاس دارای قابلیتهای متعددی است که باعث زیبایی و انعطاف بیشتر زبان C شده است که مهمترین آنها شی گرا بودن زبان ++C است. زبان سی پلاس پلاس یک زبان سطح میانی (دارای قابلیت های زبانهای سطح بالا و پایین) است که برای طراحی و تولید هر چه بهتر برنامه های کاربردی، روش های ساخت یافته و منظمی را تدارک دیده است و در عین حال، برخورداری و پشتیبانی از قابلیت های شی گرایی از برجسته ترین ویژگی های این زبان است. برنامههای نوشته شده به زبان C در فایلی متنی با پسوند c. ذخیره میشوند. به این فایل، کد منبع (source code) گفته میشود. فایل کد منبع برای اجرا باید به زبان ماشین ترجمه شود که به اینکار ترجمه (compile) و به برنامهای که عمل ترجمه به زبان ماشین یا زبان دیگر را انجام میدهد مترجم (compiler) میگویند. زبان سیشارپ (C#) است. این زبان توسط مایکروسافت و جزئی از دات نت به وجود آمد و بعداً استانداردهای ECMA و ISO را نیز در بر گرفت و یکی از ۴۴ زبان برنامه نویسی ای است که توسط زمان اجرای زبان مشترک از .NET Framework پشتیبانی میشوند و در همه جا به وسیله مایکروسافت ویژوال استودیو شناخته میشود. در واقع زبان #C، یک زبان برنامه نویسی چند الگویی و است و منظم شده مدلهای تابعی، امری، عمومی، شی گرا و جز گرا و در بستر دات نت است. در دوره آموزشی Udemy C++ & C# for absolute beginners. Learn with examples با آموزش مقدماتی سی پلاس پلاس و سی شارپ همراه با مثال آشنا می
شوید.
آزمون نرمافزار به فرایند ارزیابی نرمافزار به منظور اطمینان از عملکرد صحیح آن در رویدادهایی مختلفی که ممکن است در دوره استفاده از نرمافزار با آن مواجه شود است و به عبارت دیگر پیدا کردن خطاهایی احتمالی یک نرمافزار برای عملکرد درست، صحیح و بهینه آن در طول استفاده از آن است. هر چقدر نرمافزار بتواند با رویدادها مختلف به صورت مطلوب تر و قابل پذیرش تری چه از نظر عملکرد و چه از راحتی کاربر داشته باشد میتوان انتظار داشت نرمافزار دارای عملکرد بهتری است. ر سالهای اخیر آمارهای شگفتآوری از سوی مؤسسه (NIST(National Institute of Standards and تست نرمافزار Technologyدربارهٔ شکست سیستمهای نرمافزاری ارائه شدهاست. در کشور ایالات متحده، این شکستها سالیانه حدود ۵۹٫۵ میلیارد دلار به اقتصاد این کشور صدمه میزند. طبق بررسیهای انجام شده با بکارگیری تست در تمام فازهای تولید نرمافزار ۲۲٫۲ میلیارد دلار از این خسارت را میتوان کاهش داد. طبق آمارهای ارائه شده از سوی مؤسسه (IDC(International Data Corporation، چهل درصد از بودجه نرمافزارها صرف تست آن میگردد. در دوره آموزشی Udemy International Software Testing certification : Beginners با آموزش مقدماتی مدرک بین المللی تست نرم افزار آشنا خواهید شد.
نرم افزارهای مدیریت محتوا یا (CMS) ها هر روز جای خود را بیشتر از پیش در میان سایتهای اینترنتی باز می کنند و به هواداران و طرفداران خود می افزایند. این نرم افزارهای تحت وب و اپن سورس، امکانات بسیاری را در اختیار کاربران، طراحان، توسعه دهندگان و مدیران سایت ها قرار داده و برنامه نویسان را از بسیاری از دوباره کاری ها نجات می دهند. یکی از محبوبترین این نرم افزارها، وردپرس است. وردپرس یک نرمافزار تحت وب است که در واقع ادامه موفقیتآمیز پروژه b2 می باشد و توسط مت مولوگ (Matt Mullenweg) بنیان گذاری شده است. مت و همکارانش با تاسیس شرکت Automattic هماکنون در حال گسترش این نرم افزار و پروژه های موازی آن مانند WordPress.com و Akismet می باشند. عمومیترین استفاده از وردپرس برای راهاندازی یک وبلاگ است زیرا وردپرس دارای هستهای قدرتمند است و پیشروترین نرمافزار در این زمینه به شمار میرود. در دوره آموزشی Udemy Complete WordPress Dashboard Course: Beginner to Advanced با آموزش کامل مقدماتی تا پیشرفته داشبورد وردپرس آشنا می شوید.
Java Spring Framework مشهورترین فریم ورک برای ساخت نرم افزارهای تحت وب
با جاوا می باشد. در مهندسی نرمافزار، مدل-نما-کنترلگر یا امویسی (MVC)
به یک الگوی معماری نرمافزار گفته میشود. الگوی ساختاری امویسی به
جداسازی دادههای کاربرد (از جملهٔ محتویات بخش مدل) از مؤلفههای ارائه
شده بهصورت گرافیکی (بخش نما) و منطق مربوط به پردازش ورودیها (بخش
کنترلگر) اقدام مینماید. هدف الگوی ساختاری امویسی صرفاً یکپارچگی در
ساختار نرمافزار است و به کمک آن بدست گیری نرمافزار در راستای مدیریت و
گسترش به سادگی انجام میگیرد. در سپتامبر سال 2016، فریم ورک محبوب جاوا اسکریپت Vue.js نسخه ی v2 خود را منتشر کرد. Vue.js 2.0 آمار فوق العاده ای از عملکرد، حجم نسبتا کم (نسخه دارای runtime فشرده Vue هنگام کوچک شدن و zip شدن حجمی به اندازه ۱۶ کیلوبایت دارد)، آپدیت کتابخانه های همراه خود مانند vue-router و vuex، کتابخانه مدیریت وضعیت برای Vue. را به رخ می کشد. دامنهی عملکردهای Vue.js محدود به تعریف و تغییر متغیرها و تعریف مدلها نیست. امکانات پیشرفتهتری مانند نمایش شرطی، حلقهها و کامپوننتها، از جمله ابزارهای دیگری هستند که برنامهنویسی سیستمهای پیشرفته تحت وب را به کاری آسان و سریع تبدیل میکنند. در دوره آموزشی Udemy Build A Web App with VueJS, Spring Framework and MongoDB با آموزش ساخت وب اپ با ویو جی اس، اسپرینگ و مانگو دی بی آشنا می شوید.
زبان سیشارپ (C#) است. این زبان توسط مایکروسافت و جزئی از دات نت به وجود آمد و بعداً استانداردهای ECMA و ISO را نیز در بر گرفت و یکی از ۴۴ زبان برنامه نویسی ای است که توسط زمان اجرای زبان مشترک از .NET Framework پشتیبانی میشوند و در همه جا به وسیله مایکروسافت ویژوال استودیو شناخته میشود. در واقع زبان #C، یک زبان برنامه نویسی چند الگویی و است و منظم شده مدلهای تابعی، امری، عمومی، شی گرا و جز گرا و در بستر دات نت است. Java EE مخفف Java Platform، Enterprise Edition به معنی نگارش سازمانی سکوی جاوا می باشد. JEE سکویی پر استفاده برای برنامه نویسی کارگزاران در زبان برنامه نویسی جاواست. نگارش سازمانی از نگارش سکوی استاندارد جاوا متمایز است، چراکه این زبان با اضافه نمودن کتابخانه هایی، برای ساده سازی پیاده سازی نرمافزارهای کاربردی به صورت چند لایه طراحی شده است. اجزای نگارش سازمانی جاوا، نیازمند محیط زمان اجرای مخصوصی هستند. در دوره آموزشی Udemy C# & Java for absolute beginners. Learn with examples با آموزش مقدماتی سی شارپ و جاوا همراه با مثال آشنا می شوید.
CSS Grid یکی از موضوعاتی است که اخیرا بیشتر و بیشتر در بحث توسعه وب به آن اشاره می کنند. دلیل این همه بحث و هیجان زدگی هم ساده است: CSS Grid به ما قابلیتی را می دهد که بتوانیم لایه بندی شبکه ها «Grids» را تغییر دهیم. چیز اصلی که ما باید به خاطر بسپاریم، اینست که قواعد کلی CSS Grid هنوز هم براساس قواعد W3C نوشته و آماده می شود. و این بدین معناست که ظاهرا هنوز ورژن نهایی از این قواعد و معیار ها به صورت کامل عرضه نشده است. برای مثال بحث پشتیبانی از مرورگر هنوز کمی مشکل دارد. البته باید گفت که در نهایت ما خروجی را به شیوه استانداردی خواهیم گرفت. CSS Grid سیستمی است که به شما اجازه طراحی لایه های دو بعدی را می دهد. با وجود آنکه موضوع لایه های دو بعدی در این بحث خیلی پیشگامانه عمل نکرده است، اما باید دانست که این موضوع واقعا وجود دارد. برای فهم بهتر از این قضیه با دیدن تصویر بالا می توانید شاهد آن باشید که CSS Grid این قابلیت را به شما می دهد که ردیف ها و ستون ها را مدیریت و دسته بندی کنید. اگر با Flexbox آشنایی داشته باشید می دانید که این تکنولوژی به شما فقط اجازه مدیریت ستون ها را می دهد. با استفاده از CSS Grid شما می توانید به لایه هایی دسترسی پیدا کنید که قبلا کار با آنها غیر ممکن بود. در حقیقت این چیزها قبلا در لیست آرزو های ما بوده اند، البته بعد از لایه هایی که بر اساس جدول ما آنها را می ساختیم. در دوره آموزشی Udemy Complete CSS Grid course with a real world website project با آموزش کامل سی اس اس گرید همراه با ساخت یک وب سایت واقعی آشنا می شوید.
وب اپلیکیشن های progressive آینده ی بشریت هستند. این اپلیکیشن ها موجب پیشرفت در حوزه ی وب اپلیکیشن های موبایل شده، ایجاد یکسانی در اپلیکیشن های وب و native را تسهیل کرده و به برنامه نویسان موبایل کمک می کند تا ورای مرزهای وب استور ها، به کاربران بیشتری دسترسی داشته باشند. در واقع وب اپلیکیشن های progressive از قابلیت های وب مدرن برای ایجاد تجربه ی شبه اپلیکیشنی برای کاربر استفاده می کند. اپلیکیشن های native موجود در app store ها کارهایی مانند ارسال ناتیفیکیشن، آفلاین کار کردن، داشتن ظاهر و احساس یک اپلیکیشن (همانطور که اپل و گوگل آنها را تصور کرده بودند)، بارگذاری بر روی صفحه ی Home و غیره را انجام می دهند. موبایل اپلیکیشن هایی که در مرورگر موبایل قابل دسترس هستند، در مقایسه با این نوع اپلیکیشن ها، در گذشته چنین کارهایی را انجام نمی داده اند. وب اپلیکیشن های progressive با استفاده از web API های جدید، مفاهیم جدید در طراحی و فناوری جدید این مشکل را رفع می کند. در دوره آموزشی Pluralsight Building Progressive Web Apps with Ionic با آموزش ساخت وب اپ های پیش رونده با آیونیک آشنا می شوید.
پُستگْرِسکیواِل (PostgreSQL)، یا به طور سادهتر پُستگْرِس، یک سامانه مدیریت پایگاه دادههای شی-رابطهای است که برای سکوهای مختلفی از جمله لینوکس، فری بیاسدی، ویندوز، و مک اواس ده موجود است. پستگرسکیوال توسط گروه توسعه سراسری پستگرسکیوال توسعه داده میشود، که شامل تعداد زیادی از افراد داوطلب است. پستگرسکیوال بخش اعظم استاندارد اسکیوال:۲۰۰۸ را پیادهسازی میکند، ACID-موافق است، کاملا تراکنشی است (این شامل شرحهای تعریف داده نیز میشود)، دارای نوع دادهها، عملگرها، روشهای فهرست، توابع، توابع جمعبندی، زبانهای رویهای قابل توسعه است، و دارای افزونههای بسیاری است که توسط دیگران ایجاد شده است. پستگرسکیوال تکامل یافته پروژه پستگرس (POSTGRES) در دانشگاه برکلی است. پستگرس ادامه پایگاه داده رابطهای اینگرس (INGRES) بود. در دوره آموزشی Udemy Complete SQL Bootcamp using PostgreSQL با آموزش کامل اس کیو ال با پستگرسکیوال آشنا می شوید.
افرادی که تکنولوژی های مایکروسافت به ویژه asp.net را پیگیری می کنند یکی دو سال می شود که با شنیدن خبرهایی مانند "open source شدن دات نت"، "قابلیت اجرا بر روی غیر ویندوز مثل لینوکس و os x با سوالهایی مواجه می شوند. این تغییرات موجب چه بهبودهایی در توسعه نرم افزار های تحت .net می شود؟ آیا مایکروسافت از تکنولوژی های قبلی پشتیبانی می کند یا باید سراغ تکنولوژی جدید بروم؟ برای پاسخ به سوالهایی از این دست شاید بهترین راه پس از آشنایی اولیه، انجام یک پروژه کوچک باشد. برای کسانی که برای توسعه وب سایت از تکنولوژی وب فورم استفاده می کنند تغییرات چشم گیر خواهد بود. بنابراین توصیه می شود ابتدا asp mvc نسخه های قبلی یعنی تا نسخه ۶ را اندکی تجربه کنند. اما برای کسانی که تجربه کدنویسی در چارچوب الگوی mvc را دارند تغییرات بسیار کم است. تیم asp.net سعی کرده است در نسخه جدید که تنها بر بستر mvc است از لحاظ مفهومی سازگاری را حفظ کند با اینکه تمام کتابخانه ها و توابع از نو نوشته شده اند. بنابراین اگر شما در asp.net mvc6 کلاسی دارید در asp.net core هم همین کلاس را دارید با این تفاوت که این کلاس در namespace دیگری قرار دارد. در دوره آموزشی Udemy Building a Web App with ASP.NET Core, MVC, Entity Framework با آموزش ساخت وب اپ با ای اس پس دات نت کور، ام وی سی و چارچوب انتیتی آشنا می شوید.