16 มิ.ย. 2021 เวลา 01:40 • ไอที & แก็ดเจ็ต
รู้จักกับ Microsoft Power Fx โปรแกรมภาษาแบบ Low Code
หลายท่านที่มีความคิดที่จะสร้างโปรแกรมใช้งานเองคงได้ยินคำว่า Low-Code/No-Code Platform กันมาบ้างแล้ว และคงจินตนาการได้ว่าเป็นการสร้างโปรแกรมใช้งานเองโดยการเขียน Code น้อยมาก หรือ อาจไม่ต้องเขียน Code เลย แค่ลากๆ วางๆ ก็ได้โปรแกรมแล้ว
ซึ่งท่านเข้าใจไม่ผิด แต่อยากจะเล่าเพิ่มเติมถึง Concept ของ Low-Code/No-Code อีกสักหน่อยว่า จริงๆ แล้ว การพัฒนาโปรแกรมใช้งานเองได้โดยไม่ต้องเขียน Code เป็นพันเป็นหมื่นบรรทัดนั้นมีมาก่อนหน้านี้แล้ว
ตัวอย่างที่เห็นได้ชัดๆ เลย คือ การทำงานกับ Spreadsheet ใน Microsoft Excel จะมีฟังก์ชันในการคำนวณหลากหลายฟังก์ชัน ยิ่งผนวกกับการบันทึก Macro แล้วแก้ไขปรับ Code เพิ่มเติม
นั่นก็ถือว่าเป็นการพัฒนาโปรแกรมขนาดเล็กได้แล้ว ซึ่งหมายถึงว่าท่านสามารถพัฒนาโปรแกรมย่อยๆ ได้เอง ด้วยการเขียน Code ไม่เยอะ และ โปรแกรมที่ได้น่าจะเสร็จเร็วกว่าที่จะส่งให้โปรแกรมเมอร์พัฒนา เนื่องจากท่านเข้าใจความต้องการของระบบงานเป็นอย่างดี รวมถึงประหยัดค่าใช้จ่ายในการจ้างโปรแกรมเมอร์อีกด้วย
จากตัวอย่างที่กล่าวถึง ถ้าท่านใช้ฟังก์ชันที่มีใน Microsoft Excel ได้ดี ท่านน่าจะใช้ Power Apps พัฒนาโปรแกรมของท่านด้วยตัวเองได้ โดยภาษาที่ใช้ใน Power Apps เราเรียกว่า Microsoft Power Fx ซึ่งเป็นภาษาในรูปแบบสูตร (Formula Language) ใช้สำหรับ Low-Code Platform
Microsoft Power Fx คืออะไร ??
Microsoft Power Fx เป็นภาษาในรูปแบบสูตร (Formula Language) ใช้สำหรับ Low-Code Platform เริ่มใช้งานใน Microsoft Power Platform ใน Canvas App ของ Power Apps โดยมีแรงบันดาลใจมาจากสูตรของ Microsoft Excel เพื่อให้การพัฒนานั้นเขียนโค้ดน้อยลง และยังประหยัดเวลาและค่าใช้จ่ายในการพัฒนาอีกด้วย
ภาษาใน Power Platform จะมีหลายภาษา ได้แก่ ภาษา M ใน Power Query และ DAX (Data Analysis Expression) ซึ่งเป็นภาษาในรูปแบบสูตร ใน Power BI, SSAS ส่วน Power Fx ที่จะอธิบายในบทความนี้
คุณลักษณะเด่น ของ Power Fx
1. Power Fx สร้างมาเพื่อ Low-Code
โดยหากใครได้ลองพัฒนา Canvas App ด้วย Power Apps น่าจะได้รู้จักกับการใช้งานมาบ้าง และ ในอนาคตจะถูกนำไปใช้งานในส่วนของ Microsoft Power Platform การทำงานกับ Microsoft Dataverse, Model-Driven App ของ Power Apps, Microsoft Power Automate, Microsoft Power Virtual Agents
2. Power Fx มีพื้นฐานมาจาก Microsoft Excel
ทำให้การใช้สูตรและการเรียนรู้สูตรต่าง ๆ เป็นเรื่องที่ใกล้ตัวมากขึ้น และเรียนรู้การใช้งานได้ง่าย มี learning curve ไม่มาก หรือบางครั้งอาจจะใช้งานได้เลยโดยที่ไม่ต้องเรียนรู้อะไรใหม่ เพราะเราใช้งาน Microsoft Excel เป็นประจำอยู่แล้ว
3. Power Fx เป็น Open Source
ซึ่งเป็นพื้นฐานสำคัญในการต่อยอดได้ในอนาคต เพื่อนำโลกในอนาคตให้สามารถเขียดโค้ดได้แบบ Low-Code หรือการเขียนโปรแกรมที่ใช้โค้ดน้อยลงมาก ๆ ซึ่งอยู่ใน GitHub https://github.com/microsoft/Power-Fx
Power Fx เป็น ภาษาแบบ Low Code Platform
ทำไมเรามีความจำเป็นสำหรับ low-code platform คำตอบคือจะช่วยทำให้การพัฒนาระบบต่าง ๆ การสร้าง Apps, Workflow, Bot สามารถทำได้อย่างง่ายขึ้น ไม่ซับซ้อน และมี learning curve ในการเรียนรู้ได้ไม่ยาก โดยทำให้คนในระดับ Power User สามารถทำงานที่ซับซ้อนขึ้นได้ง่ายขึ้น เพราะเป็นคนที่เข้าใจ business logic แต่ในอดีตเครื่องมือในการพัฒนานั้นซับซ้อน โดยอาจจะไม่จำเป็นต้องให้ IT หรือ Programmer ทำงานได้ ซึ่งถือเป็นการเพิ่มศักยภาพให้กับคนทำงานอีกระดับ (Empower People)
Low-Code Platform
Low-Code Platform เป็น platform ที่จะทำให้การเขียนโค้ดน้อยลง หรือกระทั่งไม่มีโค้ดเลย โดยสำหรับ Power Fx นั้นมีความคล้ายกับ Excel โดยจะมีหลายฟังก์ชันที่เหมือน ๆ กับ Excel ตามในภาพนี้ที่สีเขียวเป็นรายชื่อฟังก์ชันที่ Power Fx มีเหมือนกับ Excel ซึ่งจะมีความหมายวิธีการใช้งานคล้าย ๆ กัน ทำให้เข้าใจได้ไม่ยาก ทำให้การเขียนโค้ดจะคล้ายกับการเขียนสูตรแทน
Reference : Microsoft.com
ตัวอย่างโค้ด Power Fx
ตัวอย่างที่แสดงคือการแสดงผลราคาสินค้า โดยนำเอาข้อความ "Price" มา เชื่อมต่อ (Concatenate) ด้วยเครื่องหมาย & แล้วทำการจัดรูปแบบตัวเลขด้วยฟังก์ชัน Text ในรูปแบบ #,##0 ซึ่งการอ้างอิงใน Excel อาจจะใช้ Cell เช่น A1 แต่ใน Power Apps จะเข้าถึงข้อมูลด้วย ThisItem.Price
"Price : " & Text(Value(ThisItem.Price),"#,##0") & " Baht"
ตัวอย่างการใช้ Power Fx ใน Power Apps เพื่อทำการแสดงรูปสินค้าด้วยสูตร Lookup ซึ่งจะมีรูปแบบคล้ายกับ VLookup ใน Microsoft Excel
ตัวอย่างการใช้ Power Fx ใน Power Apps เพื่อทำการค้นหารายการสินค้า โดยใช้คำสั่ง If และ Filter ซึ่งเป็นฟังก์ชันที่มีใน Microsoft Excel
การใส่ Comment ใน Power Fx
เราสามารถใส่ Comment เพื่ออธิบายโค้ด หรือ ใส่เพื่อไม่ให้โค้ดทำงาน การใส่ Comment ให้กับ Power Fx ได้ โดยคล้าย ๆ กับ DAX (Data Analysis Expression) ใน Power BI หรือ Power Pivot ซึ่งก็คือ
1. Comment แบบ Single Line
โดยใช้เครื่องหมาย // หน้าข้อความที่ต้องการให้เป็น Comment
2. Comment แบบ Multiple Line
โดยใช้เครื่องหมาย /* หน้าข้อความที่ต้องการให้เป็น Comment และปิดท้ายด้วย */
คุณลักษณะของภาษา Power Fx
1. สูตรมีความคล้าย Microsoft Excel
เครื่องหมายในการคำนวณ ไม่ว่าจะเป็น & หรือสูตรด้านต่าง ๆ เช่น Text, Value, Today ก็จะเหมือน ๆ กับ Excel ซึ่งทำให้การเรียกใช้งานทำได้ง่าย และใช้เวลาศึกษาไม่มากนัก
2. การคำนวณจะคล้าย Excel คือจะ Recalculate ตลอดเวลา
โดยหากเรากำหนดคุณสมบัติของ Items ให้กับ Gallery โดยเชื่อมโยงกับ TextBox เพื่อค้นหา โดยใช้สูตร Lookup, Filter หรือ Search การคำนวณและแสดงผลใน Gallery ก็จะเป็นในรูปแบบอัตโนมัติ
3. ชื่อของ object ใน Power Fx นั้น ยืดหยุ่นและอัตโนมัติ
ในสูตรของ Power Fx สามารถตั้งชื่อโดยมีเว้นวรรคได้ เช่น 'Course Name' ซึ่งในหลาย ๆ ภาษาอาจจะไม่ให้เว้นวรรค ซึ่งเหมาะสำหรับ Power Users ที่ไม่ได้จำเป็นจะต้องประกาศตัวแปร ให้ยุ่งยาก เสียเวลา เพียงแต่ตั้งชื่อให้สื่อความหมายก็เพียงพอ
4. การทำงานกับ Data ต่าง ๆ และ Relational Data ได้ง่าย
ใน Power Fx สามารถทำการเชื่อมโยงข้อมูล สืบค้นข้อมูลจากแหล่งต่าง ๆ ซึ่งมี Connection ต่าง ๆ ที่สามารถเชื่อมโยงเข้าถึงได้ โดยที่ไม่ต้องเขียน SQL ก็ได้ เพียงแต่ใช้ฟังก์ชัน เช่น Search, Filter, Lookup เป็นต้น ซึ่ง Power Fx จะจัดการเรื่องของการทำงานกับ SQL Statement ให้เราเอง พร้อมการ Optimize ต่าง ๆ
Power Fx เป็นภาษาหนึ่งที่เป็น Low-Code Platform ใน Microsoft Power Platform ซึ่งจะช่วยให้ Power Users สามารถเพิ่มศักยภาพในการพัฒนา Apps, Workflow, Business Login, Bot ได้นับเป็นภาษาที่ไม่ซับซ้อน มีความคล้ายกับ Microsoft Excel
Power Fx นับเป็นภาษาหนึ่งที่น่าสนใจในโลกอนาคต ด้วยหลักการว่า คนที่เข้าใจ Business ที่สุด คือเรา
ดังนั้น หากมีเครื่องมือที่สามารถพัฒนาและต่อยอดได้ง่าย ๆ จะช่วยให้เกิด Apps และ นวัตกรรมต่าง ๆ ได้อย่างรวดเร็วและเพิ่มมากขึ้นได้อย่างมหาศาล
ได้เวลาแล้วที่ Power Users จะต้องเรียนรู้ Power Fx และนำไปใช้ในโลกใบนี้ที่มีการเปลี่ยนแปลงตลอดเวลากัน ใครเริ่มก่อนย่อมได้เปรียบกว่าคู่แข่ง
แนะนำหลักสูตรการอบรม
เรียนรู้คำสั่ง Power Fx เพื่อพัฒนา Canvas App เพื่อใช้ใน Mobile และ Tablet ด้วย Microsoft Power Apps ในหลักสูตร Power Apps for Business (2 Days)
โฆษณา