ไมโครซอฟท์ประกาศฟีเจอร์ภาษา C# 9.0 ที่เพิ่มความสะดวกในการพัฒนาหลายอย่าง ฟีเจอร์ที่เพิ่มมามีข้อเล็กน้อยจำนวนมาก แต่ที่ผมเห็นว่าเด่นๆ เช่น top-level programming, positional records, และการปรับปรุง pattern
top-level programming คือการเขียนโปรแกรมโดยไม่ต้องมี class
และ function
ครอบ Main อีกต่อไป แต่สามารถเขียนโค้ดโดยตรงหลัง using
ได้เลย พร้อมกับสามารถเรียกใช้อาร์กิวเมนต์ผ่านตัวแปร args
ได้
positional records น่าจะคล้ายๆ กับ named-tuple ในภาษาไพธอน โดยตัวแปรแบบ record สามารถกำหนดลำดับของสมาชิกใน record ได้ ทำให้ เวลาต้องการนำค่าของสมาชิกในคลาสออกมาใช้กับตัวแปรภายนอก สามารถกำหนดค่าแบบ var (f, l) = person;
ได้เลย
การปรับปรง pattern ใน C# 9.0 ช่วยให้เขียน switch-case ได้ง่ายขึ้นมาก โดยสามารถกำหนดเงื่อนไขได้ซับซ้อนขึ้น มี and/or/not ในเงื่อนไขได้
ที่มา - Microsoft Dev Blog