چرا به فریمورکهای جاوا اسکریپت نیاز داریم؟
برای ایجاد سایتهای اینترنتی از از ابزارهای jQuery و بوت استرپ استفاده میشود که کلیه نیازهای توسعه دهندگان وب را پوشش میدهد با این وجود در این مقاله نیاز به فریمورکهای جاوا اسکریپت مورد بررسی قرار میگیرد.
نیاز به به کارگیری پارادایمهای مهندسی نرم افزار توسط توسعهدهنگان وب مانند MVC و MVVM برای ایجاد برنامههای وب موثر و کارآمد برای اتصال Model به View در بستر مناسب توسط این فریمورکها ایجاد شده است بدین صورت که برنامه نویس میتواند به راحتی در جایگاههای مشخص شده در فریمورک نسبت به ایجاد کدهای خود اقدام کرده و فریمورک هوشمندانه در زمان مناسب نسبت به فراخوانی آن اقدام میکند در این زمینه فریمورک کنترل کل برنامه را در دست میگیرد
با پیچیده شدن کدها و نیاز به رندرهای مکرر فریمورکها کار برنامه نویسان را بسیار ساده تر کرده و به کدنویسی سریع پروژه ها کمک بسیاری مینماید
مزایای استفاده از فریمورکها در جاوا اسکریپت :
- کنترل تمامی فرآیند توسط فریمورک
- سادگی و ارتباط مناسب میان Model و View برای کدهای پیچیده
- رعایت پارادایمهای مهندسی نرم افزار
- دارا بودن توابع کتابخانهای قوی
فریمورکهای مختلفی برای زبان جاوا اسکریپت وجود دارد که از آن میتوان به Angular- BackBone-EMBER اشاره کرد.
اکنون که درک خوبی از فریمورکهای جاوا اسکریپت داریم، اجازه دهید قبل از شروع اولین، به طور خاص در مورد Angular، تاریخچه مختصری از Angular، از کجا آمده و برخی از ویژگیهای برجسته Angular صحبت کنیم. اگر کمی در مورد تاریخچه Angular صحبت کنیم، Angular از تکامل خود نسخه قبلی خود به عنوان AngularJS به وجود آمده است. AngularJS کاملا توسط Misko Hevery طراحی شد و در حدود سال 2012 معرفی شد و به سرعت به یک فریمورک بسیار محبوب تبدیل شد. Angular که در اینجا در مورد آن صحبت می کنیم، پیاده سازی مجدد کامل فریمورک AngularJS میباشد. بنابراین، Angular همانطور که اکنون می بینید یک موجود کاملاً جدید با ویژگی های جدید خود است، اما برخی از مفاهیم و ویژگی های خود را مدیون نسخه قبلی Angular است. بنابراین، برخی از اصطلاحات مشترک بین هر دو نسخه AngularJS و Angular، و برخی از رویکردهای رایج بین هر دو وجود دارد. با این وجود اگر با AngularJS آشنایی داشته باشید، سینتکس Angular تفاوت قابل توجهی با سینتکس AngularJS دارد. بنابراین، این امر مستلزم آن است که خود را به طور کامل با فریمورک Angular بروزرسانی کنیم. Angular یک رویکرد مبتنی بر کامپوننت برای پیاده سازی برنامه های کاربردی وب است. بنابراین، کامپوننت اکنون به محوریت Angular تبدیل شده است. اگرچه، رویکرد مبتنی بر کامپوننت نیز از نسخه 1.5 AngularJS به AngularJS منتقل شده است. Angular از ابتدا با پشتیبانی تلفن همراه طراحی شده است تا بتوانید به راحتی پلتفرم های تلفن همراه را آدرس دهی کنید و همچنین رندر سمت سرور را برای سرعت بخشیدن به رندر برنامه وب خود در مرورگرها ارائه می دهد (SSR). همچنین، Angular موتور قالب را پشتیبانی میکند.
به طور خلاصه، Angular دقیقا چیست؟ Angular یک فریمورک ساختاری برای طراحی برنامه های کاربردی وب پویا است. رویکرد مبتنی بر HTML با Bootstrap در درجه اول کاملا استاتیک میباشد، البته با jQuery و AJAX، میتوانید کمی رفتار پویا را در وبسایتهای خود با استفاده از بوت استرپ انجام دهید، اما Angular این نقاط ضعف را پوشش میدهد. وقتی وارد دنیای Angular می شوید، خیلی زود با واژگان Angular زیادی بمباران خواهید شد. شما می شنوید که مردم در مورد اتصال داده های یک طرفه (one way data binding) و دو طرفه (two way data binding) صحبت می کنند، و سپس اجزاء (component) را به وضوح می شنوید و سپس می شنوید که برنامه نویسان در مورد دستورالعمل ها، سپس مسیریابی (routing)، قالبها، و ماژولها، سرویسها صحبت می کنند، سپس میشنوید که برنامهنویسان در مورد ارائه دهنده (provider) صحبت می کنند که موجب میشود تازهکارها در این اصطلاحات غرق شوند. در مقالات بعدی، رویکرد سادهای را نسبت به این اصطلاح در نظر خواهم گرفت. ما خیلی خودمان را با اصطلاحات آزار نمیدهیم، اما در عوض میفهمیم که واقعاً چگونه از Angular استفاده میکنیم. برای آشنایی با چارچوب MVC اینجا کلیک کنید.