آيفونآيبودآبل

سلسلة دروس برمجة تطبيقات الآيفون (1)

آيفونآيبودآبل

1276627696_14277791302d16557a6fbo

بداية نسأل الله العظيم أن يوفقنا لكل مايحب ويرضى وأن ينفع بهذه السلسلة من الدروس والتي هي عبارة عن مواضيع مترجمة من محاضرات جامعة ستانفورد لبرمجة تطبيقات الآيفون والآيبود تش ويمكن الحصول على هذه المحاضرات من برنامج iTunes .

ولا يشترط في الوقت الحالي أن يكون لديك آيفون أو آيبود تتش لأن هناك محاكٍ لهما في نفس البرنامج الذي سنعمل عليه.

وللاستزادة والتوسع في هذا المجال يمكن زيارة هذين الموقعين:

iOS Dev Center .

Dev Forum .

نبدأ بسم الله الرحمن الرحيم في الدرس الأول:

في سلسلة هذه الدروس سنتعلم عن:

– الأدوات المستخدمة:  xcode ‪- interface builder

– الهياكل التي تبنى عليها البرامج: Foundation ‪- UIKit

– اللغة المستخدمة: Objective-c‪

سوف ندخل قليلاً في نظام الآيفون وطبقات النظام الموجودة في الجهاز وهي:

l1_11

كما تشاهدون في الصورة ( اضغط لتكبير الصورة ) كل طبقة وماتحتوي ونحن سنعمل على الطبقات الأخيرة ولن ندخل إلى أعماق النظام في الوقت الحالي.

سنأخذ الآن نبذة سريعة عن الكائنات Objects قبل بداية الدرس:

كما نشاهد من الاسم Objective-C وهذا يعني أن هذه اللغة معتمدة في أساسها على الكائنات وكما هو الحال مع جميع لغات التي تأخذ مبدأ Object Oriented ، فالكائنات بطبيعة الحال تتكون من ثلاثة أشياء:

‫- اسم الكائن .

‫-المتغيرات state .

– الأساليب behaviors or functions .

فلكل كائن اسم وهذا الكائن يحتوي على متغيرات والتي تقوم بحفظ القيم سواء حرفية أو رقمية وتتغير هذه المتغيرات من خلال الأساليب أو function والتي يمكن من خلالها التحكم بهذه المتغيرات.

بعد هذه المقدمة عن الآيفون وطبقاته والكائنات ومتغيراتها سندخل في أول تطبيق للآيفون.

في البداية عليك تنزيل برنامج xcode من موقع Apple Developer ، وشروط التنصيب:

– يكون لديك حساب لدى Apple Developer ( راجع موضوع كيف تشترك في برنامج مطوري الآيفون ؟ )

– نظام Mac OSX .

بعد ذلك ، نبدأ في الخطوات :

screen-capture1

نختار منها create a new xcode project ، و ستخرج لنا نافذة جديدة :

screen-capture

سنختار من قائمة iOS Application الخيار الأخير Window-based Application ، وستظهر لنا نافذه لنقوم بحفظ الملف بعد ذلك ستخرج لنا نافذة أخرى:

screen-capture-12

وكل مايهمنا من هذه النافذة الآن هو ملف MainWindow.xib ومن هذا الملف نستطيع إنشاء الواجهة الرسومية للبرنامج بعد الضغط مرتين على هذا الملف سيفتح برنامج آخر interface builder :

Screen-shot

في القائمة على اليسار library والتي تحتوي على :

– objects كــ input and output objects المدخلات والمخرجات لواجهة البرنامج.

– classes للكائنات المستخدمة “object ” والتي تحتوي على المتغيرات والأساليب ‪”variable and behavior or function‪”

– أيضا هناك نافذة window وهي التي تحتوي على الكائنات لواجهة البرنامج والتي سوف تظهر للمستخدم.

– نافذة Inspector وفيها معلومات عن أي كائن والربط بين التعريفات والكائنات وغيرها.

– نافذة   MainWindow.xib وهي الملف الرئيس للواجهة بما يحوي من كل شيء سواء واجهة أو كائنات ولن نستطيع استخدام أي object إلا بعد أن نضعه في هذه النافذة.

إن لم تكن ظاهرة لك هذه القوائم يمكن إظهارها من قائمة الــ Tool‪

الآن نسحب من:

Library ‪-> Object ‪->Slider

ونضعه في نافذة  window

وأيضا نسحب اثنين من:

Library ‪-> Object ‪->Label

ونضعهم على الـ window

ويمكن تغيير مقاس كل من هذين الكائنين، وأيضًا بالنقر مرتين على label يمكننا تغيير الكتابة الموجودة كما هو واضح في الصورة :

Screen-shot2

بعد ذلك من قائمة Library ->Object  نسحب object إلى النافذة MainWindow.xib بعد مانحدد هذا الكائن ننتقل على قائمة Inspector ومن Identity نعمل على تغيير اسم class إلى Controller  أو أي اسم آخر تريده.

