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

آیونیک

آیونیک یک کیت توسعه نرم‌افزار با منبع باز برای توسعه برنامه موبایل ترکیبی است که در سال ۲۰۱۳ توسط مکس لینچ، بن اسپری و آدام بردلی در شرکت Drifty ساخته شده‌است. نسخه اصلی در سال ۲۰۱۳ منتشر شد و برروی انگولارجی‌اس و Apache Cordova ساخته شده‌است. با این حال، آخرین نسخه به عنوان مجموعه ای از کامپوننت‌های وب مجدداً ساخته شد و به کاربر اجازه می‌داد هر سکو رابط کاربری مانند انگولار، ری‌اکت و ویو جی‌اس را انتخاب کند.. همچنین امکان استفاده از اجزای آیونیک بدون هیچگونه سکورابط کاربری را فراهم می‌کند. آیونیک با استفاده از فناوری‌های وب مانند اچ‌تی‌ام‌ال۵، سی‌اس‌اس CSS و Sass، ابزارها و خدماتی را برای توسعه برنامه‌های موبایل ترکیبی، رایانه رومیزی و برنامه‌های پیشرفته وب مبتنی بر فناوری‌ها و شیوه‌های نوین توسعه وب ارائه می‌دهد. به‌طور خاص، برنامه‌های تلفن همراه می‌توانند با این فناوری‌های وب ساخته شوند و سپس از طریق فروشگاه‌های برنامه‌های بومی توزیع شوند تا با استفاده از Cordova یا Capacitor روی دستگاه‌ها نصب شوند. برنامه‌های آیونیک با ترکیبی از کد بومی و کد وب اجرا می‌شوند و در صورت لزوم دسترسی کامل به عملکردهای بومی را با بخش عمده فرانت اند برنامه ساخته شده با فناوری وب استاندارد ارائه می‌دهند. آیونیک از ویژگی‌های شتاب سخت‌افزاری بومی موجود در مرورگر استفاده می‌کند.

اکسپرس جی‌اس

اکسپرس.جی‌اس (Express.js‎) یک چارچوب برنامه وبی برای نود.جی‌اس است که به صورت منبع باز و تحت پروانه MIT در اختیار مردم قرار گرفته است. این فریمورک برای ساخت برنامه های تحت وب و API ها کاربرد دارد. فلسفه طراحی این پلتفرم به این صورت است که سعی شده پلتفرم به ابتدایی ترین شکل ممکن طراحی شود و کارکرد ها به صورت افزونه به آن اضافه شود. اکسپرس در کنار انگیولر جی اس و مونگو، یکی از اجزای تشکیل دهنده ی پشته ی MEAN است.

امبر.جی‌اس

امبر.جی‌اس (Ember.js‎) یک کتابخانه متن‌باز جاوااسکریپتی چارچوب نرم‌افزاری تحت وب بر پایه الگوی معماری نرم‌افزاری مدل-نما-کنترل‌گر است. و به توسعه دهندگان اجازه ایجاد برنامه‌های تک صفحه ای مقیاس پذیر را با استفاده از بهترین روش‌های متداول بکارگرفته شده در چارچوب را میدهد. امبر در وب سایت‌های مشهور بسیاری شامل Discourse، Groupon، Vine، Live Nation, Nordstrom و Chipotle استفاده شده‌است. اگرچه در اصل به عنوان یک فریم ورک تحت وب شناخته می‌شود ولی امکان ساخت برنامه‌های تحت دسکتاپ و موبایل توسط امبر وجود دارد. یکی قابل توجه‌ترین نمونه برنامه‌های دسکتاپ موسیقی اپل برنامه iTunes میباشد. در نوامبر ۲۰۱۵ میلادی ember-cli بیش از ۲۰۰۰۰۰ بار از مخزن npm دانلود شده‌است.

انگولارجی‌اس

