phonegap چیست؟ چه مزایایی داره ؟ چه معایبی داره؟ cordova چیست؟
PhoneGap یک پلتفرم متن باز برای توسعه اپلیکیشن های موبایل با HTML5 و CSS3و javascript است.
در این پلتفرم شما می توانید رابط گرافیکی اپلیکیشن خود را با استفاده از HTML5 و CSS3 و Jquery Mobile طراحی کنید و برنامه نویسی ها را با Javascript انجام دهید.
یکی از مزیت های این پلتفرم این است که خروجی برای سیستم عامل های مختلف از جمله اندروید، آی او اس، ویندوز فون و سیمبین به شما می دهد در اصطلاح cross platform میباشد.
از مزایای این پلتفرم می توان به قابلیت اجرا و ساخت اپلکیشن با این پلتفرم برای سیستم عامل های زیر اشاره کرد :
Android – Bada – Blackberry – FirefoxOS – iOS – Mac OS X – QT – Tizen – Ubuntu – WebOS – Windows (desktop) – Windows Phone 7 – Windows Phone 8
در حال حاضر Cordova تا نسخه ۳٫۱٫۰ به طور رسمی منتشر شده و در حال پیشرفت خوبی است !‌
خیلی عالیه مگه نه؟؟ 
phonegap
شما تنها کافیست با زبان های تحت وب کلاینت برنامه نویسی کنید و در آن سو این همه app برای پلتفرم و سیستم عامل مورد نظر خودتون تحویل بگیرین !
cordova همان phonegap میباشد.
حتما از خودتون میپرسید phonegap با cordova چه فرقی داره؟؟
phonegap توسط شرکت Nitobi تولید شد و به شرکت adobe فروخته شد و چون adobe میخواست phonegap رو به صورت opensource در اختیار برنامه نویسان بگذارد اون در اختیار شرکت apache قرار داد . از آنجایی که شرکت ادوبی support میفروشد هنوز هم phonegap رو دراختیار خودش دارد ولی cordova که توسط شرکت  apache توسعه پیدا میکند دارای API ها و Plugin های زیادی میباشد پس در حال حاضر cordova قوی تر است.
برای هر دو پلتفرم داکیومنت های خوبی یافت میشود.
مزایا :

 

  • نیاز به دانش زبان های native ندارد
  • توسط تمام پلتفرم ها پشتیبانی میشود
  • توسط api های گوناگون پشتیبانی میشود یا apiهای متفاوتی برای آن موجود میباشد
  • خیلی خوب و باحال هست.
  • با استفاده از مدیا کوئری ها یا bootstrap میتونید برای صفحه نمایش های مختلف

       (UI (dpi, ldpi, hdpi, xdpiطراحی کنید .

  • طراحی گرافیک و ظاهر بسیار راحت هست .

معایب:

  • performance برنامه نسبت به برنامه های native پایین تر است.
  • تمام قابلیت های سیستم عامل هارا پشتیبانی نمیکند(مثلا save کردن contact ها در ios در تمام نسخه ها کار نمیکنه!).
  • طراحی گرافیک باید به صورت انجام شود که مشابه نرم افزار های nativeباشد
  • در آخر اگر میخواهید نرم افزاری طراحی کنید که زیاد سنگین نیست و جنبه ی ظاهری فقط دارد phonegap بهترین گزینه است در غیر اینصورت پیشنهاد نمیشه...

 

نمونه نرم افزارهایی که با phonegap نوشته شده اند: بازی2048نمونه های بیشتر