Avatar ·

ما الفرق بين print() و println() و NSLog() في Swift وما الأفضل استخدامه؟

مرحبًا بالجميع! لقد بدأت تعلم Swift مؤخرًا ولاحظت أنه يمكن استخدام ثلاث طرق مختلفة لإخراج المعلومات إلى وحدة التحكم: print() و println() و NSLog(). كنت أكتب سابقًا بلغة Python حيث كل شيء بسيط — print() واحد فقط، وهذا كل شيء. أما هنا فقد شعرت بالارتباك. على سبيل المثال، أكتب كودًا بسيطًا: let name = "أليكسي" let age = 28 print("الاسم: \(name)، العمر: \(age)") println("الاسم: \(name)، العمر: \(age)") NSLog("الاسم: \(name)، العمر: \(age)") جميع الأسطر الثلاثة تُخرج شيئًا إلى وحدة التحكم، لكن التنسيق يختلف. NSLog يضيف التاريخ والوقت واسم العملية ومعرفًا ما. أما println فلا يتم تجميعه في Xcode 15 — يكتب أنه لا توجد دالة بهذا الاسم. لقد قرأت مقالات قديمة (من 2014 إلى 2016) حيث قيل أن println() كان يُستخدم في Swift 1.x، ثم تمت إزالته. لكن بعض المطورين لا يزالون ينصحون باستخدام NSLog لتصحيح الأخطاء. لماذا؟ بينما print() أبسط وأقصر. كما لاحظت أن NSLog() يعمل بشكل أبطأ من print(). هل هذا صحيح؟ أم أنها خرافة؟ أرجو التوضيح، من فضلكم: 1. ما هي