مقالات تخصصی طراحی اپلیکیشن

ارائه مقالات طراحی اپلیکیشن

مقالات تخصصی طراحی اپلیکیشن

ارائه مقالات طراحی اپلیکیشن

مقالات طراحی اپلیکیشن

۲۲ مطلب در خرداد ۱۴۰۳ ثبت شده است

  • ۰
  • ۰


یکی‌از دیگر از ورژن های اندروید، نسخه 2 میباشد. حدوداً بعد از 1‌سال از تکثیر ورژن 1، ورژن 2.0 در اکتبر 2009 فعال‌سازی شد. نکات اصلی این آپ دیت رسانی مشمول معرفی ناوبری در Google Maps با ارشادوراهنمایی صوتی، پناه از اضافه کردن تعدادی اکانت در یک دستگاه، اکران تصاویر دور‌نما زنده، ورقه قفل با قابلیت و طراحی اپلیکیشن در مشهد امکان گشودن قفل کشیدن و آزادکردن، اضافه کردن به سرویس ها دوربین مانند فلاش و زوم دیجیتال، گنجاندن تمدن لغت هوشمندتر برای شیت کلیدهای مجازی که از روش به کار گیری از لغت ها خاطر می‌ شوند، تامین از اندازه‌ های بیشتر ورقه اکران، بضاعت بهبود یافته برای ردیابی رویدادهای یکسری لمسی، شیوه نامه عالی روز‌نگار، نگهبانی از نمای HTML 5 و غیره.

در پهنا سه ماه بعداز نشر 2.0، 2.0.1 و 2.1 به ترتیب در دسامبر 2009 و ژانویه 2010 منتشر شدند. این نسخ عمدتاً با اصلاحات جزئی در API و بقیه رفع اشکالات سروکار دارا هستند.

اندروید 2.2 (API 8) با اسم مستعار Froyo
Froyo در واقع ترکیبی از لغت ها “Frozen Yogurt” میباشد. این ورژن در می 2010 فعال‌ساز‌ی شد. بعضا از مهم‌ترین خصوصیت های آن دربرگیرنده دفاع از Wi-Fi hotspot گوشی، اعلان های فشاری از روش Android Cloud به Device Messaging، ارتقا امنیت دستگاه از روش پشتیبانی از پین یا این که سر عبور، دفاع از Adobe Flash، کارایی اتصال USB، آپ تو دیت رسانی میباشد.

در اپلیکیشن اندروید مارکت با آپ تو دیت رسانی خود کار خصوصیت های نرم‌افزار ها، حفاظت از ماشین دارنده بلوتوث و غیره. بقیه ورژن های 2.2.1، 2.2.2 و 2.2.3 کلاً در باب رفع انواع و بقیه به روزرسانی های امنیتی بودند که تمامی در سال 2011 منتشر شدند. واپسین آنها، یعنی 2.2.3 در نوامبر 2011 منتشر شد.

اندروید 2.3 (API 9) با اسم مستعار Gingerbread
نان زنجبیلی که حتی پیش از ورژن های آجل Froyo منتشر شد، تغییرات شدیدی را در ظواهر و حس موبایل های هوشمند تشکیل داد. او‌لین تلفنی که‌این ورژن را به عهده گرفت، Nexus S بود که به وسیله گوگل و سامسونگ ساخته شد. در‌این ورژن، پیاده سازی رابط کاربری آپدیت شد تا آسانی و سرعت بیشتری را به یاروهمدم داشته باشد.

تامین از اندازه و وضوح ورقه اکران فوق العاده تعالی یک دست شد. نگهبانی از سعی NFC، کاغذ‌کلید بهبودیافته، مدد توسعه یافته از رویدادهای یک سری لمسی، دوربین‌های مختلف روی دستگاه برای مثال دوربین جلو، قابلیت و امکان اسکن/پیست توسعه یافته‌خیس از سایر خصوصیت‌های شایان توجه بودند. ورژن 2.3.1 و 2.3.2 به ترتیب در دسامبر 2010 و ژانویه 2011 منتشر شد. آن ها عمدتاً بهبودها و رفع اشکالات را برای Nexus S اعمال دادند.

اندروید ورژن 2.3.3 و محرمانه Gingerbread (API 10)
ورژن 2.3.3 در فوریه 2011 بعضی بهبودهای API و رفع گونه های را به همدم داشت. ورژن 2.3.4 بیشتر در آوریل به عبارتی سال دفاع از چت صوتی و تصویری با به کار گیری از Google Talk را معرفی کرد. درین ورژن، رمزگذاری پیش فرض برای SSL نیز از AES256-SHA به RC4-MD5 تغییر تحول یافت. ورژن‌ های 2.3.5 و 2.3.6 به ‌ترتیب در جولای 2011 و سپتامبر 2011 با اشکال متعدد رفع گونه های و بهبودها منتشر شدند. 2.3.7 در سپتامبر 2011 از کیف پول Google برای Nexus S 4G هواخواهی کرد.

اندروید (API 11) 3.0 با اسم Honeycomb
یکی‌از دیگر از ورژن های اندروید، ورژن 3 آن میباشد. در فوریه 2011، Android 3.0 Honeycomb برای نصب تنها بر روی تبلت ها و تلفن های با شیت اکران بزرگتر منتشر شد و دارنده عملکردهایی بود که نمی اقتدار آنها‌را در تلفن های با ورقه اکران کوچکتر رئیس کرد.

اصلی‌ ترین عملکردی که‌این ورژن به ارمغان میاورد، رفع نیاز به دکمه فیزیکی و در قبال معرفی دکمه‌ های مجازی برای اعمال عملکردهای آغاز، رجوع و منو بود. این ورژن نخسین بار یاور با تبلت موتورولا Xoom عرضه شد. بقیه بسط‌های UI اصلاح‌گردیده با اضافه کردن نوار سیستم اجرا شد که دسترسی سریع‌خیس به اعلان‌ ها و شرایط را در تحت کاغذ حل کرد.

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

  • دیزاین اپلیکیشن
  • ۰
  • ۰


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


