بخشی از پاورپوینت

اسلاید 1 :

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

اهداف جلسه :

آشنایی با پلت فرم ها، ابزارها و
تکنیک های طراحی اپلیکیشن های موبایل

اسلاید 2 :

معرفي شرکتهاي صاحب پلتفرم

بررسي ابزارهاي توسعه موبایل ازجمله SDK ، NDK ، SDK نیتیو

معرفي محیطهاي توسعه و ابزارهاي هیبرید که از تکنولوژيهاي طراحي وب براي ساخت اپلیکشنهاي موبایل استفاده ميکنند و نیازي به یادگیري زبان برنامه نویسي ندارند

زمان تقریبی مطالعه : 30 دقیقه
چکیده
نرم افزارهای توسعه موبایل ـ جلسه اول

اسلاید 3 :

اصطلاحات و تعاریف مقدماتی
آشنایی با ماشین مجازی جاوا
معرفی پلت فرم های موبایل
آشنایی با مفاهیم SDK ، JDK و NDK
زبانهای Cross Platform
معرفی محیط های توسعه ترکیبی (Hybrid)
فهرست مطالب

اسلاید 4 :

Platform (سکو) : پلتفرم در واقع بستری است که برنامه های نرم افزاری نوشته شده برای یک وسیله در آن قابل اجرا و استفاده است، این بستر هم شامل ملزومات سخت افزاری (CPU )و هم شامل ملزومات نرم افزاری (سیستم عامل) است،

Framework (چارچوب) : فریم ورک در اصطلاح به چارچوب نرمافزاری گفته میشود. یک فریمورک مجموعهای از کتابخانههای برنامهنویسی و احتمالا مجموعهای از قوانین برای برنامهنویسی است.

مولتی پلت فرم (چندسکویی): به بیانی ساده وقتی یک اپلیکیشن یا سرویس خاص بتواند روی platform های مختلفی اجرا شود،به آن مولتی پلتفرم یا چند سکویی میگویند.

اصطلاحات و تعاریف مقدماتی

اسلاید 5 :

انواع پلت فرم های موبایل :

Windows : شرکت مایکروسافت
Android : شرکت گوگل
IOS : شرکت اپل

اسلاید 6 :

ماشین مجازی جاوا (Java Virtual Machine) مجموعهای از برنامههای نرمافزاری و ساختماندادههایی است که برای مدلسازی ماشین مجازی، اجرای برنامههای سایر رایانهها و اسکریپتهای دیگر سامانهها به کار میرود.

ماشین مجازی جاوا (JVM) موتوری برای اجرای کد جاوا میباشد.
اغلب در سایر زبانهای برنامهنویسی، کامپایلر وظیفه تولید کد برای سیستم خاصی را بر عهده دارد اما کامپایلر جاوا بایت کد (Bytecode) را برای یک ماشین مجازی جاوا تولید میکند.
بایت کد زبانی میانی برای سورس کد جاوا و سیستم میزبان میباشد.
یک واسط است که کد جاوا را به بایت کد کامپایل میکند تا در ماشینهای مختلف تفسیر (interpret) شود و بنابراین آن را مستقل از پلتفرم/سیستم عامل میکند.

ماشین مجازی جاوا

اسلاید 8 :

مفهوم SDK ( Software Development kit ) : بسته توسعه نرم افزار

مفهوم JDK ( Java Development kit ) : بسته توسعه نرم افزاری ویژه جاوا

مفهوم NDK ( Native Development kit ) : بسته توسعه بومی نرم افزاری (اندرویید)

ابزارهای تولید اپلیکیشن

اسلاید 9 :

اپلیکیشن های موبایل را می توان در سه دسته عمده قرار داد:

روشهای تولید اپلیکیشن موبایل

اسلاید 10 :

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

ابزارهای تولید اپلیکیشن

اسلاید 11 :

مزایا:
نیاز به تایید شخص ثالثی مثلاً برای گذاشتن در مارکت ها ندارد.
هزینه آن از هزینه توسعه اپلیکیشن های native ,Hybrid کمتر است.
یک وبسایت واکنش گرا(Responsive) شبیه اپ است ولی کاملاً مستقل از پلت فرم است.نیازی نیست نگران سیستم عامل خاص موجود در دستگاه ها باشید.

معایب:
کارایی اپ بستگی به مرورگری که در گوشی نصب شده دارد.
نمیتواند در مارکت قرار بگیرد و انتشار آن ممکن است مشکل باشد.
امنیت آن به اندازه امنیت ارایه شده در وبسایت های موبایل است.

ابزارهای تولید اپلیکیشن وب اپلیکیشن ها

اسلاید 12 :

چه موقع به وب اپلیکیشن(Web Apps) نیاز دارید؟
وقتی شما نیاز به وب سایت موبایل علاوه بر اپ موجود خود دارید.
وقتی نیاز دارید که به راحتی محتویات را آپلود کنید و به صورت یکپارچه در مرورگرهای مختلف مشاهده کنید.
وقتی نمیخواهید روی ساخت اپلیکیشن وقت و هزینه بگذارید ولی به دنبال راه حل واکنش گرایی(Responsive) روی پلت فرم موبایل برای وبسایت و فروشگاه آنلاین خود هستید.

ابزارهای تولید اپلیکیشن وب اپلیکیشن ها

اسلاید 13 :

