loading...
طراحی وب سایت

nariman بازدید : 27 دوشنبه 28 مرداد 1392 نظرات (0)

 

اما اگر شما هم برنامه نويس يک پلتفرم ديگر هستيد و مي خواهيد شروع به برنامه نويسي آي فون ( Objective-C ) کنيد? اين سري جديد از پست هاي آموزشي به درد کساني مي خورد که مقداري تجربه  طراحی وب سایت در برنامه نويسي داشته باشند. اين پيش فرض در اين حد مي باشد که شما فرق يک حلقه‌ي While را با حلقه عروسي بدانيد! (; اگر فکر مي کنيد که اين فرق را نمي دانيد و در برنامه نويسي تازه کار هستيد متاسفانه اين سري از پست هاي آموزشي چندان به درد شما نخواهد خورد.

 

هدف از اين پست ها آن است که با ياد دادن مفاهيم اوليه Objective-C به شما اعتماد به نفس داده شود و به جاي نوشتن آموزش هايي با جزئيات کامل براي هر Syntax ? شما را به شکلي عملي وارد کار کرده و با مثال هاي زياد دستتان را به کد آلوده خواهد کرد!

 

در سري اول اين پست هاي آموزشي ياد خواهيد گرفت که چگونه يک برنامه ساده براي آي فون بنويسيد که از ليستي از جملات ذخيره شده به صورت اتفاقي يکي از آنها بر روي آي فون شما نمايش داده شود. با يادگيري اين مثال با يکسري از مفاهيم در Objective-C که در زير آمده است آشنا خواهيد شد :

 

- Variables

 

- Arrays

 

- Property lists

 

- Strings

 

- Predicates

 

- انتخاب اتفاقي يا Random

 

- object هاي ساده در interface و event ها

 

همانطور که مي بينيد در اين سري پست ها من از لغات فارسي و جايگزين براي مفاهيمي نظير Array استفاده نخواهم کرد چرا که با استفاده از لغات جايگزين فارسي براي اينها تنها پيچيدگي کار بيشتر خواهد شد.

 

همچنين بگذاريد که در اينجا يک هشدار نيز به شما بدهم – برنامه نويسي براي iOS بسيار لذت بخش و کمي هم اعتياد آور خواهد بود. پس آماده باشيد که قسمتي از وقت خواب خود را به اين موضوع اختصاص داده و از کارهاي روزمره تان بزنيد (;

 

قبل از شروع خواندن نيز مطمئن شويد که يک اکانت Developer اپل داريد و آخرين نسخه Xcode را نيز دانلود و نصب کرده ايد. ( آخرين نسخه Xcode از طريق Mac App Store به رايگان در دسترس قرار دارد )

 

شروع کار

 

اول از همه يک Project جديد در Xcode ايجاد کنيد. در اين راهنما در Xcode 4.5 به بالا و iOS 6 به بعد استفاده شده است. اگر نسخه Xcode شما از اين قديمي تر است مي بايست آن را بروزرساني کنيد!

 

خب Xcode را اجرا کرده و يک Project جديد از نوع iOS\Application\Single View Application ايجاد نماييد.

 

براي Product Name اسم QuoteGen را گذاشته و device family را بر روي iPhone قرار دهيد و مطمئن شويد که چک مارک Use Automatic Reference Counting و Use Storyboards خورده باشد. ( چک مارک هاي ديگر را خالي بگذاريد ) حال بر روي Next زده و مکان ذخيره Project خود را تعيين نماييد.

 

 

 

حتما متوجه شده ايد که Project شما با فايل هاي AppDelegate.h ? AppDelegate.m ? ViewController.h ? ViewController.m و MainStoryboard.storyboard ايجاد گشته است.

 

 

 

AppDelegate شامل کدهايي مي شود که App شما را initiate مي کند. براي قسمت اول اين پست هاي آموزشي فعلا همين قدر کافي است که بدانيد. اما در زير توضيح کوتاهي از ديگر فايل ها آمده است که با آنها به طور مستقيم کار خواهيد کرد:

 

- MainStoryboard.storyboard فايل طرح بندي Interface مي باشد. توسط اين فايل به شکل ديداري صفحات برنامه تان را بر روي آي فون ساخته و يا ويرايش مي کنيد.

 

- ViewController.m کلاس کنترلر براي interface مي باشد. فايل طرح بندي interface به اين فايل متصل است. البته اين کار به شکل اتوماتيک انجام مي شود و در اين مرحله نيازي نيست در مورد آن فکر کنيد به جز آنکه بدانيد هر Object و يا event اي که در کلاس interface خود مي سازيد مي تواند به راحتي به طرح بندي interface شما متصل شود. اين همان فايلي است که شامل کدهاي Objective-C اي خواهد شد که شما مي خواهيد بنويسيد.

 

- ViewController.h فايل header براي کلاس کنترلر interface مي باشد که در آن مي توانيد instance variable ها و همچنين Object ها و event هايي که مي خواهيد از صفحه interface به آنها دسترسي داشته باشيد را تعريف نماييد.

 

توجه: در Xcode دو راه براي ساخت interface وجود دارد – توسط Storyboard ها و توسط فايل هاي Xcode Interface Builder ( فايل هاي XIB ). هر دوي اينها راه هاي خوبي هستند اما در اين سري پست هاي آموزشي از Storyboard استفاده خواهيم کرد چرا که اين روزها راه معمول تري است. اما در کل هر دو راه تقريبا شبيه به هم هستند – اگر يکي از آنها را ياد بگيريد مي توانيد به راحتي آن يکي را نيز با صرف زمان کمي ياد بگيريد. 

 

البته در قسمت هاي بعدي در مورد Storyboard ها بيشتر صحبت خواهيم کرد.

 

شروع کار به شکل صحيح

 

اولين کاري که مي بايست انجام دهيد ساختن يکسري variable براي جملاتي است که مي خواهيد برنامه ( app ) شما نشان دهد. جلات معمولي و جملاتي که ديالوگ هاي يکسري فيلم هاست.

 

براي انجام اين کار مي بايست دو property بسازيد. جوانب زيادي در مورد property ها وجود دارد اما فعلا تنها آنها را راهي براي ساخت variable ها در داخل کلاس تان بدانيد.

 

ساخت property ها بسيار آسان است – بياييد يک property براي Array اي از جملات تعريف نماييم. کافي است خط کد زير را به فايل ViewController.h اضافه نماييد. اين خط مي بايست بين @interface و @end باشد :

 

@property (nonatomic, strong) NSArray *myQuotes;

 

بياييد اين خط را تکه تکه بررسي کنيم:

 

- ابتدا مي بايست از کلمه کليدي @property استفاده کنيد.

 

- سپس property attribute ها را ليست خواهيد کرد. بدون آنکه بخواهيم به جزئيات بپردازيم – nonatomic به آن معناست که کارآيي را به قيمت thread-safety بالا خواهد برد و strong نشان مي دهد که pointer اين variable خاص در حافظه مي ماند تا وقتي که object اي که اين pointer را نگه مي دارد وجود داشته باشد.

 

- سپس type يا نوع property تان را مي نويسيد. در اينجا NSArray * انتخاب شده است که به معناي « يک Pointer به يک کلاس NSArray » مي باشد. NSArray يک کلاس به درد بخور ارائه شده از طرف اپل است که ليستي از داده ها را ذخيره مي کند و به زودي بيشتر در مورد آن صحبت خواهيم کرد.

 

- در آخر نيز نام Property را مي گذاريد.

 

با نوشتن همين خط ساده? حال يک variable داريد که مي توانيد آن را در اين کلاس set و يا get نماييد!

 

توجه: در ورژن هاي قبلي iOS نياز بود که بعد از تعريف property ها آنها را @synthesize کنيم. اما در iOS 6 به بعد ديگر اين کار نياز نيست و با همان يک خط کد ساده property شما تعريف مي شود!

 

همچنين در زمان هاي قديم مي بايست مديريت حافظه را به صورت دستي و خودمان انجام مي داديم اما حالا مي توانيم از ويژگي جديدي به نام Automatic Reference Counting يا ARC استفاده نماييم. در مورد ARC بعدا بيشتر صحبت خواهيم کرد.

 

اين برنامه قرار است يکسري جملات هم از ديالوگ هاي فيلم ها طراحی وب سایت نشان دهد. براي اين منظور به يک Array ديگر نيز احتياج داريم:

 @property (nonatomic, strong) NSMutableArray *movieQuotes;

در اينجا از يک NSMutableArray استفاده کرده ايم به خاطر آنکه به شما انواع مختلفي از Array را نشان دهيم. تفاوت اين نوع Array با NSArray آن است که بعد از ساختن يک NSArray ديگر نمي توان به آن چيزي اضافه کرد و يا از آن کم کرد اما NSMutableArray به شکلي است که به راحتي مي توان چيزي از آن حذف کرد و يا به آن اضافه کرد.

مي توانيد هر هفته منتظر يک قسمت از اين سري پست ها باشيد!

ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • آرشیو
    آمار سایت
  • کل مطالب : 19
  • کل نظرات : 5
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • آی پی امروز : 5
  • آی پی دیروز : 6
  • بازدید امروز : 2
  • باردید دیروز : 0
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 3
  • بازدید ماه : 2
  • بازدید سال : 26
  • بازدید کلی : 2,587