هر آنچه در سال 2018 برای توسعه Front-End اتفاق افتاد

در این پست قصد داریم به برخی از اتفاقات مهمی که در سال 2018 برای توسعه Front-End رخ داده است بپردازیم.نسخه‌های اساسی WebAssemblyThe core specification released 1.0WebAssembly JS InterfaceWebAssembly Web APIمحبوب‌ترین کتابخانه‌ها و فریم‌ورک‌های جاوا اسکریپتبیشترین دانلودها در سال اخیر: ReactjQueryAngular Vueنسخه V16 کتابخانه Reactبه عنوان محبوب‌ترین کتابخانه جاوا اسکریپت در سال اخیر (با بیشترین دانلود نسبت به رقبای خود) شناخته شده است. تیم React بطور مداوم این کتابخانه را با قابلیت‌های جدید به روز رسانی می‌کند و پیش‌بینی می‌شود در سال 2019 همچنین در صدر جدول باقی بماند. در این نسخه جدید شاهد موارد زیر بودیم. Lifecycle methodsNew context APIPointer eventsLazy functionReact.memoReact HooksSuspense APIنسخه 3.0 jQueryبا نسخه جدیدی که در ابتدای سال 2018 منتشر شد دیگر استفاده از نسخه‌های قدیمی‌تر معنایی ندارد. تغییرات اساسی در این نسخه ایجاد شده که در ادامه به برخی از آنها می‌پردازیم.Old IE workarounds got removedjQuery 3.0 runs in strict modeFor...of loops is introducedAnimations got a new APIClass manipulation methods support SVGNew Show/Hide LogicExtra protection against XSS attacks نسخه 3.0 Vue به زودیاین فریم‌ورک محبوب حتی تعداد ستاره‌هایی که در GitHub دریافت کرده از React بیشتر است. اخیرا در کنفرانسی که در تورنتو کانادا برگزار گردید، بناین‌گذار آن اعلام کرد که نسخه جدید این فریم‌ورک سریع‌تر، کوچک‌تر و نگهداری ساده‌تر نسبت به نسخه قبلی خود دارد. گرچه Vue در حال حاضر سریع است ولی تیم توسعه دهنده آن قصد دارد که آن را حتی سریع‌تر به بازار ارائه دهد. برخی از قابلیت‌های جدید Vue که آن را سریع‌تر می‌سازد در زیر آورده‌ایم.Virtual DOM RewriteOptimized Slots GenerationStatic Tree HoistingStatic Props HoistingProxy-based Observationنسخه V7 فریم‌ورک Angularفریم‌ورک جاوا اسکریپت گوگل که توسط تیم گوگل هم نگهداری میشه بسیار محبوبیت خاصی بین هوادارانش دارد و در این نسخه جدید (که اکتبر امسال منتشر شد) تغییرات اساسی صورت گرفته که برخی از آنها در زیر آورده شده است. Virtual Scrolling Drag and Drop Support for Typescript 3.1 Support for RxJS 6.3 Support for Node 10 Angular Elements and Slots Setting Bundle-Size Budgets Removing reflect-metadata Polyfill in Production نسخه Webpack 4در ابتدای سال 2018 تنها 8 ماه بعد از Webpack 3، نسخه چهارم آن منتشر شد و همچنان به دنبال سادگی و ساختار سریع‌تر است. Webpack الان WebAssembly را پشتیبانی می‌کند و شما قادر به import کردن مستقیم فایل‌های WebAssembly هستید. برخی از قابلیت‌های جدید این نسخه در زیر آورده شده است. Support for various Module Types Lighting the Fire with Mode Zero Config Module Bundler #OCJS Faster Build Times Fresh Plugin System نسخه Babel 7.0پس از تقریبا 3 سال از نسخه 6، بابل 7 در سال 2018 منتشر شد. بابل کتابخانه‌ای است که کد +ES6 را به ES5 انتقال می‌دهد و کد جاوا اسکریپت ما را با مرورگر سازگار می‌سازد. این نسخه از موارد زیر بهره می‌برد.Upgrade toolJS configsconfig 'overrides'JSX FragmentsTypeScriptNew Proposalsتایپ اسکریپت آینده جاوا اسکریپتتایپ اسکریپت یک زبان برنامه‌نویسی متن باز است که توسط تیم مایکروسافت توسعه یافته و توسط همان تیم نگهداری می‌شود. در حقیقت همان جاوا اسکریپت است ولی به گونه‌ای نسخه توسعه داده شده‌ی آن می‌باشد. از ویژگی‌های خاصی برخوردار است که محبوبیت ویژه‌ای در میان توسعه دهندگان پیدا کرده است. به عنوان مثال strongly type یکی از ویژگی‌های بارز تایپ اسکریپت هست که در جاوا اسکریپت دیده نمی‌شود و آن تعریف مشخص و ثابت برای متغیرها می‌باشد و اگر بخواهیم متغیر را به صورت دیگری تعریف کنیم با اخطار مواجه می‌شوید. از دیگر خصوصیات آن وجود ترنسپایلر آن می‌باشد که به شما اجازه می‌دهد error کد خود را قبل از اجرای آن پیدا کنید و از صرف ساعت‌ها زمان برای debug کردن جلوگیری کنید. در ادامه برخی قابلیت‌های تایپ اسکریپت آورده شده است.Type annotations & compile-time type checkingType interfaceType erasureInterfacesEnumerated typesGenericsNamespacesTuplesAsync/awaitبرای مطالعه پست‌های بیشتر ما را در وبلاگ کارادمی و یا در ویرگول دنبال کنید.