JavaScript: نحوه شروع کار در توسعه وب سایت های تعاملی

افشای: پشتیبانی شما به حفظ سایت کمک می کند! ما برای برخی از خدماتی که در این صفحه توصیه می کنیم هزینه ارجاع دریافت می کنیم.


JavaScript یکی از محبوب ترین زبان های برنامه نویسی در جهان است. همراه با HTML و CSS ، جاوا اسکریپت یکی از سه فناوری اساسی است که تقریباً همه وب سایتها به آن اعتماد دارند.

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

آشنایی با JavaScript

Contents

JavaScript چیست؟?

ابتدا ، اجازه دهید هرگونه سردرگمی در مورد نام را روشن کنیم: جاوا اسکریپت هیچ ارتباطی با جاوا ندارد. اکنون که می دانیم JavaScript چیست ، می توانیم در مورد JavaScript صحبت کنیم.

اگر تنها کاری که می خواهید با وب سایت خود انجام دهید نمایش برخی متن ها و تصاویر اساسی است ، HTML و CSS برای انجام کار کافی هستند.

با این حال ، اگر می خواهید کارهای دیگری انجام دهید – مانند تغییر سبک ها به صورت پویا ، منوها را تحریک کنید ، دکمه های کاربردی ایجاد کنید ، داده های وارد شده به یک فرم را تأیید کنید و موارد دیگر – به ابزار دیگری احتیاج دارید.

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

شروع به کار با JavaScript

اگر آماده هستید که دستان خود را کثیف کنید و به وظیفه یادگیری JavaScript بپردازید ، دو نوع منبع برای بررسی وجود دارد.

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

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

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

دوره های تعاملی رایگان

کدکدایی ارائه دهنده برتر آموزش برنامه نویسی رایگان است. آنها یک مسیر JavaScript ارائه می دهند که ممکن است مؤثرترین راه برای شروع یادگیری JavaScript باشد.

مدرسه کد ارائه دهنده آموزش عالی (پولی) است.

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

بنیاد جی کوئری, با همکاری کد مدرسه ، یک دوره آموزشی جی کوئری تعاملی مقدماتی را گرد هم آورده است.

به خاطر داشته باشید که بیشتر همه ، از جمله ما ، توصیه می کنند قبل از اینکه وارد جی کوئری شوید ، مقداری JavaScript یاد بگیرید. بنابراین پس از گذراندن مسیر JavaScript در Codecademy ، این دوره را امتحان کنید و به شما می آموزد که چه کاری را می توان با jQuery انجام داد.

کتاب و آموزش آنلاین

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

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

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

Eloquent JavaScript با پشتیبانی از وب سایتهای سنگین وب مانند Mozilla و Hack Reactor توسعه یافته ، مورد استقبال خوب برنامه نویسان قرار گرفته است.

شبکه توسعه دهنده Mozilla (MDN) راهنماهای جامعی را برای فناوریهای وب بنیادی ، از جمله JavaScript ارائه می دهد.

محتوای ارائه شده توسط MDN بسیار مفصل است و برای بدست آوردن یک دانش آموز نظم و انضباط در تمام راه ها از وضعیت مبتدی تا یک توسعه دهنده جلوی صلاحیت کافی در نظر گرفته می شود..

شما JS را نمی دانید مجموعه کتابها ، توسط کایل سیمپسون ، یک سریال عمیق است که هدف شما کمک به توسعه تسلط بر هر موضوع تحت پوشش است.

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

کتابخانه ها و چارچوب های JavaScript

کتابخانه ها و چارچوب های JavaScript

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

اینجاست که کتابخانه ها و چارچوب های JavaScript وارد می شوند: آنها میزان کد لازم برای انجام کارهای مشترک را کاهش می دهند.

اگرچه مطمئناً می توانید از جاوا اسکریپت در قالب بومی خود استفاده کنید ، و قبل از حرکت باید درک کاملی از JavaScript خالص ایجاد کنید ، اگر یاد بگیرید که از برخی از بسیاری از کتابخانه ها و چارچوب.

طبق گفته W3Techs ، jQuery ، Bootstrap و Modernizr محبوب ترین کتابخانه ها و چارچوب های JavaScript هستند.

جی کوئری محبوب ترین کتابخانه جاوا اسکریپت با حاشیه زیاد است و به گونه ای طراحی شده است که به شما در نوشتن کد کمتری کمک می کند.

همچنین یکی از ساده ترین کتابخانه های جاوا اسکریپت است که از آن شروع می شود زیرا بیشتر از همان نحو JavaScript خالص استفاده می کند. اصولاً اگر با JavaScript می توانید یک کار را انجام دهید ، می توانید با یادگیری jQuery همان کار را با کد بسیار کمتری انجام دهید.

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

ساخت جلوی وب سایت با Bootstrap کد HTML ، CSS و JavaScript را ایجاد می کند. Bootstrap هر آنچه را که برای توسعه جلوی هر نوع وب سایت نیاز دارید فراهم می کند.

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

Modernizr برخلاف jQuery و Bootstrap ، که می تواند برای دستیابی به هر چیز دیگری مورد استفاده قرار گیرد ، یک اسکریپت طاقچه است که برای یک هدف خاص استفاده می شود: برای جلب تجربه بازدید کنندگان وب سایت بر اساس ویژگی های پشتیبانی شده توسط مرورگر بازدید کننده.

برخی از چارچوب های اضافی JavaScript که برای توسعه پیشرفته ترین برنامه های وب امروزه مورد استفاده قرار می گیرند عبارتند از Angular.js ، Backbone.js ، Ember و React.

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

مدرنیزر

Modernizr یک کتابخانه JavaScript است که تشخیص می دهد مرورگر HTML5 و CSS3 سازگار است یا خیر. این امر به آن امکان می دهد فقط کارهایی را انجام دهد که مرورگر می تواند انجام دهد. این عملکرد را به کد شما اضافه نمی کند ، اما اطمینان می دهد که مرورگر فقط دستوراتی را ارسال می کند که مرورگر قادر به اجرای آن باشد.