انگولارجی‌اس (AngularJS‎) چارچوب نرم‌افزاری تحت وب متن‌باز ، ساخت و توسعه داده شده توسط گوگل و جامعه برنامه‌نویسان مستقل که برای حل بسیاری از چالش‌های برنامه‌های تک‌صفحه‌ای ( نرم افزار های تحت وب ) است. نحوه کار این کتابخانه بدین شکل است که ابتدا صفحه اچ تی ام‌ال که دارای ویژگی ها و تگهای اضافه شده سفارشی است خوانده میشود. این ویژگی ها نقش رهنمود را برای انگولار دارند که بتواند ورودی یا خروجی صفحه را به مدل مربوط به ان که از جنس متغیر های جاواسکریپت است پیوند دهد. ارزش این متغیر های جاواسکریپت میتواند دستی از طریق کد تغییر کند یا به‌طور ایستا یا پویا از منابع جی سن گرفته شود. این تغییرات از طریق پیوند برقرار شده ورودی یا خروجی را تحت تاثیر قرار میدهد.

OpenLayers

OpenLayers یک کتابخانه جاوا اسکریپت منبع باز است که برای نمایش داده‌های نقشه در مرورگرهای وب به عنوان نقشه‌های خزنده. این سرویس مجموعه ای از APIها را برای ساختن برنامه‌های کاربردی غنی جغرافیایی مبتنی بر وب مشابه Google Maps و نقشه‌های بینگ فراهم می‌کند. OpenLayers از انواع فایلها و سرویسهای جغرافیایی از جمله، GeoRSS , KML (زبان نشانه گذاری کلید)، زبان نشانه گذاری جغرافیایی (GML) , GeoJSON و داده‌های نقشه از هر منبعی با استفاده از OGC- standard به عنوان سرویس نقشه وب (WMS) یا سرویس ویژگی وب (WFS) پشتیبانی می‌کند. همچنین در بخش مثالهای Open Layers در وب سایت اصلی، مثالهای متنوعی برای دولوپرها، فراهم می‌باشد.

براوزریفای

براوزریفای (Browserify) یک ابزار متن‌باز جاوا اسکریپت است که به توسعه‌دهندگان امکان نوشتن ماژول‌های نود.جی‌اس-استایل که در مرورگر کامپایل می‌شوند را می‌دهد.براوزریفای به شما اجازه می‌دهد از require در مرورگر استفاده کنید، به همان روشی که در نود به‌کار می‌بردید. این فقط یک شکر نحوی برای بارگذاری اسکریپت‌ها بر دستگاه سمت کاربر نیست؛ بلکه یک ابزار برای آوردن همهٔ اکوسیستم NPM بر روی دستگاه کاربر (کلاینت) است.

بک‌بون.جی‌اس

بک‌بون.جی‌اس (Backbone.js‎) یک کتابخانه جاوااسکریپتی با اینترفیس RESTful و بر پایه model–view–presenter و پارادایم طراحی برنامه مدل اکتور است.

بوت‌استرپ

