قصد دارم شما رو درمسیر ایجاد و طراحی اپلیکیشن موبایل قرار بدم. اپلیکیشن های زیادی برای سیستم عامل اندروید و ios طراحی شدن که بیشتر اونا برای راحتی زندگی ما خلق شدن. شروع مسیر طراحی اپلیکیشن و اهمیت تیم طراح اپلیکیشن رو در ادامه با هم بررسی میکنیم.اپلیکیشن های متنوعی که امروز به اونها دسترسی داریم ما رو قادر میسازن که کارهای پیچیده و متنوعی رو انجام بدیم. مثل ارسال عکس سلفی برای دوستان و ... بیایید یکم جلوتر حرکت کنیم و مسیر ایجاد و طراحی اپلیکیشن موبایل رو با جزئیات دقیق بررسی کنیم که شامل ایده پردازی تا انتشار ایده در مارکت ها و اپ استورهست با من همراه باشید.
اگه بخوایم با دقت بررسی کنیم میبینیم که ساخت اپلیکیشن موبایل با ساختار و هدف مشخص کار چندان ساده ای نیست !
در ادامه لیستی از نیاز های اولیه رو جهت ساخت اپلیکیشن عنوان میکنم :
لیست بالا به این معنی نیست که هر مرحله زمانی شروع میشه که مرحله قبل تر تکمیل شده باشه. تصورهمچین ترتیبی سخته.چون بیشتر فرایندهای انجام پروژه اپلیکیشن با هم دیگه ارتباط دارن.
بیایید قدم به قدم جلو بریم تا متوجه بشیم که چه طور ایده ای که فقط بهش فکر شده رو تبدیل به اپ موبایل میکنیم.
این مورد به شدت مهمه که در ابتدای راه ساخت اپلیکیشن موبایل، تیم توسعه باید اطلاعات کاملی رو در این زمینه مستند سازی کنن. شناخت دقیق مشتری و نیازهاش در مرحله اول قرار داره. همه مسیر پیاده سازی از همون روزهای اول باید کاملا پیاده سازی بشه.
کسی که بدون فکر کردن به سمت مقصد راه میره احتمالا راه به جایی نخواهد برد. برای ایجاد نتیجه مطلوب باید اهداف رو از همون ابتدای مسیر به وضوح تعیین کنید ولی این به معنی این نیست که اهدافمون درمسیر طراحی اپلیکیشن موبایل باید تا آخرکاملا ثابت بمونه.
باید سطح مشخصی از انعطاف پذیری وجود داشته باشه. باز هم عنوان میکنم که اگر اهداف از همون اول در نظر گرفته نشه پروژه به راحتی میتونه وارد یه آشفتگی بشه !
نکته طلایی که در طی تجربه های طولانی خودم تو کار طراحی اپلیکیشن موبایل بهش پی بردم این بود که در برقراری ارتباط با مشتریان نه تنها باید به خواسته هاشون با دقت گوش کنید بلکه باید سعی کنید راهکارهایی ارائه بدید که ایده ها و دلایل پشت این خواسته ها رو برای کاربران اون اپلیکیشن شرح بدید.
وقتی که درک کنید چرا کاربرا در مسیر ایجاد و طراحی اپلیکیشن موبایل میخوان توی رنگها و شکل ها تغییرات خاصی بدن اونوقت راحت تر میتونید نیازهاشون رو تحلیل کنید.
در صورت لزوم میتونید خودتون تحقیق کنید که مشتری اپلیکیشن شما دنبال چه چیزی هست. مسائل پیرامون مسیر ایجاد و طراحی اپلیکیشن موبایل چه چیزهایی میتونن باشن. وقتی با دید باز به مشتری های اون اپلیکیشن کمک کنید، اونها رو نا خودآگاه وفا دارتر میکنید. باید کاملا فعال باشید. هر چه اطلاعات بیشتری از مشتری ها دریافت کنید مسیرتون برای طراحی اپلیکیشن موفق هموارتر خواهد بود. طراحی از ایده های ذهنی و پیاده سازی بر روی کاغذ، تماس با دوستان و هم فکری با کسایی که توی این زمینه تخصص دارن میتونه نقطه شروع مناسبی برای یه حرکت قوی و حساب شده باشه.
در مورد ما این نقطه توسط مدیران فروش چارا و تحلیلگران کسب و کار شروع میشه که اولین خط ارتباط با مشتریان هست.
از اینجا به بعد بسیار مهمه که دیتا های اولیه رو آنالیز کنیم.
من یه لیست تهیه کردم که در ادامه باهم بررسیشون میکنیم.
ماهیت محصول را مشخص کنید !
بدیهی است که لیست فوق کامل نیست. ما به مهمترین موقعیت ها برای تنظیم یه جریان کلی برای توسعه و طراحی اپلیکیشن نیاز داریم. نتیجه این مراحل شامل مهمترین موقعیت ها جهت بررسی نیازها و تنظیم یه جریان کلی در مسیر طراحی اپلیکیشن موبایل هستن که باعث کارآمد شدن اپلیکیشن خواهند شد.
دادهای جمع آوری شده که در مراحل قبل بررسی شدن باعث میشن که تحلیلگران و مدیران فروش نگاهی عمیق تر به پروژه داشته باشن. در نتیجه هزینه های انجام پروژه و برنامه ریزی های زمانی دقیق تری به مشتری ارائه میشه.هرچند مثل همه فرآیندهای خلاقانه عملا غیر ممکنه که تخمین دقیقی انجام بدیم اما مسئله مهم اینه که بعد از هر فرایند در مسیر ایجاد و طراحی اپلیکیشن موبایل به اونا برگردیم و بیشتر بررسی کنیم.
در فرایند مسیر ایجاد و طراحی اپلیکیشن موبایل موارد و محصولاتی وجود دارن که کاملا ساده هستن و ساختار واضحی دارن. بنابراین از همون مرحله اول برآورد پردازش داده ها و نیازهای مشتری کاملا دقیق خواهد بود. هر چقدر پروژه گسترده تر باشه نیاز به تحلیل و زمان بیشتری خواهد داشت.
نکته مهم اینه که مراحل فوق به معنای افزایش قیمت یا زمان بندی نیستند. توی مسیر ایجاد و طراحی اپلیکیشن موبایل طراحان و توسعه دهندگان میتونن راه های بهینه سازی دیگه ای پیدا کنن که حتی میونن تخمین اولیه رو کوتاه تر کنن.
علاوه برموارد ذکر شده متخصصان میتونن دانش و تجربه خودشون رو در مورد جزئیات فنی و عوامل موثر بر زمان و منابع مورد نیاز برای طراحی اپلیکیشن و توسعه نرم افزار باهم به اشتراک بذارن.
در این مرحله طراح UI و UX بر اساس وظیفه و اهداف تعیین شده، طراحی اپلیکیشن رو با جزییات بیشتر شروع میکنه. مرحله تحقیق شامل دو بخش هست.
تحقیق در مورد کاربر به معنای عمیق تر شدن جزئیات مخاطب اصلی برای درک ترجیحات کاربر و ویژگی های روان شناختی اون صورت میگیره.
عوامل مختلفی مانند نوع رنگ، نحوه طراحی اپلیکیشن موبایل، منطق تعامل میتونه تا حدودی ما رو به شناختی از کاربر برسونه. منابع و موضوع طراحی اپلیکیشن برای کاربر بسیار بااهمیته و میتونه کاربران اپلیکیشن رو درگیر و فعال کنه.
تحقیقات در بازاربه معنی کاوش در بازار، طراحی بصری، ایجاد سبکی اصیله که باعث میشه محصول بین مردم متمایز بشه و توجه مشتری رو به خودش جلب کنه.
زمان، ابزارها ، اهداف و فناوری ها رو تغییر داده اما هنوزهم تحقیقات نقشی قوی تر از قبل داره. طراحان اپلیکیشن با غفلت از مرحله تحقیق و فقط با تکیه بر شواهد، تجربه و استعداد خودشون، خطر شکست در مسیر ایجاد و طراحی اپلیکیشن موبایل رو دارن. بخاطر اینکه شرایط عملکرد اپلیکیشن رو به طور کامل بررسی نکردن نمیتونن اونو کارآمد و کاربرپسند بکنن.
این فرایند ساختار کلی اپلیکیشن رو مشخص میکنه. این کار معمولا با پیاده سازی روی کاغذ که دقت زیادی نداره انجام میشه. هدف از این مرحله تنظیم و نمایش ساختار، شفاف سازی اجزا، چیدمان و تعاملات بر اساس مشکلات و درد سر هایی که درمسیر ایجاد و طراحی اپلیکیشن موبایل برای کاربر وجود دارد و محصول ما قراره این مشکلات رو حل کنه هست.
به عنوان مثال وقتی ساخت یه خونه رو تو ذهن خود تجسم میکنیم معمولا به جای هزاران پروژه و نقشه و محاسبات انجام شده روی کاغذ به فرایند و ظاهر فیزیکی ساختمان فکر میکنیم.درسته ساخت خونه از نظر فیزیکی بدون هیچ پروژه ای و ذهنی امکان پذیره اما اگه روزی ساختمون ساخته شده بدون هیچ دلیلی ترک خورد و فرو ریخت تعجب نکنید!
درمسیر ایجاد و طراحی اپلیکیشن موبایل هم باید این مورد رودر نظر بگیرید که یه برنامه شیک و زیبا به تنهایی نمیتونه هیچ کاربر وفا داری رو برای شما به وجود بیاره. اگه میخواید در طراحی اپلیکیشن خود دقیق و منسجم پیش برید و یه اپلیکیشن قابل اعتماد خلق کنید باید با برنامه پیش برید.
برای برنامه ریزی و جمع آوری یه تیم حرفه ای وقت بذارید. این کار نه تنها باعث هدر رفتن وقتتون نمیشه بلکه توی وقتتون صرفه جویی هم میکنه. در غیر این صورت مجبور هستید پروسه طراحی اپلیکیشن رو تکرار کنیدتا متوجه بشید که چرا اپلیکیشن و محصول شما به درستی کار نمیکنه.
این هدف بخش UX از فرایند طراحی است. مراحل وایر فریم باید به شدت بر اساس تحقیقات کاربر، تحقیقات رقابتی و تجزیه و تحلیل همه داده ها به دست بیاد.
همه تعاملات وقراردادن تمام عناصر رابط کاربری را براساس بهینه بودن اونها انجام میشه. هر چند که بهتره این کار با ابزارها و نرم افزار ها ی خاص بهینه سازی فرایند طراحی اپلیکیشن موبایل انجام بشه.
در نتیجه این کارها طرح واضحی ایجاد میشه که پیچیدگی اون به عملکرد محصول بستگی داره.
مفهوم اصلی در بدنه نمونه اولیه هست. با استفاده از نمونه اولیه میتونیم آزمایش کنیم و ببینیم آیا راه حل ها و تصمیمات گرفته شده در مورد محصول کارآمده یا خیر. نمونه اولیه رو نباید به عنوان خروجی نهایی دیده بشه. هدف اصلی در نمونه سازی اینه که مشتری و کاربر رو قادر میسازه تا راه حل های مناسب برای طراحی اپلیکیشن رو بررسی کنه.
اهمیت و ارزش نمونه های اولیه در حوزه طراحی اپلیکیشن موبایل در چند سال گذشته افزایش پیدا کرده است. مطمئنا این به این معنی نیست که فرایند طراحی وایر فریم برای محصول میتونه حذف بشه. در فرایند ایجاد محصول طراحی ها ضروریه. با این حال وقتی میخواید کارایی طراحی رو متوجه بشید نمونه اولیه کمک بزرگی هست.
با توجه به اینکه اکثر کاربران نمونه اولیه رو چیزی شبیه به نسخه نهایی محصول میبینن در عمل این رویکرد موثر نخواهد بود. نمونه سازی به عنوان مرحله ای بین طراحی ux و طراحی ui هست.
نمونه اولیه در مرحله ui رو میشه برای ارائه ظاهر کلی برنامه به جای آزمایش و بهبود ویژگی های عملکردی اون ایجاد کرد. این همون دامیه که به راحتی میشه توش سردرگم شد.
پیاده سازی نمونه اولیه کمی ممکنه وقت گیر باشه.به جای هدر رفت زمان توی پروسه انجام نمونه اولیه میشه همون زمان رو صرف کد نویسی یه نسخه دمو کرد. قبل از هر چیزی ux در هر مرحله باید به طور کامل بررسی بشه. در غیر این صورت تغییر راه حل نا کارآمد بعد از انجام کارهای زیادی که بر روی ui انجام شده خیلی سخت خواهد بود.
ایجاد نمونه های اولیه هم برای ui و هم برای ux بسیار با ارزش هست. اما همه کارفرماها و مشتریان موافق نیستن زمان زیادی رو برای کارهای طراحی اولیه صرف کنن و میخواهند طراحی رو خیلی ارزونتر و سریع تر آماده بشه.
رابط کاربری در واقع زمینه تعاملی نهایی شده هست. این شامل تمام ابزارهای افزایش قابلیت استفاده و برآوردن نیازها و خواسته های کاربران هدف هست. تمام ویژگی های ادراک بصری و صدا و احساسات قابل لمس در اپلیکیشن باید در بخش طراحی رابط کاربری پیاده سازی بشه. به عنوان مثال پالت، رنگ ها، و فونت ها،شکل های هندسی که در طراحی اپلیکیشن به کار میبریم.
تصویر سازی و انیمیشن میتونه در عملکرد و کارایی محصول نهایی تاثیر بسیار زیادی داشته باشه.
بعد از اینکه قسمت ux توسط نمونه اولیه آزمایش شد و مراحل تست را گذروند و مفهوم چیدمان و انتقال پذیرفته شد طراح پروژه اقدام به شروع طراحی ui میکنه. این زمانیه که قلب و مغز محصول شما با پوست و استخونهاش پوشیده میشه. در بخش طراحی ui محصول ویژگی های رنگ فرم ها، چیدمان ها، عناصر و سبک ها پیاده سازی خواهند شد.
نکته : همه سناریو و ایده های ui مستقیما بر ux تاثیر خواهد گذاشت. ui و ux به طور متقابل باید از یکدیگر پشتیبانی کنن و از یه استراتژی واحد پیروی کنن.
در مورد جزییات و مزایای انیمیشن ها درمسیر ایجاد و طراحی اپلیکیشن موبایل کارآمدترین و بهترین کار این هست که تمام جوانب رو در تمامی مراحل پیاده سازی در نظر بگیریم. بهترین زمان برای پیاده سازی انیمیشن های اپلیکیشن زمانیه که در حال طراحی ui نرم افزار هستیم. مثل تمام بخش هایی که در اپلیکیشن با هم در ارتباط هستند انیمیشن هم باید یک عنصر کاربردی باشه نه فقط یک دکور.
طراح ui باید قبل از طراحی تصمیم گیری نهایی مشخص کنه که تو چه جاهایی از اپلیکیشن میخواد از انیمیشن استفاده کنه. انیمیشن ها باید پتانسیل اپلیکیشن رو افزایش بدن و باعث بشن اپلیکیشن پرفرمنس بهتری داشته باشه.
انیمیشن ها باید با رویکرد متفکرانه ای طراحی بشن. مزایای استفاده از انیمیشن ها در بدنه پروژه باید آشکار و سودمندی استفاده از اون بیشتر از معایبش باشه.
مقیاس پذیری یکی از موارد مهم در طراحی اپلیکیشن هست. برنامه ریزی های مربوط به معماری در اپلیکیشن میتونه موازی با طراحی صورت بگیره.معمولا این فرایند ساده نیست و پیچیدگی های خاص خودش رو داره و شامل تکرارهای زیادیه.
هدف اصلی معماری، ایجاد پلن یکپارچه در معماری اپلیکیشن و بخش Front End و Back End هست. در این مرحله توسعه دهندگان پروژه در مورد کارآمد ترین راه حل های فنی و فناوری تحقیق میکنن تا بتونن عملکرد اپلیکیشن رو بهبود ببخشن.
تصمیم گیری ها به عوامل مختلفی بستگی داره.برای مثال ماهیت محصول و داده هایی که پردازش میکنه.
فرایند توسعه و برنامه نویسی نسخه ios در طراحی اپلیکیشن مستلزم برنامه نویسی در محیط IDE شرکت اپل با نام Xcode هست.
همانطور که در وب سایت رسمی شرکت اپل عنوان شده xcode محیط توسعه یکپارچه ios هست. این محیط ابزارهایی برای مدیریت و توسعه برنامه نویسی نرم افزارهای ios ارائه میده که شامل ایجاد اپلیکیشن، آزمایش،بهینه سازی و ارسال اون به اپ استور میشه.
برای استفاده از xcode توسعه دهندگان نیازمند داشتن سیستم عامل مک هستن. هیچ روش رسمی برای راه اندازی xcode روی ویندوز و لینوکس وجود نداره و شما حتما برای برنامه نویسی ios نیازمند خریداری مک بوک هستید.
دو زبان برنامه نویسی اصلی و محبوب برای توسعه ios objective-c و swift هستن. سوئیفت با سخت افزار مدرن همگامه و توی فرایند کد نویسی سریع تره. همچنین برای نگهداری و به روز رسانی اپلیکیشن هایی که از ابتدا با سوئیفت برنامه نویسی شدن قابل استفاده اس.
درمسیر ایجاد و طراحی اپلیکیشن موبایل، توسعه دهندگان ios به معماری برنامه فکر میکنن، کدها رو مینویسن، عملکرد ها رو برای رابط کاربری ایحاد شده یکپارچه میکنن، سورس کد رو ویرایش میکنند و اشکال زدایی یا دیباگ میکنن.در نهایت نرم افزار رو در اپ استور منتشر میکنن. نوشتن تست های واحد و اجرای تست یکپارچه سازی مراحل مربوطه تو این مرحله قرار میگیره.
یکی از ویژگی های xcode ویژگی interface Builder هستش که جایگزینی برای کد نویسی دستی مشتری هست.این ویژگی به توسعه دهندگان این امکان رو میده تا کدهای برنامه رو به صورت بصری کنار هم قرار بدن.
باید در نظر داشته باشید که برنامه ریزی و گردش کل کار و تعداد افراد درگیر در فرایند توسعه قبل از هر چیزی به پیچیدگی فورس ماژور بودن پروژه بستگی داره. برای پروژه های کوچک توسعه دهنده ios ممکنه بتونه تمام اجزای معماری نرم افزار را برای برنامه ایجاد کنه.
برای پروژهای پیچیده چند لایه حداقل باید چند برنامه نویس با تجربه در معماری نرم افزار و با تخصص خوب در توسعه سمت کلاینت و سمت سرور درگیر بشن.
وظیفه اصلی این مرحله ایجاد یک برنامه کاملا کارآمده که مقیاس پذیر و یکپارچه باشه و با تمام ویژگی های مورد نیاز سمت سرور مثل پایگاه داده و Api ها و سایر زیر ساخت ها مرتبط باشه.
مشتری به توسعه دهنده ای نیاز داره که مهندسی back-end رو درک کنه و api ها رو با فرانت اند پروژه ادغام کنه.
کارفرماهای پروژه ها باید نگاه ویژه ای به نگهداری سورس پروژه و تکامل سورس در روند پیاده سازی پروژه داشته باشن. اگر آینده و کارایی پروژه برای شما مهمه! حتما باید از سورس کنترلرها استفاده کنید و تیم توسعه دهنده اپلیکیشن رو موظف به رعایت این مورد کنید. عدم استفاده از سورس کنترلر ها میتونه مشکلاتی رو برای ما به وجود بیاره که شامل موارد زیر هست.
مجبور میشید تو جاهای متفاوت ورژن های مختلف رو با عنوانهایی مثل new و Final و Final2 و ... سیو کنید.این روش به شدت روش سطح پایینی هست و کاربردی نیست.سعی کنید در پروژه ها از سورس کنترل ها استفاده کنید. اونهایی که Open Source و در حال کار هستن.
فکر میکنم همه تیم های توسعه دهنده با گیت آشنا هستن. گیت یکی از بهترین ابزار های سورس کنترل ها و ورژن کنترل هاس که مایکروسافت اون رو خریداری کرده. شما به راحتی میتونید با استفاده از این ابزار سورس پروژه خودتون رو مدیریت کنید. به ازای هر تغییری که ایجاد میکنید یه نسخه جدید برای شما ایجاد میشه که به راحتی میتونید به ورژن های قبلی دسترسی داشته باشید.
اینکه تو هر ورژنی چه تغییری و چه اصلاحی صورت گرفته رو اصطلاحا میگیم کامیت.به ازای هر کامیتی که انجام میدید میتونید مشخص کنید که چه تغییراتی توی ورژن جدید صورت گرفته.
تی اف اس به عنوان یکی دیگه از محصولات یا ورژن کنترل های مایکروسافت هست .شاید ده ها مورد سورس کنترل و ورژن کنترل دیگه هم وجود دارهکه میتونید از هر کدوم از اونها استفاه کنید. ولی من فکر میکنم گیت یا تی اف اس را همه بشناسن که ابزار های معرفی شده از سمت مایکروسافت هستن.حتی اگر شخصی هم میخواید کار کنید پروژه خودتون رو توی سورس کنترل ها بارگزاری کنید و ورژن های سورس را کنترل و مدیریت کنید.
نقش شبکه های اجتماعی برای کسی پوشیده نیست. باید در شبکه های اجتماعی باید فعال باشید. توی فروم ها برید وفعالیت کنید. من بارها مشتریهای خودم رو از فروم پیدا کردم ! وقتی میبینیم یه شخص در فروم، پرسش و پاسخ حرفه ای انجام میده و پاسخهای حرفه ای به سوالات میده مشخص میشه که حرفه ایه و میتونه به راحتی جذب تیم پشتیبانی اپلیکیشن بشه.
در فرومها وشبکه های اجتماعی فعال باشید. نه اینکه از الان شروع کنید و ۲۴ ساعت وقت بذارید روی شبکه های اجتماعی. فقط شروع کنید! وقتتون را اونجاها صرف کنید،سوالات رو ببینیدو اونایی که خوشتون میاید رو پاسخ بدید، توی سایت هایی مثل لینکدین و شبکه های اجتماعی علمی فعال باشید، مقاله بزارید و خودتون و اپلیکیشنتون رو با مقالاتی که منتشر میکنید مطرح کنید.
حتماً یه سایت شخصی داشته باشید. در سایت شخصی نحوه کار و فعالیت نرم افزار خودتون رو شرح بدید. نمونه کار هاتون رو قرار بدید. شرح دقیقی از روند کار و فعالیت اپلیکیشنتون رو توی سایت قرار بدید. کاربرای شما نیاز دارن که اطلاعاتی در مورد اپلیکیشن و استارت آپ شما داشته باشن.
خیلی از افراد در اینترنت شما رو پیدا خواهند کرد. افرادی که شما رو پیدا میکنن مشتریان واقعی اپلیکیشن و خدمات شما خواهند شد. یعنی شبکه های اجتماعی از مکان هاییه که شما رو پیدا می کنن. وب سایت شما ،کانال تلگرام،اینستاگرام، داشتن پیج های شبکه های اجتماعی که توی اونها فعالیت علمی دارید خیلی مهم هست.
هر کسی که قصد طراحی و ساخت اپلیکیشن موبایل رو داره باید به این سوال پاسخ بده که کدوم نوع اپلیکیشن موبایل رو میخواد بسازه.
در ادامه تفاوت این سه نوع اپلیکیشن رو بررسی خواهیم کرد.
انواع نرم افزارهای موبایلی بر اساس تکنولوژی به کار رفته در آنها:
۱- نرم افرار هایی که برای یک پلتفرم و یا سیستم عامل خاص ایجاد میشن.
۲- برنامه وب نسخه واکنشگرا وب سایت ها که میتونن روی هر دستگاه تلفن همراه یا سیستم عاملی کار کنن و با استفاده از مرورگر تلفن همراه اجرا میشن.
۳- نرم افزارهای ترکیبی که از اپلیکیشن های بومی و وب هستن اما تو یه برنامه بومی خلاصه شدن و میشه اونها رو از مارکت ها دانلود و نصب کرد.
به طور کلی نرم افزار های بومی برای سیستم عامل تلفن های همراه ساخته میشن که شامل اپ های اندرویدی و ios هستن.از اونجایی که فقط برای یه پلتفرم ساخته شدن نمیتوانیم اونها رو ترکیب کنیم.
فناوری مورد استفاده:
نرم افزارهای native با استفاده از زبان های برنامه نویسی مختلف کد نویسی میشن مثل جاوا، کاتلین، پایتون،سوئیفت، React native و …
اپلیکیشن های بومی به دلیل تمرکز منحصر به فرد خود این مزیت رو دارن که از نظر عملکرد سریعتر و قابل اعتماد تر هستن.این نوع اپلیکیشن ها معمولا با کارایی بالا هستن و به دلیل بهینه تر بودن تجربه کاربری بهتری رو برای کاربران رقم میزنن.
از آنجایی که نرم افزارهای بومی مستقیما با سخت افزار در ارتباط هستن به طیف وسیعی از ویژگی های دستگاه مانند بلوتوث، مخاطبین دفترچه تلفن،دوربین،NFC، و موارد دیگه دسترسی دارن.
با این حال برنامه های بومی native با این واقعیت همراه هستن که اگر شروع به توسعه شون کنید باید تلاش های تکراری رو برای هر یک از پلتفرم های مختلف انجام بدید.کدی که برای یه پلتفرم ایجاد میکنید نمیتونه توی پلتفرم دیگه ای استفاده مجدد بشه و این باعث افزایش هزینه ها خواهد شد.
سپس هر بار که برنامه به روز رسانی میشه کاربر باید فایل جدید رو دانلود کنه و دوباره اونو نصب کنه.این به این معنیه که اپ های بومی فضای زیادی رو در حافظه گوشی اشغال خواهند کرد.
وب اپلیکیشن ها مثل نرم افزار های بومی native هستن اما از طریق مرورگر وب در دستگاه تلفن همراه شما قابل دسترسی ان. اونها نرم افزارهای قابل نصب نیستن بلکه وب سایت های واکنش گرایی هستن که رابط کاربری خودشون رو با دستگاهی که کاربر داره تطبیق میدن.
یکی از انواع اپلیکیشن های تحت وب PWA هست که اساسا یه نرم افزار native هست که تحت وب اجرا میشه.
فناوری مورد استفاده در وب اپلیکیشن ها css ، html5 و جاوا اسکریپت هست و یا روبی و زبان ها و فریم ورک های مشابهی که برای کار تحت وب استفاده میشن.
از آنجایی که مبتنی بر وب هست نیازی به سفارشی سازی روی یه پلتفرم خاص یا سیستم عامل نیست. این مورد هزینه های توسعه رو کاهش میده. علاوه بر اینها چون چیزی برای دانلود وجود نداره و حافظه دستگاه کاربر رو اشغال نمیکنه، بروز رسانی و نگه داریش آسونتره. فقط کافیه بروز رسانی رو به صورت زنده تحت وب انجام بدید.کاربران نیازی به آپدیت در مارکت ها ندارن.
معایب: وب اپلیکیشن ها کاملا به مرورگر مورد استفاده وابسته هستن. قابلیت هایی تو یه مرورگر در دسترس هست و توی مرورگر دیگه ای وجود نداره و احتمالا تجربیات مختلفی رو برای کاربران به وجود خواهد آورد.
از اونجایی که وب اپلیکیشن ها مانند تم برای سایت هستند کاملا آفلاین کار نخواهند کرد حتی اگه حالت آفلاین داشته باشن. دستگاه برای پشتیبان گیری از دادهای مورد نظر و ارائه هر گونه دیتای جدید و یا باز خوانی آنچه روی اسکرین وحود داره به اتصال اینترنت نیاز داره.
میشه گفت ساخت یک نرم افزار hybrid بسیار سریع تر و مقرون به صرفه تر از یه برنامه بومی هست.بنابراین یه نرم افزار hybrid میتونه محصول با دوامی باشه. این نوع اپلیکیشن ها پرفرمنس و سرعت بالایی دارن و برای استفاده در کشورهایی با اتصال اینترنت ضعیف مثل اینترنت ایران گزینه های مناسبی هستن و تجربه کاربری و حس native بودن رو به کاربر القا خواهند کرد. در نتیجه به دلیل استفاده از یک بیس کد واحد کد بسیار کمتری برای نگه داری وجود داره .
خیلی ها فکر میکنن ایده بخش خیلی مهم تری از جزئیات و موارد فنی توی پروژه هاس.تو این پادکست توضیح میدم که چرا این تفکر تا حد زیادی میتونه درست عمل نکنه ! حتما این پادکست رو گوش کنید.
کیفیت در طراحی اپلیکیشن به هیچ عنوان اتفاقی نیست. همیشه این موضوع رابطه مستقیمی با تلاش خالصانه ، هدایت هوشمندانه، اجرای ماهرانه تیم توسعه دهنده پروژه داره.این موضوع و اهمیت تیم پروژه میتونه سرنوشت اپلیکیشن رو مشخص کنه.آزمایش، یکی از مراحل حیاتی کل چرخه عمر اپلیکیشن و مسیر ایجاد و طراحی اپلیکیشن موبایل هست و میتونه توی دیباگ و اشکال زدایی به کاربران کمک شایانی کنه. مارکت ها به هیچ عنوان نرم افزارهایی که دارای مشکلات و باگ هستند رو نمیپذیرن. بنابراین اپلیکیشنی که به مارکت ها جهت انتشار ارسال میشه نباید هیچ گونه باگ و اشکالی داشته باشه.
در اکثر موارد کاربران در صورت مشاهده باگ ها در عملکرد پروژه به احتمال زیاد اپلیکیشن رو رها خواهند کرد. مهم نیست اپلیکیشن چقدر جذاب باشه. حتی ساده ترین اپلیکیشن ها هم میتونن اهداف تجاری بسیار بزرگی داشته باشن. اگر به درستی و مطابق با انتظارات کاربران هدف و حل مشکلات اونها کار نکنن محکوم به شکستن. تست به این معنی نیست که اپلیکیشن دارای مشکلاته و کیفیت بالایی رو ارائه نمیده. متخصصان مختلف در فرایند افزایش بهره وری و کارایی بهتر اهداف، مهارت های مختلفی دارن و برای طراحی اپلیکیشن نیز به همین شکل عمل خواهند کرد.
با فرض بر اینکه توسعه دهندگان کار بزرگی انجام دادن و پروژه بدون مشکل در حال کار هست. وظیفه آزمایش فقط پیدا کردن باگ های اپلیکیشن نیست، بلکه تست باعث درک بهتر کیفیت اپلیکیشن و پیدا کردن راهی برای بهبود عملکرد از طریق تعاملات هست.
ابتدایی ترین تست برای هر برنامه کاربردی هست تا اطمینان حاصل بشه که مطابق با الزامات تعریف شده کار میکنه و هیچ عملکردی در فرایند تعامل از دست نمیره.این تست اپلیکیشن طراحی شده و عملکرد مشتری و سرور و شبکه را پوشش میده. به طور مثال مشخصات و عملکرد اپلیکیشن رو تحت شرایط خاصی مانند باتری کم، پوشش شبکه بد، حافظه کم در دسترس و … بررسی میکنه.
این نوع تست بررسی میکنه که اپلیکیشن طراحی شده ما در طول استفاده کاربر استفاده بهینه از حافظه رو حفظ کنه.
زمانی که ما اقدام به طراحی اپلیکیشن میکنیم در حین اجرای اپلیکیشن ممکنه اپ طراحی شده با وقفه مواجه بشه این نوع آزمایش به ما کمک میکنه تا متوجه بشیم تو این شرایط اپلیکیشن چه کاری انجام میده.انواع وقفه ها عبارت اند از :
تماس های ورودی و خروجی و اعلان های مختلف
هشدار حافظه کم
اتصال کابل به دستگاه و قطع اتصال کابل
قطع یا بازیابی شبکه دیتای اینترنت
روشن یا خاموش بودن پخش کننده رسانه ها
چرخه برق دستگاه مثل اعلان باتری کم و …
تست امنیتی آسیب پذیری برنامه در برابر هک سیاست های احراز هویت و مجوزها
امنیت داده ها
این بخش از مراحل اولیه ایجاد و طراحی اپلیکیشن هست تا بررسی بشه که آیا اپلیکیشن مورد نظر اهداف و وظایف خودش راو به درستی انجام میده و پاسخ خوبی از کاربران دریافت میکنه. تو یه جمله میشه به این صورت قابلیت استفاده رو شرح داد.
آیا کاربران میتوانند به هدف خود دست پیدا کنند!
روزی خواهد رسید که اپلیکیشن به مرحله انتشار و معرفی به کاربران میرسه. فرایند انتشار اپلیکیشن در مارکت های ایرانی و خارجی چند مرحله داره. ممکنه نیاز به چند اصلاح و ارسال مجدد باشه. بنابراین دونستن رویه ها و سیاست های مارکت های ایرانی و خارجی میتونه در زمان صرفه جویی کنه.
مسیری که یه اپلیکیشن موبایل طی میکنه پیچیده اس و شامل مراحل مختلفیه که تاثیر مستقیمی بر عملکرد پروژه داره. از ابتدای مسیر ایجاد و طراحی اپلیکیشن موبایل رو با هم بررسی کردیم و دیدیم که برای اجرای پروژهای نرم افزاری و طراحی اپلیکیشن چه مسیری رو باید طی کنیم و در نتیجه به محصول و خروجی کار دست پیدا کنیم. آیا شما برای پیاده سازی پروژه خودتون آماده هستید؟
هنوز نظری برای این پست ثبت نشده است اولین نظر را ارسال کنید