بسیاری از آموزش ها و کتاب ها وجود دارد که می توانید ببینید آیا این چیزی است که فکر می کنید از آن استفاده می کند یا خیر.

آموزش های مدرنیزر

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

  • Modernizr: این یک سایت رسمی برای Modernizr است و حاوی اطلاعاتی است که شما نیاز دارید.

  • شروع به کار با Modernizr: این یک معرفی کوتاه است ، اما شما را راه اندازی می کند. و اگر نیازهای شما خیلی زیاد نباشد ، ممکن است تمام آنچه شما همیشه نیاز دارید ، باشد.

  • راهنمای مبتدی / طراحان برای استفاده از Modernizr برای حل چالش های مرورگر متقابل: یک آموزش خوب و اساسی که باید شما را در مدت زمان کمی بالا ببرد.

جی کوئری

قبلاً از jQuery هم نام بردیم. و هنگامی که شما بر JavaScript تسلط دارید ، به احتمال زیاد می خواهید به جی کوئری بپردازید ، که واقعاً برنامه نویسی JavaScript را آسان تر می کند.

ما یک مقاله کامل در مورد آن ، Learn و Master jQuery داریم که نه تنها شما را با jQuerry شروع می کنید بلکه شامل یک آموزش در مورد استفاده از jQuery برای طراحان نیز می باشد..

ستون فقرات.js

Backbone.js یک کتابخانه جاوا اسکریپت است که توسط جرمی اشکناس ایجاد شده است ، وی همچنین CafeScript ، LiveScript و Underscore.js را ایجاد کرد..

این پروژه در GitHub برگزار می شود و توسعه در حال انجام است که توسط Ashkenas با جمعی از مشارکت کنندگان منبع باز هدایت می شود.

Backbone.js برای ساخت برنامه های وب تک صفحه ای JavaScript استفاده شده است. این کتابخانه با تشویق جدایی کامل بین منطق برنامه و ارائه محتوای برنامه ، ساختار را در توسعه برنامه های وب ایجاد می کند.

مبانی Backbone.js

Backbone.js یک کتابخانه جاوا اسکریپت سمت مشتری است. وابستگی های آن شامل کتابخانه های Underscore.js و jQuery است که باید قبل از بارگذاری Backbone.js توسط مرورگر بارگذاری شود..

این کتابخانه یک رابط JSON RESTful دارد ، به این معنی که می تواند داده ها را با استفاده از قالب داده JSON سبک وزن به یک سرور وب ارسال و دریافت کند..

این کتابخانه با معماری برنامه نویسی Model-View-Presenter (MVP) طراحی شده است ، یک الگوی طراحی نرم افزار محبوب برای رابط های کاربر. با این حال ، در اکوسیستم Backbone.js از اصطلاحات “مدل ها ، نماها و مجموعه ها” استفاده می شود.

مدل ها ، نمایش ها و مجموعه ها

فلسفه Backbone.js این است که منطق برنامه و ارائه داده های برنامه باید از هم جدا شوند. این جدایی به شکلی که مدل ها و دیدگاه ها ایجاد و دستکاری می شوند ، حفظ می شود.

در Backbone.js ، یک مدل یک جدول واحد از داده ها به همراه توابع و منطق مورد نیاز برای دستکاری داده ها را نشان می دهد.

داده ها با استفاده از یک یا چند نمایش ارائه می شوند ، که به سادگی بخش هایی از UI برنامه وب هستند که داده ها را در مدل ترجمه کرده و DOM صفحه وب را مطابق با آنها تنظیم می کنند..

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

Backbone.js شامل یک API داخلی JSON است. هنگامی که یک مدل تغییر می کند ، تغییر را می توان به یک پایگاه داده وب سرور از طریق API JSON ارتباط داد.

از آنجا که تقریباً همه زبانهای برنامه نویسی سمت سرور می توانند برای ارسال و دریافت داده های JSON مجهز باشند ، تقریباً هر زبان سمت سرور یا برنامه ای با API JSON می تواند برای برقراری ارتباط داده ها از طریق یک برنامه وب Backbone.js و به روزرسانی بانک اطلاعات برنامه استفاده شود. بر این اساس.

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

Backbone.js چیست خوب است?

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

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

به عنوان مثال ، وب سایت Backbone.js لیستی از پروژه های شناخته شده ساخته شده با Backbone.js را فراهم می کند که شامل یک فرد معتبر است که از راه اندازی های اینترنتی مشهور و عناوین دیجیتالی مانند:

  • هولو

  • کوارتز

  • واکس

  • WordPress.com

  • بحث

  • فرهنگستان خان

  • Walmart موبایل

  • Basecamp

  • ایربنب

  • پاندورا

  • مدرسه کد

  • ترلو

  • نوار

  • و خیلی بیشتر.

آنچه Backbone.js را از بسیاری از چارچوب های معروف دیگر JavaScript جدا می کند – قابل توجه ، AngularJS – آزادی نسبی است که به توسعه دهندگان ارائه می دهد.

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

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

از طرف دیگر ، این بدان معناست که هنگام ساختن یک برنامه وب با Backbone.js باید مقدماتی اساسی تر ایجاد شود تا چارچوبی مانند AngularJS که شامل یک کار اساسی برای پیش ساخته است..

مواد آموزشی

اگر می خواهید Backbone.js را یاد بگیرید ، اولین کاری که شما باید انجام دهید ، تسلط بر JavaScript و jQuery است.

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

  • مقدمه ای بر JavaScript

  • یادگیری و استاد جی کوئری

  • JavaScript و jQuery برای طراحان.

علاوه بر این ، شما می خواهید به سرعت با Underscore.js ، یا کتابخانه فرزندان ، Lodash ، سرعت ببخشید.

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

