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

در این پست قصد داریم به برخی از اتفاقات مهمی که در سال 2018 برای توسعه Front-End رخ داده است بپردازیم.

نسخه‌های اساسی WebAssembly

  • The core specification released 1.0
  • WebAssembly JS Interface
  • WebAssembly Web API

محبوب‌ترین کتابخانه‌ها و فریم‌ورک‌های جاوا اسکریپت

بیشترین دانلودها در سال اخیر:

  • React
  • jQuery
  • Angular
  • Vue

نسخه V16 کتابخانه React

به عنوان محبوب‌ترین کتابخانه جاوا اسکریپت در سال اخیر (با بیشترین دانلود نسبت به رقبای خود) شناخته شده است. تیم React بطور مداوم این کتابخانه را با قابلیت‌های جدید به روز رسانی می‌کند و پیش‌بینی می‌شود در سال 2019 همچنین در صدر جدول باقی بماند. در این نسخه جدید شاهد موارد زیر بودیم.

  • Lifecycle methods
  • New context API
  • Pointer events
  • Lazy function
  • React.memo
  • React Hooks
  • Suspense API

نسخه 3.0 jQuery

با نسخه جدیدی که در ابتدای سال 2018 منتشر شد دیگر استفاده از نسخه‌های قدیمی‌تر معنایی ندارد. تغییرات اساسی در این نسخه ایجاد شده که در ادامه به برخی از آنها می‌پردازیم.

  • Old IE workarounds got removed
  • jQuery 3.0 runs in strict mode
  • For...of loops is introduced
  • Animations got a new API
  • Class manipulation methods support SVG
  • New Show/Hide Logic
  • Extra protection against XSS attacks

نسخه 3.0 Vue به زودی

این فریم‌ورک محبوب حتی تعداد ستاره‌هایی که در GitHub دریافت کرده از React بیشتر است. اخیرا در کنفرانسی که در تورنتو کانادا برگزار گردید، بناین‌گذار آن اعلام کرد که نسخه جدید این فریم‌ورک سریع‌تر، کوچک‌تر و نگهداری ساده‌تر نسبت به نسخه قبلی خود دارد. گرچه Vue در حال حاضر سریع است ولی تیم توسعه دهنده آن قصد دارد که آن را حتی سریع‌تر به بازار ارائه دهد. برخی از قابلیت‌های جدید Vue که آن را سریع‌تر می‌سازد در زیر آورده‌ایم.

  • Virtual DOM Rewrite
  • Optimized Slots Generation
  • Static Tree Hoisting
  • Static Props Hoisting
  • Proxy-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 tool
  • JS configs
  • config 'overrides'
  • JSX Fragments
  • TypeScript
  • New Proposals

تایپ اسکریپت آینده جاوا اسکریپت

تایپ اسکریپت یک زبان برنامه‌نویسی متن باز است که توسط تیم مایکروسافت توسعه یافته و توسط همان تیم نگهداری می‌شود. در حقیقت همان جاوا اسکریپت است ولی به گونه‌ای نسخه توسعه داده شده‌ی آن می‌باشد. از ویژگی‌های خاصی برخوردار است که محبوبیت ویژه‌ای در میان توسعه دهندگان پیدا کرده است. به عنوان مثال strongly type یکی از ویژگی‌های بارز تایپ اسکریپت هست که در جاوا اسکریپت دیده نمی‌شود و آن تعریف مشخص و ثابت برای متغیرها می‌باشد و اگر بخواهیم متغیر را به صورت دیگری تعریف کنیم با اخطار مواجه می‌شوید. از دیگر خصوصیات آن وجود ترنسپایلر آن می‌باشد که به شما اجازه می‌دهد error کد خود را قبل از اجرای آن پیدا کنید و از صرف ساعت‌ها زمان برای debug کردن جلوگیری کنید. در ادامه برخی قابلیت‌های تایپ اسکریپت آورده شده است.

  • Type annotations & compile-time type checking
  • Type interface
  • Type erasure
  • Interfaces
  • Enumerated types
  • Generics
  • Namespaces
  • Tuples
  • Async/await

برای مطالعه پست‌های بیشتر ما را در وبلاگ کارادمی و یا در ویرگول دنبال کنید.