cordova چیست ؟

اردیبهشت 23, 1396     بشیر صالحی    

در این مقاله می خوایم در مورد cordova صحبت کنیم و ببینیم که چجوری میشه ازش استفاده کرد، همچنین بعد ازمعرفی اون  در مورد مزایا و معایبش صحبت کنیم . اما قبل از این که به موضوع مقاله یعنی ” cordova چیست ” بپردازیم ، باید شما با چند اصطلاح آشنا باشید . اولین اصطلاحی که ما باهاش مواجه ایم عبارت cross platform یا چند سکویی هست که ما درقسمت ابتدایی مقاله توضیحات زامارین ، بهش اشاره کردیم . ( به طور خلاصه برنامه های چند سکویی یا cross platform برنامه هایی هستن که برای اجرا، محدود به یک پلتفرم خاص نیستن و قابلیت اجرا در چند پلتفرم یا همون سیستم عامل مختلف رو دارن)

حتما با عبارت open source  ( متن باز ) هم آشنا هستید، پروژه های متن باز پروژه هایی هستند که دسترسی عموم به منبع پروژه آزاد هست. ( عموما  منظور از منبع پروژه همون کد های سازنده ی محصول هست)

عبارت بعدی که باید با اون آشنا باشید فون گپ (phone gap) هستش ، در واقع همه چیز از فون گپ شروع شد !!

در سال 2009 ، phone gap  به‌واسطه‌ی استارت آپی به نام Nitobi با هدف ایجاد یک راه حل برای  ساخت اپلیکیشن‌های موبایل با تکنولوژی‌های تحت وب شروع به کار کرد و چند سال بعد یعنی در حوالی سال 2011 ، پیشرفت های این استارتاپ  باعث شد که شرکت Adobe ، برای خرید این استارتاپ به همراه حق مالکیت phone gap اقدام کنه .هدف phone gap این بود که با استفاده از کد های HTML , CSS , JavaScript یا همون برنامه نویسی تحت وب بتونیم اپلیکیشن های موبایل تولید کنیم. البته این ایده کامل تر شد و محیط کراس پلتفرمی شکل گرفت که با کد نویسی وب می تونستیم خروجی  رو روی سیستم عامل های مختلفی اجرا کنیم.

نحوه کار کوردوا

بعد از اجرای phone gap شرکت adobe تصمیم گرفت این پروژه رو به صورت  open source ادامه بده و مراحل کار رو به یکی از غول های حامی محصولات متن باز یعنی شرکت Apache بسپره.

شرکت آپاچی هم  بعد از تغییراتی که در هسته برنامه ایجاد کرد محصول open source خودش رو با اسم جدیدی به بازار عرضه کرد این اسم چیزی نبود جز Apache Cordova .

هدف خالقان Cordova یافتن یک راه ساده برای تولید اپلیکیشن‌های چند سکویی موبایل بود که برای رسیدن به این هدف تصمیم گرفتند از تکنولوژی‌های بومی (native) و تکنولوژی‌های وب استفاده کنند.( به این نوع از اپلیکیشن‌های موبایل، Hybrid Application می‌گن)

به عبارت خلاصه ترشما با  کد نویسی وب در cordova  می تونید برای  سیستم عامل های مختلفی خروجی تولید کنید.

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

بعضی این سیستم عامل عبارتند از:

Android , IOS , Blackberry

   Tizen ,Ubuntu ,WebOS

Windows (desktop) ,Windows Phone 7 ,Windows Phone 8

 Symbian , FirefoxOS , Bada ,Mac OS X ,Qt

 

در حال حاضر فرم ورک های مختلفی برپایه cordova ساخته شده اند که عبارتند از :

Ionic  و Monaca و TACO  و Intel XDK  و Telerik Platform

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

 

در ضمن شرکت های Adobe, BlackBerry, Google, IBM, Intel, Microsoft  و Mozilla در پروژه cordova با آپاچی همکاری میکنن

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

 

 مزایای استفاده از Cordova:

  • محیط برنامه نویسی قدرتمند
  • هسته اصلی  کد‌های همه اپلیکیشن‌ها  تولید شده شبیه به هم است
  • نیازی به یادگیری زبان‌های مربوط به هر پلتفرم را ندارید
  • کم هزینه و زمان کمتر
  • طراحی رابط گرافیکی سریع و منعطف به کمک HTML5 , CSS3
  • برنامه نویسی آسان و سریع با javascript , Typescript
  • قابلیت اجرا بر روی چندین پلتفرم مختلف(Android,iOS,Widnows Phone )
  • قابلیت استفاده از فریم‌ورکهای تحت وب مانند Bootstrap , Angular JS, …
  • قابلیت طراحی پلاگین برای ارتباط با سیستم عامل
  • مناسب برای برای برنامه‌های چت و استفاد از وب سرویس‌ها
  • مناسب برای ساخت بازیهای آنلاین و آفلاین با تکنولوژی‌های تحت وب
  • راحتی کار با آن برای برنامه نویسان تحت وب

 

معایب  استفاده از Cordova  :

  • نداشتن ابزار گزارش خطاهای مناسب؛ درنتیجه برطرف کردن خطاها خسته کننده خواهد بود .
  • UI, UX اپلیکیشن‌ها باید به نحوی باشد که کاربر حس کند با نرم‌افزارهای بومی گوشی کار می‌کند.
  • کاهش سرعت اجرایی نسبت به برنامه‌های native (به دلیل استفاده از WebView)
  • عدم دسترسی مستقیم به سیستم عامل و امکانات آن
  • مستندات فنی کمتری نسبت به برنامه های بومی برای آن موجود است.

 

جمع بندی

 

به صورت خلاصه cordova پلتفرم  متن بازی هست  که به صورت  چند سکویی عرضه شده و به شما این امکان رو میده  که با استفاده از زبان های تحت وب مثل html و css برنامه های مختلفی رو برای سیستم عامل های مختلف مثل اندروید ، آی او اس ، ویندوزفون و … تولید کنید.

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

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

 

به زودی آموزش های  ویدئویی cordova در سایت قرار میگیرد.

 

 

دسته‌بندی‌ : آموزش برنامه نویسی

3 thoughts on “cordova چیست ؟”

  1. یه برنامه نویس تازه کار

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

    به کارِتون همینطور با شدت و قوت ادامه بدید…

  2. ali

    سلام و وقت بخیر..
    نوضیحات به جا و مفیدی بود..
    فقط برای آشنایی بیشترو کاربردی تر بودن استفاده از cordova آموزش های شما که آماده میشه تا بتونیم اسفاده لازم را ببریم..
    ممنون

  3. وحید

    با سلام – بنده به ندرت نظر میدم ولی انصافا آموزش مختصر و مفیدی بود

    سپاس از سایت خوبتون

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Rating*