آموزش آنلاین

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

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

  • Backbone.js شروع به کار می کند

  • Backbone.js برای مبتدیان مطلق توسط Adrian Mejia

  • ستون فقرات ، آغازگر

  • ساختن یک برنامه یک صفحه با Backbone.js ، Underscore.js و jQuery توسط Henrik Joreteg

  • آموزش تماس با مدیر ستون فقرات

  • ستون فقرات به عنوان مثال برنامه موبایل.

مخزن Backbone.js GitHub همچنین شامل لیست گسترده ای از آموزش های اضافی ، پست های وبلاگ و نمونه هایی از برنامه های وب Backbone.js.

کتابها

اگر واقعاً می خواهید به Backbone.js تسلط داشته باشید ، یا اگر ترجیح می دهید تحصیلاتتان چاپ و محدود شود ، متون زیر را با بازبینی مثبت در نظر بگیرید.

  • مسترینگ Backbone.js (2016) توسط ابیه اچامه

  • Full Stack JavaScript: Learn Backbone.js، Node.js and MongoDB (2015) توسط Azat Mardan

  • الگوهای و بهترین شیوه های Backbone.js (2014) توسط Swarnendu De

  • Backbone.js Blueprints (2014) توسط اندرو بورگس.

افکار نهایی در Backbone.js

Backbone.js یک کتابخانه JavaScript است که برای توسعه برنامه های وب یک صفحه ای طراحی شده است.

این کتابخانه به شکلی قابل توجه است که جداسازی کامل بین داده های برنامه و دیدگاههایی را ارائه می دهد که به کاربران برنامه ها و همچنین آزادی نسبی – و مسئولیت های مربوطه – که در اختیار توسعه دهندگان JavaScript قرار می دهد.

عملکردی JavaScript

عملکردی JavaScript

وقتی برنامه نویسان درباره برنامه نویسی کاربردی صحبت می کنند ، معمولاً در مورد دو چیز متفاوت اما مرتبط با یکدیگر صحبت می شود:

  • یک سبک برنامه نویسی که بر اجتناب عمدی از عوارض جانبی و همچنین ورودی ها و خروجی های پنهان تأکید دارد.

  • مجموعه ای از توابع برنامه نویسی – مانند کاری ، نقشه و فیلتر – از حساب lamba حاصل شده است.

این مفاهیم به این دلیل مرتبط هستند که انواع عملکردهای مرتبط با برنامه نویسی کاربردی ، با انجام محاسبات ریاضی قدرتمند و پیچیده ، درجه بالاتری از انتزاع کد را امکان پذیر می سازد..

چه چیزی باعث می شود برنامه نویسی کاربردی عملکردی داشته باشد?

هر عملکرد یک یا چند ورودی را در بر می گیرد و یک یا چند خروجی تولید می کند. به عنوان مثال از این عملکرد ساده استفاده کنید:

مثال عملکرد (a)
var نتیجه = a + 1؛
نتیجه بازگشت؛
}

این عملکرد ساده یک ورودی واحد را می گیرد ، a ، یکی را به آن مقدار اضافه می کند ، و سپس نتیجه را در یک متغیر به نام نتیجه ذخیره می کند. در این حالت ، یک ورودی است و نتیجه آن خروجی است.

به اندازه کافی ساده ، درست است?

با این حال ، این عملکرد کمی پیچیده تر چیست؟ ورودی ها و خروجی های آن چیست؟?

مثال عملکرد (a)
var result = doSomething (a) + 1؛
نتیجه بازگشت؛
}

خوب ، حالا ناگهان همه چیز پیچیده تر است. ما یک تابع ، doSomething () داریم که درون عملکرد ما قرار دارد و روی متغیر ما عمل می کند. اگر می خواهید doSomething را تغییر دهید () شما نیز لزوماً نتیجه مثال را تغییر می دهید ().

در این حالت ، ما آنچه را که ورودی مخفی نامیده می شود ، داریم. آنچه در این مورد است که doSomething () در واقع وارد عملکرد مثال () ما می شود ، هیچ راهی برای گفتن با عملکرد ما دقیقاً وجود ندارد که چه کاری انجام دهد.

علاوه بر این ، ما می خواهیم بگوییم که تابع doSomething () دارای عوارض جانبی است. این بدان معنی است که وقتی doSomething () تغییر کرده است ، عملکردهای دیگر را تحت تأثیر قرار می دهد. کل دامنه عملکرد در این تابع موجود نمی باشد.

برنامه نویسی کاربردی نوعی از برنامه نویسی است که سعی دارد با نوشتن توابع که صریحاً تمام ورودی ها و خروجی های آنها را اعلام می کند ، همه عوارض جانبی و همچنین ورودی ها و خروجی های پنهان را از بین ببرد..

به عنوان مثال ، ما می توانیم با نگه داشتن توابع جداگانه و اعلام doSomething (a) به عنوان ورودی به عنوان مثال در مورد (a) ، عملکرد فوق را به شیوه عملکردی دوباره کار کنیم.

عملکرد doSomething (ع)
var b = a + 1؛
بازگشت ب؛
}
مثال عملکرد (c)
var نتیجه = c + 1؛
نتیجه بازگشت؛
}
var c = مثال (doSomething (1))؛

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

اگر هنوز کمی در مورد برنامه نویسی کاربردی دقیقاً گیج هستید ، برنامه نویسی کاربردی چیست؟ توسط کریس جنکینز یک معرفی فنی عالی برای این موضوع است که برای هر زبان برنامه نویسی کاربرد دارد.

برنامه نویسی کاربردی با JavaScript

آیا JavaScript یک زبان برنامه نویسی کاربردی است؟ خوب ، پاسخ به این سوال بستگی به این دارد که منظور شما از زبان برنامه نویسی کاربردی چیست.

می توانید با استفاده از یک سبک برنامه نویسی کاربردی ، کد را با جاوا اسکریپت بنویسید. اما JavaScript ساده وانیلی نوع عملکرد ریاضی قدرتمند را که بیشتر برنامه نویسان به دنبال صحبت کردن در مورد برنامه نویسی کاربردی هستند ، شامل نمی شود..

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

