Swift یک زبان برنامه نویسی جدید است که برای توسعه برنامههای iOS ،Mac OS و توسعه لینوکس، توسط Chris Lattner با همکاری دیگر برنامه نویسان شرکت اپل در سال 2010 ایجاد شد و جایگزینی برای زبان Objective-C است، که زبان توصیه شده و محبوبترین زبان، برای برنامههای دستگاههای اپل است. نام Swift، بر گرفته از نام یکی از سریعترین پرندگان است. این زبان به عنوان یک جایگزین سریع، برای Objective-C توسعه یافت. به غیر از سرعت، Swift مزایای دیگری نسبت به Objective-C دارد، که از آن جمله میتوان به سهولت یادگیری، ایمنی، نیاز به کد کمتر، تعاملی بودن و ... اشاره کرد. در دوره آموزشی Udemy Build Photos App for iOS in Swift 5.3 and Xcode 12 با آموزش ساخت اپ عکس برای آی او اس با سوئیفت 5.3 و ایکس کد 12 اشنا خواهید شد.
پایتون (Python) یک زبان برنامهنویسی همه منظوره، سطح بالا، شیءگرا و مفسر است که توسط خودو فان روسوم (به هلندی: Guido van Rossum) در سال ۱۹۹۱ در کشور هلند طراحی شد. فلسفهٔ ایجاد آن تأکید بر دو هدف اصلی خوانایی بالای برنامههای نوشته شده و کوتاهی و بازدهی نسبی بالای آن است. کلمات کلیدی و اصلی این زبان به صورت حداقلی تهیه شدهاند و در مقابل کتابخانههایی که در اختیار کاربر است بسیار وسیع هستند. بر خلاف برخی زبانهای برنامهنویسی رایج دیگر که بلاکهای کد در آکولاد تعریف میشوند (بهویژه زبانهایی که از گرامر زبان سی پیروی میکنند) در زبان پایتون از نویسه فاصله و جلوبردن متن برنامه برای مشخص کردن بلاکهای کد استفاده میشود. به این معنی که تعدادی یکسان از نویسه فاصله در ابتدای سطرهای هر بلاک قرار میگیرند، و این تعداد در بلاکهای کد درونیتر افزایش مییابد. بدین ترتیب بلاکهای کد به صورت خودکار ظاهری مرتب دارند. پایتون مدلهای مختلف برنامهنویسی (از جمله شیء گرا و برنامهنویسی دستوری و تابع محور) را پشتیبانی میکند و برای مشخص کردن نوع متغییرها از یک سامانهٔ پویا استفاده میکند. این زبان از زبانهای برنامهنویسی مفسر بوده و به صورت کامل یک زبان شیگرا است که در ویژگیها با زبانهای تفسیری پرل، روبی، اسکیم، اسمالتاک و تیسیال مشابهت دارد و از مدیریت خودکار حافظه استفاده میکند. پایتون پروژهای آزاد و متنباز توسعهیافتهاست و توسط بنیاد نرمافزار پایتون مدیریت میگردد. در دوره آموزشی Udemy Real World End-To-End Python Projects : Beginner To Expert با آموزش مقدماتی تا پیشرفته پروژه های واقعی پایتون اشنا خواهید شد.
طراحی سایت، به روند برنامه ریزی و ساخت یک سایت گفته می شود. متن، تصاویر، فایل های صوتی و تصویری و المان های برنامه نویسی، توسط طراحی سایت برای تولید صفحه ای قابل رویت در مرورگر، فرمت دهی می شوند. طراحان سایت ها برای ساخت صفحاتی که بتوانند توسط مرورگرها خوانده شوند، از زبان های نشانه ای که اکثرا برای ایجاد ساختار از HTML و برای نمایش از CSS هستند، استفاده می کنند. در دنیای Web 2.0، زبان های برنامه نویسی دیگر نظیر جاوا اسکریپت، Ruby on Rails، PHP، ASP.net و Perl برای ساخت صفحات سایت ها استفاده می شوند تا تعامل کاربر با سایت بوجود آید. در کل، پروسه طراحی سایت شامل، مفهوم سازی، طرح ریزی، پیش تولید، تحقیق، تبلیغات، و همچنین مدیریت فایل های صوتی، تصویری و دیگر فایل های چند رسانه ای مورد استفاده در صفحات سایت می باشد.
فول استک دولوپر یا Full stack developer اصطلاحی است که به برنامه نویسانی که هم به کدنویسی فرانت اند و هم بک اند مسلط هستند نسبت می دهند. فرانت اند یا Front End عموما به بخشی از یک وبسایت گفته می شود که کاربر با آن برخورد می کند و با آن ارتباط دارد. همچنین بک اند یا Back End بخشی از یک وبسایت است که با سرور و پایگاه داده در ارتباط است. Full stack developer بودن لزوما بدین معنا نیست که شما به تمامی زبان های مربوط به بخش فرانت اند و بک اند مسلط هستید بلکه به این معنی است که شما قادر به کار کردن در هر دو بخش هستید و هر دو بخش را به خوبی درک می کنید. در دوره آموزشی Udemy The Ultimate 2021 Fullstack Web Development Bootcamp با آموزش کامل توسعه وب اشنا خواهید شد.
ایجکس (AJAX)، مجموعهای از استانداردها و فناوریهای وب است که به کمک آنها میتوان برنامههایی مبتنی بر وب تولید کرد که به آسانی با کاربران تعامل داشته باشند. با استفاده از این فناوریها و با کمک انتقال تکههای کوچک داده و اطلاعات از رایانهٔ خادم (Server)، صفحات وب از حالت منفعل خارج میشوند و واکنشهایی مناسب با رویدادها انجام میدهند. ایجکس معماری جدیدی برای برنامههای تحت وب است، که با سرعت بسیار زیادی در حال گسترش بوده، و کمتر کاربری در اینترنت است که هنوز گذرش به یکی از صفحاتی که با این معماری ساخته شدهاند نیفتاده، و از قابلیتهای فوقالعاده آن بهرهمند نشده باشد. Gmail، Google Map، Google Suggest، Orkut، و اسامی آشنای دیگر، نمونههایی هستند از کاربرد ایجکس. با استفاده از این معماری، صفحات وب تعامل بسیار خوبی با کاربران خواهند داشت. بعلاوه، مهمترین مزیت این معماری این است که دیگر برای انجام هر کاری، لازم نیست صفحه وب دوباره بارگذاری شود. در دوره آموزشی Udemy JavaScript AJAX 30 Projects Fetch Web APIs JSON coding با آموزش 30 پروژه جاوا اسکریپت ای جکس اشنا خواهید شد.
به صورت کلی برای تست عملکرد (functional test) دو روش جعبه سفید (whitebox) و جعبه سیاه (blackbox) وجود دارد. در حالت جعبه سفید، خود برنامه نویس یک روال تست را در قالب unit test برای تک تک کلاس ها و توابع برنامه می نویسد و کد را تست می کند. ولی در حالت جعبه سیاه ما دیگر کاری با ساختار داخلی کد نداریم و فقط به سیستم ورودی لازم را میدهیم و انتظار داریم خروجی درستی به ما بدهد. یکی از بهترین ابزارهای این تست Selenium است که با این نرم افزار نه تنها می توانید تست هایی را برای هر بخش تعریف کنید، بلکه می توانید تست ها را زمان بندی کرده و به طور خودکار انجام دهید. فرض کنید وب سایت شما ۱۰۰ ویژگی مختلف دارد، شما همه ی این ۱۰۰ ویژگی را تست می کنید و وب سایتتان را منتشر میکنید. بعد از دو روز یک باگ گزارش می شود و یا میخواهید تغییر کوچکی در روند فعالیت کاربر ایجاد نمایید. آیا پس از اعمال تغییرات یا رفع باگ میخواهید دوباره همه ی آن ۱۰۰ ویژگی را تست کنید. اینجاست که سلنیوم به کمک شما می آید و همه ی تست ها را به صورت خودکار انجام می دهد. سلنیوم دو بخش اصلی به نام های سلنیوم IDE یا (selenium IDE) و سلنیوم وب درایور (selenium webdriver) دارد. سلنیوم IDE یک addon برای فایرفاکس است و پس از نصب آن می توانید آیکن آن را در کنار نوار آدرس ببینید. سلنیوم وب درایور یک کتابخانه برنامه نویسی است که برای اکثر زبان های معروف از جمله پایتون و جاوا موجود است. این کد را می توانید از سلنیوم IDE خروجی بگیرید. پس از اینکه در سلنیوم IDE ضبط دستورات تمام شد از منوی فایل روی export test case رفته و زبان مورد نظر خود را انتخاب کنید. سپس سلنیوم یک خروجی به همان زبان به شما خواهد داد. در دوره آموزشی Udemy Automation Testing Masterclass - Java, Selenium and More با آموزش ایجاد اتوماسیون تست با جاوا، سلنیوم و... اشنا خواهید شد.
الگوریتم (Algorithm) یکی از مهم ترین بخش های دنیای کامپیوتر می باشد. در واقع الگوریتم مجموعه ای ترتیبی از دستور العمل ها است که به ترتیب خاصی اجرا می شوند و مساله ای خاص را حل می کنند. در دنیای کامپیوتر مسائل مختلفی وجود دارد که برای هرکدام الگوریتم های متفاوتی وجود دارد، هر کدام از آن ها دارای مزایا و معایبی هستند، به طور مثال یکی در استفاده از فضا بهینه است و یکی زمان اجرای بسیار بهینه و کمی دارد. از این رو دانستن الگوریتم های مختلف مثل جست و جو، مرتب سازی و... در دنیای کامپیوتر بسیار اهمیت دارد. از طرفی برای استفاده مناسب از الگوریتم ها باید با انواع ساختمان های داده مثل صف، پشته، لیست پیوندی و... آشنا بوده و ویژگی های هرکدام را بدانیم. ما می توانیم با انتخاب ساختمان داده و الگوریتم مناسب مسائل مختلف را به صورت بهینه حل کنیم و برنامه های بسیار مناسبی تولید نماییم. در دوره آموزشی Udemy Algorithms in Java :Live problem solving & Design Techniques با آموزش الگوریتم ها در جاوا اشنا خواهید شد.
یکی از رایج ترین و پرطرفدارترین زبان هایی که برای برنامه نویسی شیء گرا و سطح بالا استفاده می شود، زبان سیشارپ (C#) است. این زبان توسط مایکروسافت و جزئی از دات نت به وجود آمد و بعداً استانداردهای ECMA و ISO را نیز در بر گرفت و یکی از ۴۴ زبان برنامه نویسی ای است که توسط زمان اجرای زبان مشترک از .NET Framework پشتیبانی میشوند و در همه جا به وسیله مایکروسافت ویژوال استودیو شناخته میشود. در واقع زبان #C، یک زبان برنامه نویسی چند الگویی و است و منظم شده مدلهای تابعی، امری، عمومی، شی گرا و جز گرا و در بستر دات نت است. در دوره آموزشی Udemy Data Structures using C# and .NET Core 3.0 با آموزش ساختمان داده ها با سی شارپ و دات نت کور 3 اشنا خواهید شد.
کمپانی Adobe به دنبال طراحی User Experience است و به تازگی ابزارهایی را تحت نام پروژه Project Comet نمونه سازی کرده و یک پیش نمایش عمومی از این ابزار با نام Adobe Experience Designer CC یا به اختصار XD منتشر ساخته است. این برنامه نه تنها جایگزین همه ابزارهای موجود خواهد شد، بلکه یک برنامه سبک وزن و آسان برای استفاده طراحان رابط کاربری و تجربیات کاربر است که برای ایجاد و اتصال رابط ها با هم در وب، دسکتاپ و سیستم عامل های تلفن همراه بکار می رود. XD یک راه حل مفید برای طراحانی است که از ایجاد و اتصال رابط ها با استفاده از Illustrator، Photoshop و Dreamweaver خسته شده اند. و رابط کاربری آن برای وارد کردن و قرار دادن موجودی ها نسبت به ابزارهای دیگر قابل درک تر است. همچنین دارای برخی قابلیت های جدید بزرگ، مانند ایجاد آسان و مدیریت متعاقب تکرار گروه به نام Repeat Grids است. در دوره آموزشی Skillshare Adobe Xd Basics با آموزش مقدماتی ادوبی ایکس دی اشنا خواهید شد.
گوگل نسخه 11 آنگولار، فریم ورک محبوب ساخت اپلیکیشن های تک صفحه ای، را منتشر کرد. در این نسخه بر روی بهبود تجربه کاری توسعه دهندگان و همچنین اتمام فرآیند رفع مشکلات گزارش های issue tracker تمرکز شده است. پس از تغییرات قابل توجهی که در آنگولار 9 با نام کد Ivy رخ داد، تیم توسعه فریمورک آنگولار تصمیم گرفتند که نسخه های بعدی که منتشر می کنند را متمرکز بر رفع باگ ها و مشکلاتی که توسط جامعه استفاده کننده گزارش شده بود، کنند. در دوره آموزشی Udemy Building Applications with Angular 11 and ASP.NET Core 5 با آموزش ساخت اپ با آنگولار 11 و ای اس پی دات نت کور 5 اشنا خواهید شد.
اگر یک فیلد متنی از ویژگی Autocomplete پشتیبانی کند با وارد نمودن حروف ابتدایی یک واژه یا عبارت در این فیلد، لیستی از پیشنهادات برای کاربر نمایش داده میشود. این پیشنهادات بسته به کاربرد ممکن است با حروف تایپ شده آغاز شوند و یا حروف مذکور در میانه یا انتهای عبارات پیشنهاد شده قرار داشته باشد. کاربر میتواند در صورت مشاهده آیتم مناسب (با کمک کلیدهای پیکانی یا ماوس و ...) آن را انتخاب کرده و به این ترتیب فیلد متنی را با آن آیتم تکمیل نماید. البته ممکن است به هنگام تایپ حروف ابتدایی، عنصر اول لیست پیشنهادی به طور خودکار جعبه متنی را تکمیل کند. در چنین حالتی، بخشی که افزوده شده است به صورت انتخاب شده (معمولا با رنگ آبی) نمایش داده میشود و بدون ایجاد مزاحمت، امکان تأیید کردن یا تایپ مابقی حروف واژه موردنظر را برای کاربر مهیا میکند. با تایپ کاراکترهای بیشتر، لیست پیشنهادات نیز متناسب با کاراکترهای جدید تغییر میکند (محدودتر میشود). در دوره آموزشی Udemy Build an Autocomplete System Like Google with Java & Spring با آموزش ساخت سیستم تکمیل کننده خودکار با جاوا و اسپرینگ اشنا خواهید شد.