دنیا داشت روال عادی خودش رو طی میکرد و توسعه دهندگان اپلیکیشن های Native داشتن کارشون رو انجام میدادن که یهو HTML5 اومد تعدادی دیوانه اومدن Phonegap، Appcelerteor، Tirgger.io و AppGyver رو به دنیا معرفی کردن که شما بتونید با دونستن اینا یک اپلیکیشن هیبریدی با HTML5 تولید کنید. اینکه این اتفاق خوب بود یا بد؟ نمیشه نظر داد ولی به نظر من خوب بود. اگر با کلمههای این نوشته آشنا نیستید توی گوگل در مورد اپلیکیشن های Native و Hybrid یه جستجویی بکنید و اطلاعات بیشتری در بدست بیارید. خوب نظرات موافق و مخالف زیادی در این مورد وجود داره.
منظور از اپلیکیشن های هیبریدی اینه که شما میتونید با استفاده از دانش وبتون اپلیکیشنهای موبایل بسازید. بله اپلیکیشنهای موبایل. با استفاده از HTML5 ، CSS3 و جاوااسکریپت شما میتونید اپلیکیشنی برای iOS یا اندروید طراحی و برنامه نویسی کنید. یکی از فریمورکهای معروف و میشه گفت آچار فرانسه این تکنولوژی PhoneGap هست که میتونید در این پست در مورد اون مطالعه کنید. در ضمن این فریمورکها API های خوبی رو ارایه میدن که شما میتونید به سادگی به GPS، دوربین یا چیزای دیگه گوشی کاربر دسترسی داشته باشید و کد بزنید.
قدرت HTML5 بر هیچکس پوشیده نیست. اگر شما قبلا اپلیکیشنهای تحت وب نوشتید کار شما راحته و تقریبا بیشتر راه رو طی کردید و به راحتی میتونید شروع به کار کنید. دیگر لازم نیست که هفتهها وقت خودتون رو صرف یادگرفتین Swift و یا C شیگرایی کنید و بعد شروع به درست کردن اپلیکیشن های iOS کنید یا میتونید همین امروز بعد از خوندن این پست شروع به نوشتن اپلیکیشن هیبریدی خود کنید که روی اندروید هم میتونید اجراش کنید.
البته در نظر داشته باشید که نوشتن اپلیکیشن های Native هم مزیت خودشون رو دارن، از جنبه های مختلف مثل سرعت در بارگزاری، در Transition ها و Stability میشه گفت که اپلیکیشن های Native کارایی بهتری دارن. من در این پست قصد دارم در مورد نکات کلیدی نوشتن اپلیکیشن های هیبریدی توضیح بدم.
۱. از هیچ پلاگین و کتابخانهی سنگینی استفاده نکنید.
در ضورت امکان از jQuery استفاده نکنید. اگر هم مجبور هستید میتونید از ورژنهای خیلی سبک مانند Zepto.js استفاده کنید. جی کوئری Performance اپلیکیشن شما را به شدت پایین میآورد و گزینه ی خوبی نیست.
۲. از HTML5 برای اپلیکیشنهای چند-هدفه و پیچیده استفاده نکنید.
وقتی به اصطلاح این تکنولوژی مد شد فیسبوک برای اولین بار از یک اپلیکشین هیبریدی استفاده کرد و تقریبا میشه گفت با شکست مواجه شد. همونجور که میدونید فیسبوک اپلیکیشن پیچیدهای داره و این باعث میشه اپلیکیشن سنگین بشه و کارایی اون پایین میاد. از این به بعد وقتی داریم از اپلیکیشنهای هیبریدی حرف میزنیم، به اپلیکیشنهای خیلی سادهتر فکر کنید.
۳. View ها را یکجا بارگزاری نکنید.
اگر از متن و گرافیک استفاده میکنید سعی کنید اول متنها رو در اپلیکیشن خود لود کنید و بعد المانها گرافیکی را لود کنید. سرعت و کارایی اپلیکیشن به شدت افزایش پیدا میکنه.
۴. از اپلیکیشن های هیبریدی برای اپلیکیشن هایی با گرافیک بالا استفاده نکنید.
به عنوان مثال برای تولید گیم های تعاملی و …
۵. سطح انتظاراتتون رو یکم پایین بیارید.
حتمن شنیدید که میگن یه بار بنویس و روی همه چی اجراش کن، این درسته ولی به شدت سخته. پس باید حوصله به خرج بدید و فایلهای استایلتون رو بالا پایین کنید و تا اپلیکیشن شما روی اندروید و iOS اجرا کنید.
۶.برای اپلیکیشنهایی که اطلاعات محور هستند از فریمورک هایی مانند Angularjs استفاده کنید
AngularJS اختصارا یکی از بهترین کتابخانهها برای استفاده در اپلیکیشن های هیبریدی است چرا که از کتابخانههای حجیمی مانند jQuery استفاده نمیکنه. ضمنا App.js هم یک فریمورک سبک مختص اپلیکیشنهای هیبریدی است
۷.از کتابخانه های UI هم استفاده کنید
میتوانید از کتابخانه ionic استفاده کنید چون با Angularjs سازگار است و از Transitionهایی استفاده میکند که حس اپلیکیشن های Native را به شما میده
۸.سعی کنید فایل های خود را minify کنید.
شما میتوانید با استفاده از JScompress برای کاهش حجم فایل جاوااسکریپت، از CSSMinifier برای CSS و از سرویس Will Peavy به نام Html Minifier برای کاهش حجم و Minify کردن فایل ها استفاده کنید که کارایی و سرعت اپلیکیشن شما را به طرز چشم گیری افزایش پیدا بکنه.
۹. المان های گرافیکی خود را بهینه کنید.
سرویس های زیادی وجود دارد که میتوانید تصاویر PNG خود را بهینه کنید و حجم آنرا کم کنید برای مثال میتوانید از Tinypng استفاده کنید.
خوب مزیت های اپلیکیشن Native بر هیچکس پوشیده نیست ولی اپلیکیشن های هیبریدی راه طولانی را طی کردهاند. اگر تجربهی ساخت همچین اپلیکیشنی را داشتهاید به دنیای جدیدی پا نهادهاید و ما برای شما خوشحالیم، اگر چنین تجربه ای را ندارید پیشنهاد میکنیم حتمن امتحان کنید و یک اپلیکیشن هیبریدی بسازید.
jQuery یک فرمورک برای موبایل داره که بهینه شده است
کتاب خانه هایی هم برای بهینه سازی و افزایش سرعت تاچ و از بین بردن زمان مکث وجود داره که تا حدودی مکث ها رو کاهش…
فکر کنم واسه افزایش سرعت fast touch گزینه خوبیه !!!
بنیامین جان هر چقدر هم در مورد مزیت و معایب این دو نوع حرف بزنیم باز جا هست ولی من خودم به شدت مخالف اپلیکیشن های هیبریدی هستم چون فکر کنم هنوز یک سال زمان میخواد تا کاملا جا بیوفته و پرفرومنس اپلیکیشن های Native رو نداره.
من خودم مخالف نتیو رو بیشتر قبول دارم :)))
اینا رو گفتم که راهنمایی بشه واسه دوستانی که میخوان کار کنن :))
خودم با فون گپ که کار کردم رو اندروید خیلی لگ داشت ولی ای او اس امیدی بهش بود 🙂
با توجه به اینکه معمولا فایل های Vendor در اپلیکیشن های هیبریدی در داخل فایل ها قرار می گیره بنابراین موضوع کاهش حجم تصاویر و فایل های جاوااسکریپت و… خیلی مطرح نیست… اون ها بیشتر روی وب اپلیکیشن ها خیلی اهمیت دارند.
همچنین درسته که حجم jquery از zepto بیشتر هست اما کارائی و سرعت اجرای جی کوئری بهتر از زپتو نشون داده.
در مجموع بزرگترین مشکل وب اپلیکیشن ها و هیبریدها همین مشکل سرعت پایین اجرا و محدودیت های دسترسی به API سیستم عامل هست
[…] اپلیکشین هیبریدی چیه؟! اینجا […]
بله البته با این وضعیت دانشگاهها منم متنفرم
من با جیکویری موبایل یکی نوشتم
مرسی از مطلب مفیدتون
سلام
اگر از جی کویری موبایل استفاده کنیم چه؟
آیا جی کویری موبایل هم کارایی خوبی نداره؟