اگر در درجه اول نگران یادگیری سبک برنامه نویسی کاربردی هستید و کمتر به عملکردهای ریاضی پیچیده توجه می کنید ، منابع زیر به شما کمک می کنند تا سبک برنامه نویسی کاربردی و چگونگی استفاده از آن را در JavaScript بهتر درک کنید:

  • مقدمه ای بر JavaScript کاربردی توسط M دیوید گرین در SitePoint که به طور خلاصه برنامه نویسی ضروری ، شی گرا و عملکردی را در JavaScript مقایسه می کند..

  • آشنایی با JavaScript کاربردی: یک سریال چهار قسمتی از جیمز سینکلر.

  • برنامه نویسی کاربردی: فصل ششم JavaScript Eloquent.

عملکردی JavaScript

در حالی که ما می توان از JavaScript برای برنامه ریزی با سبک عملکردی استفاده کرد ، همانطور که اشاره کردیم که کتابخانه ای از نوع عملکردهایی که بسیاری از برنامه نویسان کاربردی به دنبال آن هستند فاقد کتابخانه است..

در سال 2007 ، الیور استیل عملکردی را منتشر کرد – یک کتابخانه جاوا اسکریپت که نوع فرمول ها و کارکردهای ریاضی را معرفی می کند که برنامه نویسان کاربردی اغلب از آنها استفاده می کنند..

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

  • توابع مرتبه بالا شامل در عملکرد شامل نقشه ، کاهش و فیلتر می باشد.

  • روش های سطح عملکرد شامل کاری ، جزئی ، آهنگسازی ، نگهبان و تا زمانی است.

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

Functional در GitHub میزبان است و کاملاً رایگان و منبع آزاد است. با این حال ، از سال 2007 بروزرسانی قابل توجهی را مشاهده نکرده است. به عبارت دیگر ، اگر سعی کنید از کتابخانه قدیمی استفاده کنید ، می توانید برآمدگی هایی را در طول مسیر داشته باشید..

اگر می خواهید درباره JavasScript کاربردی اطلاعات بیشتری کسب کنید ، منابع زیر را بررسی کنید:

  • کتابخانه کاربردی JavaScript: در GitHub.

  • کاربردی JavaScript: توسط الیور استیل. همچنین این بایگانی ها را مشاهده کنید:

    • کاربردی JavaScript: اطلاعیه

    • کاربردی JavaScript 1.02: بروزرسانی کتابخانه.

عملکردی JS

اگر ایده استفاده از کتابخانه جاوا اسکریپت circa-2007 شما را کمی عصبی می کند – همانطور که باید – چرا جایگزین مدرن تری نخواهید داشت?

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

Functional JS در GitHub میزبان است ، و وب سایت رسمی پروژه مستندات کتابخانه ای عالی و کاملی را ارائه می دهد. اگرچه ، باید به شما هشدار داده شود كه مستندساز به روشی نوشته شده است كه فرض می شود توسط توسعه دهندگان با تجربه خوانده می شود.

افکار نهایی در JavaScript کاربردی

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

با این وجود ، JavaScript استاندارد شامل نوع عملکردهای قدرتمند ریاضی نیست که بسیاری از برنامه نویسان کاربردی به دنبال آن هستند. جاوا اسکریپت را می توان با استفاده از کتابخانه های رایگان جاوا اسکریپت مانند Functional توسط Oliver Steele و Functional JS توسط لی Crossley.

سبک جاوا اسکریپت

سبک جاوا اسکریپت

JavaScript یک زبان برنامه نویسی بسیار بخشنده است. در نتیجه ، همان بیت کد نوشته شده توسط دو برنامه نویس مختلف JavaScript اغلب متفاوت خواهد بود.

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

در این راهنما ، ما مجموعه ای از دستورالعمل های برنامه نویسی جاوا اسکریپت را ارائه می دهیم که می توانید برای نوشتن تمیزتر ، کد ظریف و اطمینان از استفاده از سبک برنامه نویسی مداوم ، استفاده کنید.

یک اصل راهنما

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

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

اگر دو روش برای انجام یک کار وجود دارد – و در جاوا اسکریپت ، غالباً نیمی از دو یا چند روش برای انجام کار وجود دارد – از روشی استفاده کنید که بیشترین وضوح را ارائه می دهد تا روشی که باهوش ترین است..

مثلا:

// باهوش ، اما به طور بالقوه گیج کننده است
؛ [‘foo’، ‘bar’، ‘baz’، ‘qux’]. برای همه (عملکرد ()
// کد عملکرد
})؛

// تا حدودی شفاف ، اما واضح است
var foobars = [‘foo’، ‘bar’، ‘baz’، ‘qux’]؛
تابع somethingClever ()
// کد عملکرد
؛
foobars.forEach (somethingClever)؛

نظرات

از آنجا که ما در سراسر این راهنما از نظرات استفاده خواهیم کرد ، اجازه دهید ابتدا به یک ظاهر طراحی نظر بپردازیم.

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

سه نوع نظر وجود دارد که می تواند در JavaScript استفاده شود:

  • نظرات تک خط.

  • نظرات چند خطی.

  • نظرات درون خطی.

در اینجا نحوه توصیه کردن قالب بندی هر نوع نظر ارائه شده است:

/ **
این یک نظر چند خطه است این نوع اظهار نظر
باید برای عناوین پرونده رزرو و برای توصیف شود
هدف از توابع پیچیده است.
* /

// این یک نظر واحد است. برای تهیه نت های کوتاه از آن استفاده کنید.

// سعی کنید از توضیحات درون خطی که در شکل زیر مشاهده می شود ، خودداری کنید.
var foobars = [‘foo’، ‘qux’ / * همچنین quux و quuux * /]؛

نظرات تک و چند خطی همیشه باید بر خط خالی انجام شود. علاوه بر این ، نظرات تک خط باید بالاتر از کد توصیف شده ، نه در کنار یا زیر آن باشد.