اپلیکیشن های نیتیو ( Native ) : کارآیی، جذاب ترین مزیت اپلیکیشن های نیتیو می باشد. اپلیکیشن های نیتیو بسیار جذاب هستند و برای بازی ها قادر به بهره گیری از منابع گوشی و سیستم عامل می باشند. برای مثال پلتفرم IOS را در نظر بگیرید، چنانچه مایل به ساخت یک اپلیکیشن نیتیو برای IOS باشید، لازم است تا یک زبان برنامه نویسی جدید به نام Objective-C یا سوئیفت را فرا بگیرید.

ابزارهای تولید اپلیکیشن

اسلاید 14 :

مزایا:
اپ های نیتیو میتوانند آفلاین کار کنند و بعد از دانلود لزوماً نیاز به حافظه کش یا دیتا ندارند.
رابط کابر پسندی برای کاربران فراهم می کنند.
امکان دسترسی به تمام قابلیت های دستگاه را دارند و به راحتی به GPS، دوربین، شتاب سنج، لیست مخاطبین می توانند دسترسی داشته باشند.
نگرانی درباره موضوع امنیت هم برای اپ های نیتیو و هم برای اپ های هیبریدی به یک اندازه وجود دارد ولی مدل های امنیتی برای اندروید و IOS ساخته شده اند.
سرعت مهم ترین مزیت اپ های نیتیو هست.

معایب:
برنامه های بومی، Cross Platform(چند سکویی) نیستند و برای داشتن برنامه روی پلت فرم های مختلف نیاز به دوباره نویسی کدها برای پلت فرم های مورد نظر است.
برای آپدیت کردن کوچکترین تغییرات اپ نیاز به مهارت حرفه ای دارید.

ابزارهای تولید اپلیکیشن اپلیکیشن های نیتیو ( Native )

اسلاید 15 :

چه موقع به اپلیکیشن native نیاز دارید؟
وقتی شما قصد دارید نرم افزاری را طراحی کنید که نیاز به تعامل با سیستم عامل دستگاه داشته و به امکانات داخلی آن مانند دوربین، بلندگو و حافظه دسترسی داشته باشد، بهترین گزینه، طراحی یک اپلیکیشن native می باشد.
اگر شما قصد دارید یک بازی با گرافیک بالا وکیفیت صدای خوب بسازید.
وقتی شما نیاز به پلت فرم های مختلف برای برنامه ندارید و برای دستگاه خاصی تصمیم دارید اپ بسازید. مثلاً شما میخواهید یک اپلیکیشن iPhone بسازید.
اگر امنیت برنامه برای شما مهم است مانند طراحی یک اپ بانکی.

ابزارهای تولید اپلیکیشن اپلیکیشن های نیتیو ( Native )

اسلاید 16 :

اپلیکیشن های هیبرید ( Hybrid ): اپلیکیشن های هیبرید حقیقت ارائه دهنده ترکیبی از طراحی اپلیکیشن های وب و نیتیو می باشند. تکنولوژی های استفاده شده جهت طراحی اپلیکیشن موبایل های هیبرید مشابه تکنولوژی های استفاده شده در وب اپلیکیشن ها یعنی Html، Css و Java می باشد.
از زمان شناخته شدن وب سایت های واکنش گرا(responsive)، توسعه دهندگان به این فکر افتادند که تجربه بر روی  مرورگر را به تجربه ای داخل اپلیکیشن تبدیل کنند.
در میان کسب و کارهای بزرگ جالب است بدانید که فیسبوک و لینکداین هر دو از اپلیکیشن های هیبریدی  برای خود استفاده کرده اند.

ابزارهای تولید اپلیکیشن

اسلاید 17 :

مزایا:
با پلت فرم های مختلف سازگاری دارند. می توان کدهای طراحی شده را با تغییرات جزیی برای اندروید ،IOS و ویندوز استفاده نمود.
می توان به راحتی وبسایت خود را تبدیل به اپلیکیشن کرد.
اپ های هیبریدی میتوانند در مارکت ها قرار بگیرند.
زبان توسعه متن باز.

معایب:
اپ های هیبریدی از مسایل امنیتی مثل SSL استفاده میکنند و از نکات امنیتی بومی استفاده نمیکنند.
اپ های هیبریدی که از انیمیشن ها و جلوه های صوتی استفاده میکنند و مانند اپ های native نمی باشند.

ابزارهای تولید اپلیکیشن اپلیکیشن های هیبرید

اسلاید 18 :

چه موقع به اپلیکیشن Hybrid نیاز دارید؟
اگر شما قصد دارید اپ تجاری داشته باشید که نیاز به گرافیک بالا و انیمیشن زیادی ندارد و به عملیات پایه ای و اصلی نیاز دارید اپ هیبریدی گزینه خوبی است.
وقتی نیاز دارید همزمان برای پلت فرم های مختلف(android,IOS,windows) برنامه بسازید و بودجه محدودی دارید.
اگر اپ شما نیاز مداوم به، به روز رسانی داشته باشد، با استفاده از HTML5  به راحتی میتوانید ویژگی های جدید اضافه کنید.
وقتی نسبت به سیستم عامل و عملکرد دستگاه زیاد حساس نیستید.

ابزارهای تولید اپلیکیشن اپلیکیشن های هیبرید

در متن اصلی پاورپوینت به هم ریختگی وجود ندارد. برای مطالعه بیشتر پاورپوینت آن را خریداری کنید