خانه / بایگانی برچسب: API

بایگانی برچسب: API

مفهوم Callback در جاوا اسکریپت — به زبان ساده

ما در بلاگ فرادرس تا به این جا مجموعه مطالبی در خصوص مفاهیم جاوا اسکریپت برای افراد مبتدی جهت درک بهتر طرز کار توسعه وب منتشر کرده‌ایم. در این نوشته نیز قصد داریم در خصوص مفهوم Callback در جاوا اسکریپت صحبت بکنیم. بدین ترتیب در طی چند دقیقه کوتاه با مثال‌های ساده با این مفهوم آشنا خواهید شد. Callback چیست؟ Callback به بیان ساده تابعی است که باید پس از پایان یافتن تابعی دیگر اجرا شود. از این رو به این صورت «call back» یعنی «بازگشت فراخوانی» نامگذاری شده است. اگر بخواهیم کمی دقیق‌تر صحبت کنیم، تابع‌ها در جاوا اسکریپت شیء هستند. به همین دلیل تابع‌ها می‌توانند تابع‌های دیگری را به عنوان آرگومان بپذیرند و می‌توانند از سوی تابع‌های دیگر بازگشت یابند. تابع‌هایی که این کار را انجام می‌دهند به صورت «تابع‌های درجه بالا» (higher-order functions) نامیده می‌شوند. هر تابعی نیز که به صورت یک آرگومان ارسال می‌شود به نام تابع callback خوانده می‌شود. تا به این جا صرفاً تعاریف را مطرح کردیم، اما در ادامه تلاش می‌کنیم این مفهوم را با مثال‌های عملی بهتر درک کنیم. چرا به Callback نیاز داریم؟ Callback-ها..

توضیحات بیشتر »

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

اگر پیگیر نوشته‌های ما در این سری مطالب راهنمای عملی جاوا اسکریپت بوده باشید، احتمالاً تاکنون متوجه شده‌اید که تا به اینجا اکثر مطالب طرح شده ما علی‌رغم نام این دوره بیشتر پیرامون مباحث نظری بوده است. اما در این مقاله قصد داریم با مبانی عملی نوشتن تابع‌های سفارشی نیز آشنا شویم. در این مسیر برخی جزییات مفید که هنگام کار با این تابع‌ها مورد نیاز خواهد بود را نیز بررسی می‌کنیم. پیش‌نیازها سواد ابتدایی رایانه درکی مقدماتی از HTML و CSS آشنایی با مبانی اولیه جاوا اسکریپت و مطلب قبلی ما در مورد «مفهوم و کاربرد تابع در جاوا اسکریپت» هدف این مقاله ارائه عملی مراحل نوشتن تابع‌های سفارشی و توضیح چند موضوع مفید مرتبط با این زمینه است. یادگیری عملی: نوشتن اولین تابع سفارشی ما قصد داریم در ادامه یک تابع سفارشی بنویسیم که آن را ()displayMessage می‌نامیم. این تابع یک کادر پیام سفارشی روی صفحه وب نمایش خواهد داد و به عنوان یک جایگزین سفارشی‌سازی شده برای تابع ()alert داخلی مرورگر عمل می‌کند. ما این تابع را قبلاً دیده‌ایم؛ اما یک بار دیگر آن را یادآوری می‌کنیم. کد زیر را در کنسول جاوا اسکریپت مرورگر ..

توضیحات بیشتر »

راهنمای جامع React (بخش اول) — از صفر تا صد

مقاله‌ای که پیش رو دارید مروری جامع در مورد React است که گرچه ادعا ندارد همه موارد مربوط به این فریمورک را در خود گنجانده، اما مبانی مقدماتی مورد نیاز برای این که به یک توسعه‌دهنده خبره React تبدیل شوید را در اختیار شما قرار خواهد داد. این مجموعه مطلب در 8 فصل ارائه شده است که فصل نخست آن شامل مباحث زیر می‌شود: فصل اول: مفاهیم اساسی جاوا اسکریپت مدرن برای استفاده از React متغیرها تابع‌های Arrow Rest و spread تخریب شیء و آرایه الفاظ قالبی (template literals) کلاس‌ها Callback-ها promise-ها Async/Await ماژول‌های ES توجه داشته باشید که آنچه در ادامه آمده است تنها فصل اول این مجموعه مطلب را شامل می‌شود و برای مطالعه فصول بعدی باید به بخش‌های آتی این سری مقالات مراجعه کنید. مقدمه‌ای بر یک کتابخانه View به نام React در این بخش React و ماهیت آن را توضیح می‌دهیم. React چیست؟ React یک کتابخانه جاوا اسکریپت است که هدف آن ساده‌سازی مراحل توسعه رابط‌های بصری است. React از سوی فیسبوک توسعه یافته است و در سال 2013 انتشاریافته است. در واقع React زیرساخت تشکیل دهنده بسیاری اپلیکیشن‌های پر استفاده از..

توضیحات بیشتر »

مقایسه Xamarin ،React Native و Flutter برای توسعه چند پلتفرمی — راهنمای کاربردی

