ถ้าพวกเราใช้ Xamarin ในการพัฒนาโมบายล์แอพพลิเคชั่น จะพบว่าปัจจุบันตัว Framework นั้นรองรับ C# รุ่นที่ 6 เป็นมาตรฐาน ซึ่งทำให้พวกเราเขียนแอพได้สะดวกสบายกว่าแต่ก่อนครับ
การจัดการ String ใน C#6
การแสดงข้อความ ประกอบกับค่าตัวแปรต่างๆ เป็นงานปกติของนักพัฒนาในทุกๆ แขนงที่จำเป็นต้องแสดงผลลัพธ์โต้ตอบกับผู้ใช้งาน การใช้ความสามารถส่วนนี้ มีชื่อเรียกทางเทคนิคในภาษาต่างๆ ว่า String Interpolation ครับ
รูปแบบเก่าแก่ของ String Interpolation ใน C#.NET
หากต้องการนำค่าตัวแปรต่างๆ มาแสดงร่วมกับข้อความ (string) วิธีที่ดีกว่าการมานั่งต่อข้อความสลับกับตัวแปร แบบด้านล่าง
string message = "คุณวิ่งถึง " + placeName + " ในเวลา " + time;
ก็คือการใช้คำสั่ง String.Format()
string message = String.Format("คุณวิ่งถึง {0} ในเวลา {1}", placeName, time )
ซึ่งแบบที่ใช้คำสั่ง String.Format() นั้น เป็นแบบแผนที่โอเค และไม่ทำให้โค้ดส่วนข้อความ ผสมกับส่วนของโค้ดตัวแปร C# เกินไป
รูปแบบใหม่ล่าสุดของ String Interpolation
ใน C# รุ่นที่ 6 นี้ การเขียนแบบด้านบน สามารถเขียนได้ในรูปแบบใหม่คือ
$"คุณวิ่งถึง {placeName} ในเวลา {time}"
ดูง่ายขึ้นเยอะเลยใช่ไหมครับ
ไม่ใช่แค่นั้นนะ ยังสามารถใช้กับ method หรือ expression ได้อีก เช่น
$"คุณวิ่งถึง {placeName} ในเวลา {DateTime.Now.toString("hh:mm:ss")}"
สังเกตว่า มี quote ซ้อนเข้าไปในส่วน hh:mm:ss ก็ทำได้ไม่มีปัญหา
ข้อควรระวัง
เนื่องจากเบื้องลึกของ $”” นั้นไปเรียกใช้ String.Format เจ้าเดิมของเราอีกที เราจึงไม่สามารถกำหนดค่าให้กับค่าคงที่ (const) ได้นะ
const string message = $"ถึงเส้นชัย"; // แบบนี้ error ตอน compile แน่นอน
ขอให้สนุกกับกาเรียนรู้วิธีสร้างสรรค์แอพของคุณเองด้วย C# และ Xamarin นะครับ
เหมาะสำหรับคนทำเว็บ, เริ่มต้น JavaScript ES6 และ Angular เข้าใจง่าย, ใช้ได้จริง สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373 โปรหน้าฝน! เรียนรอบสด รับคอร์สออนไลน์มูลค่ากว่า 5800 บาทฟรี!เปิดอบรมสร้าง Cross Platform Mobile Application ด้วย Ionic Framework
อ้างอิง – C# 6 Language Feature Overview