معرفی انگولار و مقایسه‌ی نسخه‌های مختلف آن

27 اسفند 1398

یادگیری انگولار: انگولار چیست؟

با دوره آموزش انگولار رایگان با شما هستیم. در ابتدا بگذارید شما را با انگولار آشنا کنم: انگولار یک فریمورک اوپن سورس و فرانت اند از زبان برنامه نویسی جاوا اسکریپت است که در ابتدا توسط گوگل و چندین تیم متشکل از افراد متخصص و کمپانی ها ساخته شد. هدف از ایجاد آن، مواجهه با بسیاری از چالش هایی بود که بر سر راه توسعه دهندگان قرار داشت. چالش هایی مثل ساخت اپلیکیشن های «تک صفحه ای» یا single page، اپلیکیشن های قابل اجرا در پلتفرم های مختلف مثل اندروید و ای او اس (cross platform) و بسیاری مشکلات دیگر.

انگولار کاملا انعطاف پذیر و قابل توسعه است و با کتابخانه های دیگر به درستی کار می کند.

هدف من از این آموزش انگولار، این است که یک دوره ی جامع برای شما ایجاد کنم و آموزش را قدم به قدم پیش ببرم. با مفاهیم پایه شروع می کنیم و در ادامه به مباحث پیشرفته تر خواهیم پرداخت.

ما در ابتدا با پایه ای ترین ورژن انگولار یعنی ورژن 2.0.0 بتا که در دسامبر 2015 معرفی شد، شروع می کنیم. همان ورژنی که بعد از جد بزرگوارش یعنی Angular JS معرفی شد! (با Angular JS کاری نداریم. خیالتان راحت!)

می خواهم لحظه ای با شما رک و صادق باشم. سازندگان انگولار با دیدن مشکلات بسیار در مسیر توسعه ی ورژن دو از این فریم ورک، تقریبا تسلیم شده و بی خیال ادامه ی راه شده بودند.

مسیر ساخت Angular 2 مسیری طولانی بود. در نهایت Angular با ماژول Universal (ارائه دهنده سرور) و مجموعه هایی دیگر، پیکربندی و بسته بندی شد و به یک ورژن خوب و محکم دست یافت.

همان طور که قبلا هم گفتم. در طی سالیان، انگولار جامعیت خاصی نداشت اما امروزه می توان گفت که انگولار به یک فریمورک پایدار و جامع تبدیل شده و از کار کردن با آن لذت خواهید برد.

هر آنچه را که در رابطه با ساختار و قسمت های مختلف انگولار 2 در طی سالیان گذشته شنیده اید، فراموش کنید. امروزه انگولار جوری ارتقاء یافته است که شما را به سرعت تحت تاثیر خود قرار می دهد. شک نکنید!

انگولار ابزاری بسیار کاربردی است که موارد زیر را به شما ارائه می دهد:

  • شما را قادر می سازد تا نرم افزارهای خود را با سرعت بیشتر و تلاش کمتری بسازید.
  • نتیجه ی کار، نرم افزاری کامل تر خواهد بود.
  • از شیوه های کارآمد برنامه نویسی پشتیبانی می کند و الگوها را همچون MVC دیزاین می نماید.
  • همکاری با افراد دیگر را برای شما آسان تر می کند.
  • به راحتی قابل یادگیریست، جوری که در حداقل زمان در آن ماهر خواهید شد.

انگولار برای مبتدیان: مقایسه ی نسخه‌های مختلف انگولار

تفاوت میان ورژن های مختلف انگولار به شرح زیر است:

تفاوت ورژن های انگولار - آموزش انگولار 7 رایگان

در ابتدا و در سال 2010، این فریمورک با نام Angular JS شناخته می شد. این نام به همان ورژن 1 از انگولار اشاره می کند. سپس در سال 2016 ورژن 2 از انگولار ارائه شد که یک بازنویسی بنیادی و یک تحول کامل در این فریم ورک ایجاد کرده بود. انگولار 2، بهبودهای بسیار زیادی در نحوه ی عملکرد این فریم ورک ایجاد کرده و این فریم ورک را مدرن تر ساخته بود.

Angular JS کاملا بر پایه ی کنترلرها و برقراری ارتباط با استفاده از scope$ ساخته شده بود در حالی که انگولار 2 رویکردی کاملا «بیس کامنت» یا component-based داشت. در انگولار دو، دیگر خبری از «کنترلرها» یا controllers و scope$ نبود. در ادامه به بررسی برخی از فواید این تغییرات خواهیم پرداخت.

پس با این اوصاف و با نادیده گرفتن انگولار JS، می توان گفت که انگولار 2 اولین ورژن از انگولار است که بعدها نام آن را صرفا Angular گذاشتند. بین انگولار 2 تا Angular 7 چندین ورژن دیگر وجود دارد. انگولار 4 که در اوایل سال 2017 ارائه شد. انگولار 5 مربوط به اواخر سال 2017. و در نهایت انگولار 6 که در سال 2018 به انتشار گذاشته شد.

اشتباه نکنید! تمام ورژن های انگولار، از 2 تا 7، همگی یک فریم ورک واحد هستند و همگی یک فریم ورک را ارائه می دهند. تنها تفاوت آن ها در بهبودهایی است که به هر ورژن داده شده.