نظرات چند خطی را می توان به روش های مختلفی قالب بندی کرد.

/ ********************************************** **********
* *
* برخی از توسعه دهندگان دوست دارند بلوک های بزرگی ایجاد کنند *
* که در آن لانه کردن نظرات چند خط. مطمئنا *
* ترجیح ما نیست ، اما نکته اصلی ثبات است. *
* اگر می خواهید از این قالب استفاده کنید ، فقط مطمئن شوید که *
* از آن به طور مداوم استفاده کنید. *
* *
*********************************************** ********* /

/ **
* ترجیح ما به سادگی است. نظرات چند خطی
* تایپ کردن به سادگی به تلاش کمتری نیاز دارد و دقیقاً به همین شکل است
* آسان برای خواندن – و اگر شما کمتر از یک چشم انداز در حال حاضر
* از ما بپرس. ما توصیه می کنیم از یک برش تک جلو استفاده کنید
* و دو ستاره برای باز کردن یک نظر چند خطی. سپس,
* هر خط با دو تورفتگی فضا ، an شروع می شود
* ستاره ، و یک فضای. نظر با یک بسته است
* دو تورفتگی فضا ، ستاره و بسته شدن
* اسلش به جلو.
* /

/ ********************************************** **********

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

*********************************************** ********* /

فضای سفید ، خط شکسته ، ستون و تورفتگی

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

تورفتگی

بیایید با تورفتگی شروع کنیم. در حالی که شیوه های تورفتگی متفاوت هستند ، روش غوطه وری غالب – و روشی که ما توصیه می کنیم – استفاده از دو فاصله است..

دندانه ها را می توان تقریباً در هر محیط توسعه یکپارچه (IDE) یا ویرایشگر متن پیکربندی کرد ، بنابراین فقط تورفتگی ها را روی 2 فضا تنظیم کنید و باید خوب باشید.

ستون ها

وقتی در برنامه نویسی در مورد ستون ها صحبت می کنیم ، چیزی که به آنها اشاره می کنیم تعداد کاراکترهایی است که باید قبل از اضافه کردن یک خط خط ، در یک ردیف ظاهر شوند. به دلیل خوانایی ، افزودن خط شکسته مهم است. به طور کلی ، اجماع این است که 80 کاراکتر یا ستون نقطه ضعف خوبی است. برخی دیگر مانند 65 برابر طول های کوچکتر را کامل می کنند.

یکی دیگر از موارد اضافی که به تصویر سازی نیاز دارد ، استفاده از تورفتگی به دنبال شکست خط است. هنگامی که این اتفاق می افتد ، بهترین کار برای خالی کردن محتویات بسته بندی شده 4 فضای به جای 2 است که در مثال زیر نشان داده شده است:

var foo = ‘این متغیر حاوی خیلی طولانی است’ +
“رشته ای است که بیش از چندین” +
خطوط به خاطر وضوح ، +
“محتوای ظاهر شده در خطوط جدید باید باشد” +
چهار فاصله,
bar = ‘توطئه با این روش آسانتر می شود’ +
‘برای تماشای بصری بین خط’ +
“شکست به دلیل بسته شدن ستون و شکستن خط” +
“در پایان بیانیه.”؛

(توجه داشته باشید که ما از طول های کوتاه تر استفاده می کنیم تا ظاهر آنها در این صفحه خوب به نظر برسد.)

فضای سفید

چند قانون برتر بهترین کاربرد برای استفاده از فضای سفید شامل موارد زیر است:

  • از فضای سفید خط پایان و خط جلوگیری کنید. یعنی از جای خالی در انتهای یک خط کد یا روی یک خط خالی خودداری کنید. روشن کردن “نمایش نامرئی” یا “فضای سفید” در اکثر ویرایشگرهای متن و IDE این کاراکترها را نمایش می دهد تا بتوانید آنها را مشاهده کرده و از بین ببرید.

  • فضایی را بعد از کاما در لیست ها اضافه کنید ، مانند این: var foo = [‘bar’، ‘baz’، ‘qux’]؛.

  • فضای سفید بین پرانتز و محتوای آنها را اضافه کنید ، مانند این: تابع (foo)….

  • فضای سفید بین اپراتورها و محتوا را هنگام شرکت در یک رشته اضافه کنید ، مانند این: “سلام” + “جهان!”.

  • اضافه کردن یک خط خالی تنها به کدهای جداگانه و گروهی مربوط به آن خوب است. اضافه کردن چند خط توصیه نمی شود.

نامگذاری

هنگام نامگذاری توابع ، متغیرها و موارد دیگر در جاوا اسکریپت در اینجا چند قانون برای رعایت وجود دارد:

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

  • برای انواع دیگر متغیرها از اسامی جمع برای آرایه ها و اسم های مفرد استفاده کنید.

  • برای نامگذاری توابع و متغیرها از camelCase استفاده کنید ، مانند این: var longName = ”؛.

  • هنگام نامگذاری سازنده ها (کلاس های شی) از PascalCase استفاده کنید ، مانند این: تابع HostingCompany (نام ، آدرس ، رتبه بندی) {….

  • اگر ثابت های نمادین ایجاد می کنید ، آنها را با استفاده از کلاه ها و زیرنویس ها ، مانند آنها: نامگذاری کنید: var MAX_RATING = 100؛.

  • هنگام ایجاد عبارات منظم ، نام را با یک مورد کوچکتر پیشوند کنید ، مانند این برای اعتبارسنجی آدرس های ایمیل: var rEmail = /ապետA-Z0-9. +. [AZ] ،6 2،63}؛.

تک رنگ ها

تقریباً کلیه پیاده سازی های مدرن جاوا اسکریپت شامل ویژگی ای به نام درج خودکار تک رنگ (ASI) است. این ویژگی دارای ویژگی هایی است که قرار است نیم دانه ها ظاهر شود و به صورت خودکار آنها را اضافه می کند.

