แนวทางปฏิบัติที่ดีที่สุดในการสร้าง desktop flow

by

แผนผังลำดับงาน (flowchart) ด้านล่าง คือ ตัวอย่างของการเขียนโปรแกรมอย่างง่ายที่จะรับค่าตัวเลข 2 ค่าเป็นข้อมูลเข้า (input), คำนวณค่าผลรวม และแสดงผลลัพธ์ข้อมูลออก (output)

Flowchart

ถ้าเราแปลง flowchart ด้านบนเป็น Power Automate Desktop (PAD) จะมีหน้าตาแบบนี้

Convert flowchart to PAD flow

ตัวอย่างดังกล่าวเป็นเรื่องที่สามารถทำได้ใน Power Automate Desktop ถ้าเราต้องการสร้าง flow แบบง่ายๆ เพื่อใช้แค่เราคนเดียวหรือสร้างเป็น quick prototype

อย่างไรก็ตาม มันยังมีแนวทางปฏิบัติที่ดีที่เราควรพิจารณาเพื่อปรับปรุงและทำให้ code มีความชัดเจน ตลอดจนสามารถดูแลโฟลว์ของเราในระยะยาวได้

1. Clarity on Data Types

  • แม้ว่า Power Automate Desktop จะจัดการเรื่อง data type ให้เราโดยอัตโนมัติ เช่น การแปลงข้อความเป็นตัวเลขแล้วเก็บค่าในตัวแปรที่เคยสร้างไว้ แต่การจัดการ data type ให้ชัดเจน เช่น ตั้งชื่อตัวแปรว่า xText และ xNumber จะช่วยให้ flow อ่านง่ายขึ้นและช่วยในการ debug ปัญหาต่างๆ ที่เจอได้ง่ายขึ้น
  • การทำแบบนี้จะเป็นประโยชน์อย่างมากโดยเฉพาะ flow ที่มีความซับซ้อนมากๆ และมีการใช้ตัวแปรซ้ำเพื่อรับค่าใหม่ (Reusing variables)

2. Avoid Reusing Variables

  • การใช้ตัวแปรซ้ำ (Reusing variables) ในที่นี้ คือ x และ y สามารถทำให้เกิดความสับสนได้ และอาจจะเกิด bugs ใน project ที่มีขนาดใหญ่หรือมีผู้พัฒนาหลายคน
  • แทนที่จะใช้ตัวแปรเป็น x หรือ y ควรใช้ชื่อตัวแปรที่มีความหมาย (descriptive) และเป็นเอกลักษณ์ (unique) ตัวอย่างเช่น numInput1 และ numInput2 เพื่อให้ flow ชัดเจนในตัวของมัน (self-explanatory)

3. Scalability and Debugging

  • การแยกตัวแปรอย่างชัดเจนสำหรับขั้นตอนต่างๆ จะช่วยให้มั่นใจได้ว่าหากมีสิ่งผิดปกติเกิดขึ้น จะสามารถติดตามปัญหาได้ง่ายขึ้น
  • ในโฟลว์ที่มีขนาดใหญ่ การนำตัวแปรมาใช้ซ้ำอาจจะเขียนทับข้อมูลสำคัญโดยไม่คาดคิดได้

4. Consistency

การตั้งชื่อให้เป็นไปตามแบบแผนที่ตกลงกับทีมงานไว้ จะช่วยเพิ่มความสามารถในการอ่าน ตัวอย่างเช่น ใช้คำนำหน้า (num, txt ฯลฯ) หรือส่วนต่อท้าย (_Text, _Number ฯลฯ) เพื่อระบุประเภทข้อมูล

Modify the flow

  1. เปลี่ยนชื่อตัวแปร x และ y เป็น txtInput1 และ txtInput2 ก่อนที่จะแปลงค่าเป็นตัวเลข
  2. ใช้ตัวแปรแยกกันสำหรับค่าที่แปลงแล้ว เช่น numInput1 และ numInput2
  3. เก็บ z ไว้สำหรับผลลัพธ์สุดท้าย แต่ตั้งชื่อที่สื่อความหมายมากกว่านี้ เช่น sumResult
Modify PAD flow

Did You Enjoy this Article?

Subscription to get new articles sent to your inbox each week for FREE

Question?

If you have any questions or feedback about this article please leave a message in the comments section below.


Comments

Leave a comment

Subscribe to get new articles sent to your inbox each week for FREE