بعد ذلك ننتقل إلى قائمة Library -> Classes ومن هذه القائمة نحدد الكائن Controller وفي أسفل القائمة من القائمة المنسدلة نختار Action ، و ثم نضيف Action إلى هذا Controller Object ونسميه SliderChange.

ثم من نفس القائمة المنسدلة نختار Outlets ونضيف قيمتين وهما:

– slider والـ type لها  UISlider

– label والـ type لها  UILabel

كما هو واضح في هذه الصورة :

Screen-shot3

بعد ذلك من قائمة Inspector نختار Connections ، ونعمل على ربط Slider بـ Slider الموجودة في نافذة الـ Window من خلال الضغط على الدائرة وتوصيلها إلى Slider .

ونفس العمل يتم على Label ويربط مع الـ 0

Screen-shot4

آخر ماسنقوم به هو متى ماتغيرت قيمة الـSlider تتغير قيمة الـ Value ، نحدد slider في نافذة الـ window ومن قائمة Inspector نختار Attributes نغير الـ values من 0 إلى 100.

ومن nspector ‪-> connections ‪->events ‪-> value changed

نضغط على الدائرة مع الإمساك بها ونوصلها بالـ Controller Object ثم نضغط enter

Screen-shot5

ثم نذهب إلى File‪-> write class files

ونعمل حفظ للملف وأيضًا نضيفه للواجهة من خلال تحديد SliderTest من النافذة الثانية ونضغط على Add

ثم ننتقل إلى الـ xcode ونلاحظ أن هناك ملفين قد أضيفا إلى القائمة وهما :

-Controller‪.h

– Controller‪.m

Screen-shot6

في ملف Controller.h سطر :

@interface Controller

نضيف إليه NSObject بحيث يكون بهذا الشكل

@interface Controller : NSObject

ومن ملف Controller.m نضيف هذا السطر :

label.text = [NSString stringWithFormat:@”%.1f”, slider.value];

بحيث يكون بهذا الشكل :

Screen-shot7

ثم من قائمة xcode نضغط على build and run وبعد ذلك سيخرج لنا المحاكي :

Screen-shot8

وبذلك والحمدلله انتهينا من أول درس في برمجة تطبيقات الآيفون.

الوسوم

