راهنمای 7 دقیقه ای برای توسعه برنامه Cross Platform

در ابتدا در http://www.appsterhq.com/ منتشر شد

برنامه های متقابل: بله ، یا نه؟ این سوالی است که ما اغلب در اپستر ارزیابی می کنیم.

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

از این گذشته ، تصمیم گیری پیچیده است.

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

در زیر ، من به چه مفهومی برای توسعه سطح مقدماتی شیرجه می زنم و جوانب و منافع آن را توضیح می دهم.

در مرحله بعد ، من در مورد پنج سؤال توضیح خواهم داد كه به شما كمك می كنند ارزیابی كنید كه آیا برنامه های كامپیوتر برای تجارت شما معنی دارند.

توسعه موبایل cross-platform چیست؟

توسعه موبایل cross-platform به توسعه برنامه هایی اطلاق می شود که می توان در چندین سیستم عامل موبایل مانند Android و iOS از آنها استفاده کرد.

با استفاده از نرم افزار cross-platform ، یک منبع منبع برنامه به صورت بومی برای سیستم عامل های مختلف وارد می شود. این با توسعه برنامه بومی متفاوت است ، جایی که / از طریق آن یک برنامه برای یک بستر خاص ایجاد شده است.

مزایای توسعه برنامه تلفن همراه cross-platform

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

این روش یک پایه کد ایجاد می کند ، بنابراین پیچیدگی لازم برای مدیریت چندین پایگاه داده کد ، ابزارهای برنامه نویس ، زبانها و متدولوژی هایی که توسعه برنامه بومی به آن نیاز دارد را کاهش می دهد.

احتمالاً به نیروی انسانی کمتری نیز نیاز خواهید داشت ، یا می توانید در یک بازه زمانی کوتاه با همان تعداد توسعه دهندگان برنامه منتشر کنید.

علاوه بر این ، با انتخاب ابزارهای مناسب و ترسیم یک استراتژی کامل برای توسعه ، می توانید از 75 درصد از مبنای اصلی کد استفاده مجدد کنید و از این طریق زمان لازم برای توسعه برنامه خود را کاهش دهید.

2. قرار گرفتن در معرض پایگاه کاربر بزرگتر

در دسترس بودن در چندین سیستم عامل تلفن همراه ، تضمین نمی کند که با عدم ارائه خدمات به تمام سیستم عامل ها ، یک پایگاه کاربر قابل توجه را بیگانه نکنید.

3. بر روی مزایایی که هر ابزار کراس پلتفرمی ایجاد می کند ضربه بزنید

زامارین:

توسعه دهندگان می توانند از مجموعه ابزارهای بومی UI برای ایجاد برنامه ای استفاده کنند که یک رابط آشنا را ارائه می دهد و "احساس صحیح" را برای کاربران ایجاد می کند.

  • مطابقت خوب برای شرکتهای بزرگ:

از آنجا که Xamarin از C # همراه با چارچوب دات نت استفاده می کند ، برای شرکتهای بزرگی که از ابزارهای مایکروسافت استفاده می کنند یا در حال حاضر تیمی از توسعه دهندگان C # یا .NET استفاده می کنند ، مطابقت خوبی دارد.

React Native:

React Native از JavaScript ، یکی از محبوب ترین زبان های برنامه نویسی استفاده می کند. این امر وقتی استخدام برنامه نویسان با مجموعه مهارتهای مورد نیاز خود را آسانتر می کند.

آیا می خواهید در یک برنامه موجود تغییراتی ایجاد کنید؟ بدون نیاز به بازنویسی ، می توانید اجزای React Native UI را روی کد اعمال کنید. اگر برنامه شما با استفاده از چارچوب هایی مانند Cordova یا Ionic ساخته شده است ، کد را می توانید به راحتی با یک افزونه استفاده مجدد کنید.

معایب توسعه برنامه تلفن همراه cross-platform

1. مشکلات رابط کاربری

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

اپل به دلیل داشتن دستورالعملهای دقیق شناخته شده است ، بنابراین توسعه دهندگان خطر دارند که برنامه های خود را هنگام ارسال برنامه خود به فروشگاه App رد کنند. و در حالی که ابزارهای خاص به توسعه دهندگان این امکان را می دهد تا کد رابط کاربری را به طور خاص برای هر پلتفرم بنویسند ، زمان لازم برای انجام این فرآیند می تواند مزایای صرفه جویی در وقت را که ابزارهای cross-platform ارائه می دهند از بین ببرد.

