النصوص والسلاسل
الكتل النصية، وformatted، وإضافات String التي تغني عن مكتبة مساعدة.
النصوص والسلاسل: الكتل متعددة الأسطر والدوال الجديدة
استعلام SQL من خمسة عشر سطرًا مكتوب بلغة Java 8 هو جدار من علامات الاقتباس وعلامات «+» ومسافات نهاية السطر و\n. لكن الكلفة الحقيقية ليست في الكتابة، بل في أن هذا النص يصبح عسير القراءة، وعسير النسخ قبل ذلك. لا يمكنك لصق الاستعلام كما هو في عميل PostgreSQL لاختباره، ولا إعادة لصق النتيجة المصحَّحة في الشيفرة. كل ذهاب وإياب بين محرر SQL وJava يتطلب إعادة كتابة يدوية، وفي أثناء هذه الإعادة تتسلل المسافة الناقصة بين FROM commande وWHERE.
المشكلة نفسها تصيب JSON في الاختبارات. حمولة متوقعة من عشرين سطرًا، مهروبة يدويًا، تنتج نصًّا حرفيًّا يشغل فيه \" مساحة أكبر من البيانات نفسها. وعندما يفشل الاختبار تضيع دقائق في المقارنة البصرية بين سلسلتين غير مقروءتين. وقد جاءت كتل النص (Text Blocks) في Java 15 لتحل هذه المشكلة بطريقة أدق مما يبدو: فهي لا تكتفي بالسماح بالأسطر الجديدة، بل تحذف المسافة البادئة العرَضية ليبقى النص متراصًّا داخل الشيفرة دون أن يتلوث في القيمة الناتجة.
قبل: الدمج بالتسلسل
// Java 8
String requete = "SELECT c.id, c.reference, c.total, cl.nom\n"
+ "FROM commande c\n"
+ "JOIN client cl ON cl.id = c.client_id\n"
+ "WHERE c.statut = ?\n"
+ " AND c.date_creation >= ?\n"
+ "ORDER BY c.date_creation DESC";
التعليقات
التعليقات مدعومة عبر GitHub Discussions
سجّل الدخول باستخدام GitHub للمشاركة في النقاش