به کارگیری از سرورهای حاذق
 

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


رعایت اختصار در پیاده سازی نرم افزار
 

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


به کارگیری از فضای سپید به طور مدبرانه


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


متن‌ها و تصاویر زیاد خیر صرفا اثربخشی آن‌ها‌را زیاد نمی‌نماید، بلکه مخاطب را از ادامه فعالیت با نرم افزار پشیمان خواهد کرد. پس برای دوری از سردرگم شدن و فراری دادن یوزرها، مسلما عملکرد فرمایید از فضای سپید دربین متن‌ها خویش به کار گیری نمایید.


استعمال از برخورد مخاطبان
 

هر چقدر که آشنایی بهتری از نیاز مخاطبان خویش داشته باشید، در رفع این نیازمندی‌ها عالی و موثرتر فعالیت خواهید کرد. عالی میباشد برای این مسئله، در نرم افزار خویش یک قسمت منحصر به فرد برای تصویب ایده ها در لحاظ بگیرید. مخاطبان با تصویب نظراتشان به شما امداد می‌نمایند تا آشنایی بهتری از بازار هدفتان داشته باشید و نقاط قوت و ضعف کارتان را دربیاورید.
 

  • دیزاین اپلیکیشن
  • ۰
  • ۰

چند دایرکتوری آنلاین برای جستن API مجانی در عالم وجود دارااست که صرفا یک‌سری گزینه از آنان، میتوانند به خیر پاسخگوی توسعه و گسترش دهندگان باشند. طراحی اپلیکیشن در مشهد ساید Rapid API و وبسایت Public APIs اصلی ترین و شایسته ترین منابع برای یافت کردن گونه های ای پی آی در گروه بندی‌های متفاوت می باشند. مزیت این دو پلتفرم، این میباشد که می توانید پیش از خرید یا این که اخذ API موردنظر، آن را در پلتفرم خویش تست فرمایید و در شکل رضایت، مبادرت به اخذ آن فرمایید. می توانید بیش تر از 15 هزار API را درین دو پلتفرم کاوش فرمایید.

همینطور بخوانید: رابط کاربری چیست؟

چطور استعمال از API را حافظه بگیریم؟
در گام صفر، بایستی به نرم‌افزار نویسی علاقمند باشید؛ چون استعمال از APIها نیاز به علم نرم افزار نویسی داراست.

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

پیرو، میتوانید در عصر مجانی فهم عمیق API نام نویسی کرده و به طور بدون نقص و عمیق، با مباحث مرتبط با ای پی آی آشنا گردید. فراموش نکنید عشق به اپلیکیشن نویسی و عطش یادگیری، دو پیش‌نیاز اساسی برای ورود به دنیای نرم‌افزار نویسی میباشند!

سفارش عصر: آغاز فرانت اند

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

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

  • دیزاین اپلیکیشن
  • ۰
  • ۰


عصر تکمیلی : شیوه سفارشی سازی دور‌نما و ظواهر Tab Bar طراحی اپلیکیشن در مشهد در کنار بیش تر از 700.000 اپی که در AppStore  وجود داراست ، اپلیکیشن شما نیز می بایست یک پیاده سازی خوب داشته باشد ، تا بتواند در کنار بقیه اپلیکیشن ها قرار گیرد. در صورتیکه برنامه شما ، از پیاده سازی های پیش فرض استعمال می کند ، سفارش میکنیم که با ساخت یه خرده تغییرات در آن‌ها ، ظواهر اپلیکیشن خویش را پاره ای خوب فرمایید. به شما این یقین را میدهیم که با اجرا این عمل ، معیار فروش نرم‌افزار شما بهبود یافته و نرخ دانلودهای بیشتری را به خویش تخصیص میدهد.

وقتی که یک نرم افزار دارای اسم و رسم را رسیدگی میکنید ، مطمئناً ، به پیاده سازی سفارشی tab bar آن ، دقت خواهید کرد. سؤالی که دربین خوا‌نندگان به وجود می‌آید ، کیفیت ساخت‌و‌ساز تغییر و تحول در ظواهر tab bar نرم افزار است. درین فراگیری ، ما به شما روش اعمال این شغل را علامت خوا‌هیم بخشید. با معرفی API مرتبط با Appearance در iOS 5 ،  سفارشی سازی در اختیار گرفتن های UI بسیار بی آلایش خیس گردیده و جلوه های منحصربه‌فرد به شخصی ،  به نرم افزار ها میدهد.

Appearance proxy یک شیء میباشد که از آن برای تغییر‌و تحول appearance پیش فرض شی ءها بصری مانند view ها و مورد های bar ، به کارگیری می‌کنیم. کلاس هایی که با پروتکل UIAppearance منطبق دارا هستند ، استعمال از appearance را حمایت می نمایند. برای عوض کردن appearance پیش فرض اینگونه کلاسی ، با به کار گیری از روال کلاس appearance ، شیء proxy آن را بازیابی میکنیم و متدهای شیء را برای تهیه مقادیر پیش فرض نو ، فراخوانی می‌کنیم. یک proxy object ، متدها و خصیصه های مرتبط با کلاس proxy خویش را جاری ساختن می نماید ، که با ماکرو UI_APPEARANCE_SELECTOR برچسب گذاری گردیده اند. مثلا ، میتوانیم با استعمال از شیء proxy ، برای تغییر تحول رنگ tint (از روش خاصیت progressTintColor یا این که trackTintColor ) از کلاس UIProgressView به کارگیری کنیم.

