مرحبا بالجميع!
منذ أسبوع ، أصدرنا AppCode 2019.1 - دعنا نتحدث عن التغييرات في ذلك. تحت خفض حفنة من جديدة ومفيدة ، وتصحيحها واستكمالها.

سريع
سويفت 5
تعمل جميع الميزات الجديدة لـ Swift 5 بشكل صحيح في AppCode 2019.1:
إعادة تسمية
حدثت مشكلة في إعادة تسمية الأساليب والأساليب المحملة بشكل زائد للفئة الأصل - ولكن الآن لا وجود لها.
تعريف الملاحة
يبدو أنه يمكن أن يكون أكثر بساطة وأكثر أهمية للانتقال إلى تعريف طريقة أو فئة؟ العمل المعتاد المألوف
وكل هذا صحيح في Objective-C: اسم النوع منفصل عند تهيئة الكائن ، وطريقة المهيئ نفسها منفصلة. وفقًا لذلك ، إذا كان المؤشر على اسم النوع ، فسننتقل إلى تعريف النوع ، إذا كان في المُهيئ ، إلى تعريف المُهيئ. لكن في سويفت ، تصبح الأمور أكثر تعقيدًا. تم دمج أداة التهيئة مع اسم النوع معًا ، وإذا قمنا بإعادة إنتاج سلوك Xcode ، فإننا نفقد القدرة على التبديل إلى أداة التهيئة. إذا تركنا سلوك AppCode 2018.3.x ، فسنقطع عادة المستخدم ("كما هو الحال في Xcode" ، أي الانتقال ليس إلى تعريف المُهيئ ، ولكن إلى تعريف النوع). لأسباب واضحة ، لا يحب المستخدمون ذلك.
نتيجة لذلك ، قمنا بتطوير حل وسط: بعد كل شيء ، لا يزال التعبير الذي يهيئ الكائن في Swift يتكون من جزأين. كل شيء قبل الأقواس هو اسم النوع ، وكل ما بداخله هو توقيع مهيئ. لذلك ، إذا كان المؤشر على اسم النوع ، فسننتقل إلى تعريف النوع ، إذا كان داخل الأقواس - إلى تعريف المُهيئ:

يتم حفظ كل من حالات الاستخدام ، الجميع سعداء.
تحريك التعبيرات
بينما يختار مستخدمو Xcode بالماوس ولصق النسخ ، يضع مستخدمو AppCode المؤشر على التعبير ونقله بالكامل بنقرة خفيفة ⇧⌘↑
/ ↓
:

يعمل للحلقات والوظائف والأساليب والفئات والشروط بشكل عام لكل شيء تقريبًا.
حرفية متعددة الأسطر
كيفية تحويل حرفي سطر واحد إلى متعدد الخطوط؟ في AppCode ، انقر فقط ⏎
:

الإضاءة الخلفية ، الإكمال التلقائي ، تحليل الكود ، الكل
كلما قمنا ببناء شجرة الرموز بشكل صحيح ، والتي يتم استخدامها للتمييز ، وتحليل الشفرة ، والتنقل ، ووظائف IDE الأخرى (حتى لعرض المتغيرات في مصحح الأخطاء) ، كلما كان كود AppCode يعمل بشكل أفضل وصحيح. في هذا الإصدار ، حللنا العديد من المشكلات الأساسية التي أفسدت حياة المستخدمين:
- بدأنا في بناء رموز المكتبة لكل من أجهزة المحاكاة والأجهزة. سابقا ، بنوا فقط لجهاز محاكاة.
- بعد القيام بذلك ، بدأوا في تحديد النظام الأساسي الحالي (جهاز محاكاة / جهاز) بشكل صحيح ونقل بشكل صحيح clang-annotator الخاص به إلى Objective-C و SourceKit إلى Swift. لماذا هذا مهم؟ على سبيل المثال ، لن يعرض SourceKit الأخطاء والتحذيرات إذا كان من الخطأ بالنسبة له تمرير المجلد مع منتجات التجميع في الوسائط. يجب أن تختفي هذه المشكلة.
- بدأنا في معالجة DerivedSources بشكل صحيح وجميع المصادر التي تم إنشاؤها في هذا المجلد (البيانات الأساسية ، الأهداف).
الهدف- C / C / C ++
قام الزملاء من CLion بإضافة أنماط التسمية البرمجية لإنشاء C / C ++ ، وحصلنا عليها أيضًا للهدف- C ( Preferences | Editor | Code Style | C/C++/Objective-C | Naming Convention)
:

إطلاق وتصحيح الأخطاء
أصبح بإمكان AppCode الآن الانضمام إلى العمليات التي تعمل ليس فقط على جهاز المحاكاة ، ولكن أيضًا على الجهاز (→ ⇧⌘A
→ Attach to process
):

أضيفت القدرة على اختيار لغة التطبيق والمنطقة في إعدادات التكوين التشغيل:

يمكن استدعاء Run to Cursor ليس فقط من خلال ⌥F9
، ولكن أيضًا من خلال النقر على رقم السطر في المحرر:

يمكن الآن تعطيل حساب المتغيرات أثناء تصحيح الأخطاء باستخدام إجراء كتم المتغيرات في قائمة السياق:

مواضيع لل IDE
لاحظ القارئ المهتم بالفعل أن كل لقطات الشاشة التي تم نشرها قد صنعت باستخدام سمة Dark Purple الجديدة:

يمكن الآن إجراء سمات IDE بمفردك ، لذلك بالإضافة إلى العديد من السمات التي صممناها ، يمكنك بالفعل العثور على العديد من خيارات التصميم المخصص في مستودع المكونات الإضافية. وحتى الثالث من أيار (مايو) ، لا يمكنك فقط إنشاء المظهر الخاص بك ، ولكن يمكنك أيضًا المشاركة في مسابقة تم الإعلان عنها مؤخرًا.
قائمة مقتطفات الشفرة التي تم عرضها / تعديلها مؤخرًا
هناك العديد من الخطوات المفيدة للتنقل إلى الأماكن التي تم فتحها أو تغييرها مؤخرًا في الكود:
- الملفات الحديثة (
⌘E
) - الجلاد (
⌃⇥
) - الانتقال إلى آخر تعديل
⇧⌘⌫
( ⇧⌘⌫
)
من الصعب تقدير الانتقال إلى آخر قسم من الشفرة التي تم تحريرها ، خاصة عند تحرير ملف كبير.
الآن هناك أيضًا قائمة بالأماكن التي تم عرضها / تغييرها مؤخرًا ⇧⌘E
الحديثة ( ⇧⌘E
):

هذا هو الإصدار. اكتب جميع الأسئلة والرغبات وحتى تقارير الأخطاء هنا في التعليقات - سنكون سعداء بالإجابة!
فريق AppCode