در نتیجه ، برخی از برنامه نویسان دیگران را ترغیب می کنند که به جز چند مورد حاشیه ، هرگز از تک رنگ استفاده نکنند. سایر برنامه نویسان شما را تشویق می کنند که انگار ASI وجود نداشته باشد ، آنها را اضافه کنید.

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

سپس این سؤال مطرح می شود ، چه موقع اضافه می شود؟ به طور کلی ، نقاط ضربتی باید بعد از هر اعلامیه یا تکلیف اضافه شود. مثلا:

var foo = ”؛
foo = 1؛
foo ++؛
foo = عملکرد ()
// Semicolon مورد نیاز است زیرا این عملکرد به متغیر اختصاص داده می شود.
؛
هشدار (foo)؛
console.log (foo)؛

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

با این حال ، اگر بعد از کارکردها و عبارات ، نقاط اضافه را اضافه کنید ، قصد انجام هیچ کاری را ندارید.

علاوه بر این ، هیچ گاه نباید در حد یک علامت یا عملکرد مانند این قرار بگیرد: {… یا اگر (شرط)؛ {….

نقل قول ها

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

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

// این کار را انجام دهید
var foo = ‘نوار’؛

// نه این
var foo = "بار"؛

// این اشکالی ندارد
var foo = ‘برخی از مطالب در اینجا.’؛

// اما این ساده تر و خواندنی تر است
var foo = ‘برخی از مطالب در اینجا.’؛

متغیرها

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

// این بد است زیرا خواندن آن دشوار است. این کار را نکنید.
var foo = "", نوار = [] ، باز = {} ، qux = تابع ()
/ * اظهارات را در اینجا وارد کنید. * /}؛

// این بد است زیرا متناقض است.
var foo = ”,
نوار = []؛
var baz = {}؛
qux = function () {/ * عبارت را در اینجا وارد کنید. * /}؛

// این خوب است زیرا سازگار و خوانا است.
var foo = ”,
نوار = [],
بازار = {},
qux = تابع ()
// درج اظهارات در اینجا.
؛

// این بهترین است.
var foo = ”؛
var bar = []؛
var baz = {}؛
var qux = تابع ()
// درج اظهارات در اینجا.
؛

بسیاری از اوقات وجود دارد که شما می خواهید متغیر را درون یک عملکرد یا داخل یک عبارت if … other اعلام کنید. هنگامی که این اتفاق می افتد ، تمام متغیرهای خود را با یکدیگر گروه بندی کرده و ابتدا آنها را اعلام کنید.

آرایه ها و اشیاء

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

// اشکال ندارد که آرایه های کوتاه و ساده را در یک خط اعلام کنید.
var foobars = [‘foo’، ‘bar’، ‘baz’، ‘qux’]؛

// آرایه های طولانی باید با وقفه خط اعلام شوند.
var emailAdresses = [
‘[ایمیل محافظت شده]">با ما تماس بگیرید’,
‘[ایمیل محافظت شده]">مدیر وب سایت,
‘[ایمیل محافظت شده]">حراجی’,
‘[ایمیل محافظت شده]">پشتیبانی’

// اشیاء باید همیشه با شکاف خط اعلام شوند.
متغیرهایی متغیر = {
1: ‘foo’,
2: “نوار”,
3: ‘baz’,
4: ‘qux’
؛

بیانیه ها و عملکردها

به طور صحیح قالب بندی بیانیه ها و عملکردها ، درک آنها را آسان تر می کند و همچنین می تواند در جلوگیری از بروز مشکل هنگام تخصیص کد یا ارائه توسط یک مرورگر ، کمک کند. در اینجا چگونگی قالب بندی توابع و عبارت ها به طور کلی آورده شده است:

تابع functionName ()
// درج کد در اینجا.
}

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

  • همیشه براکت بازکننده را بر روی همان خط قرار دهید که پارامترهای عملکرد یا عبارت مانند این است: (پارامترها) Add …. اضافه کردن خط شکاف بین پرانتین بسته و براکت باز کننده می تواند باعث شود تا با اضافه کردن کد ، شکاف خودکار وارد شود. نقطه های نادرست.

  • همیشه بیانیه ها و عملکردها را بر روی چندین خط بشکنید با تمام عملکرد یا کد بیانیه که در خطوط بین براکت های باز و بسته ظاهر می شود.

توابع لانه سازی

توابع توخالی داخل توابع همانطور که در مثال بعدی نشان داده شده کاملاً قابل قبول است:

عملکرد fooBar (foo)
var bar = تابع ()
// کد عملکرد در اینجا.
}
تابع nestedFunction ()
// کد عملکرد بیشتر در اینجا.
}
عملکرد nested (نوار) ​​بازگشت؛
}

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

در حالی که اکثر پیاده سازی های جاوا اسکریپت با استفاده نادرست از این نرم افزار استفاده می کنند ، پیاده سازی هایی که به طور دقیق تری از ECMAScript پیروی می کنند ، کد را به درستی پردازش نمی کنند.

مثال زیر تفاوت را نشان می دهد:

اگر (foo > بار ) {

// این کار را نکنید
عملکرد fooBar (foo ، نوار) ​​{
foobar = foo + bar؛
بازگشت فوبار؛
}
fooBar (foo، bar)؛

// در عوض این کار را انجام دهید
var foobar = عملکرد fooBar (foo ، bar) {
بازگشت foo + bar؛
}
}

هنگام نوشتن اظهارات اگر… موارد دیگر ، با اجتناب از اضافه کردن معافیت های خط قبل از هر بخش از اظهارات ، روشن کنید که کل گفته ها مرتبط است..

// از قالب زیر استفاده کنید.
اگر (شرط) {
// درج اظهارات در اینجا.
} دیگر اگر (شرط)
// اظهارات اضافی در اینجا.
} دیگه
// حتی اظهارات بیشتر در اینجا.
}

// این کار را نکنید. گیج کننده است.
اگر (شرط) {
// درج اظهارات در اینجا.
}
دیگر اگر (شرط)
// اظهارات اضافی در اینجا.
}
دیگری {
// حتی اظهارات بیشتر در اینجا.
}

