Skip to content

title: تطبيقاتُ الهواتف description: أريدُ أن أبنيَ تطبيقَ هاتفٍ بلغة ص.

تطبيقاتُ الهواتف

أندرويد · iOS

أريدُ أن أبنيَ تطبيقَ هاتفٍ بلغة ص.
1 من 1 صفحةً مكتوبة

ما حالُ هذا المجالِ اليوم

لا تطبيقَ هاتفٍ يُبنى من ص اليومَ بلا مرورٍ بأدواتِ المنصّة. والموجودُ مقيسٌ ومحدَّد: SadUI يملكُ مولِّدَي مصدرٍ — Jetpack Compose لأندرويد وSwiftUI لـiOS — يُخرِجانِ من شجرةِ الواجهةِ نفسِها نصَّ شفرةٍ لتلك المنصّة. ومولِّدُ المصدرِ ليس مُصيِّرًا حيًّا: لا يرسمُ ولا يُدير حلقةَ أحداث، فالبناءُ والتشغيلُ يبقيانِ على Android Studio أو Xcode. ومصدرُ الحقيقةِ يُعلِنُ مُصيِّرَي أندرويدَ وiOS enabled: true في language-truth/ui_nodes.yaml، وهذا الحقلُ لم يُقَسْ صدقُه: نظيرُه في خلفيّةِ ماكِ مُعلَنٌ ومُصرَّحٌ في الملفِّ نفسِه بأنّه لا يُترجَمُ كما هو. فلا تُشتَقُّ درجةُ هذا المجالِ من إعلانِ التفعيل، ولا تُكتَبُ له دعوى قدرةٍ حتّى يُبنى مُصيِّرٌ ويُشغَّلَ على جهازٍ حقيقيّ. وطبقةُ المنصّةِ نفسُها دَينٌ مُعلَن: UIPlatform ٤٣ مدخلًا واثنانِ مستقرّان؛ فالنوافذُ والمدخلاتُ ودورةُ الحياةِ غيرُ موصولةٍ بالمترجِّم. وفتحُ المجالِ ثلاثُ خطواتٍ محدَّدة: ① وصلُ مدخلاتِ UIPlatform بالمترجِّمِ ورفعُ وسمِ التأجيلِ عنها؛ ② بناءُ مُصيِّرٍ حيٍّ لإحدى المنصّتَينِ وتشغيلُه على جهاز؛ ③ حارسٌ يقيسُ البناءَ فيُحمِّرُ إن أُعلِنَت خلفيّةٌ ولم تُترجَمْ. فإن تمّت، صارَ لهذا الملفِّ دعاوى تُحَلُّ وانقلبت درجتُه آليًّا.

يفترضُ قبلَه: جديدٌ على لغة ص

الصفحات

شرح

لماذا صُمّمَ هكذا وما حدودُه

مُرخَّص بموجب رخصة MIT