طبق مشی ، نرم‌افزار مثال ایی را برای فهم و شعور عالی مفاهیم سفارشی سازی ، خوا‌هیم ایجاد کرد. این نرم‌افزار قابلیت و امکان اجرایی ندارد ، البته ، تمرکز اساسی ما این میباشد که به شما آرم دهیم که به چه شکل Appearance API به عمل برده می گردد و ظواهر tab bar را که مشتمل بر رنگ تصویر دور‌نما و رنگ تیتر است ، به چه شکل تغییر‌و تحول مییابد. هم اینگونه ، تصاویر UITabBarItem را نیز تغییر تحول خوا‌هیم بخشید.  بیایید ، آغاز ، یک نگاهی به ورژن آخری نرم افزار ، بیاندازیم.

 

ادراک UITabBar  و UITabBarItem
پیش از این که درباره‌ی API کنکاش کنیم ، آغاز نگاهی به طریق پیاده سازی UITabBar و UITabBarItem می اندازیم:


تصویر فوق ، بایستی شعور بهتری از این که چه‌گونه قادر خواهیم بود در اختیار گرفتن های UI را سفارشی سازی نماییم ، به شما بدهد. در حال حاضر ، بیایید عمل را استارت کنیم و یک برنامه مثال را با هم بسازیم.

تولید یک برنامه Tab Bar مثال
آغاز ، پروژه Xcode را با به کار گیری از تمپلت “Tabbed Application” ساخت‌و‌ساز می‌کنیم. اذن دهید اسم پروژه را “CustomTabApp” در اختیار بگذاریم و پارامترهای پروژه را بر پایه ی تصویر ذیل ، تهیه نماییم:


پس از این که Xcode ، پروژه را ایجاد کرد ، دسته تصاویر را از اینجا  download this image set دانلود کرده و پوشه تصاویر را پروژه Xcode  خویش ، اضافه می‌کنیم.

اضافه کردن Tab های بیشتر به Tab Bar Controller
به Storyboard رفته و رابط کاربری را پیاده سازی می نماییم. از آن جایی ، این پروژه برای نخسین بار ساخت و ساز میگردد ، صرفا با دو گزینه tab bar ، همپا میباشد. بیایید دو آیتم دیگر نیز به آن اضافه کنیم (نکته : در‌صورتی‌که با مفاهیم tab bar شناخت ندارید ، یادگرفتن های گذشته ما درباره شیوه ساخت‌و‌ساز یک tab bar controller با استعمال از Storuyboard ، را پژوهش کنید. )

به آسانی دو View controller را اضافه کرده و آن ها را با Tab Bar Controller ، مرتبط میسازیم. کلید در اختیار گرفتن کیبورد را فشار داده و نگه میداریم ، روی Tab Bar Controller کلیک کرده و آن را به درون view controller تازه ، درگ می‌کنیم. “view controllers” را برای آیتم Relationship Segue ، گزینش میکنیم.


بعداز ایفا این عمل ، می بایست یک Tab Bar Controller با چهار tab داشته باشیم. نرم افزار را اعمال کرده و ظواهر آن را آزمایش می نماییم:


تغییر‌و تحول تیتر و آیکون مرتبط با گزینه های Tab Bar
به دنبال ، پوشه “CustomTabAppAppDelegate.m” را گزینش کرده و مشی “didFinishLaunchingWithOptions” را بر اساس کدهای تحت ، دستکاری میکنیم:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Assign tab bar item with titles
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
UITabBar *tabBar = tabBarController.tabBar;
UITabBarItem *tabBarItem1 = [tabBar.items objectAtIndex:0];
UITabBarItem *tabBarItem2 = [tabBar.items objectAtIndex:1];
UITabBarItem *tabBarItem3 = [tabBar.items objectAtIndex:2];
UITabBarItem *tabBarItem4 = [tabBar.items objectAtIndex:3];

tabBarItem1.title = @\"Home\";
tabBarItem2.title = @\"Maps\";
tabBarItem3.title = @\"My Plan\";
tabBarItem4.title = @\"Settings\";

