با آپاچی کوردوا آشنا شوید
فون گپ (PhoneGap) ایده جالب و کاربردی از شرکت ادوبی بود که هدف از آن ساخت نرمافزارهای موبایل با استفاده از کدزنی با زبانهای ( ( HTML, CSS, JavaScript یا همان برنامهنویسی تحت وب بوده است. اما ازآنجاییکه ادوبی تصمیم داشت این پروژه بهصورت (open source) در اختیار برنامه نویسان و طراحان قرار بگیرد
آیا با آپاچی کوردوا برای طراحی اپلیکیشن آشنا هستید ؟
تصمیم میگیرد مراحل پیادهسازی این پروژه را به یکی از غولهای شرکت حامی محصولات متنباز واگذار کند و چه شرکتی بهتر از (Apache)
و شرکت آپاچی این پروژه را با نام (Cordova) آغاز کرد. کوردوا نام خیابانی است که تیمی که این پلتفرم را میساختند در کشور کانادا در آن ساکن بودند.
آپاچی کوردوا پلتفرمی برای ساخت موبایل اپلیکیشن های (Native) با استفاده از (HTML, CSS, JavaScript ) می باشد.
در سال (2009) ، (phone gap) بهواسطهی استارت آپی به نام ( (Nitobi با هدف ایجاد یک راه حل برای ساخت اپلیکیشنهای موبایل با تکنولوژیهای تحت وب شروع به کار کرد و چند سال بعد یعنی در حوالی سال (2011) ، پیشرفت های این استارتاپ باعث شد که شرکت (Adobe) ، برای خرید این استارتاپ به همراه حق مالکیت (phone gap) اقدام کنه .هدف phone gap)) این بود که با استفاده از کد های(,HTML (CSS , JavaScript یا همون برنامه نویسی تحت وب بتونیم اپلیکیشن های موبایل تولید کنیم. البته این ایده کامل تر شد و محیط کراس پلتفرمی شکل گرفت که با کد نویسی وب می تونستیم خروجی رو روی سیستم عامل های مختلفی اجرا کنیم.
شما که طراح وب سایت هستید بهترین گزینه برای شروع اپلیکشن نویسی مباشد که وقت خود را صرف یادگیری جاوا، (Obective-C) و غیره نکنید
کوردوا برای پلتفرم های (iOS ) ، آندروید، بلک بری، ویندوز فون، ( (Palm WebOS، (Bada) و (Symbian) موجود می باشد.
ادامه این مطلب را در وب سایت راژور قسمت مقالات طراحی سایت دنبال کنید
وقتی که از API های Apache Cordova استفاده می کنیم، می توانیم اپلیکیشن را بدون استفاده از کد های Native که برنامه نویس اپلیکیشن به کار برده است (مانند جاوا، Obective-C و غیره) ساخته شود. در عوض، از تکنولوژی های وب برای ساخت اپلیکیشن استفاده شده و به جای قرار گرفتن بر روی یک ریموت http سرور، این تکنولوژی ها در خود اپلیکیشن تعبیه می شوند.
به دلیل این که این API های جاوا اسکریپت با پلتفرم های مختلف در دستگاه های مختلف سازگاری دارند و مطابق با استاندارد های وب ساخته می شوند، لذا اپلیکیشن باید با حداقل تغییرات یا حتی بدون هیچ تغییری قابل انتقال به پلتفرم های دیگر در هر دستگاهی باشد.
اپلیکیشن هایی که از Apache Cordova استفاده می کنند هنوز به عنوان اپلیکیشن هایی که از SDK پلتفرم استفاده می کنند، بسته بندی می شوند و می توان از اپ استور های هر دستگاهی آن را تهیه و نصب کرد.
فریم ورک کوردوا مجموعه ای از کتابخانه های جاوا اسکریپتی یکپارچه ای ارائه می دهد که می توان با استفاده از کد های Native مخصوص هر دستگاه به آنها دست یافت.
مزایای استفاده از Cordova
محیط برنامه نویسی قدرتمند
هسته اصلی کدهای همه اپلیکیشنها تولید شده شبیه به هم است
نیازی به یادگیری زبانهای مربوط به هر پلتفرم را ندارید
کم هزینه و زمان کمتر
طراحی رابط گرافیکی سریع و منعطف به کمک HTML5 , CSS3
برنامه نویسی آسان و سریع با javascript , Typescript
قابلیت اجرا بر روی چندین پلتفرم مختلف(Android,iOS,Widnows Phone )
قابلیت استفاده از فریمورکهای تحت وب مانند Bootstrap , Angular JS, …
قابلیت طراحی پلاگین برای ارتباط با سیستم عامل
مناسب برای برای برنامههای چت و استفاد از وب سرویسها
مناسب برای ساخت بازیهای آنلاین و آفلاین با تکنولوژیهای تحت وب
راحتی کار با آن برای برنامه نویسان تحت وب
معایب استفاده از Cordova
نداشتن ابزار گزارش خطاهای مناسب؛ درنتیجه برطرف کردن خطاها خسته کننده خواهد بود .
UI, UX اپلیکیشنها باید به نحوی باشد که کاربر حس کند با نرمافزارهای بومی گوشی کار میکند.
کاهش سرعت اجرایی نسبت به برنامههای native (به دلیل استفاده از WebView)
عدم دسترسی مستقیم به سیستم عامل و امکانات آن
مستندات فنی کمتری نسبت به برنامه های بومی برای آن موجود است.
جمع بندی
به صورت خلاصه cordova پلتفرم متن بازی هست که به صورت چند سکویی عرضه شده و به شما این امکان رو میده که با استفاده از زبان های تحت وب مثل html و css برنامه های مختلفی رو برای سیستم عامل های مختلف مثل اندروید ، آی او اس ، ویندوزفون و … تولید کنید.
این پلتفرم هم مثل هر پلتفرم دیگه ای طرفدارها و مخالف ها ی خاص خودش رو داره ، در کل مهمترین مزیت کراس پلتفرم ها بالا بردن سرعت کار هست.
در مقاله های بعدی بیشتر راجع به فرم ورک های کوردوا و ساز و کار پشت صحنه عملکرد اون با هم صحبت می کنیم. و همچنین سعی میکنم مقایسه بین عمکرد کوردوا و سایر کراس پلتفرم ها رو براتون توضیح بدم.
یک دیدگاه ارسال کنید