اصطلاح «توسعه چند پلتفرمی» یا (Cross-Platform Development) در طی سال‌های اخیر شهرتی منفی به دست آورده است، چون واقعاً هیچ فناوری خاصی وجود ندارد که بتواند این کار را به درستی انجام دهد و حتی آن فناوری‌هایی که ادعای چنین کاری را دارند نیز همچنان محدودیت‌های زیادی پیش پای توسعه‌دهندگان قرار می‌دهند. با توجه به همه این مشکلات، امکان توجیه کردن توسعه چند پلتفرمی وجود ندارد؛ اما افراد مختلف همچنان به آن چسبیده‌اند و از سه فناوری عمده در این حوزه یعنی زامارین (Xamarin)، «ری‌اکت نیتیو» (React Native) و فلاتر (Flutter) استفاده می‌کنند. پیش از آن که اقدام به مقایسه این سه فناوری و تعیین مزایا و معایب هر کدام بکنیم، باید ابتدا به دلایل این نکته بپردازیم که اصولاً چرا باید یک نفر چیزی مانند این‌ها را انتخاب کند. دلایل انتخاب توسعه چند پلتفرمی توسعه چند پلتفرمی چهار مزیت عمده دارد که در ادامه هر کدام را به تفصیل توضیح داده‌ایم. توسعه بهینه: امکان اشتراک تقریباً همه کد میان پلتفرم‌های مختلف وجود دارد و این بدان معنی است که نیاز به زمان کمتری برای توسعه نرم افزار وجود دارد و کافی است یک اپلیکیشن و..

توضیحات بیشتر »

همه آنچه باید در مورد زبان برنامه‌نویسی Go بدانید — صفر تا صد

این نوشته را با یک مقدمه کوتاه در مورد Go، یا به عبارت صحیح‌تر Golang، آغاز می‌کنیم. Go توسط تعدادی از مهندسان گوگل به نام‌های «روبرت گریزمر» (Robert Griesemer)، «راب پایک» (Rob Pike)، و «کن تامپسون» (Ken Thompson) طراحی شده است. Go یک زبان با نوع استاتیک و کامپایل شونده است. نسخه اول این زبان در تاریخ مارس 2012 به صورت اوپن‌سورس ارائه شده است. Go یک زبان برنامه‌نویسی اوپن‌سورس است که ساخت نرم‌افزار را به کاری ساده، مطمئن و کارآمد تبدیل می‌کند. — مستندات GoLang برای حل یک مسئله مشخص، در زبان‌های متفاوت، روش‌های گوناگونی وجود دارد. برنامه نویسان معمولاً وقت زیادی را صرف یافتن بهترین روش حل یک مسئله می‌کنند. در سوی دیگر Go اعتقادی به این تعدد امکانات ندارد و تنها یک راه برای حل مسئله می‌شناسد. این امر موجب می‌شود که زمان زیادی از برنامه‌نویسان صرفه‌جویی شود و نگهداری کدهای بزرگ ساده‌تر باشد. در زبان Go هیچ ویژگی پرهزینه‌ای مانند map یا filter وجود ندارد. زمانی که یک ویژگی پرهزینه به زبان برنامه‌نویسی اضافه می‌کنید، باید بهای آن را بپردازید. — راب پایک لوگوی جدیداً منتشر شده Go سر ..

توضیحات بیشتر »

ساخت یک اپلیکیشن چند پلتفرمی موبایل با React Native (بخش دوم) — به زبان ساده

در بخش اول این مجموعه مطلب در وبلاگ فرادرس به بررسی روش نوشتن یک اپلیکیشن اندروید و iOS با استفاده از React Native پرداختیم. در آن پروژه از داده‌های ساختگی استفاده کردیم؛ اما در این مقاله قصد داریم برخی زیرساخت‌های مورد نیاز برای ذخیره‌سازی داده‌ها در پایگاه داده از جمله Google Cloud SQL را به اپلیکیشن خود اضافه کنیم. گوگل کلود یک اعتبار 300 دلاری اولیه به صورت دوره آزمایشی رایگان ارائه کرده است و از این رو در این مقاله از آن برای تکمیل اپلیکیشن خود استفاده می‌کنیم. بدین منظور به موارد زیر نیاز داریم: یک پایگاه داده یک API برای Node.js گوگل اس‌کیوال (Google SQL) زمانی که یک حساب گوگل کلود باز کرده و وارد کنسول خود شدید، می‌توانید به روشی کاملاً آسان یک پایگاه داده SQL ایجاد کنید. بدین منظور از منوی سمت چپ گزینه SQL و سپس Create Instance را انتخاب کنید. در ادامه نوع وهله پایگاه داده خود را انتخاب کنید. پیشنهاد ما انتخاب گزینه «development tier» است. در ادامه می‌توانید این گزینه را ارتقا بدهید. رمز عبور root خود را تعیین کرده و باقی موارد را نیز پر کنید. سپس زمانی که مراحل راه‌اندا..

توضیحات بیشتر »

ساخت اپلیکیشن های iOS با استفاده از Xamarin و Visual Studio — صفر تا صد

