Tại sao bạn nên viết code Power Apps càng đơn giản càng tốt

Tại sao bạn nên viết code Power Apps càng đơn giản càng tốt

Power Apps là một công cụ mạnh mẽ để xây dựng ứng dụng mà không cần nhiều kiến thức lập trình. Tuy nhiên, nhiều nhà phát triển thường viết code phức tạp, dẫn đến hiệu suất thấp và lỗi không mong muốn. Để ứng dụng chạy ổn định, việc viết code ngắn gọn và tối ưu là điều cần thiết. Dưới đây là các lý do tại sao bạn nên giữ cho mã Power Apps đơn giản nhất có thể.


1. Hạn chế lỗi không hỗ trợ delegation

Delegation là một tính năng quan trọng trong Power Apps, cho phép xử lý dữ liệu trên server thay vì đưa toàn bộ dữ liệu về client. Khi bạn viết code phức tạp hoặc không tối ưu, Power Apps có thể không hỗ trợ delegation.

Ví dụ:

  • Code không hỗ trợ delegation: Filter(MyTable, Left(Column, 3) = "ABC") Đoạn code trên sử dụng hàm Left, khiến Power Apps tải toàn bộ dữ liệu về client để xử lý, làm giảm hiệu suất khi bảng dữ liệu lớn.
  • Cách tối ưu:
    Sử dụng cột được tính toán sẵn (calculated column) hoặc chuyển logic lọc vào nguồn dữ liệu như SharePoint hoặc SQL.

Hệ quả khi không tối ưu:
Ứng dụng sẽ chạy chậm, đặc biệt với các bảng dữ liệu lớn, và dễ gặp phải lỗi 429 – Too Many Requests do quá tải.


2. Tránh lookup quá nhiều trong gallery hoặc table

Các hàm như LookUpFilter thường được sử dụng trong gallery hoặc bảng để lấy dữ liệu liên quan. Tuy nhiên, nếu bạn lạm dụng chúng, ứng dụng sẽ xử lý từng bản ghi một cách riêng lẻ, làm tăng thời gian tải và giảm hiệu suất.

Ví dụ về lỗi phổ biến:

ForAll(MyTable, LookUp(AnotherTable, ID = ThisRecord.ID).Name)  

Đoạn mã trên thực hiện tra cứu từng bản ghi, gây ra hiệu suất kém khi số lượng dữ liệu lớn.

Cách tối ưu:

  • Sử dụng collection để tải dữ liệu cần thiết một lần: ClearCollect(MyCollection, AddColumns(MyTable, "Name", LookUp(AnotherTable, ID = ThisRecord.ID).Name))
  • Tránh thực hiện các thao tác phức tạp trong gallery, thay vào đó, chuẩn bị dữ liệu sẵn trước khi hiển thị.
Tại sao bạn nên viết code Power Apps càng đơn giản càng tốt

3. Code dài gây khó khăn khi debug

Viết code phức tạp, dài dòng khiến bạn khó tìm ra lỗi khi ứng dụng không hoạt động như mong muốn. Trong Power Apps, một lỗi nhỏ có thể khiến toàn bộ ứng dụng không hoạt động, do mọi thành phần trong ứng dụng được liên kết với nhau.

Vấn đề chính:

  • Mã dài và lồng ghép nhiều hàm làm tăng khả năng gặp lỗi logic.
  • Khó xác định nguyên nhân khi ứng dụng bị lỗi toàn bộ.

Cách giải quyết:

  • Tách logic thành các hàm nhỏ hơn hoặc sử dụng variables (biến) và collections để kiểm soát dữ liệu. Set(UserID, LookUp(Users, Email = User().Email).ID); Set(UserName, LookUp(Users, ID = UserID).Name);
  • Sử dụng Monitor Tool trong Power Apps để theo dõi và debug từng bước trong ứng dụng.

4. Hiệu ứng domino khi ứng dụng bị lỗi

Một điểm yếu chính của Power Apps là lỗi từ một thành phần nhỏ có thể gây ảnh hưởng đến toàn bộ ứng dụng. Điều này đặc biệt nghiêm trọng nếu code quá phức tạp và khó kiểm soát.

Ví dụ thực tế:

  • Một bảng dữ liệu sử dụng công thức không hỗ trợ delegation có thể khiến ứng dụng mất nhiều thời gian để tải hoặc thậm chí dừng hoạt động.
  • Sử dụng Patch hoặc ForAll không cẩn thận có thể gây lỗi ghi đè dữ liệu không mong muốn.

Giải pháp:

  • Kiểm tra logic từng phần nhỏ trước khi tích hợp vào toàn bộ ứng dụng.
  • Giảm thiểu các hàm lồng nhau và kiểm tra kỹ các công thức phức tạp.

Dịch vụ lập trình ứng dụng

🎯 Lập trình API, Python, Node JS, Telegram Bot, Automate Workflow, Power Apps and Apps Script.

📒 Nhận dạy Lập trình Apps Script, Power Apps từ cơ bản đến nâng cao.

📞 +84 78 600 5534 (Zalo, WhatsApp, Telegram)

💻 Github

🌏 appscript.online

Viết một bình luận