بوت‌استرپ مجموعه‌ای برای ساخت ظاهری وب سایت‌ها و برنامه‌های وب است و یکی از محبوب‌ترین چهارچوب‌های css است که از شیوه شبکه‌بندی برای چیدمان صفحات وب استفاده میکند.بوت‌استرپ شامل تمپلت‌های طراحی اچ‌تی‌ام‌ال و سی‌اس‌اس محور برای typography، فرمها، دکمه‌ها، نمودارها، اجزاء راهبری و دیگر اجزاء رابط کاربری و الحاقات اختیاری (JavaScript Extensions)، می‌باشد. بوت‌استرپ محبوب‌ترین پروژه در GitHub است که توسط NASA و MSNBC و دیگر سایتهای مطرح استفاده شده است. با استفاده از اطلاعات رابط برنامه‌نویسی (API) در بوت استرپ می‌توان اجزاء واسط پیشرفته مانند scrollspy و تکمیل کننده خودکار کلمات (typeahead) را بدون نیاز به نوشتن حتی یک خط کد جاوا اسکریپت ایجاد نمود. بهترین نکته بوت استرپ این است که متن باز بوده و به صورت رایگان قابل دانلود و استفاده می‌باشد. بوت‌استرپ ماژولار بوده و اساساً شامل مجموعه‌ای از برگه‌های سبک آبشاری LESS (یک پیش پردازنده CSS برای توسعه آسانتر و سریعتر در وب) است که اجزاء گوناگون این بسته ابزار را پیاده‌سازی می‌کند. یک شیوه نامه به نام bootstrap.less شیوه نامه‌های اجزاء را در خود جا داده است. توسعه دهندگان می‌توانند فایل بوت‌استرپ را با انتخاب اجزایی که برای پروژه خود نیاز دارند بسازند. تنظیمات از طریق یک شیوه نامه مرکزی تا حد محدودی قابل انجام هستند. تغییرات عمده تر بوسیله دستورهای LESS امکان‌پذیر است. استفاده از زبان شیوه نامه LESS اجازه استفاده از متغیرها، توابع و عملگرها، انتخاب گره‌های تو در تو، و نیز mixins را می‌دهد. بوت‌استرپ با در نظر گرفتن مرورگرهای امروزی طراحی شده است. در نتیجه با آخرین نسخه‌های مرورگرهای Chrome, Firefox, Opera, Safari و Internet Explorer بدون مشکل کار می‌کند.

JsPHP

JsPHP یک کتابخانه جاوااسکریپت برای استفاده از رابط برنامه‌نویسی نرم‌افزار زبان پی اچ پی در محیط جاوااسکریپت است. این کتابخانه توسط Kevin van Zonneveld با عنوان php.Js در سال ۲۰۰۸ به عنوان یک پروژه متن باز شروع به کار کرد. در سال ۲۰۱۱، John Elliot شاخه‌ای از php.Js را ساخت که نام آن را JsPHP گذاشت. JsPHP برای ساخت یک رابط (رایانش) (به انگلیسی: Interface) آشنا برای برنامه نویسان دارای پشتوانه جاوااسکریپت برای تعامل با پی اچ پی ساخته شده است.

جِی‌کوئری

جِی‌کوئری (jQuery) یک کتابخانه جاوااسکریپت سبک‌وزنِ چند مرورگری است که برای ساده سازیِ نوشتنِ اسکریپ‌ هایِ سمت-مشتری یا به عبارتی سمت Client، در صفحات وب طراحی شده و امروزه محبوب‌ترین کتابخانه جاوااسکریپت استفاده است. جی کوئری نرم‌افزار متن‌باز و رایگان است که تحت پروانه "MIT" منتشر می‌شود. ساختار کتابخانه جِی‌کوئری به گونه‌ای طراحی شده‌است که دسترسی به عناصر صفحه را آسان‌تر کرده باشد. می‌توان با آن حرکات انیمیشن ایجاد و از رویداد (Event) های صفحه استفاده کرد و به وسیله آن می‌توان نرم‌افزارهای مبتنی بر ای‌جکس (Ajax) را ایجاد و توسعه داد. جی‌کوئری همچنین این اختیار را به برنامه نویسان می‌دهد که افزونه‌هایی برای این کتابخانه جاوااسکریپت ایجاد کنند. جدا از این‌ها، جی‌کوئری به توسعه دهندگان این اختیار را می‌دهد که تکه برنامه‌های سطحِ پایینِ مبادله‌ای (ارتباط مرورگر با کاربر) یا انیمیشنی و حتی افکت‌های پیشرفته و سطح بالا و اشیاء فرضی را ایجاد کنند. به‌کارگیری همهٔ این اجزای جی‌کوئری کمک می‌کند تا صفحات وب قدرتمند و داینامیک (پویا)، راحت‌تر ایجاد شوند.

پروتوتایپ

پروتوتایپ یک چهارچوب نرم‌افزاری جاوااسکریپت که امکاناتی برای کار با چارچوب ای‌جکس و ابزارهای دیگر فراهم می‌کند و توابع گوناگونی را برای گسترش نرم‌افزارهای کاربردی جاوااسکریپت ارائه می‌هد. روبی آن ریلز از چارچوب‌هایی است که از پروتوتایپ استفاده می‌کند.

