إنشاء تطبيق iOS بالذكاء الاصطناعي: الأخطاء وطرق التحقق
بقلم Mehdi Azizi
حُدّث في ، 9 د
يكتب Claude وChatGPT وCursor كود iOS بسرعة، لكنهم يخطئون في التوقيع والاشتراكات ومراجعة Apple والتشغيل على iPhone حقيقي. إليك كيف تتحقق من كل شيء.
إنشاء تطبيق iOS بالذكاء الاصطناعي: الجواب المختصر
نعم، يمكنك إنشاء تطبيق iOS بالذكاء الاصطناعي حتى لو كنت مبتدئًا. لهذه الطريقة في البناء اسم: vibe coding. يكتب Claude أو ChatGPT أو Cursor الشاشات والتنقل والمنطق البسيط والاتصال بقاعدة البيانات بشكل ممتاز. أما ما يتقنونه بدرجة أقل فهو كل ما يحدث خارج الكود: توقيع التطبيق، وإعداد App Store Connect، والاشتراكات، ومراجعة Apple، والأعطال التي لا تظهر إلا على iPhone حقيقي.
بعبارة أخرى، يوفّر عليك الذكاء الاصطناعي أسابيع في الجزء الأكثر ظهورًا من العمل، ويتركك وحدك في الجزء الذي يحدد هل سيُنشر تطبيقك يومًا ما. يوضح لك هذا الدليل أين يقع هذا الحد، وكيف توجّه الذكاء الاصطناعي ليبقى مفيدًا، وكيف تتحقق مما ينتجه قبل أن تفعل Apple أو مستخدموك ذلك بدلًا منك.
أبرمج تطبيقات iOS الخاصة بي بنفسي باستخدام Claude وCursor، كل يوم. تطبيق Solys، وهو منبّه بألعاب صغيرة، وتطبيق TradaZen، وهو محاكي تداول، متاحان على App Store. أما Nolera وClic فقد رفضتهما Apple، ثم صحّحتهما. كل ما يلي نابع من هذا العمل، لا من عرض تجريبي. وإن كنت لا تزال مترددًا في اختيار الأداة، فأنا أقارن Claude Code وCursor وChatGPT لتطبيق iPhone في دليل منفصل.
ما يتقنه الذكاء الاصطناعي فعلًا
الشاشات والتنقل
صِف شاشة بدقة (ما تعرضه، وما يفعله كل زر، وما يحدث عندما تكون القائمة فارغة) وسيعيد لك الذكاء الاصطناعي مكوّنًا نظيفًا في ثوانٍ. هنا يكون المكسب مذهلًا، خاصة مع React Native وExpo، لأن الذكاء الاصطناعي رأى كمية هائلة من هذا النوع من الكود. وهي بالمناسبة التقنيات التي أستخدمها في كل تطبيقاتي، وأشرح السبب في صفحة React Native وExpo لتطبيق جوال.
منطق العمل البسيط
حساب نتيجة، أو ترتيب قائمة، أو تنسيق تاريخ، أو التحقق من نموذج: يفعل الذكاء الاصطناعي ذلك بسرعة وبشكل جيد عمومًا، بشرط أن تعطيه الحالات الحدّية. قائمة فارغة، حقل طويل جدًا، تاريخ في منطقة زمنية أخرى. إن لم تذكرها، فلن يعالجها دائمًا.
شرح ما لا تفهمه
هذا هو الاستخدام الأكثر تقليلًا من قيمته. الصق رسالة خطأ، أو جزءًا من الإعدادات، أو رفضًا من Apple، واطلب: «اشرح لي معنى هذا، دون أن تصحّح شيئًا». ستتعلم أسرع من قراءة درس تعليمي، لأن الشرح يخص مشروعك أنت.
ربط الواجهة الخلفية
إنشاء جداول في Supabase، وكتابة دالة تقرأ بيانات المستخدم المسجّل دخوله، وإدارة حالة التحميل: يعرف الذكاء الاصطناعي هذه الأدوات جيدًا. فقط ابقَ منتبهًا للأمان، وسنعود إلى ذلك لاحقًا.
ما يخطئ فيه الذكاء الاصطناعي عند إنشاء تطبيق iOS
هذا هو الجزء الذي لا يريك إياه أحد في فيديوهات «أنشأت تطبيقًا في عطلة نهاية أسبوع». كل نقطة من هذه النقاط قد تعطّل نشر تطبيقك لأيام، فضلًا عن الفحوص الآلية عند الإرسال، مثل ITMS-90338 الخاص بواجهات API غير العامة.
التوقيع والشهادات
لكي يعمل تطبيقك على iPhone ويمر إلى App Store، يجب توقيعه بـشهادة وملف تزويد مرتبطين بحساب Apple Developer الخاص بك. يستطيع الذكاء الاصطناعي أن يشرح لك المبدأ، لكنه لا يعرف حسابك دون وصول مصرّح به. وأحيانًا يخترع خطوات لم تعد موجودة، أو يخلط بين طريقة Xcode وطريقة Expo، وقد ينتهي ذلك بخطأ ITMS-90034 عند الإرسال. مع EAS Build، الأداة هي التي تنشئ هذه الملفات وترتّبها لك، بما فيها مفتاح الإشعارات: دعها تقوم بذلك بدلًا من اتباع إجراء مُخمَّن.
إعداد App Store Connect
صفحة التطبيق، ومعرّف الحزمة (bundle ID)، وإقرارات الخصوصية، والسؤال المتعلق بالتشفير، ولقطات الشاشة، وروابط شروط الاستخدام: يجب أن تتطابق هذه المعلومات مع النسخة المُرسَلة. بعض الوكلاء يستطيعون العمل داخل متصفح مسجّل الدخول، مثل Claude Code مع Chrome. يجب أن يكون هذا الوصول مصرّحًا به وأن تتحقق من النتيجة، فالإجراء المحفوظ عن ظهر قلب دون قراءة الواجهة الحالية قد يكون قديمًا.
الاشتراكات
هذه هي النقطة التي يضيّع فيها الذكاء الاصطناعي أكبر قدر من وقتك. كود شاشة الدفع (paywall) سهل. الصعب هو الاتساق بين ثلاثة أماكن: المنتجات المنشأة في App Store Connect، وإعدادها في RevenueCat، والكود الذي يعرضها. معرّف يختلف بحرف واحد، أو منتج لم يُرسَل بعد للمراجعة مع النسخة، فتظهر شاشة الدفع فارغة عند المراجِع. يستطيع الذكاء الاصطناعي قراءة هذه اللوحات إن أعطيته وصولًا مناسبًا، وبدون هذا الوصول لا يمكنه التحقق من اتساقها مع الكود. المشروع الكامل مفصّل في صفحة الاشتراكات داخل تطبيقات iOS.
مراجعة Apple
يعرف الذكاء الاصطناعي الخطوط العريضة لـApp Review Guidelines، لكنه لا يعرف كيف ينظر إلى تطبيقك بعين المراجِع. لن يخبرك من تلقاء نفسه أن شاشة إلزامية مقطوعة على iPhone صغير، أو أن طلب التقييم يظهر مبكرًا جدًا، أو أن حساب العرض التجريبي ناقص في ملاحظات المراجعة، أو أن تطبيقك يشبه موقع ويب أكثر من اللازم بالنسبة إلى guideline 4.2. أول حالتين رفضان تلقيتهما فعلًا على Solys، وأرويهما في لماذا ترفض Apple تطبيقًا.
الأعطال على iPhone حقيقي
المحاكي وتطبيق التطوير يتسامحان مع أشياء كثيرة. أما iPhone حقيقي في بيئة الإنتاج فلا. وحدة أصلية (native module) غائبة عن البناء، أو إذن بلا نص توضيحي، أو قراءة بيانات مبكرة جدًا عند الإقلاع: يُفتح التطبيق ثم يُغلق فورًا، دون أي رسالة. يمكن لوكيل أن ينفّذ اختبارات أو يحلل لقطات شاشة، لكن فقط إن كانت منظومة التحقق تسمح بذلك. نتيجة المحاكي وحدها لا تثبت صحة الملف التنفيذي المثبّت على جهازك. عليك أنت تثبيت التطبيق على هاتفك قبل كل إرسال، وTestFlight مصمم لهذا الغرض.
يكتب الذكاء الاصطناعي كودًا يبدو صحيحًا. وحده الاختبار على iPhone الخاص بك يخبرك إن كان كذلك فعلًا.
كيف توجّه الذكاء الاصطناعي ليبقى مفيدًا
المشكلة تكاد لا تكون أبدًا في ذكاء النموذج. إنها فيما تعطيه ليقرأه.
أعطه سياقك مرة واحدة وإلى الأبد
اكتب ملفًا قصيرًا في جذر المشروع يصف التقنيات التي تستخدمها (Expo، وإصدار SDK، وSupabase، وRevenueCat)، وبنية المجلدات، وقواعدك. يقرأ Claude Code ملف CLAUDE.md، ولـCursor ملفات القواعد الخاصة به. بدون هذا السياق، يخمّن الذكاء الاصطناعي، وغالبًا ما يخمّن تقنيات غير تقنياتك. يقدّم درسي لإنشاء تطبيق باستخدام Claude Code مثالًا كاملًا لهذا الملف.
قسّم العمل إلى مهام صغيرة
«أنشئ لي تطبيقًا لتتبع العادات مع اشتراك» ينتج مشروعًا ضخمًا وهشًّا. «أنشئ الشاشة التي تعرض عادات اليوم، مع حالة فارغة وحالة تحميل» ينتج شاشة يمكنك مراجعتها واختبارها في خمس دقائق. مهمة واحدة، ونتيجة قابلة للتحقق، ثم المهمة التالية.
اطلب خطة قبل الكود
لكل ما يمس عدة ملفات، ابدأ بـ«اقترح خطة، لا تكتب الكود بعد». تراجع الخطة، وتصحح ما لا يناسب، ثم تنطلق. بهذا تتجنب إعادة الهيكلة المفاجئة التي يعيد فيها الذكاء الاصطناعي كتابة نصف مشروعك لإضافة زر.
اجعله يقرأ التوثيق المحدّث
الأدوات تتغير بسرعة: Expo وRevenueCat وApp Store Connect تتبدل بانتظام. عندما يبدو لك جواب مشكوكًا فيه، الصق صفحة التوثيق الرسمية في المحادثة، أو استخدم أداة تزوّده بها. الذكاء الاصطناعي الذي يقرأ توثيق اليوم يخطئ أقل بكثير من الذي يتذكر توثيق ما قبل سنتين.
احتفظ بزمام القرارات
الذكاء الاصطناعي يقترح، وأنت تقرر. اختيار الفكرة، والسعر، وما لن يفعله التطبيق: هذا عملك أنت. إن تركته يضيف كل ميزة يقترحها، ستحصل على تطبيق يفعل عشرة أشياء بشكل متوسط بدلًا من شيء واحد بشكل ممتاز. لتحديد نطاق نسختك الأولى، اقرأ صفحة MVP لتطبيق iOS.
كيف تتحقق مما ينتجه الذكاء الاصطناعي
هذه هي المهارة التي تفصل بين من ينشرون ومن يكدّسون مشاريع نصف منتهية.
راجع كل تعديل
لا تحتاج إلى فهم كل شيء سطرًا بسطر. لكن يجب أن تستطيع الإجابة عن ثلاثة أسئلة: ما الملفات التي تغيرت، ولماذا، وهل يطابق ذلك ما طلبته. إن عدّل الذكاء الاصطناعي ملفًا لا علاقة له بطلبك، فاسأله عن السبب قبل القبول.
اختبر على iPhone الخاص بك، لا على الحاسوب فقط
ثبّت التطبيق على هاتفك في أقرب وقت ممكن، ثم عند كل مرحلة مهمة. تحقق من أول تشغيل بعد التثبيت، ووضع الطيران، وشاشة صغيرة وأخرى كبيرة، ولوحة المفاتيح مفتوحة في النماذج. هذه هي القاعدة التي أطبقها قبل كل إرسال إلى Apple، في كل تطبيق من تطبيقاتي.
أضف أدوات ترى ما لا تراه
في تطبيقاتي، يبلّغ Sentry عن الأعطال مع سطر الكود المسؤول، ويُظهر PostHog أين يتوقف المستخدمون. بدونهما، يبقى الخطأ في الإنتاج غير مرئي حتى يأتي تقييم سيئ. يستطيع الذكاء الاصطناعي مساعدتك في تثبيتهما، وعليك أنت أن تنظر فيما يخبرانك به.
راقب أمان البيانات
عندما ينشئ الذكاء الاصطناعي جداول في Supabase، تأكد أن قواعد الوصول (سياسات RLS) مفعّلة فعلًا: يجب ألا يقرأ كل مستخدم إلا بياناته. وتأكد أيضًا أنه لا يوجد أي مفتاح سري داخل كود التطبيق، الذي يمكن فك تجميعه. هذان خطآن يرتكبهما الذكاء الاصطناعي بسهولة إن لم تمنعه منهما.
اطرح عليه السؤال المعاكس
بعد كتابة الكود، اسأل: «ما الذي قد ينكسر هنا؟» أو «راجع هذا الكود كما يفعل مراجِع Apple». النموذج نفسه الذي كتب الكود يجد غالبًا ما أغفله عندما تغيّر زاوية السؤال. هذا لا يغني عن اختبارك على iPhone، لكنه يقلل من الذهاب والإياب.
المسار الواقعي عندما تبدأ
- اختر فكرة صغيرة جدًا: ميزة رئيسية واحدة، لا عشر.
- ثبّت تقنيات يعرفها الذكاء الاصطناعي جيدًا: Expo وReact Native، وSupabase إن احتجت إلى حسابات.
- ابنِ شاشة تلو الأخرى، بمهمة صغيرة في كل طلب واختبار في كل مرحلة.
- اختبر على iPhone الخاص بك بنسخة تطوير، ثم عبر TestFlight.
- اربط الدفع: المنتجات في App Store Connect، وRevenueCat، وشاشة الدفع.
- جهّز ملف App Store: الصفحة، ولقطات الشاشة، والخصوصية، وملاحظات المراجِع.
- أرسل إلى Apple، واقرأ الرد بعناية، وصحّح ما هو مطلوب.
لكل مرحلة أفخاخها، والذكاء الاصطناعي يساعدك في نصفها. للصورة الكاملة، تفصّل صفحة إنشاء تطبيق iPhone المسار كله. وإن كنت تتساءل إلى أي حد يمكنك الذهاب دون كتابة سطر كود بنفسك، فاقرأ إنشاء تطبيق دون برمجة.
إنشاء تطبيق iOS الخاص بك بالذكاء الاصطناعي حتى App Store
غيّر الذكاء الاصطناعي من يستطيع إنشاء تطبيق iOS. لكنه لم يغيّر ما تشترطه Apple لنشره، ولا ما يلزم ليحصّل اشتراكاته الأولى. هذا الجزء هو ما وضعته في iOS Kit: كود البداية لتطبيقاتي، بما فيه الاشتراكات، ومهارات (skills) Claude Code لكل مرحلة. المسار مفصّل حسب أداتك: دورة Claude Code أو دورة vibe coding. وتعرض الصفحة الرئيسية كيف تنشئ تطبيق جوال بهذه الطريقة، خطوة بخطوة.
لا تعرف ما الذي يعطّلك، بين الكود والذكاء الاصطناعي وApple؟ التشخيص المجاني يخبرك بذلك ويرسل لك قائمتي لتجنب رفض Apple.
لا أعدك بدخل ولا بنشر: Apple هي من تقرر القبول، والسوق يقرر الباقي. ما أقدمه لك هو المنهجية التي أطبقها بنفسي على تطبيقاتي.
الأسئلة الشائعة
هل يمكن إنشاء تطبيق iOS بالذكاء الاصطناعي للمبتدئين؟
نعم. يكتب الذكاء الاصطناعي الشاشات والتنقل والمنطق البسيط والاتصال بقاعدة البيانات بشكل ممتاز. لكنه يخطئ في كل ما يحدث خارج الكود. وهذا يشمل التوقيع، وApp Store Connect، والاشتراكات، ومراجعة Apple، والأعطال التي لا تظهر إلا على iPhone حقيقي.
أي ذكاء اصطناعي أستخدم لإنشاء تطبيق iOS؟
يكتب Claude أو ChatGPT أو Cursor الشاشات والتنقل والمنطق البسيط بشكل ممتاز. المشكلة تكاد لا تكون أبدًا في ذكاء النموذج، بل فيما تعطيه ليقرأه. أعطه تقنياتك وقواعدك والتوثيق المحدّث. أقارن Claude Code وCursor وChatGPT لتطبيق iPhone في دليل منفصل.
هل يستطيع ChatGPT إنشاء تطبيق؟
نعم بالنسبة للجزء المرئي: ChatGPT، مثل Claude أو Cursor، يكتب الشاشات والتنقل والمنطق البسيط والاتصال بقاعدة البيانات بشكل ممتاز. لكنه لا يعرف حساب Apple الخاص بك دون وصول مصرّح به، ولا ينظر إلى تطبيقك بعين المراجِع. وحده الاختبار على iPhone الخاص بك يخبرك إن كان الكود صحيحًا.
كيف أنشئ تطبيقي الخاص بالذكاء الاصطناعي خطوة بخطوة؟
اختر فكرة صغيرة جدًا، بميزة رئيسية واحدة. ثبّت تقنيات يعرفها الذكاء الاصطناعي جيدًا: Expo وReact Native، وSupabase إن احتجت إلى حسابات. ابنِ شاشة تلو الأخرى، بمهمة صغيرة في كل طلب واختبار في كل مرحلة. اختبر على iPhone الخاص بك بنسخة تطوير ثم عبر TestFlight، قبل ربط الدفع وتجهيز ملف App Store والإرسال إلى Apple.
كيف أراقب الكود الذي يكتبه الذكاء الاصطناعي؟
راجع كل تعديل: ما الملفات التي تغيرت، ولماذا، وهل يطابق ذلك طلبك. ثبّت التطبيق على iPhone الخاص بك في أقرب وقت ممكن، ثم عند كل مرحلة مهمة. تأكد أن قواعد الوصول في Supabase، أي سياسات RLS، مفعّلة. وتأكد أيضًا أنه لا يوجد أي مفتاح سري داخل كود التطبيق، الذي يمكن فك تجميعه.
لماذا تظهر شاشة الدفع التي كتبها الذكاء الاصطناعي فارغة عند المراجِع؟
كود شاشة الدفع سهل. الأصعب هو الاتساق بين ثلاثة أماكن: منتجات App Store Connect، وإعدادها في RevenueCat، والكود الذي يعرضها. معرّف يختلف بحرف واحد، أو منتج لم يُرسَل بعد للمراجعة، يجعل شاشة الدفع فارغة. وبدون وصول مناسب إلى هذه اللوحات، لا يستطيع الذكاء الاصطناعي التحقق من هذا الاتساق.