سلام دوستای خوبم ، دانیال هستم ، توسعه دهنده وب ، امروز میخوام راجب Api ها صحبت کنم ، امروز یاد میگیریم Api چیه و چه مزایایی داره و چرا انقد مهمه ، توی این مسیر کلی مثال میزنم برات تا کاملا جا بیفته برات موضوع ، با من همراه باش .
داستان Api از کجا شروع شد ؟
قبلا که خبری از Api ها نبود ، هر برنامه ای داده های مربوط به خودش داشت ، ینی هیچ برنامه ای ، از داده های برنامه دیگه استفاده نمیکرد ، مثلا اگه میخواستی یه برنامه هواشناسی بنویسی ، باید اطلاعات مربوط به آب و هوای مناطق مختلف ، خودت یه جوری توی دیتابیست ذخیره میکردی ، به خاطر همین اپلیکیشن ها خیلی خیلی ، محدود بودند و یه جورایی این موضوع جلوی ساخت برنامه های کاربردی گرفته بود ، داده ها دست ارگان ها و شرکت های بزرگ بود و توسعه دهندگان نمیتونستند از این داده های ارزشمند استفاده کنند .
مثال میزنم برات ، مثلا توی بورس خودمون ، داده های بورسی ، مثل قیمت ها ، نمودار ها ، خبر ها و سایر موارد ، دست سازمان بورس کشور بود ، و دیگه خبری از اپلیکیشن های کارگزاری مثل آگاه و مفید نبود .
خب حالا اگه کسی میخواست با استفاده از این داده ها نرم افزار هایی بسازه ، مثلا همین نرم افزار های آگاه و مفید ، یا سامانه های بررسی سهم های مختلف ، نمیتونست این کار انجام بده ، چون داده ای نداشت .
این موضوع باعث شده بود دست توسعه دهنده ها بسته بشه و حتی ارگان های بزرگ اپل و مثلا هواشناسی آمریکا ، نتونند از اطلاعات هم دیگه استفاده کنند و برنامه های کاربردی تری بسازند ، چون اصولا داده نداشتند .
مثلا همین نرم افزار آب و هوای رو گوشی های اپل ، فک میکنی چطوری نوشته شده ، خب یه سازمانی این اطلاعات به شکل ساختارمند به اپل داده و گرنه خود اپل که نرفته دماسنج بگیره دستش ، یا مثلا کارشناس آب و هوا داشته باشه ، حالا اگر این اطلاعات توسط این سازمان هواشناسی به اپل داده نمیشد ، ما هم نمیتونستیم بفهمیم هوا الان فلان جا چطوری .
خلاصه اینجوری شد که احساس نیاز گسترده به یه رابط شد تا بتونیم از اطلاعات و دیتاهای مختلف در برنامه های خودمون استفاده کنیم و بتونیم برنامه های خیلی پویا تر و قوی تری بنویسیم ، سریع تر کد زنی کنیم ، استاندارد کد زنی کنیم و کلی مزیت دیگه که بهشون اشاره میکنیم در ادامه .
مفهوم API با چند مثال کاربردی :
فرض کن رفتی رستوران و الان میخوایی سفارش بدی ، حالا اون آقای گارسون ، میاد میگه چی میخواهی برایت بیارم ای مشتری عزیز !!
تو هم لیست غذا ها و قیمتشون میبینی ، میگی من زرشک پلو با مرغ سوخاری میخوام ، این خانمه هم مثلا عدس پلو میخواد با سالاد شیرازی .
گارسونه میگه به روی چشم ، میره اشپزخونه و بعد از ۱۵ دقیقه ، با دوتا غذای خوشمزه برمیگرده ، شما هم غذا میخورید و لذتشو میبرید .
حالا این وسط ، این آقای گارسون ما میشه همون Api چون یه رابط بین شما و غذاهاتون بود ، اگه آقای گارسون نبود ، شما باید خودتون میرفتید آشپزخونه و خودتون غذای خودتون آماده میکردید و میخوردید .
حالا یه مثال میخوام بزنم ، که بیشتر حالت برنامه نویسی داشته باشه .
فرض کن میخوایی بری آلمان ، خب طبیعتا ، باید اول بلیط بگیری ، خب راه منطقیش اینه که وارد سایت های فروش بلیط ، مثل علی بابا یا فلایتو بشی ، ساعت و زمان انتخاب کنی و بلیط خودتو به شکل آنلاین بگیری .
حالا به نظرتون ، این سایت ها از کجا میدونن که چه هواپیمایی ، کی پرواز داره و مقصدش کجاست ، چقدر جا داره و قیمت بلیط چنده ؟
خب هر هواپیمایی ، متعلق به یه شرکت هواپیمایی ، و همه اطلاعاتی که گفتم ، توی دیتابیس های اون شرکت ثبت میشه ، حالا یه شرکت ، یا سازمانی میاد ، دیتابیس همه این شرکت های هواپیمایی جمع میکنه و یه Api شسته رفته و خیلی تمیز ، تحویل این سایت های معروف خرید و فروش بلیط میده .
اینجوری ، دیگه نیاز نیست ، برای خرید بلیط بریم فرودگاه ، میتونیم فیلتر هایی که میخواییم مثل بازه قیمتی ، زمان پرواز وغیره ، خیلی سریع و در هر لحظه ممکن ، اعمال کنیم بدون این که از کسی سوالی بپرسیم .
اینجوری ، کارا خیلی سریع تر و بهینه تر جلو میره ، و هم مشتری راضی هم شرکت های هواپیمایی میتونن مشتری های بیشتری پیدا کنند وبارو از روی کارمندانشون بردارند .
پس فهمیدیم که کار Api دقیقا چیه و چقدر میتونه مفید باشه .
حالا اگه بخواییم یه توضیح شسته رفته خوب برا api بگیم ، اینحوری باید بگیم که :
ای پی ای یه رابطه ، و با استفاده از اون ، میتونیم از اطلاعات سایر برنامه ها ، استفاده کنیم ، در واقع هر وقت ما بخواییم ، از اطلاعات سایر برنامه ها ، توی برنامه خودمون ، استفاده کنیم ، باید از Api ها استفاده کنیم و از اون برنامه Api بگیریم ، مثل این تلگرام های غیر رسمی ، مثل این جی بی واتس آپ و هزاران برنامه دیگه که با استفاده از api ها کار میکنند .
و هر وقت بخواییم اطلاعات و دیتا های برناممون ، به بقیه یا حتی نسخه های اندروید و آی او اس خودمون بدیم ، باید با استفاده از Api این کار انجام بدیم و برای برناممون Api بنویسیم .
شناخته شده های Api
میخوام شمارو با چند تا از شناخته شده ترین Api ها آشنا کنم تا بیشتر متوجه کاربرد api ها در زندگی خودمون بشیم و بفهمی چقدر مهمه این آقای api .
گوگل مپ :
گوگل مپ مغز متفکر این نرم افزار های مسیریابی ، مثل ویز یا در نسخه های ایرانی ، نشان و از این جور چیزا ، اطلاعات ترافیکی ، خیلی دقیق در اختیار توسعه دهنده میزاره ، حالا دیگه این که توسعه دهنده چطور بخواد ازش استفاده کنه بستگی به خودش داره
انواع بانک ها :
این نرم افزار هایی مثل همراه بانک و بام و پیام رسان بله و ... همشون از api استفاده میکنند تا اطلاعات از شما بگیرند .
سازمان های بورسی :
اطلاعات مربوط به سهام ها ، توسط این سازمان ها به صرافی ها داده میشه ، و ما بدون حضور در کارگزاری ها میتونیم توی این صرافی ها خرید و فروش کنیم ، سهام هامون تحلیل کنیم و ....
شرکت های هواپیمایی :
شرکت های هواپیمایی ، اطلاعات خودشون در اختیار ، نرم افزار های مانند علی بابا و ... میدن ، تا ما بتونیم از هر جایی ، هر وقت دلمون خواست بتونیم بلیط هواپیما تهیه کنیم
حرف آخر :
حضور api ها در سراسر زندگی ما احساس میشه و به نظر من بعد از اختراع چرخ ، این دومین چیزی بود که به بشریت برای راحتی بیشتر کمک کرد ، زندگی بدون Api ها خیلی سخت و طاقت فرسا میشه ، پس قدرشو بدونیم ، بسیاری از api ها مجانی هستند ، ولی بعضی از اون ها هم قیمت های بالایی دارند ، که بر اساس کار هایی که میخوایید با برنامتون انجام بدید میتونید سطح api خودتون انتخاب کنید .
خیییلی ممنونم مه توی این چند دقیقه با من بودی ، لطفا اگه این مطلب برات مفید بود و فک میکنی برا بقیه هم میتونه مفید باشه به اشتراک بزازش ، با تشکر ، فعلا تا موضوع بدی ، خدا نگهدار . .
راستی میتونی اینستام هم فالو کنی همین موضوع به صورت پادکست گذاشتم برات (@danial_Sanaee):