ورژن هشتم انگولار (Angular8) نیز در سال 2019 و ورژن نهم انگولار (Angular9) در اوایل سال 2020 روانه ی بازار شد. در این نسخه ها تغییرات مهم و عمده ای بر روی این فریم ورک محبوب لحاظ شد. در حقیقت سرعت کامپایل و دیباگ برنامه افزایش یافت، حجم برنامه کم تر  شد، کدنویسی راحت تر و برنامه گرافیکی تر و زیباتر شد. در ورژن های 8 و 9 از انگولار، پشتیبانی از آخرین ورژن های تایپ اسکریپت نیز اضافه شده و با ارائه ی ابزارهای کاربردی بسیار زیاد، به کاربرد هرچه بیشتر این فریم ورک افزوده است.

ما در قسمت بعدی جزئیات مربوط به ورژن های 2 تا 7 را شرح می دهیم و مقدمه ای از ورژن های هشت و نه را نیز می گوییم. در قسمت آخر از این سری آموزشی، به توضیح کامل ورژن های Angular8 و Angular9 خواهیم پرداخت.

از این پس هر زمان که از عبارت Angular یا انگولار استفاده کردیم، منظورمان آخرین ورژن آن یعنی انگولار 9 می باشد. در زمان نوشتن این مقاله آخرین ورژن این فریمورک، ورژن 9 بوده است.

برای با خبر شدن از آخرین ورژن انگولار، به وب سایت رسمی آن مراجعه فرمایید.

چه چیزهایی در  Angular و Angular JS متفاوت است؟

خب! مستقیم برویم سراغ تفاوت های اصلی بین انگولار و انگولار JS:

  • Angular یک بازنویسی کامل از Angular JS است.
  • اپلیکیشن ساخته شده با Angular و ساختار و معماری آن، کاملا با یک اپلیکیشن Angular JS تفاوت دارد. المان های اصلی سازنده ی یک اپلیکیشن Angular، ماژول ها، کامپوننت ها، قالب ها متادیتا، دیتا بایندینگ، دایرکتوری ها، سرویس ها و غیره هستند.
  • Angular دارای محدوده یا scope و کنترلر نیست. به جای این ها انگولار از سلسله مراتب یا چیدمان کامپوننت ها، در ساختار خود استفاده می کند. به عبارت دیگر، مجموعه ای از کامپوننت ها، سازنده ی یک اپلیکیشن انگولاری می باشند.
  • انگولار از یک مفهوم ماژولی استفاده می کند. به عبارت دیگر، ویژگی ها و فانکشنالیتی ها درون ماژل ها قرار می گیرند. این خصوصیت هسته ی انگولار را بسیار بهبود یافته تر می کند.
  • مفهوم کنترلر مذکور، که در Angular JS  استفاده می شد، در ورژن های انگولار 2 و بالا تر وجود ندارد و به جای آن کامپوننت ها تشکیل دهنده ی UI (رابط کاربری) اپلیکیشن هستند. این موضوع به توسعه دهندگان کمک می کند تا اپلیکیشن خود را به بخش های مختلفی تقسیم کنند و این اجازه را می دهد که هر یک از کامپوننت ها، دارای ویژگی های منحصربفرد خود باشند. به دلیل وجود کامپوننت ها در Angular، می توان گفت که انعطاف آن از Angular JS بیشتر است.
  • انگولار در ساختار کدنویسی، برای property binding به "[ ]" تکیه دارد و برای event binding از "( )" استفاده می کند.
  • برای ساختن یک اپلیکیشن تک صفحه ای که دارای سئوی مناسبی باشد، در Angular JS با مشکلات بزرگی رو برو بودیم که با قابلیت اجرا و تفسیر اپلیکیشن در سرور توسط نسخه ی 2، این مشکلات برطرف شد. بخاطر این ویژگی خوب، باید از ماژول جدید انگولار یعنی Universal ممنون باشیم!

انگولار جدید استفاده از زبان برنامه نویسی تایپ اسکریپت را پیشنهاد داد. این موضوع نیز فوایدی را برای Angular دربرداشت:

  • تایپ کردن استاتیک
  • برنامه نویسی شیء گرا بر پایه ی کلاس ها
  • پشتیبانی از کدنویسی واکنش گرا با استفاده از RxJS

به وسیله ی پشتیبانی از تایپ اسکریپت، انگولار فواید موجود در ES6 را نیز شامل شد که این فواید به شرح زیر می باشند:

  • حلقه های For و If
  • dependency injection بهبود یافته در انگولار
  • مجری ها یا Iterators
  • بازتاب یا Reflection
  • بارگذاری پویا
  • بارگذاری غیرهمزمان قالب اپلیکیشن
  • مسیریابی آسان تر

خب! همراهان گرامی، برای این قسمت کافیست. با ما همراه باشید تا در قسمت های بعدی دوره‌ ی آموزش انگولار رایگان به ادامه ی آموزش مقدماتی انگولار بپردازیم.


منبع: سایت Angular Templates

تمام فصل‌های سری ترتیبی که روکسو برای مطالعه‌ی دروس سری آموزش مقدماتی انگولار توصیه می‌کند:
نویسنده شوید
دیدگاه‌های شما (1 دیدگاه)

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.

Habib PourKhanLar Ahmadi
13 اردیبهشت 1399
سپاس از توضیحات خوبتون برای شروع، امیدوارم این دوره رو به خوبی با شما بگذرانم.

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.