2. از لحاظ اجرای ویژگی های جدید عقب مانده است

یک ابزار cross-platform ممکن است شما را از اجرای جدیدترین نسخه های iOS یا Android جلوگیری کند ، زیرا ابزارهای شخص ثالث قادر به ارائه پشتیبانی فوری نیستند. قبل از اجرای افزونه های جدید یا تغییرات جدید ، زمان تاخیر رخ خواهد داد.

3. مقابله با مضراتی که هر ابزار متقاطع ایجاد می کند

زامارین:

بسته به عملکرد و سطح پیچیدگی آن ، برنامه های Xamarin به طور کلی بزرگتر از برنامه های بومی هستند. یک مثال برای توضیح تفاوت در اینجا وجود دارد: در یک موضوع انجمن Xamarin ، توسعه دهنده VinirShah به اشتراک گذاشت که یک برنامه Xamarin که توسط تیم وی کدگذاری شده است 3 مگابایت را اشغال کرده است ، در حالی که یک برنامه مشابه که در Objective-C نوشته شده است فقط 172 KB است. به همین ترتیب ، برنامه های Xamarin برای حفظ اندازه مناسب پرونده ، به بهینه سازی بیشتری نیاز دارند.

جامعه توسعه دهندگان Xamarin در مقایسه با توسعه دهندگان iOS یا Android به طور قابل توجهی کوچکتر است ، بنابراین ممکن است هنگام استخدام توسعه دهندگان با تجربه ، چالش برانگیز تر ببینید.

React Native:

اکوسیستم جوان React Native به این معنی است که این ابزار دائماً در حال تکامل است و به روزرسانی های کتابخانه تقریباً در هر ماه منتشر می شود. اگرچه این بدان معناست که کاربران در حال بدست آوردن ابزارهای اضافی هستند ، آنها همچنین باید برای مطالعه اسناد و مدارک وقت و تلاش خود را برای اطمینان از عملکرد این ابزارها با API های قبلی ایجاد کنند.

در بعضی موارد ، کمبود مؤلفه های سفارشی ممکن است به معنای آن باشد که توسعه دهندگان باید راه حل خود را از زمین به بالا بسازند. این مشکلی بود که تیم Netguru با آن روبرو شد - آنها در کار با سایه ها در برنامه React Native مشکلی داشتند زیرا کتابخانه سفارشی فقط در نسخه بتا موجود بود. در نتیجه ، آنها مجبور بودند ماژول مورد نیاز را به تنهایی بسازند.

آیا تجارت من به یک برنامه cross-platform نیاز دارد؟

در اینجا پنج سؤال وجود دارد که به شما کمک می کند تصمیم بگیرید برنامه های کراس پلتفرم مناسب برای نیازهای شما هستند:

1. جدول زمانی من چیست؟

اولین قدم که باید بردارید این است که از جدول زمانی توسعه برنامه خود استفاده کنید. اگر قصد دارید نسخه های iOS و Android یک برنامه را منتشر کنید ، ابتدا کدام را اجرا می کنید؟ و چقدر زمان دارید تا نسخه دیگری را منتشر نکنید؟

هنگامی که جدول زمانی خود را نقشه برداری کردید ، تصور واضح تری خواهید داشت که کدام روش بهتر پاسخگوی نیاز شما خواهد بود.

به عنوان مثال ، اگر شما نیاز دارید که یک برنامه iOS را در یک مهلت محدود منتشر کنید و قصد دارید نسخه آندروید را در مرحله بعدی راه اندازی کنید ، توسعه برنامه بومی ممکن است گزینه مناسب تری باشد. Swift ، زبان برنامه نویسی که توسط اپل ساخته شده است یکی از جدیدترین زبان های برنامه نویسی است و به گونه ای طراحی شده است که کاربرد آن آسان است. توسعه دهندگان می توانند با نوشتن کد ، آنچه ایجاد می کنند را ببینند و این زبان شامل واژگان و عبارات متداول مانند "اضافه کردن" و "حذف" است. به همین ترتیب ، پیشرفت در آن بسیار سریعتر است.

در یک سناریوی معکوس - در جایی که باید نسخه اندرویدی را در مدت زمان کوتاهی راه اندازی کنید - توسعه کراس پلتفرم ممکن است گزینه بهتری باشد. به این دلیل که جاوا ، زبان پیش فرض توسعه Android بسیار پیچیده تر است و ممکن است مشکلات بیشتری را به وجود آورد.