51 رأي على “سلسلة دروس برمجة تطبيقات الآيفون (1)”

  1. يعطيك الف الف عافيه انت وكل من عمل لينجز هذه الدروس

    بالفعل نحن نحتاج هذه الدروس

    كل ما أتمناه ان هذه الدروس تستمر ولا تتوقف

  2. تسلم الغالي على الشرح الطيب وما قصرت

    صراحه مثل هاي البرامج لازم يكون فيها تطبيق نظري ليسهل على الجميع فهمه 🙂

  3. الله يجزاك خير اختي
    روان
    وياليت تكثري من هذي الشروح محتاجينها
    الله يجزاك خير ونتظر تطبيق اخر

  4. شكرا شكرا شكرا
    بالفعل هذا ما نحن بحاجتة
    اتمنى الاستمرارية و نحن من المتابعين

  5. شكرا جزيلا .. على هذا المقال رائع فأنت جاوبت على كل أسئلتي .. لأني من زمان أتمنى ان أصنع تطبيقات لنظام iOS4 وخصوصا لجهاز الأيفون وأتمنى ان تستمر في هذه الدروس .. وفقك الله

    منتظرين الدرس الثاني بفارغ الصبر

  6. لا يوقف … 🙁

    تعودنا ع المواقع العربية تبدأ .. وتنتهي بالبداية ..
    لكن املنا فيكم كبير ..

    بالنسبه للشرح .. لوك كان مقطع يوتيوب حيكون اسهل لنا .. وللشارح ..

    وفقكم الله

  7. شكرا على هذا الشرح الرائع والمفيد جدا

    واتمنى منكم الاستمرار في هذه السلسلة الرائعة

  8. جزاك الله خير على هذا الدرس وارجو الاستمرار في ترجمة الدروس الاخرى وفقك الله

  9. متابع متابع و الله متابع
    بس نبي أكثر نبي اكثر تحمست قسم بالله <- تخصص هندسة حاسب 😀
    الله يوفقك يارب بإنتظارك ؛ )

  10. صحيح إني إلى الآن ما دخلت دائرة الأبل أو الآيفونيه

    ولكن في الفترة الماضية بحثت عن طرق لبرمجة الجهاز ، ما وجدت شيء
    اللهم كاتب قام بكتابة بعض التعليمات والتوضيحات

    أتوقع إن هذي الدروس ستكون مفيدة بإذن الله

    أقترح كما قال أحد الأخوان لو كانت عن طريق الفيديو لكانت أجمل

    سؤال مهم

    هل يلزم أن يكون نظام التشغيل عندي ( – نظام Mac OSX .)

    أنا عندي ويندوز 7

    وشي الطريقة ؟؟؟

    1. لايمكن برمجة التطبيقات على نظام ويندوز 7 لازم يكون عندك نظام ماك..
      حاولت أدور على طريقة إني اشتغل على نظام ويندوز لكن ماوجدت أي طريقة …

  11. ارجوكم المتابعه في الدروس

    واذكر انه كان بالموقع دورة من أحد الكتاب جزاه الله خير ولكن لم تكتمل

    اتمنى ان تكون هذه الدوره مكتمله ونحن متابعين معكم بإذن الله

    جزاكم الله الجنه

  12. يا هلا ومرحبا بك ياروان شرفتي المدونة
    الف الف شكر على الموضوع اللي ادوره من زمان
    ويا ليت ما تقطعين السلسلة واصلي الله معك
    وأكرر شكري

  13. ألف شكر والله الشرح واضح مره جزاك الله الف خير وصراحه ماافضل فكره الفيديو
    تابعي

  14. يعطيكم العافية عالدرس الرائع ..

    واتمنى ان تكملوا الدورة وتجعلوا منا مبرمجين ..

    وانا اؤيد وبقوة فكرة الشرح بالفيديو ..

    🙂

  15. شرررح راائع

    كما ذكر الاخوان .. اتمنى الاستمرااااار

    الله يوفقكم

    طيب.. وش الحل اذا ما عندي ماك !!

    نرجو من الاخوة اللي عنده حل يفيدنا ..

    أكرر شكري ..

  16. الله يجزاك الجنة أختي روان ..
    بانتظار درسك القادم في برمجة تطبيقات الآيفون على أحر من الجمر 🙂

  17. هل فيه أحد جرب الطريقة؟

    حاولت فيها أكثر من مره ولا ضبطت معي.

    ياليت أحد يخبرنا

    1. معليش سلطان أنا جربت الطريقة وضابطه معي بس ودي ءأكد عليك في نقطه يمكن ماانتبهت لها لما ربطت مابين value change والـ object controller ضغط بعدها enter أو ضغط على الـ method اللي طلعت لك؟

      1. طلع لي sliderChange
        و بعدها ضغطت على enter

        المشكلة عندي أن الشاشة تطلع فاضية بدون slider أو labels

    2. بس سو حفظ interfaceاللي سويته من interface builder قبل ماتسوي build and run إن شاء الله تنحل معاك المشكلة …

      1. ايوه الحين ضبط معاي
        لكن ما كانت مذكورة النقطة هذي في الشرح.

        شكرا لك ،،،

  18. أولا : مشكور جدا عل الدروس الله لا يحرمنا منك
    ثانياً : عندي سؤال بخصوص برمجة البرامج للآيفون

    انا مثلا عندي لعبة على الجهاز هل استطيع ابرمجها واصنعها على الايفون .. يعني عندي لعبة تتلعب في الجهاز ( اللاب )) هلاستطيع ابرمجها على الايفون ؟؟ أنتظر ردك في اسرع وقت

    1. أي فكرة ممكن تتبرمج سواء لللآيفون أو غيره يعني لو عندك لعبة وودك تتبرمج للآيفون ممكن لكن أفضل دراسة البرمجة الخاصة بالألعاب …

    1. هذا الدروس تعلمك أساسيات البرمجة على الآيفون والـ objective-c يعني تعطيك البداية علشان تقدر تبرمج ألعاب أو برامج أو غيرها لكن لبرمجة الألعاب تحتاج تتعلم هذه الدروس ودروس ثانية متخصصة بالألعاب لكن اذا اللعبة بسيطه ممكن تتبرمج من هذه الدروس إن شاء الله…

  19. اهاا يعني اقدر ابرمج اللعبة الي عندي على الايفون من هذا الدرس ؟؟

    بس معليش ترا اللعبة حقة الكمبيوتر ..

    1. لا مو من هذا الدرس لازم تخلص سلسلة الدروس كاملة هذا بس البداية مابعد دخلنا في البرمجة الفعلية …

  20. اهااا .. طيب السلاسل الباقية متى تنزل ..

    وثانكس على الردود تعتك شويه ..

    جزاكـ الله ألف خير

    1. تابعي الموقع عالم آبل وبين فترة وفترة إن شاء الله راح ينزل درس من الدروس ..
      وإياك ..

  21. السلام عليكم اختي روان

    عندي مشكلة وأتمنى تنحل

    ملف MainWindow.xib لما اظغط علية مرتين ما يفتح ، ما الحل ؟

    1. والله افضل تزيل البرنامج xcode وتعيد تشغيل الجهاز وتنزله من جديد واذا كان فيه رسالة يطلع لك ياليت تقول لي عليها …

  22. أرجو مساعدتي في إيجاد مبرمج لإنتاج برنامج تعليمي للآيفون.
    الرياض
    المملكة العربية السعودية

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *