انگولار چیست؟!

تاریخ ارسال:

انگولار چیست؟!

معرفی انگولار و انگولار جی اس

در این مقاله ما در مورد Angular (v2+) صحبت خواهیم کرد. اگر مایل هستید در مور مورد انگولار جی اس بیشتر بدانید، توصیه می کنیم صفحه ویکیپدیا این فریم ورک را مطالعه کنید. انگولار جی اس تنها تا دسامبر 2021 توسط گوگل پشتیبانی میشود.

Angular V2 (انگولار ورژن 2 و بالاتر)

قبل هر سخنی باید این نکته را یادآورد شویم که Angular V2 به نسخه های فعلی انگولار گفته میشود. نسخه هایی که هم اکنون ورژن 10 آن در دسترس است. تفاوت انگولار فعلی با انگولار جی اس به طور خلاصه در این است که انگولار از یک زبان برنامه اصطلاحا declarative به یک فریم ورک بر مبنای کامپونت ها تغییر رفتار داده است.

انگولار یک فریم ورک فرانت اند برای طراحی نرم افزار های تک صفحه در صفحات وب است. که از زبان TypeScript ماکروسافت استفاده می کند. نسخه های ابتدایی آن در سال 2010 توسط تیم گوگل ارائه شد. سپس در سال 2016 از نسخه انگولار جی اس به نسخه انگولار V2+ تبدیل گشت.

اما فریم ورک فرانت اند چیست؟!

از نظر من فریم ورک هارا می توان یک راه حل برای زندگی بهتر برنامه نویس ها دانست. همانطور که در مقاله جاوا اسکریپت گفتیم. با استفاده از جاوا اسکریپت شما می توانید DOM صفحات وبسایت را تغییر دهید. اما خب پروژه هرچه گسترده تر، مدیریت DOM هم پیچیده تر خواهد شد. پس فریم ورک هایی ارائه شده که برای مدیریت DOM نرم افزار های ما به کمک برسانند. فریم ورک هایی مانند JQUERY (که البته الان کمی از مد افتاده است). حتی با وجود JQUERY هم برای مدیریت DOM نیاز به کارهای بسیار سنگی بود. یا حتی رعایت استاندارد های برنامه نویسی (قابلیت مدیریت و رعایت پترن های مناسب و ...) بسیار پیچیده و سخت بود. پس فریم ورک های مانند ANGULAR، REACT یا VUE به منظور ساخت راحت تر وبسایت ها یا نرم افزار های تک صفحه ای ارائه شدند.

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

اما خود انگولار برای مدیریت این موضوع چند راهکار و دیدگاه متفاوت دارد. همانطور که قبلا هم گفته شد انگولار توسط برنامه نویسان گوگل ارائه و پشتیبانی شده است. نسخه های فعلی از انگولار که در دسترس هستند بر مبنای کامپوننت ها توسعه یافته اند. درست مانند REACT JS.

ابتدا اجاره بدهید در مورد کامپوننت صحبت بکنیم. ببینید کامپوننت در لغت به معنی جز است. می خواهیم این موضوع را در یک وبسایت بررسی کنیم. به تصاویر زیر دقت کنید.

فسمت های یک وبسایت

میبینیم که این وبسایت از اجزایی مانند هدر، سایدبار، بلاگ و ... تشکیل شده است.

اجزا وبسایت

حال که قسمت ها را جدا کردیم میبینیم که هر کدام برای خودشان وظیفه مستقلی هم دارند. پس بهتر است که هر کدام را جداگانه از هم توسعه داده و سپس آن ها را به یکدیگر ارتباط دهیم. دقیقا این کاریست که انگولار برای ما انجام میدهد. در این حالت هر کامپوننت نوشته شده تنها نگران HTML برای نمایش محتوا و اطلاعات موجود در آن است. در این وابستگی کامپوننت ها یا ماژول های استفاده شده به یکدیگر بسیار پایین خواهد بود. و هر قسمت تنها نگران منطق (LOGIC) مربوط به خود است. یکی دیگر از مزایای این روش این است که می توانیم از کامپوننت های نوشته شده در سایر قسمت های نرم افزار نیز استفاده بکنیم.

به همین دلیل است که انگولار انتخاب بسیار مناسبی برای توسعه نرم افزار های بسیار و بزرگ پیچیده است. نرم افزار هایی که اساس آنها بر انتقال اطلاعات داخل خود نرم افزار است. البته یکی دیگر از کارهایی که انگولار انجام میدهد تغییر مسیر یابی از سمت کاربر به سمت سرور است. (SERVER SIDE ROUTING TO CLIENT SIDE ROUTING)

