ساخت یک برنامه، فرایندی پرهزینه است، چه از نظر زمانی و چه از نظر منابع مالی. گاهی اوقات شما بودجه کافی برای ساخت یک برنامه پرهزینه را ندارید، یا اینکه باید خیلی سریع آن را وارد بازار کنید تا از فرصتها استفاده کنید. آیا باید برخی ویژگیهای برنامه را حذف کنید یا برای سرعت بخشیدن به روند توسعه برنامه چارهای بیاندیشید؟ در ادامه به ابزار های ساخت اپلیکیشن میپردازیم.
معرفی بهترین ابزار های ساخت اپلیکیشن برای بیشتر کردن سرعت ساخت
در این مقاله ما به ۵ ابزار مختلف ساخت اپلیکیشن که میتوانید برای سرعت بخشیدن به روند توسعه برنامه خود استفاده کنید، نگاهی میاندازیم و این دو مشکل را تا حدودی برطرف میکنیم: میتوانید هزینه ساخت یک برنامه را کاهش دهید و در عین حال برنامه را سریعتر وارد بازار کنید.
بسیاری از ابزارهایی که بررسی میکنیم به شما در سرعت بخشیدن به تکمیل پروژه کمک میکند. به عنوان مثال، fastlane را در نظر بگیرید که وظایف استقرار برنامه را به صورت خودکار انجام میدهد، بنابراین میتوانید فرآیند انتشار خود را کوتاه کرده و زمان بیشتری را برای رفع اشکالات و اجرای ویژگیها صرف کنید.
Parse Server
اولین ابزاری که قصد داریم آن را بررسی کنیم Parse Server است. که یک کلود بک اند اپن سورس است، با خدمات زیادی مانند پایگاههای داده، اعلانهای فشار، ذخیره فایل و مدیریت کاربر.
در اینجا نحوه کار آورده شده است:
- یک نمونه از parse server در Paas ایجاد کنید مانند Heroku
- نمونه Parse Server خود را به یک پایگاه داده معروف به عنوان سرویس DaaS مانند mLab متصل کنید.
- برنامه خود را با نمونه جدید Parse Server خود ادغام کرده و از برخی از ابزارهای آن استفاده کنید.
- شما اکنون یک سرویس پشتیبان کامل مبتنی بر ابر در اختیار دارید.
Parse Server نسخهی جدید Parse.com است که در اوایل سال ۲۰۱۷ غیرفعال شد. به جای ارائه خدمات انجام شده برای شما مانند Parse.com ،Parse Server به شما امکان میدهد پشتیبان سفارشی مبتنی بر ابر خود را راه اندازی کنید.
البته اپن سورس است و میتوانید نمونه Parse Server خود را در تعدادی از ارائه دهندگان زیرساخت مانند AWS ،Heroku ،Google App Engine ،Azure و Digital Ocean تنظیم کنید.
Parse Server با تعدادی از ابزارهای پشتیبان که برای توسعه دهندگان برنامه مفید است، مانند اعلانات فشار و ذخیره فایل ادغام میشود. برای هر یک از این خدمات به احتمال زیاد به ارائه دهنده خدمات دیگری مانند Amazon S3 یا OneSignal نیاز دارید. با وجود اینکه این ابزارها عالی هستند، ولی نیاز به چندین ارائه دهنده خدمات میتواند راه اندازی و نگهداری را برای شما پیچیده کند.
یکی از ویژگیهای عالی Parse Server ،Cloud Functions است. با جاوا اسکریپت میتوانید کارهای سادهای را هر زمان که رویدادی در Parse Server اجرا میشود، مانند بارگذاری یک فایل یا ذخیره یک شی در پایگاه داده، اجرا کنید.
بگویید یک برنامه movie recommendation دارید، مانند IMDB هنگامی که یک کاربر یک نظر برای یک فیلم ایجاد میکند، میتوانید با server-side scripting به آن رویداد متصل شوید و یک اعلان برای دنبال کنندگان آن کاربر ارسال کنید تا در مورد آن به آنها اطلاع دهند.
با استفاده از Parse Server، توسعه دهندگان برنامه زمان کمتری را برای ایجاد خدمات پشتیبان و نگهداری از سرورهای وب اختصاص میدهند و زمان بیشتری را برای ساختن برنامهها و افزودن ویژگیها صرف میکنند. مقرون به صرفه، نگهداری نسبتا آسان، قابل انعطاف و دارای تعداد زیادی ابزار داخلی مفید است.
ویژگیهای مثبت:
- از بسیاری از سیستم عامل ها ، از جمله IoT پشتیبانی می کند
- Excellent documentation and example code
- اپن سورس
ویژگیهای منفی:
- برای اجرا نیاز به یک پلت فرم جداگانه دارد ، مانند Heroku
- گزینه های مقیاس بندی به زیرساخت ها بستگی دارد
- همه فن حریف نیست
قیمت: اپن سورس و رایگان، اما برای اجرای Parse Server به زیرساخت هایی مانند Heroku نیاز دارید. راه اندازی ساده از حدود 20 دلار در ماه شروع می شود.
پلتفرم: iOS ،macOS ،tvOS ،Android ،JavaScript ،React ،.NET ،Unity ،PHP ،Arduino ،Embedded C
ابزار های ساخت اپلیکیشن | Fastlane
fastlane ابزاری است که بر ادغام مداوم و استقرار مداوم (CI/CD) تمرکز میکند. هر زمان که نسخه جدیدی از برنامه را ایجاد میکنید، به طور خودکار برای کاربران نهایی یا آزمایش کنندگان بتا منتشر میشود. fastlane با ابزارها و فرآیندهای خودکار از گردش کار شما پشتیبانی میکند.
تصور کنید برنامهای ساختهاید و به تازگی نسخه ۱ را در App Store منتشر کردهاید. چند هفته بعد شما اشکالاتی را پیدا کرده و برطرف کردهاید و یک ویژگی جدید روی برنامه پیاده سازی کردهاید. شما میخواهید نسخه بهبود یافته ۱/۱ برنامه خود را در آزمایش کنندههای بتا توزیع کنید و آن را در اختیار کاربران قرار دهید.
این کاری است که شما انجام میدهید:
- شما یک برنامه جدید ایجاد میکنید و آن را در App Store Connect منتشر میکنید.
- شما به صورت دستی برای هر مدل دستگاه، اسکرین شات برنامه جدیدی ایجاد میکنید.
- metadata، تصویر صفحه نمایش و غیره برنامه خود را به روز میکنید.
- با TestFlight، نسخه بتا را در اختیار آزمایش کنندگان قرار میدهید.
به عنوان یک توسعه دهنده تک نفره، این امر قابل انجام و کنترل است. اما تصور کنید که در یک تیم کار میکنید. و همزمان روی چندین نسخه برنامه کار میکنید. نسخه فعلی، با رفع مشکلات و “۲” با ویژگیهای جدید. یا هر یک یا دو هفته یکبار برنامه های خود را به روز میکنید.
در این صورت متوجه میشوید که پشتیبانی از برنامه شما و کارهای دستی آن میتواند زمان زیادی را به خود اختصاص دهد! باید راهی برای سرعت بخشیدن و تودکار کردن این فرآیند وجود داشته باشد.
این همان جایی است که fastlane وارد میشود. در حالی که برنامههای بقیه بین QA و توسعه دهنده اصلی که در تعطیلات است گیر کرده است، کارهای برنامه شما در fastlane سرعت میگیرد.
آنچه fastlane انجام میدهد:
- ایجاد تصاویر صفحه برنامه، برای چندین مدل دستگاه و زبان
- توزیع خودکار نسخه های بتا برنامه ، مانند تنظیم نسخه بیلد، بارگذاری برنامه و ثبت تغییرات برنامه
- انتشار خودکار گردش کار برنامه، مانند تنظیم meta data، بارگذاری تصاویر از صفحه نمایش و ارسال برنامه برای بررسی
- Automate code signing را در تیم خود انجام دهید، یعنی کلیدهای توسعه و گواهی نامه ها را به طور خصوصی بین توسعه دهندگان تیم خود به اشتراک بگذارید.
در اصل، fastlane شامل مجموعهای از اقدامات، مانند بارگذاری برنامه و گردشهای کاری است که چندین کار را به هم متصل میکند. هر یک از این اقدامات دارای اسکریپت هستند، به این معنی که شما میتوانید آنها را به دلخواه خود سفارشی کنید. و fastlane با محبوبترین ابزارهای CI/CD مانند CircleCI ،Jenkins و Travis CI ادغام میشود. و از همه بهتر؟ اپن سورس است!
ویژگیهای مثبت:
- باعث صرفه جویی در وقت شما میشود.
- کارهای خسته کننده را خودکار میکند.
- اشتباهات را کاهش میدهد.
ویژگیهای منفی:
- Takes some effort to set up
- Overkill for sole developers or infrequent builds
قیمت: اپن سورس و رایگان!
پلتفرم: iOS و اندروید
App Design Templates
طراحی برنامه شما اهمیت بسیاری دارد. در رتبه بندی App Store شما برنامههایی که خوب طراحی شده را بهتر از برنامههای با طراحی ضعیف خواهید دید.
کاربران برنامه شما بیش از هر زمان دیگری به کیفیت اهمیت میدهند. همهی ما برنامههای کمتری نصب میکنیم و زمان بیشتری را در برنامههایی که با آنها آشنا هستیم میگذرانیم. از طرفی، کاربران تمایل کمتری برای ریسک کردن و نصب برنامهای که نمیشناسند، دارند. از سوی دیگر، توسعه دهندگان برنامه فرصت دارند تا با طراحی بیعیب و نقص، UI/UX و نام تجاری خود بر سر زبان ها افتاده و محبوبیت کسب کنند.
خوب به نظر میرسد، اینطور نیست؟ طراحی یک برنامه از ابتدا به زمان، پول و منابع زیادی نیاز دارد. شاید طراح شما تجربه زیادی در طراحی برنامههای تلفن همراه نداشته باشد، یا بودجه اولیه و اهداف شما فقط یک طراحی گرافیکی متوسط را شامل میشود.
اینجاست که به یک قالب طراحی نیاز دارید. یک قالب طراحی چیزی بیشتر از گرافیکهای از پیش آماده شده برای برنامه شما است. میتوانید اجزا و سبکهایی را که دوست دارید انتخاب کنید، یا به سادگی کل طرح گرافیکی را کپی و جایگذاری کنید.
برخی از الگوهای طراحی مورد علاقه ما عبارتند از:
- NOW, TETHR and DO by InVision
- iOS 11 iPhone GUI from Facebook
- Stark UI kit by Baianat
- Stitch by Lina Seleznyova
- Phoenix by Adrian Chiran
- Apply Pixels by Michael Flarup
بسیاری از الگوهای طراحی به طور خاص برای انواع خاصی از برنامهها مانند برنامه های اجتماعی، بهره وری یا تجارت الکترونیکی ساخته شدهاند. همچنین میتوانید از این الگوهای طراحی گرافیکی برای ایجاد ماکتهای برنامه خود استفاده کنید.
میتوانید از الگوی GUI فیس بوک برای ایجاد یک طرح 1-on–1 برنامه خود، با استفاده از طرح بندی و اجزای پیش فرض iOS استفاده کنید. الگوهای Apply Pixels به شما کمک میکند تا مواردی مانند نماد برنامه و تصویر صفحه خود را طراحی کنید و حتی ظاهر آنها را در صفحه فروشگاه App خود نشان دهید.
هنگامی که از الگوی طراحی استفاده میکنید، اطمینان حاصل کنید که مجوز و شرایط استفاده آن را بررسی کردهاید. یک الگوی طراحی برنامه ممکن است به صورت رایگان در دسترس باشد، اما این به این معنا نیست که میتوانید از آن استفاده کنید، آن را تغییر دهید یا برای آن هزینه دریافت کنید. اثر اصلی همیشه توسط نویسنده آن دارای حق کپی رایت است، بنابراین در صورتی که در این زمینه شک دارید، از آن استفاده نکنید.
ویژگیهای مثبت:
- در زمان و هزینه به طور چشمگیری صرفه جویی میشود.
- مقرون به صرفه و اغلب با کیفیت بالا
- اکثر قالب ها قابل تنظیم هستند.
ویژگیهای منفی:
- برای سفارشی سازی زمانبر است
- زمان میبرد تا آنچه را که نیاز دارید پیدا کنید
- گزینههای صدور مجوز همیشه در دسترس نیست
قیمت: رایگان و پولی
پلتفرم: همه چیز
ابزار های ساخت اپلیکیشن | PaintCode
اولین باری که میبینید PaintCode کار خود را انجام میدهد، فکر میکنید جادویی اتفاق افتاده است! یک ابزار ساده و موثر است و یک کار را به خوبی انجام میدهد: ایجاد کد برنامه نویسی برای UI که به شکل بصری طراحی شدهاند.
در اینجا نحوه کار آورده شده است:
- شما یک UI را بصورت بصری در PaintCode طراحی میکنید.
- PaintCode کد Swift ،Objective-C ،Java ،C# ،JavaScript یا SVG خود را تولید میکند.
- شما از کد در برنامه خود استفاده میکنید و UI روی صفحه ظاهر میشود.
در حالت عادی، یک توسعه دهنده آن کد را با دست مینویسد. یک دکمه ایجاد میشود، رنگ، متن و حاشیههای آن تنظیم میشود و دکمه در برنامه نشان داده میشود. این یک رابط کاربری UI ساده است، بنابراین تصور کنید وقتی پیچیدهتر میشوند، چقدر زمان میبرد. با PaintCode، یک طراح میتواند UI فوق العادهای ایجاد کند و ببیند که این طرحها در برنامه اجرا میشوند.
PaintCode طراحیهای خود را به یک فایل مشخص صادر میکند، بنابراین میتوانید هر زمان که اجزا UI به روز میشوند، آن فایل را دوباره وارد کنید. همچنین میتوانید از متغیرها و عبارات پارامتری استفاده کنید. و حتی بهتر از آن، PaintCode دارای یک افزونه برای Sketch است، یک ابزار طراحی گرافیکی محبوب. با استفاده از افزونه، میتوانید نقشههای Sketch را مستقیما به Swift یا Objective-C صادر کنید. بنابراین لازم نیست طراحیها را در PaintCode بازسازی کنید، بلکه آنها را مستقیما از Sketch صادر کنید!
PaintCode دارای تعداد زیادی آموزش و پشتیبانی پاسخگو است.
ویژگیهای مثبت:
- باعث صرفه جویی در وقت میشود.
- انعطاف پذیر و قابل تنظیم است.
- از ۴ سیستم عامل اصلی برنامه پشتیبانی میکند.
ویژگیهای منفی:
- به درصدی از مهارت در طراحی و توسعه نیاز است.
- برخی از توسعه دهندگان کد تولید شده را دوست ندارند.
- پشتیبانی محدود برای گردش کار Interface Builder-oriented
قیمت: دوره آزمایشی رایگان، ۹۹ دلار در سال برای تیم ۱ تا ۳ نفره
پلتفرم: iOS ،macOS ،Android و وب
Awesome iOS and Android
Awesome از نظر فنی یک ابزار نیست، بلکه یک منبع است. البته منبعی است که ارزش اشتراک گذاری دارد!
لیستی عالی از منابع، چارچوبها، کتابخانهها، دورهها، کتابها، وبلاگها، پادکستها، ابزارها و قالبها برای توسعه برنامه است. یک جستجوی ساده در GitHub نشان میدهد که لیستهای بسیار خوبی برای تقریبا هر چیزی که فکرش را بکنید وجود دارد، از iOS تا Swift تا Android تا JavaScript.
محبوب ترینها عبارتند از:
- Awesome iOS by Vinicius Souza
- Awesome Android by Jürgen Stumpp
- List of awesome lists by Sindre Sorhus
جال که با بهترین ابزار های ساخت اپلیکیشن آشنا شدید، میتوانید از دیگر مقالات سایت اول نیوز دیدن کنید.