2. بودجه من چقدر است؟

هنگامی که بین سیستم عامل ها تصمیم می گیرید ، باید فراتر از هزینه های فعلی پروژه باشید و در عوض ، کل هزینه را با گذشت زمان ارزیابی کنید.

اگرچه توسعه کراس پلتفرم معمولاً ارزانتر است ، اما ممکن است به تدریج هزینه های اضافی را متحمل شود. با توجه به اینکه چارچوب های کراس پلتفرم جدیدتر هستند ، استخدام یا جمع کردن تیمی از توسعه دهندگان با تجربه ممکن است گرانتر باشد یا مدت زمان بیشتری طول بکشد. از طرف دیگر ، استخدام توسعه دهندگان Java یا Swift نسبتاً ساده تر است.

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

3. مجموعه ویژگی ها و دامنه کاربرد مورد نظر چیست؟

اگر در اطراف برنامه تلفن همراه خود شغلی ایجاد می کنید یا قصد پیاده سازی ویژگی های پیچیده یا انیمیشن ها را دارید ، رفتن به صورت بومی برنده واضح است. برنامه های بومی ادغام سریع ویژگی های جدید ، امکان دسترسی کامل به خدمات و ویژگی های دستگاه ، نظارت خودکار بر عملکرد برنامه و عملکرد بهتر با انیمیشن ها و رندرها را دارند.

شرکتهایی که بومی شده اند و سعی در بهبود عملکرد برنامه خود دارند شامل Facebook و LinkedIn هستند. فیس بوک با مشکلاتی از قبیل عدم پیمایش صاف ، تأخیر در بارگذاری تصویر و شکسته شدن AppCache روبرو شد ، در حالی که LinkedIn می خواست مشکلاتی از قبیل کمبود فضای حافظه برای کاربران ، عدم وجود دیباگر و ابزارهای عملکرد و همچنین مشکلات عملکرد انیمیشن را برطرف کند.

اما اگر یک اپلیکیشن ساده که نیاز به سفارشی سازی کمی دارد ، لایحه را در نظر بگیرید؟ در این حالت ، انتخاب برای توسعه کراس پلتفرم شروع خوبی است. برخی از نمونه ها شامل برنامه لیست کارها Tasky ، برنامه تلفن همراه بانکداری مصرف کننده Burgan Bank و ابزار مدیریت هزینه Captio است.

4- مخاطب هدف من کیست و آنها در کجا قرار دارند؟

اگر کاربران را در چندین سیستم عامل و دستگاه های مختلف هدف قرار می دهید ، یک برنامه کراس پلتفرم بهترین گزینه است.

این مورد برای شرکت حمل و نقل بین المللی اکسپرس MRW بود. با بیش از 10،000 کارمند بیش از 1300 حق رای دادن ، این سازمان برای تسهیل در هماهنگی تحویل ، به یک اپلیکیشن نیاز داشت که در چندین سیستم عامل کار کند. در حالی که این برنامه با یک برنامه بومی برای ویندوز شروع شده بود ، MRW به استفاده از Xamarin تبدیل شد تا بتواند در عین حال و محدودیت های زمانی و بودجه ، برای Android و iOS ایجاد کند.

5- آیا توسعه کراس پلتفرم با استراتژی کلی دیجیتال من مطابقت دارد؟

با مرور استراتژی و منابع دیجیتال فعلی خود شروع به کار کنید. اگر یک وب سایت پاسخگو با ویژگی های پیچیده و تعامل ایجاد کرده اید ، ممکن است نیاز به منابع گسترده ای برای تطبیق این ویژگی ها برای یک برنامه cross-platform که مطابق با خواسته های کاربران شما باشد.

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

در اصل در www.appsterhq.com منتشر شده است.

//

ممنون از خواندن!

اگر از این مقاله لذت بردید ، با کلیک بر روی دکمه Clap در زیر کلیک کنید - به دیگران کمک کنید تا آن را پیدا کنند!

ایده ای برای برنامه دارید؟ بیایید صحبت کنیم

ما در چند سال گذشته به ساخت بیش از 12 راه اندازی چند میلیون دلاری کمک کرده ایم. بررسی کنید که چگونه می توانیم به شما کمک کنیم.