دوجو

دوجو (Dojo Toolkit‎) یک کتابخانه متن باز ماژولار جاوااسکریپت است. این کتابخانه برای توسعه سریع پروژه‌های چندسکویی Javascript/Ajax ساخته شده است

ری‌اکت

ری‌اکت (React.js)، یک کتابخانه متن‌باز جاوااسکریپت برای ساخت رابط‌های کاربری و اجزای(Component) صفحات وب است. این کتابخانه توسط فیس‌بوک و جامعه‌ای از توسعه‌دهندگان و شرکت‌ها به صورت انفرادی توسعه و نگه‌داری می‌شوند.براساس آنالیزهای جاوااسکریپت سرویس لیبسکور، ری‌اکت در حال حاضر در سایت‌های نت‌فلیکس، ایمجر، بلیچر رپورت، فیدلی، ایر بی‌ان‌بی و … مورد استفاده قرار می‌گیرد. به دلیل بهینه بودن ری‌اکت برای دریافت اطلاعاتی که با سرعت تغییر می‌کنند، میتوان از آن برای توسعه برنامه تک‌صفحه‌ای(SPA) یا برنامه‌های موبایل استفاده کرد. هرچند دریافت اطلاعات، ابتدایی ترین بخش در یک صفحه وب است و برنامه‌های پیچیده ری‌اکت معمولاً به کتابخانه‌های اضافه‌ای برای مدیریت وضعیت (state management)، مسیریابی (URL mapping)، و اتصال به رابط برنامه‌نویسی کاربردی (API) نیاز دارند. ری‌اکت و ری‌اکت نیتیو(React Native) از جمله پروژه‌های متن‌باز شرکت فیس‌بوک هستند که در صدر محبوب‌ترین پروژه‌های وبگاه گیت‌هاب قرار دارند.

ریداکس جی‌اس

ریداکس جی‌اس (Redux‎) یک کتابخانه متن باز جاوا اسکریپت برای مدیریت حالت یا همان State است. معمولاً همراه با کتابخانه هایی نظیر ری اکت یا انگولار، برای ساختن رابط کاربری (UI) استفاده می‌شود. چیزی مشابه (و با الهام از) فلاکس فیسبوک که توسط دن آبراموف و اندرو کلارک ایجاد شد. ریداکس یک کتابخانه کوچک با یک API بسیار ساده طراحی شده‌است که یک ظرف قابل‌پیش‌بینی برای حالت برنامه باشد. آن به روشی مشابه عمل می‌کند تا تابع کاهش باشد، یک مفهوم برنامه‌نویسی تابعی. این زبان تحت‌تاثیر زبان Elm قرار گرفته‌است، که خود یک زبان برنامه‌نویسی تابعی (Functional programming) است.

ریکو

ریکو (Rico) یک کتابخانه متن باز جاوااسکریپت برای توسعه ی برنامه های غنی وبی توسط تکنولوژی ای‌جکس است. ریکو مبتنی بر  کتابخانه دیگری از جاوااسکریپت به نام پروتوتایپ است.

Pyjs

Pyjs یک نرم‌افزار غنی اینترنتی، برای توسعه برنامه‌های سمت کاربر و نرم‌افزارهای دسکتاپی برای زبان برنامه‌نویسی پایتون است؛ که شامل یک کامپایلر مستقل پایتون به جاوااسکریپت، یک چهارچوب نرم فزاری ایجکس و ابزار ویجت است؛ که با استفاده از این کامپوننت‌ها کاربران قادر به نوشتن برنامه‌های جامع خواهند بود، که همگی در مرورگر و بدون استفاده از جاوااسکریپت اجرا شود.

PDF.js