[tabBarItem1 setFinishedSelectedImage:[UIImage imageNamed:@\"home_selected.png\"] withFinishedUnselectedImage:[UIImage imageNamed:@\"home.png\"]];
[tabBarItem2 setFinishedSelectedImage:[UIImage imageNamed:@\"maps_selected.png\"] withFinishedUnselectedImage:[UIImage imageNamed:@\"maps.png\"]];
[tabBarItem3 setFinishedSelectedImage:[UIImage imageNamed:@\"myplan_selected.png\"] withFinishedUnselectedImage:[UIImage imageNamed:@\"myplan.png\"]];
[tabBarItem4 setFinishedSelectedImage:[UIImage imageNamed:@\"settings_selected.png\"] withFinishedUnselectedImage:[UIImage imageNamed:@\"settings.png\"]];

return YES;
}
 

  • دیزاین اپلیکیشن
  • ۰
  • ۰

Property List چیست؟

Property List یک راه و روش مطلوب برای ذخیره داده های ساختاری بی آلایش میباشد. معمولاً در فرمت XML ظواهر می‌گردد. در حالتی‌که پیش از اینً بعضا از فولدر های تنظیمات در Mac یا این که iPhone را دستکاری کرده باشید، ممکن میباشد با این پوشه ها با پسوند .plist عکس العمل کرده باشید. طراحی اپلیکیشن در مشهد این فولدر ها مثال هایی از Property List میباشند.

نمی قدرت از Property List برای انبارکردن همگی اشکال اطلاعات بهره مند شد. اقلام اطلاعات در Property List تعداد محدودی از گونه های اطلاعات میباشد که مشتمل بر: “array”، “dictionary”، “string” و غیره میباشد. برای حصول داده ها بیشتر در زمینه ی اشکال گزینه نگهبانی به وسیله Property List می‌توانید به مستند Property List رجوع‌کنید.

Property List کاربرد متداولی برای ذخیره پیکربندی نرم افزار در iOS داراست.  Property List  صرفا برای ذخیره مقدار یه خرده از اطلاعات پیاده سازی شد‌ه‌است.

 

آیا این طریق شایسته ترین راه حل برای ذخیره داده های جدول میباشد؟
مطلقاً خیر. از Property List برای نشانه دادن روش ذخیره داده ها جدول در یک پوشه فرنگی به کار گیری میکنیم. این تنها یک نمونه میباشد. همان گونه که تجربیات بیشتری استخراج می‌کنید، نحوه های دیگری برای ذخیره اطلاعات یاد خواهید گرفت.

تغییر تحول داده های جدول به Property List
توضیحات فوق برای داشتن پیش مورد خیالی در باب Property List کافی میباشد. بیایید دست به شغل شویم و اطلاعات را به Property List تغییر‌و تحول دهیم.

آغاز، پروژه Simple Table project را در Xcode گشوده فرمائید. روی فولدر “SimpleTable”  کلیک راست کرده و  “New File…” را تعیین فرمایید. مورد “other” پایین تمپلت “iOS” را گزینش فرمایید، Property List را تعیین کرده و برای ادامه روی “Next” کلیک فرمائید.

دو نحوه برای دستکاری Property List وجود داراست. می‌توانید در حوزه‌ دستکاری، کلیک راست کرده و آیتم “Add Row” را برای اضافه کردن مقدار نو، گزینش نمائید.

 

بار گذاری Property List در Objective C
به‌دنبال، کدمان را تغییر تحول خوا هیم اعطا کرد و فرمان پخت را از Property List که تا قبل از اینً تولید کردیم، بار گذاری خوا هیم کرد. تلاوت محتوای Property List بسیار سهل و آسان میباشد. iOS SDK اینک دربرگیرنده برخی از توابع داخلی برای تلاوت/تایپ کردن فولدر میباشد.

کد تحت را جایگزین نمائید:

// Initialize table data
tableData = [NSArray arrayWithObjects:@\"Egg Benedict\", @\"Mushroom Risotto\", @\"Full Breakfast\", @\"Hamburger\", @\"Ham and Egg Sandwich\", @\"Creme Brelee\", @\"White Chocolate Donut\", @\"Starbucks Coffee\", @\"Vegetable Curry\", @\"Instant Noodle with Egg\", @\"Noodle with BBQ Pork\", @\"Japanese Noodle with Pork\", @\"Green Tea\", @\"Thai Shrimp Cake\", @\"Angry Birds Cake\", @\"Ham and Cheese Panini\", nil];

// Initialize thumbnails
thumbnails = [NSArray arrayWithObjects:@\"egg_benedict.jpg\", @\"mushroom_risotto.jpg\", @\"full_breakfast.jpg\", @\"hamburger.jpg\", @\"ham_and_egg_sandwich.jpg\", @\"creme_brelee.jpg\", @\"white_chocolate_donut.jpg\", @\"starbucks_coffee.jpg\", @\"vegetable_curry.jpg\", @\"instant_noodle_with_egg.jpg\", @\"noodle_with_bbq_pork.jpg\", @\"japanese_noodle_with_pork.jpg\", @\"green_tea.jpg\", @\"thai_shrimp_cake.jpg\", @\"angry_birds_cake.jpg\", @\"ham_and_cheese_panini.jpg\", nil];

// Initialize Preparation Time
prepTime = [NSArray arrayWithObjects:@\"30 min\", @\"30 min\", @\"20 min\", @\"30 min\", @\"10 min\", @\"1 hour\", @\"45 min\", @\"5 min\", @\"30 min\", @\"8 min\", @\"20 min\", @\"20 min\", @\"5 min\", @\"1.5 hour\", @\"4 hours\", @\"10 min\", nil];
با:

// Find out the path of recipes.plist
NSString *path = [[NSBundle mainBundle] pathForResource:@\"recipes\" ofType:@\"plist\"];

// Load the file content and read the data into arrays
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:path];
tableData = [dict objectForKey:@\"RecipeName\"];
thumbnails = [dict objectForKey:@\"Thumbnail\"];
prepTime = [dict objectForKey:@\"PrepTime\"];
 

  • دیزاین اپلیکیشن
  • ۰
  • ۰


در گردهمایی گذشته ، درباره ی اصول مرتبط با UICollectionView ، کلام کردیم و شیوه اکران گزینه ها ، در چینش grid را نشانه دادیم. تقسیم امر پخت ها ، به تعدادی نصیب متعدد ، میتواند عمل جذابی باشد. نصیب نخستین ، مشتمل بر فرمان پخت های مرتبط با ناهار/شام و قسمت دیگر ، مشمول امر پخت هایی که مرتبط با آب میوه ها و دسر ها میباشند. طراحی اپلیکیشن در مشهد همانگونه که تا قبل از اینً  آموخته اید ، برای هر collection view  می بایست data source object ، داشته باشیم ، تا بتواند محتوای قابل اکران در collection view ، را تأمین کند. مسئولیت data source ، به دست آوردن موردها پایین برای collection view ، است:

تعداد بخشها در collection view
تعداد گزینه در هر قسمت.
Cell view برای یک داده ی خاص.
 

نرم افزار امر پخت معمولی ای که در گردهمایی قبلی  توسعه و گسترش دادیم ، صرفا یک قسمت دارااست. در‌این فراگیری ، قصد داریم  جستجو در collection view را ادامه داده و شیوه مجموعه بندی مورد ها ، در قسمت های متفاوت را به شما آرم دهیم. خلال این ، خواهید آموخت که به چه شکل view مرتبط با Header و Footer را به collection view ، اضافه فرمائید.

در صورتی‌که هنوز ، یادگرفتن گرد هم آیی گذشته را تحقیق ننموده اید ، سفارش میشود که به طبعً ، آن را پژوهش فرمائید.

 

تقسیم امر پخت ها به دو قسمت در UICollectionView
در برنامه بی آلایش امر پخت ، RecipeCollectionViewController ، اصولا  data source object مرتبط با collection view است. برای تقسیم نمودن فرمان پخت به دو نصیب ، یک سری آیتم تغییرات وجود دارا هستند ، که می بایست آن‌ها‌را جاری ساختن دهیم.

آرایه recipeImages ، اسم های مرتبط با تصویر تک تک امر پخت ها را ذخیره می نماید. از آن جایی که ما رغبت داریم ، فرمان پخت ها را به دو مجموعه ، تقسیم نماییم ، بایستی کد خویش را تغییر تحول دهیم و از آرایه های تو در تو (nested arrays) ، برای ذخیره سازی دسته های گوناگون امر پخت ها ، به کارگیری نماییم. عبارت آرایه های تو در تو ، ممکن میباشد برای بعضی از اشخاص که تجارب متعددی در اپلیکیشن نویسی ندارند، تازگی داشته باشد. صورت ذیل ، طریق به کار گیری ما از  آرایه های تو در تو‌را برای ذخیره سازی اطلاعات ، نماد می‌دهد. مجموعه اولیه ، دربرگیرنده تصاویری از غذاهای اساسی و مجموعه دیگر ، تصاویر مرتبط با آب میوه ها و دسرها را علامت میدهد. آرایه سطح اولیه (یعنی recipeImages ) مشتمل بر دو آرایه میباشد ، که نشانه دهنده مناطق است. آرایه هر قسمت ، دربردارنده گزینه های داده ای (یعنی اسم تصویر امر پخت) برای هر قسمت خاص ، است.

به قسمت source code ، بر می‌گردیم. در فولدر RecipeCollectionViewController.m ، مقداردهی آرایه “recipeImages” ، در درون مشی viewDidLoad ، را مبتنی بر ذیل ، تغییر‌و تحول میدهیم:

- (void)viewDidLoad
{
[super viewDidLoad];

// Initialize recipe image array
NSArray *mainDishImages = [NSArray arrayWithObjects:@\"egg_benedict.jpg\", @\"full_breakfast.jpg\", @\"ham_and_cheese_panini.jpg\", @\"ham_and_egg_sandwich.jpg\", @\"hamburger.jpg\", @\"instant_noodle_with_egg.jpg\", @\"japanese_noodle_with_pork.jpg\", @\"mushroom_risotto.jpg\", @\"noodle_with_bbq_pork.jpg\", @\"thai_shrimp_cake.jpg\", @\"vegetable_curry.jpg\", nil];
NSArray *drinkDessertImages = [NSArray arrayWithObjects:@\"angry_birds_cake.jpg\", @\"creme_brelee.jpg\", @\"green_tea.jpg\", @\"starbucks_coffee.jpg\", @\"white_chocolate_donut.jpg\", nil];
recipeImages = [NSArray arrayWithObjects:mainDishImages, drinkDessertImages, nil];

}

  • دیزاین اپلیکیشن
  • ۰
  • ۰

پیش از Xcode 4.5 ، اینگونه مفهومی از base internationalization وجود نداشت. Xcode دسته storyboard ها را برای هر محلی سازی ، تکرار میکرد. یعنی ، در لحاظ بگیرید اپی که به 5 لهجه محلی سازی گردیده باشد. Xcode 5 تیم از storyboard ها را با هدف ها محلی سازی ، ساخت‌و‌ساز می کند. طراحی اپلیکیشن در مشهد یک گونه های عمده برای روند محلی سازی وجود دارااست. زمانی که نیاز به اضافه کردن یک عنصر UI نو در Storyboard ها داریم ، نیاز خوا‌هیم داشت یک المان شبیه را برای هر محلی سازی ، اضافه کنیم. این یک پروسه خسته کننده میباشد. به همین برهان میباشد که اپل ، امکان base internationalization را در Xcode 4.5 معرفی کرده است.

با base storyboard تنظیمات گردیده ، فعلا استعداد داریم که عملیات محلی سازی به گویش فرانسوی را ایفا دهیم. آغاز ، view controller را در storyboard گزینش میکنیم . بعد ، به project info گشوده می‌گردیم. روی کلید + از نصیب Localization کلیک کرده و از لیست popup گویش French را تعیین میکنیم.

به دنبال ، از ما منظور میگردد که پوشه های منبع و گویش مرجع را برای تولید محلی سازی French گزینش نماییم. مورد ها را بر پایه ی تصویر تحت تعیین میکنیم. تک تک پوشه ها را گزینش کرده و کلید Finish را کلیک میکنیم.

پس از ایفا فعالیت ، می بایست اعتنا گردد که در navigator پروژه ، یک آرم مستطیلی صورت ، پس از MainStoryboard.storyboard ، وجود دارااست. آن را گسترش میدهیم و خوا هیم روءیت کرد که دو base storyboard  و یک فولدر strings از storyboard فرانسوی در آن وجود داراست.

پوشه فرانسوی strings (یعنی MainStoryboard.strings (French)) را تعیین می‌کنیم. می بایست یک لیست از فن هایی با دو جفت key/value را بایستی ببینیم:

/* Class = \"IBUILabel\"; text = \"Stephane Mallat\"; ObjectID = \"0N3-up-Ts6\"; */
\"0N3-up-Ts6.text\" = \"Stephane Mallat\";

/* Class = \"IBUINavigationItem\"; title = \"Book Store\"; ObjectID = \"9EY-vY-nyh\"; */
\"9EY-vY-nyh.title\" = \"Book Store\";

/* Class = \"IBUILabel\"; text = \"This book is intended to serve as an invaluable reference for anyone concerned with the application of wavelets to signal processing. It has evolved from material used to teach \\\"wavelet signal processing\\\" courses in electrical engineering departments at Massachusetts Institute of Technology and Tel Aviv University, as well as applied mathematics departments at the Courant Institute of New York University and École Polytechnique in Paris. \"; ObjectID = \"gkh-KY-W1e\"; */
\"gkh-KY-W1e.text\" = \"This book is intended to serve as an invaluable reference for anyone concerned with the application of wavelets to signal processing. It has evolved from material used to teach \\\"wavelet signal processing\\\" courses in electrical engineering departments at Massachusetts Institute of Technology and Tel Aviv University, as well as applied mathematics departments at the Courant Institute of New York University and École Polytechnique in Paris. \";

/* Class = \"IBUIButton\"; normalTitle = \"Buy\"; ObjectID = \"jul-3l-6x7\"; */
\"jul-3l-6x7.normalTitle\" = \"Buy\";

/* Class = \"IBUILabel\"; text = \"A Wavelet Tour of Signal Processing\"; ObjectID = \"xi7-zh-v4N\"; */
\"xi7-zh-v4N.text\" = \"A Wavelet Tour of Signal Processing\";
زمانی که یک محلی سازی نو را اضافه میکنیم ، Xcode باطن base storyboard را نسخه برداری می نماید ، مورد های متنی آن‌ها را برای اعمال محلی سازی ، دستیابی می کند و آنان‌را در درون پوشه strings قرار می‌دهد. همانطور که در کدهای فوق می‌بینید ، حرفه های قابل مشاهده از storyboard ها همچون برچسب ، تیتر navigation bar و برچسب کلید در درون فولدر strings گذارده گردیده اند. مجموع موجودیت ها ، دارنده جفت مقادیر key/value می‌باشند. قسمت نخستین از key مرتبط با ID شیء از گزینه UI است. خواهیم توانست object ID از شیء UI را در پایین قسمت Identity Inspector پیدا کنیم. برای مثال ، object ID از کلید Buy بر اساس صورت ذیل میباشد:

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

  • دیزاین اپلیکیشن
  • ۰
  • ۰

برای این که بتوانیم ادراک بهتری از کلاس UIActivityViewController و قابلیت و امکان AirDrop به شما بدهیم ، ما یک نرم افزار AirDrop demo خوا‌هیم تشکیل داد. این نرم افزار بسیار معمولی میباشد. زمانی که نرم افزار فعال سازی میگردد ، ما یک table view خوا هیم رویت کرد که بعضا طراحی اپلیکیشن در مشهد از پوشه ها را به عنوان مثال پوشه تصویری ، فولدر PDF و فولدر متنی را لیست نموده است. در content view یک کلید action در کناره بالا و سمت راست از کاغذ اکران وجود دارااست. با ضربه زدن بر روی این کلید ، اپلیکیشن قابلیت و امکان AirDrop را بالا خواهد آورد و ما قادر خواهیم بود تصاویر یا این که اوراق خویش را با دستگاه های محیط به اشتراک بگذاریم.

ما شما‌را تشویق می‌کنیم که نرم افزار demo را از آغاز بسازید. ولی برای صرفه جویی در وقت ، می‌توانید برای استارت عمل ، تمپلت پروژه را ا اینجا download this project template دانلود نمایید. بعد از دانلود ، پروژه را در Xcode گشوده فرمائید. Storyboard تصویر پایین را در آن مشاهده خواهید کرد:

ما پیش از اینً ListTableViewController و DocumentViewController را برای شما طراحی کرده ایم. در شرایطی که برنامه را کامپایل و جاری ساختن فرمایید ، لیستی از پوشه ها نمایش داده میشود. در صورتی بر روی هریک از پوشه ها ضربه بزنید ، محتوای تصویری یا این که سندی آن پوشه اکران داده شود. البته ، کلید Share هنوز طراحی نشده میباشد و این چیزی میباشد که ما قصد داریم راجع‌به آن کلام کنیم.

اضافه کردن امکان AirDrop
در تمپلت پروژه ، ListTableViewController برای اکران دادن لیستی از فولدر ها در یک table view آیتم به کارگیری قرار میگیرد ، در حالی که DocumentViewController ، محتوای مدرک را در کاغذ web view اکران میدهد. کلید action در document view با روال share: از کلاس DocumentViewController  مرتبط شد‌ه‌است. مشی را با کد ذیل بازنویسی میکنیم:

- (IBAction)share:(id)sender {
NSURL *url = [self fileToURL:self.documentName];
NSArray *objectsToShare = @[url];

UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];

// Exclude all activities except AirDrop.
NSArray *excludedActivities = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook,
UIActivityTypePostToWeibo,
UIActivityTypeMessage, UIActivityTypeMail,
UIActivityTypePrint, UIActivityTypeCopyToPasteboard,
UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll,
UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr,
UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo];
controller.excludedActivityTypes = excludedActivities;

// Present the controller
[self presentViewController:controller animated:YES completion:nil];

}
درصورتی که فراموش نکرده باشید ، کد بالا بسیار مشابه به کدی میباشد که ما آن را در جلسات ابتدایی توضیح داده بودیم. کد فوق ، به آسانی یک UIActivityViewController را ساخت و ساز می نماید، به غیر از AriDrop تک تک کار ها را حذف می نماید و کنترلر را تحت عنوان modal view اکران میدهد. نصیب مهارانه این شغل ، طریق تمجید اشیا برای اشتراک گذاری است. در اینجا ، فولدر را برای به اشتراک گذاشتن به باطن شیء NSURL میاوریم و فولدر URL را تحت عنوان یک آرایه به AirDrop پاس میدهیم.

دو خط آغاز از کد بالا ، مسئول تبدیل فولدر URL میباشند. خصیصه documentName ، پوشه روان (مثلا ios-game-kit-sample.pdf) در حالا اکران در document view را ذخیره می نماید. ما به آسانی مشی fileToURL: را با اسم document فراخوانی میکنیم و این مشی ، فولدر URL متناظر را گشوده می گرداند. اسلوب fileToURL: در تمپلت پروژه جان دار میباشد و کد تحت مرتبط با آن میباشد:

- (NSURL *) fileToURL:(NSString*)filename
{
NSArray *fileComponents = [filename componentsSeparatedByString:@\".\"];
NSString *filePath = [[NSBundle mainBundle] pathForResource:[fileComponents objectAtIndex:0] ofType:[fileComponents objectAtIndex:1]];

return [NSURL fileURLWithPath:filePath];
}
این کد بسیار معمولی میباشد. از جمله ، ios-game-kit-sample.pdf ترجمه شود به:

file:///Users/simon/Library/Application%20Support/iPhone%20Simulator/7.0.3/Applications/A5321493-318A-4A3B-8B37-E56B8B4405FC/AirDropDemo.app/ios-game-kit-sample.pdf. . اشکال پوشه URL بستگی به دستگاه در هم اکنون جاری ساختن دارااست. البته URL می بایست با پروتکل “file://”  آغاز گردد. با شیء file URL ، ما آرایه مربوطه را ساخت‌و‌ساز کرده و آن را به UIActivityViewController برای اشتراک گذاری به AirDrop جابجایی میدهیم.

تشکیل داد و اجرای برنامه AriDrop Demo
شغل اعمال شد. این کاری بود که برای طراحی به اشتراک گذاری AirDrop نیاز داشتیم. نرم‌افزار را بر روی یک iPhone حقیقی و واقعی کامپایل و جاری ساختن می نماییم. آری ، درسته! ما به یک دستگاه حقیقی و واقعی برای آزمایش قابلیت و امکان اشتراک گذاری AirDrop نیاز داریم. امکان به اشتراک گذاری در مشابه ساز شغل نمی نماید.
 

  • دیزاین اپلیکیشن
  • ۰
  • ۰


عمل با UITableView در Xcode 5 با استعمال از Storyboard

وقتی که زمان یادگرفتن نرم افزار نویسی iOS را آغاز کردیم ، ما یک یادگرفتن درباره UITableView (نشست سوم) داشتیم و نشانه دادیم که چه طور با به کار گیری از Storyboard یک برنامه بی آلایش table بسازیم. این گرد‌همایی آموزشی یکی دوستداشتنی ترین جلسات آموزشی ما است. طراحی اپلیکیشن در مشهد با این درحال حاضر ، ممکن میباشد قابلیت اجرا این شغل از روش Xcode 5 به شما داده نشود. واپسین ورژن Xcode ، اذن استعمال از Storyboard را از روش Interface Builder نمی دهد. Storyboard ها دیگر مورد ازروی اراده در هنگام ساخت‌و‌ساز یک پروژه Xcode نو نمی باشند و به طور پیش فرض در Xcode قرار دارا‌هستند. یکی دلایلی که نمی توانیم فرایند فراگیری UITableView  در گرد هم آیی سوم را برای تولید نرم‌افزار نو در Xcode 5 دنبال نماییم ، همین مسئله میباشد.

به هر درحال حاضر ، تصمیم گرفتیم که فراگیری گرد‌همایی سوم را کاملا برای Xcode 5 و iOS 7 آپدیت رسانی کنیم و الان اینجا هستیم.

وارد فراگیری UITableView می شویم.

آغاز ، به‌این سؤال جواب می‌دهیم. Table View در نرم افزار آیفون چیست؟ Table View یکی موادسازنده UI متداول در نرم‌افزار های iOS است. بخش اعظمی از اپلیکیشن ها ، به هر طریقی ، از Table View برای اکران دادن لیستی از داده ها استعمال می کنند. شایسته ترین نمونه دراین باره برنامه داخلی Phone میباشد. مخاطبان شما در یک Table view اکران داده میگردند. نمونه دیگر، اپلیکیشن Mail میباشد. این برنامه از Table View برای اکران طومار ­های الکترونیکی صندوق پستی شما به کارگیری می­ نماید. Table View تنها برای اکران داده­ های متنی به کار گیری نمی ­خواهد شد. Table View اذن می ­دهد ، داده­ ها را در پوسته تصویر نیز نشانه دهیم. YouTube و Airbnb نمونه­ های بهتر برای این نوع کاربرد می ­باشند.

ساخت‌و‌ساز یک پروژه SimpleTable
با داشتن درکی از table view ، بیایید دست به فعالیت شویم و یک برنامه معمولی را ساخت نماییم. در شرایطی که در یادگیری نرم‌افزار نویسی iOS دور از شوخی میباشید ، تنها به تلاوت عصر های آموزشی اکتفا نکنید. تلاوت را متوقف سازید ، Xcode خویش را گشوده کرده و کدنویسی نمائید! این شایسته ترین طریق برای استیناف اپلیکیشن نویسی میباشد.

بعداز این که Xcode فعال‌ساز‌ی شد ، یک پروژه تازه با استعمال از تمپلت “Single View application” ساخت و ساز میکنیم.

برای ادامه فعالیت ، روی کلید Next کلیک می‌کنیم. مجدد ، مورد های لازم برای پروژه Xcode را کامل شدن می‌کنیم.

Product Name : اسم پروژه را SimpleTable قرار میدهیم.
Company Identifier : در حالتی که شما یک اسم دامنه دارید، می ­توانید از آن استعمال نمائید؛ در غیر این شکل، از اسم خویش یا این که از عبارت  “edu.self” استعمال فرمائید.
ClassPrefix: SimpleTable Xcode به صورت اتومات از پیشوند (prefix) برای اسم­گذاری کلاس به کار گیری می ­نماید. در آتی ممکن میباشد پسوند خویش را تعیین کرده یا این که حتی آن را خالی بگذارید. ولی برای این یادگرفتن، اذن دهید آن را معمولی نگه داریم و از “SimpleTable” به کارگیری کنیم.
Device Family: iPhone برای این پروژه صرفا عبارت “iPhone” را به کار گیری می‌کنیم.


برای ادامه روی کلید Next کلیک می‌کنیم. Xcode آن گاه ، محل ذخیره­ سازی پروژه “SimpleTable” را از ما می ­پرسد. یک فایل (به صورت نمونه روی دسکتاپ) برای ذخیره سازی پروژه خویش گزینش می نماییم. مورد Source Control را تعیین نمیکنیم. برای ادامه کلید “Create” را کلیک میکنیم. به آسانی ، یک فایل را برای انبارکردن پروژه خویش تعیین میکنیم. با تأیید ما ، Xcode به طور اتومات پروژه “SimpleTable” را بر طبق مورد هایی که ارائه کرده ایم ، می سازد. سود به دست آمده بعداز اجرا فرایند فوق می بایست مشابه تصویر پایین باشد:
 

  • دیزاین اپلیکیشن
  • ۰
  • ۰


React Native و Flutter فناوری‌های جدیدی برای پیشرفت نرم افزار‌های کراس پلتفرم (cross-platform) می‌باشند. ری اکت نیتیو بوسیله شرکت فیسبوک و فلاتر به وسیله گوگل پیاده سازی گردیده‌اند. هر مورد از آن دو با ورودشان به بازار توانستند بسط‌دهندگان نرم افزار‌ و نرم‌افزار‌نویس‌ها را زیر اثر قرار دهند و محبوبیت متعددی فی مابین آن ها پیدا نمایند. Flutter و React Native تفاوت‌ها و تشابه‌های متعددی دارا هستند. به همین خیال گاهی نرم افزار‌نویس‌ها نمی‌توانند طراحی اپلیکیشن در مشهد تصمیم‌گیری نمایند که برای توسعه و گسترش نرم افزار‌ از کدام یک به کارگیری نمایند. در‌این مقاله کاملا این دو فناوری توسعه و گسترش نرم افزار را با هم مقایسه می کنیم تا به شما امداد کنیم در حالت متفاوت، تعیین قابل قبولی در بین Flutter و React Native داشته باشید.

مقایسه ری اکت نیتیو (React Native) با فلاتر (Flutter)
1. لهجه اپ‌نویسی
فلاتر و ری اکت نیتیو، هریک لهجه نرم افزار‌نویسی خاص خودشان را دارا هستند. پس گسترش‌دهندگان نرم افزار‌ برای عمل با هرمورد از آنها صرفا مایحتاج میباشد بر یک لهجه اپ‌نویسی احاطه داشته باشند. این خصوصیت والا‌ترین مزیت Flutter و React Native به حساب می آید و عمل با آنها‌را بسیار شل نموده است.

– لهجه نرم افزار‌نویسی React Native
React Native از لهجه اپ‌نویسی جاوا اسکریپت برای گسترش نرم افزار‌های کراس‌ پلتفرم به کارگیری می‌نماید. جاوا اسکریپت اینک یک کدام از پرطرفدارترین گویش‌های اپلیکیشن‌نویسی میباشد و معمولا با ری‌اکت و دیگر چارچوب‌های جاوا اسکریپت به کار گیری می‌گردد. جاوا اسکریپت جزء گویش‌های اپ‌نویسی dynamically typed میباشد و نیاز به گزینش نوع متغیر ندارد.

– لهجه نرم افزار‌نویسی Flutter
فلاتر از لهجه اپ‌نویسی دارت به کارگیری می‌نماید. این گویش در سال 2011 به وسیله کمپانی گوگل ساخت و ساز شد. ولی اپ‌نویس‌ها کم کم از آن استعمال می‌نمایند. فعالیت کردن با دارت برای توسعه و گسترش‌دهندگان جاوا یا این که جاوا اسکریپت، آسوده میباشد به این دلیل که دارت بیشتر از مفاهیم شیء گرایی حفاظت می‌نماید.

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

– معماری فنی React Native
معماری React Native به شدت متکی به سیستم مجال اجرای JS میباشد. سیستم فرصت اجرای JS به JavaScript bridge نیز پر اسم و رسم میباشد. در طی ایفا، کد جاوا اسکریپت در کد نیتیو کامپایل میگردد.  در واقعیت React Native از معماری Flux کمپانی فیسبوک فایده میبرد و برای برقراری رابطه با ماژول‌های نیتیو از JavaScript bridge به کار گیری می‌نماید.

– معماری فنی Flutter
Flutter از چارچوب دارت به کارگیری می‌نماید که بیشتر اجزای داخلی را در خویش مکان داده میباشد به همین خیال سایز بزرگی دارااست و برای برقراری رابطه با ماژول‌های نیتیو به bridge نیاز ندارد. دارت چارچوب‌های متعددی داراست، برای مثال Material Design و Cupertino. این چارچوب‌ها مجموع فناوری‌های موردنیاز برای بسط اپ‌های تلفن همراه را مهیا می‌نمایند. چارچوب دارت از موتور Skia C++ استعمال می‌نماید
 

  • دیزاین اپلیکیشن