طراحی سایت، به روند برنامه ریزی و ساخت یک سایت گفته می شود. متن، تصاویر، فایل های صوتی و تصویری و المان های برنامه نویسی، توسط طراحی سایت برای تولید صفحه ای قابل رویت در مرورگر، فرمت دهی می شوند. طراحان سایت ها برای ساخت صفحاتی که بتوانند توسط مرورگرها خوانده شوند، از زبان های نشانه ای که اکثرا برای ایجاد ساختار از 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 با آموزش ساخت سیستم تکمیل کننده خودکار با جاوا و اسپرینگ اشنا خواهید شد.
به زبان ساده معاملات الگوریتمی به هر نوع معامله خودکار (شامل معاملات فرکانس بالا (HFT) یا معاملات معمولی) گفته میشود که در آن رباتهای معاملهگر با استراتژی معاملاتی گوناگونی طراحی میشوند. معاملات الگوریتمی که معاملات اتوماتیک، معاملات بلک باکس یا الگو تریدینگ نیز نامیده می شود، از زبانهای برنامه نویسی خاص همراه با مجموعه دستورات تعریف شده به نام الگوریتم برای معاملات استفاده می کند. به عنوان مثال، در یک معامله الگوریتمی، با رسیدن قیمت به اعداد مشخصی، دستور خرید یا فروش بصورت خودکار اعمال میشود و در واقع حد سود و ضرر یک الگوریتم تعیین میگردد. در دوره آموزشی Udemy 2021: Algorithmic Trading with Machine Learning in Python با آموزش معاملات الگوریتمی با یادگیری ماشین در پایتون اشنا خواهید شد.
جنگو (Django) یک چارچوب نرمافزاری تحت وب آزاد و متنباز است که به زبان پایتون نوشته شده است و از معماری مدل-نما-کنترلگر (Model-view-controller) پیروی میکند. جنگو اولین بار برای مدیریت صفحات خبری وبسایت شرکت Lawrence Journal-World توسعه داده شد و سپس در سال ۲۰۰۵ تحت اجازهنامه بیاسدی منتشر شد. نام جنگو از جنگو راینهارت، نوازندهٔ گیتار جاز گرفته شده است. هدف اصلی جنگو ساخت آسان سایتهای پیچیده و وابسته به دیتابیس است و بر پایهٔ قابلیت استفادهٔ مجدد و قابل اتصال بودن اجزای مختلف، توسعه ی سریع و اصل خودت را تکرار نکن (DRY) طراحی شده است. جنگو سراسر از پایتون استفاده میکند، حتی برای تنظیمات، فایلها و مدلهای اطلاعات. در دوره آموزشی Skillshare Build simple voting app using Django با آموزش ساخت اپ ساده رای گیری با جنگو اشنا خواهید شد.