PDF.js یک کتابخانه جاوا اسکریپت برای رندر کردن فایل PDF با استفاده از HTML5 Canvas به منظور امنیت بیشتر و سازگار با استانداردهای وب به وسیله مرورگر وب است. این پروژه توسط بنیاد موزیلا پس از ایجاد آن توسط آندرس گال (به عنوان یک پروژه آزمایشی) در سال ۲۰۱۱ مدیریت می‌شود.

Mochikit

Mochikit یک کتابخانه سبک جاوااسکریپت است که توسط Bob Ippolito نوشته شده و نگهداری می‌شود. با تأثیر گرفتن از چارچوب Twisted از زبان برنامه‌نویسی پایتون این کتابخانه هم از مفهوم اجرای تعویقی برای رفتار غیر هم‌زمان(asynchronous) استفاده می‌کند. که این امر برای توسعه صفحه‌های تعاملی وب که ارتباط خود را با سرور حفظ می‌کنند بسیار مفید است.

D3.js

D3.js سرنام Data-Driven Documents یک کتاب‌خانه جاوااسکریپت برای تولید مصورسازهای داده پویا و تعاملی در مرورگرهای وب هست. این کتاب‌خانه از استانداردهای SVG, HTML5و CSS که به صورت گسترده پیاده‌سازی شده‌اند استفاده می‌کند. این کتاب‌خانه جانشین فریم‌ورک قبلی یعنی Protovis می‌باشد. برخلاف خیلی از کتاب‌خانه‌های دیگر، D3.js کنترل فراوانی را برای نتیجه بصری نهایی فراهم می‌آورد. این کتاب‌خانه توسط ویراستار iD برای ویرایش OpenStreetMap مورد استفاده قرار گرفته‌است. D3.js به صورت گسترده برای GIS map making، مدیریت GeoJSON و Topojson به عنوان فایل‌های ورودی مورد استفاده قرار گرفته‌ است. این کتاب‌خانه جاوااسکریپتی که با صفحات HTML تعبیه شده، از توابع از پیش ساخته‌شده JavaScript برای انتخاب عناصر، ایجاد شئ‌های SVG, style بخشیدن به آن‌ها، یا اضافه کردن تأثیرهای پویا و انتقالی یا tooltips به آن‌ها، استفاده می‌کند. این اشیاء، همچنین می‌توانند به صورت گسترده توسط CSS مدل داده شوند. مجموعه داده‌های بزرگ به راحتی می‌توانند توسط اشیاء SVG، با استفاده از توابع ساده D3.js برای تولید گرافیک، متن، جدول و نمودارهای غنی محدود شوند. داده می‌تواند در فرمت‌های گوناگون باشد که رایج‌ترین آن‌ها JSON, comma-separated values (CSV) یا geoJSON هستند، اما، اگر نیاز باشد، توابع JavaScript می‌توانند برای خواندن فرمت‌های دیگر داده نوشته‌شوند.

مث‌جکس

مث‌جکس (MathJax) یک کتابخانه جاوااسکریپت چندمرورگری است که از نشانه‌گذاری‌های مت‌ام‌ال، لاتک و اسکی‌مت‌ام‌ال استفاده می‌کند. پروژه مت‌جکس در سال ۲۰۰۹ در ادامه یک پروژه دیگر به نام جی‌اس‌مت که یک کتابخانه برای قالب‌بندی ریاضیات بود آغاز شد و توسط جامعه ریاضی آمریکا مدیریت می‌شود.

ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را می‌توانید از کتابخانه‌های عمومی سراسر کشور و نیز از دکه‌های روزنامه‌فروشی تهیه نمائید.

ثبت اشتراک نسخه کاغذی ماهنامه شبکه     
ثبت اشتراک نسخه آنلاین

 

کتاب الکترونیک +Network راهنمای شبکه‌ها

  • برای دانلود تنها کتاب کامل ترجمه فارسی +Network  اینجا  کلیک کنید.

کتاب الکترونیک دوره مقدماتی آموزش پایتون

  • اگر قصد یادگیری برنامه‌نویسی را دارید ولی هیچ پیش‌زمینه‌ای ندارید اینجا کلیک کنید.

1607870047_0.gif

نظر شما چیست؟