این موضوع به این معنی است که اگر کاربر بخواهد صفحات جداگانه ای مانند صفحه تماس باما، صفحه اصلی یا هر صفحه دیگر را ببیند. دیگر نیازی نیست که حتما به سمت سرور درخواست خود را ارسال کند. و خود انگولار آن ها را مدیریت می کند. در صورتی که از SERVER SIDE ROUTING داشته باشیم. به ازای هر درخواست کاربر سرور ما باید خودش پاسخ را ارسال نماید. البته در انگولار هم در صورتی که بخواهیم اطلاعاتی جدید را بارگزاری نماییم. باید درخواست را به سمت سرور ارسال کنیم. اما در انگولار این عمل توسط AJAX انجام میشود. و نیازی نیست که تمام HTML صفحه را نیز برای کاربر بفرستیم. که این موضوع خودش به تنهایی تعداد بسیار بالایی از درخواست ها را کاهش میدهد.

تزریق وابستگی (DEPENDENCY INJECTION)

یکی دیگر از امکانات فوق العاده انگولار تزریق وابستگی است. که در تست پذیری و UNIT TESTING بسیار تاثیر دارد. تزریق وابستگی کاربرد های بسیار دارد. کاربردی مانند استفاده از ماک ها (MOCK) که در شبیه سازی درخواست های HTTP کاربرد دارند. البته ANGULAR CLI که ابزار توسعه انگولار است. خودش خودکار وظیفه ساخت UNIT TEST را برعهده دارد. و دیگر نیاز نیست شما دغدغه تولید UNIT TEST را داشته باشید.

استقلال وظایف در

موضوعی در انگولار بسیار هیجان انگیز است این است که، شما در هر قسمت از توسعه تنها نگران همان قسمت خواهید بود. در این فریم ورک لایه VIEW از DATA کاملا تفکیک شده است. پس در VIEW شما تنها نگران تولید HTML زیبا هستید. و در DATA شما تنها دغدغه جای گزاری درست اطلاعات در صفحه را دارید. "این یعنی باگ و خرابی کمتر در کد تولید شده".

معایب انگولار

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

آیا انگولار یاد بگیریم؟!

جواب بله است. انگولار یک فریم ورک جوان و پرقدرت است. که البته منطق خاص خود را برای توسعه وبسایت ها دارد. پس قبل از اینکه یاد بگیرید چگونه با انگولار وبسایت بسازید. بهتر است اول متوجه شوید که آنها در نظر دارند که شما چگونه یک وبسایت را توسعه دهید. سپس بهتر است که با TYPESCRIPT و ES6 آشنا شوید. چون انگولار با زبان TYPE SCRIPT کار می کند. و البته از بسیاری از ویژگی ES6 هم بهره می برد. ویژگی هایی مانند کلاس ها و ماژول ها.

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

در ادامه تیم داریان با سری آموزش های انگولار همراه شما خواهد بود.

آخرین بروز رسانی: يکشنبه 13 آذر 1401 ( 837   )

پست های مشابه

نظرات کاربران

برای نظر دادن وارد شوید.

0 نظر

جدیدترین مطالب! آخرین مطالب بلاگ

آموزش گیت در ویندوز

آموزش گیت در ویندوز

شنبه 17 ارديبهشت 1401 ( 367   )

گیت هاب ابزار بررسی و نگهداری تاریخچه هرگونه فایل و پروژه می باشد. هدف از توسعه چنین ابزاری کمک به ت...

بخوانید
کد نویس تمیز - خلاصه کتاب و نکات مهم

کد نویس تمیز - خلاصه کتاب و نکات مهم

چهارشنبه 10 فررودين 1401 ( 542   )

خلاصه کتاب کد نویس تمیز می گوید که برنامه نویس حرفه ای چگونه...

بخوانید
خلاصه نکات مهم از کتاب کد تمیز (CLEAN CODE)

خلاصه نکات مهم از کتاب کد تمیز (CLEAN CODE)

سه‏ شنبه 2 فررودين 1401 ( 505   )

کد زمانی تمیز است که به راحتی توسط تمام افراد حاضر در تیم قا...

بخوانید
معرفی کتاب اثر مرکب

معرفی کتاب اثر مرکب

شنبه 28 اسفند 1400 ( 404   )

"بر اساس این اصل که تصمیمات کوچک و روزمره یا شما را به زندگی...

بخوانید
شباهت های موجود در کاتلین و سی شارپ

شباهت های موجود در کاتلین و سی شارپ

چهارشنبه 11 اسفند 1400 ( 474   )

بیان شباهت های موجود بین زبان سی شارپ و کاتلین برای برنامه ن...

بخوانید