مقایسه

هنگام مقایسه دو مقدار در جاوا اسکریپت ، دو گزینه وجود دارد. می توانید برابری سخت را با استفاده از === و! == بررسی کنید یا می توانید با استفاده از == و! = برابری انتزاعی را چک کنید..

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

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

// یک عدد
var foo = 0؛

// یک رشته
var bar = ‘0’؛

// ارزیابی به “درست”
foo == نوار؛
foo == false؛
نوار == ​​نادرست؛
foo! == نوار؛

// ارزیابی به “نادرست”
foo! = نوار؛
foo === نوار؛
foo === غلط؛
foo === غلط؛

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

// یک رشته
var foo = ‘123’؛

// یک عدد
var bar = 123؛

// درست خواهد شد
foo == نوار؛

// به دروغ باز خواهد گشت
foo === نوار؛

اگر از مقایسه انتزاعی استفاده می کنید ممکن است فکر کنید که هر دو مقدار برابر با عدد “123” است که foo در واقع برابر با رشته “123” است.

در نتیجه ، شما ممکن است سعی کنید محاسبات ریاضی را با رشته در foo انجام دهید. مقایسه دقیق مقادیر ، شما را به این مسئله سوق می دهد و به شما اطلاع می دهد که قبل از انجام محاسبه باید foo را به یک عدد تبدیل کنید.

درباره سبک JavaScript بیشتر بیاموزید

اگر می خواهید در مورد سبک JavaScript بیشتر بدانید ، منابع زیر مفید هستند:

  • اصول نوشتن سازگار ، JavaScript Idiomatic

  • سبک استاندارد JavaScript

  • راهنمای سبک جی کوئری راهنمای سبک JavaScript

  • راهنمای سبک Google JavaScript.

افکار نهایی درباره سبک

استفاده از یک سبک مداوم و متفکر هنگام نوشتن JavaScript می تواند کد شما را در خواندن و درک راحت تر کند.

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

در این راهنما ، ما یک سبک پیشنهادی برای نوشتن کد JavaScript ارائه داده ایم. آن را تصویب کنید ، متناسب با نیاز خود آن را اصلاح کنید و از مزایای کد پاک کننده تر ، واضح تر و سازگارتر استفاده کنید.

CafeScript

CafeScript

CafeScript (CS) یک زبان برنامه نویسی مختصر است که توسط جرمی اشکناس طراحی شده است و در JavaScript استاندارد قابل اجرا است که می تواند در هر محیط جاوا اسکریپت اجرا شود..

این یک زبان منبع باز است و توسعه در حال انجام با همکاری Ashkenas و ارتش نزدیک به 200 مشارکت کننده تکمیل می شود.

CS به گونه ای طراحی شده است که به توسعه دهندگان اجازه دهید کد را با استفاده از یک syntax ساده و مختصر بنویسند. سپس برای وارد کردن کد JavaScript که از بهترین روش های برنامه نویسی استفاده می کند و به راحتی توسط هر محیط زمان اجرا JavaScript قابل اجرا است.

تاریخچه CafeScript

در دسامبر سال 2009 ، جرمی اشکناس مخزن جدید GitHub را با یک تعهد اولیه با عنوان “ارتکاب اولیه زبان رمز و راز” ایجاد کرد.

این تعهد اولیه به سرعت ساخته شد و اولین نسخه رسمی زبان ، نسخه CS.0 0.1 ، کمتر از 2 هفته بعد در شب کریسمس 2009.

کامپایلر CS در ابتدا با روبی نوشته شده بود. با این حال ، نسخه 0.5 ، که در فوریه 2010 منتشر شد ، کامپایلر را جایگزین یک کامپایلر با خود نوشته شده در CoffeeScript کرد. با این وجود ، هنوز راه هایی وجود دارد که باید قبل از اولین نسخه پایدار CS ، نسخه 1.0.0 ، که در شب کریسمس سال 2010 منتشر شد ، تقریباً یک سال پس از آغاز به کار این پروژه.

آخرین نسخه CafeScript نسخه 2.3.1 با عنوان مه 2018 است.

برای اینکه از آخرین کارهای توسعه در CS استفاده نکنید ، به مخزن CafeScript 6.0 GitHub مراجعه کنید.

جرمی اشکناس

طراح CS ، جرمی اشکناس ، یک توسعه دهنده تأثیرگذار و مؤثر JavaScript است. علاوه بر CS ، پروژه های قابل توجه زیر را نیز توسعه داده است:

  • LiveScript: یک زبان برنامه نویسی کاربردی با پشتیبانی از سبک های برنامه نویسی شی گرا و ضروری که از فرزندان غیرمستقیم از CafeScript است. مانند CS ، در JavaScript استاندارد کامپایل می شود.

  • Backbone.js: یک کتابخانه منعطف جاوا اسکریپت که با برنامه های وب یک صفحه ای در ذهن ساخته شده است که بر جداسازی کد منطق برنامه از کدی که ارائه داده های برنامه را تأکید می کند تأکید دارد..

  • Underscore.js: یک کتابخانه جاوا اسکریپت با توابع ابزار برای رسیدگی به کارهای برنامه نویسی مشترک.

جرمی همچنین یک برنامه نویس برای نیویورک تایمز و همچنین سخنران محبوب کنفرانس ها است و فیلم های بسیاری از مذاکرات وی را در YouTube خواهید یافت ، مانند:

  • ظهور ترانزیستورها

  • JS.Next و CoffeeScript

  • زبانهای همزیستی

  • CafeScript به عنوان JS / Next

  • یک فنجان CoffeeScript.

نحوی CafeScript

برچسب CS “JavaScript ناعادلانه” است و آن برچسب به عنوان توضیحی مؤثر از نحو CS است.

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

قابل توجه ترین ، پرانتزهای مجعد ، نقاط کوچک و استفاده از کلمات کلیدی واگذاری مانند var و عملکرد همه در CS حذف شده اند.