در این نوشته با روش ساخت ابتدایی یک اپلیکیشن با استفاده از Xamarin و Visual Studio و از طریق نوشتن یک برنامه مشاهده گالری عکس آشنا می‌شویم. توسعه دهنگان هنگام ساخت اپلیکیشن‌های iOS معمولاً تمایل دارند از زبان‌ها و IDE ارائه شده از سوی اپل استفاده کنند که شامل Objective-C / Swift و Xcode می‌شود. با این وجود، این تنها گزینه نیست و می‌توان اپلیکیشن‌های iOS را با استفاده از انواع زبان‌ها و فریمورک‌های دیگر نیز ایجاد کرد. یکی از محبوب‌ترین گزینه‌ها زامارین (Xamarin) است. زامارین یک فریمورک چند پلتفرمی است که امکان توسعه اپلیکیشن‌های iOS، اندروید، OS X و ویندوز را با بهره‌گیری از سی شارپ (#C) و ویژوال استودیو فراهم ساخته است. مزیت اصلی زامارین این است که به فرد امکان اشتراک کد بین اپلیکیشن‌های iOS و اندروید را می‌دهد. زامارین نسبت به فریمورک‌های چند پلتفرمیِ دیگر مزیت‌هایی دارد. با بهره‌گیری از زامارین پروژه‌ها به صورت کد بومی (native) کامپایل می‌شوند و می‌توانند در پس‌زمینه از API-های بومی استفاده کنند. این بدان معنی است که اپلیکیشن‌های زامارین که به خوبی نوشته شده باشند، قابل تمییز از ا..

توضیحات بیشتر »

معماری میکروسرویس چیست؟ — به زبان ساده

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

توضیحات بیشتر »

ساخت بات تلگرام با استفاده از Node.js — راهنمای تصویری

در این مقاله به بررسی روش ساخت یک بات تلگرام با استفاده از Node.js و Ngrok در توزیع محلی می‌پردازیم. شاید از خود بپرسید که چرا باید یک بات در تلگرام بسازیم. پاسخ این است که بات‌ها بسیار مفید هستند و می‌توانند در کاربردهای مختلفی از جمله موارد زیر مورد استفاده قرار گیرند: نظارت اجتماعی سرویس مشتری وظایف خودکارسازی/تسریع شده مدیریت تراکنش‌های پرداخت تلگرام یکی از برترین اپلیکیشن‌ها و پلتفرم‌های موبایل است که امنیت را به همراه رمزنگاری و در یک سیستم کاملاً رایگان، سریع و توزیع یافته ارائه می‌کند. تلگرام همچنین API کاملاً مستندسازی شده ساده و مناسبی دارد. https://telegram.org WhatsApp نیز پلتفرم مشابهی است که می‌توان روی آن کار کرد؛ اما این نوشته به بررسی طراحی بات در تلگرام اختصاص دارد. دریافت مجوز از BotFather اگر به مستندات بات تلگرام نگاه کنیم، متوجه خواهیم شد که‌ تنها یک الزام برای ایجاد بات وجود دارد و آن داشتن یک حساب تلگرام است. تنها راه برای ثبت نام از طریق استفاده از شماره تلفن معتبر است. پیام‌رسان تلگرام برای iOS زمانی که عمل ثبت نام انجام شد، می‌توانید از نسخه وب برای ورود ..

توضیحات بیشتر »

API چیست؟ — به زبان کاملاً ساده

برای افرادی که با توسعه نرم‌افزار آشنایی ندارند، API مفهومی گنگ محسوب می‌شود؛ اما وقتی وارد این حوزه شدید، API به یکی از ابزارهای کاملاً روزمره شما تبدیل می‌شود. در هر حال بسیاری از کسانی که در حوزه‌های مرتبط با فناوری یا غیره مشغول به کار هستند، ایده مبهم یا نادرستی از معنی این اصطلاح پرکاربرد دارند. API ازنظر فنی اختصاری برای عبارت «رابط برنامه‌نویسی اپلیکیشن» (Application Programming Interface) محسوب می‌شود. در برخی موارد شرکت‌های بسیار بزرگ API-هایی برای مشتریان خود و یا کاربردهای داخلی‌شان ساخته‌اند. اما اگر بخواهیم API را به زبان کاملاً ساده توضیح دهیم، معنی بسیار گسترده‌تری از آن چه در حوزه‌های نرم‌افزار یا کسب‌وکار استفاده می‌شود، خواهد داشت. ابتدا کمی به عقب‌تر باز می‌گردیم و به بررسی عملکرد خود وب می‌پردازیم. WWW و سرورهای ریموت زمانی که در مورد وب فکر می‌کنیم، معمولاً یک شبکه بزرگ از سرورهای به هم متصل را در نظر می‌آوریم. هر صفحه روی اینترنت در جایی روی یک سرور ریموت ذخیره شده است. البته این سرور ریموت چیز چندان عجیب و جادویی نیست؛ بلکه بخشی از یک رایانه واقع شده در مکانی..

توضیحات بیشتر »