این امر CS را بسیار مختصر می کند ، اما این کار را با هزینه خوانایی انجام می دهد. برای به دست آوردن یک حس در مورد چگونگی عملکرد این موضوع ، عملکرد JavaScript زیر را که به دنبال آن معادل CS است ، در نظر بگیرید.

// عملکرد برای بازگشت میانگین امتیاز میزبان در جاوا اسکریپت
var hostRating؛
hostRating = تابع (totRatingsVal ، totRatingsNo) {
بازگشت totRatingsVal / totRatingsNo؛
}

// همان عملکرد در CoffeeScript
hostRating = (totRatingsVal، totRatingsNo) ->
totRatingsVal / totRatingsNo

همانطور که مشاهده می کنید ، نسخه CS پاکتر ، کوتاهتر است و دارای اپراتورهای زبان کمتری است. این باعث می شود نسخه CS کمی سریع تر تایپ شود ، اما همچنین آنچه را که در پشت صحنه اتفاق می افتد را تا حدی ماسک می کند.

سواد CafeScript

یکی از تنوع جالب CS ، سواد CoffeeScript نامیده می شود. کامپایلر این تغییر را تا زمانی که منبع کد منبع با پسوند .litcoffee به جای .c قهوه به پایان برسد تشخیص خواهد داد.

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

بیایید به یک مثال کوتاه نگاه کنیم.

## سواد CoffeeScript

[Litrate CoffeeScript] (http://coffeescript.org/#literate) اجازه می دهد تا از [markdown] (https://daringfireball.net/projects/markdown/syntax#precode) استفاده کنید تا کد CoffeeScript را بنویسید. کلیه متن ها – عنوان ها ، پاراگراف ها ، لیست ها و موارد دیگر – توسط کامپایلر به عنوان تفسیر نادیده گرفته می شود.

با این حال ، بلوک های کد دنده ای ، مانند بلوک کد زیر ، در JavaScript وارد شده اند.

fooBar = (foo) -> foo + 1
doSomething = (fooBar) -> هشدار fooBar
اگر fooBar؟ کاری بکنید

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

چگونه می توان CafeScript را دریافت کرد

کامپایلر CS معمولاً با استفاده از Node.js نصب و اجرا می شود و CS به عنوان یک بسته NPM در دسترس است. با این حال ، این پروژه همچنین از GitHub قابل بارگیری یا کلون سازی است.

اگر هنوز نصب CafeScript کاملاً آماده نیستید ، می توانید با رفتن به CafeScript.org و انتخاب برگه Try CafeScript ، چرخش آن را تحویل دهید..

این برگه حاوی محیط CafeScript مبتنی بر مرورگر است. نگران نباشید ، CafeScript را در سمت چپ تایپ کنید و تماشا کنید که در زمان واقعی در سمت راست آن را به JavaScript کامپایل کنید.

منابع CafeScript

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

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

با توجه به این نکته احتیاطی ، منابع زیر به توسعه دهندگان صالح جاوا اسکریپت کمک می کند تا با دستور کوتاه با سیستم CS بلند شوند و کار کنند.

آموزشها

  • A Sip of CafeScript: یک دوره مقدماتی کوتاه و رایگان از CodeSchool.

  • راهنمای مطلق مبتدی برای CafeScript: این آموزش با نام خود زندگی می کند ، این نرم افزار را نصب می کند و اصول اولیه زبان را آموزش می دهد.

  • CafeScript.org: وب سایت رسمی CS شامل معرفی مفصل به زبان و کامپایلر مبتنی بر مرورگر است.

  • Smooth CoffeeScript: کتابی تعاملی ، رایگان و مبتنی بر مرورگر.

  • مقدمه ای بر نقشه های منبع JavaScript: اشکال زدایی CS به استفاده از فهرست های منابع نیاز دارد. این آموزش به شما کمک می کند تا اشکال زدایی در کد CS خود را شروع کنید.

کتابها

  • CoffeeScript: کتاب راهنمای شما در مورد توسعه برنامه با CoffeScript (2016) توسط نیکلاس براون.

  • CafeScript Ristretto (2014) توسط Reg “raganwald” Braithwaite. به صورت رایگان در دسترس است.

  • CoffeeScript in Action (2014) توسط لی و مارینو.

  • کتاب کوچک در مورد قهوه اسکریپت (2012) توسط الکس مک کارو. به صورت رایگان در دسترس است.

خلاصه

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

علاوه بر این ، پس از کامپایل شدن با JavaScript استاندارد ، کد CS در هر محیط با قابلیت JavaScript قابل اجرا است.

خلاصه جاوا اسکریپت

خلاصه جاوا اسکریپت

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

امیدوارم با این مقدمه ، بتوانید سریع و سریع کار کنید – وب سایت های تعاملی ایجاد کنید.

خواندن بیشتر

ما راهنماهای ، آموزش ها و اینفوگرافیک های بیشتری در رابطه با کد نویسی و توسعه داریم:

  • برنامه نویسی F #: درباره برنامه نویسی کاربردی در چارچوب .NET اطلاعات کسب کنید.

  • مقدمه و منابع برنامه نویسی Erlang: زبانی کاربردی اولیه که برای ایجاد کد موازی استفاده می شود.

  • مقدمه و منابع Swift: این یکی از جدیدترین زبانهای شبیه C است. آینده برنامه نویسی؟ اینجا را پیدا کنید!

چه کدی را باید بیاموزید?

گیج شده در مورد چه زبان برنامه نویسی که باید رمزگذاری کنید؟ اینفوگرافیک ما را ببینید ، چه کدی را باید یاد بگیرید?

این نه تنها در مورد جنبه های مختلف زبان بحث می کند ، بلکه به سؤالات مهمی از جمله ، “چقدر می توانم برنامه نویسی جاوا را برای امرار معاش بسازم؟”

چه کد باید یاد بگیرید؟
چه کدی را باید بیاموزید?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map