Chương trình Windows tích hợp API – dự án thực tế

Đây là những dự án trong đó chương trình Windows không hoạt động độc lập mà giao tiếp với hệ thống khác: trao đổi dữ liệu theo thời gian thực với ứng dụng khác, đăng nhập và tìm kiếm trên dịch vụ web, theo dõi tham số thị trường và gửi lệnh cho nhà môi giới, khởi tạo cổng thanh toán hoặc chuyển giá cổ phiếu từ Excel vào cơ sở dữ liệu. Chương trình phụ thuộc vào hệ thống nằm ngoài quyền kiểm soát nên phải xử lý đáng tin cậy phản hồi, lỗi và gián đoạn kết nối. Tôi thực hiện những công việc này trong dịch vụ phát triển chương trình Windows và ứng dụng dịch vụ chạy nền cùng tích hợp API.

Giao tiếp thời gian thực giữa ứng dụng Python và C#

Thực hiện trong quý II năm 2022.

Vấn đề

Khách hàng muốn một kênh giao tiếp thời gian thực giữa ứng dụng Python và ứng dụng C# chạy song song trên cùng máy tính. Trong bản chứng minh khái niệm, ứng dụng Python tăng một giá trị số nguyên mỗi mili giây trong vòng lặp, còn ứng dụng C# phải đọc giá trị thay đổi liên tục đó qua socket — Python đóng vai trò máy chủ và C# là máy khách. Với thay đổi ở mức mili giây, tốc độ và tính chính xác của dữ liệu có vai trò quyết định.

Giải pháp

  • truyền dữ liệu thời gian thực: trao đổi dữ liệu nhanh và đáng tin cậy giữa hai ứng dụng;
  • giao tiếp qua socket: ứng dụng Python là máy chủ, ứng dụng C# là máy khách;
  • tốc độ và độ chính xác: dữ liệu đến đúng và kịp thời dù thay đổi mỗi mili giây;
  • chứng minh khái niệm: tính khả thi được thể hiện bằng giá trị mà ứng dụng Python liên tục tăng.

Công nghệ sử dụng

Kết quả

Hai ứng dụng viết bằng ngôn ngữ khác nhau trao đổi dữ liệu theo thời gian thực; khách hàng đánh giá kết quả vượt mong đợi.

Nhận xét của khách hàng

★★★★★5/5

“Kết quả dự án vượt mong đợi. Việc kết nối và giao tiếp giữa hai ứng dụng được thực hiện hoàn hảo. Xin dành mọi lời khen cho công việc xuất sắc!”


Ứng dụng Delphi kết nối dịch vụ web

Thực hiện trong quý II năm 2021.

Vấn đề

Khách hàng cần một ứng dụng máy tính đơn giản trong môi trường RAD Embarcadero Delphi và yêu cầu bàn giao mã nguồn. Ứng dụng phải kết nối với dịch vụ web được chỉ định, đăng nhập và đăng xuất người dùng bằng tên đăng nhập cùng mật khẩu, sau đó dùng phiên nhận được để gọi các chức năng: một chức năng trả về số người và một chức năng tìm khách theo họ. Mọi lời gọi, phản hồi và lỗi phải được ghi cùng ngày giờ; yêu cầu còn có thêm một số chi tiết ngoài mô tả cơ bản.

Giải pháp

Một ứng dụng máy tính đơn giản giao tiếp đáng tin cậy với API của dịch vụ web đã được xây dựng:

  • kết nối dịch vụ web: kết nối ổn định đến địa chỉ dịch vụ được chỉ định;
  • đăng nhập và đăng xuất: các trường tên đăng nhập, mật khẩu và nút đăng nhập, đăng xuất, sử dụng phiên do dịch vụ cấp;
  • số người: nút gọi chức năng tương ứng của dịch vụ;
  • tìm kiếm khách: trường nhập họ và nút tìm kiếm;
  • ghi nhật ký: ngày giờ của mỗi lời gọi và phản hồi, kết quả và lỗi được ghi vào tệp văn bản;
  • mã nguồn: khách hàng có toàn quyền truy cập mã ứng dụng.

Công nghệ sử dụng

  • RAD Embarcadero Delphi (Pascal): phát triển ứng dụng máy tính và kết nối dịch vụ web.
  • API dịch vụ web: đăng nhập, phiên và các lời gọi chức năng.

Kết quả

Người dùng tìm kiếm khách và kiểm tra số người từ một ứng dụng; mọi lời gọi và lỗi đều được ghi lại, còn khách hàng sở hữu mã nguồn.


Ứng dụng C# theo dõi tham số và gửi lệnh qua API môi giới

Thực hiện trong quý II năm 2021.

Vấn đề

Khách hàng muốn một ứng dụng C# sử dụng các vòng lặp đơn giản để liên tục theo dõi một số tham số tài chính qua API của nhà môi giới, rồi dựa trên chúng quyết định thời điểm và loại lệnh cần gửi qua cùng API. Đội ngũ ba người của khách hàng có kiến thức C cơ bản nhưng chưa biết C#, nên cần người thành thạo C# và có kinh nghiệm với API môi giới. Sản phẩm bàn giao phải là mã C# hoạt động đúng, có thể dễ dàng bắt đầu và dừng; dự án đầy bất định từ đầu đến cuối.

Giải pháp

  • theo dõi tự động: liên tục kiểm tra các tham số tài chính quan trọng;
  • gửi lệnh linh hoạt: lệnh được đặt tự động qua API môi giới tùy theo trạng thái;
  • điều khiển đơn giản: người dùng dễ dàng bắt đầu và dừng theo dõi cũng như gửi lệnh;
  • mã dễ hiểu: công cụ được xây dựng để đội ngũ biết C có thể dễ dàng theo dõi và điều chỉnh mã C#;
  • làm việc chung: chia sẻ màn hình theo thời gian thực để thảo luận và cải tiến mã;
  • thực hiện theo giai đoạn: dự án được chia thành năm giai đoạn để rõ ràng và triển khai hiệu quả.

Công nghệ sử dụng

Kết quả

Khách hàng nhận được ứng dụng tự theo dõi tham số và gửi lệnh; đội ngũ của họ cũng hiểu rõ mã nguồn qua quá trình làm việc chung.

Nhận xét của khách hàng

★★★★★5/5

“Dejan chắc chắn là bậc thầy trong lĩnh vực của mình. Anh ấy không chỉ hỗ trợ dự án mà còn nâng tầm nó. Hành trình từ ý tưởng đến hoàn thành đầy bất định, nhưng Dejan dẫn dắt chúng tôi bằng chuyên môn và sự kiên nhẫn hiếm có. Việc giao tiếp của anh luôn nhất quán, mang tính xây dựng và có vai trò then chốt đối với thành công của dự án. Tôi chân thành giới thiệu Dejan và mong được hợp tác với anh trong tương lai. Sự tận tâm của anh thật đặc biệt — một chuyên gia thực thụ. Xin cảm ơn rất nhiều vì tất cả!”


DLL khởi tạo cổng thanh toán

Thực hiện trong quý II năm 2021.

Vấn đề

Khách hàng cần một thư viện DLL để kết nối và khởi tạo cổng thanh toán GoChipNow. Họ nhận được SDK thương mại kèm mã nguồn của ứng dụng Windows đã thực hiện các chức năng đó; nhiệm vụ là chuyển các khả năng chính — trước hết là cấu hình và xác thực — vào DLL để cổng dễ tích hợp vào các chương trình khác hơn.

Giải pháp

Một thư viện DLL được xây dựng dựa trên SDK và hướng dẫn cấp cao đã nhận:

  • khởi tạo cổng: cấu hình và xác thực cổng thanh toán để giao dịch an toàn, đáng tin cậy;
  • sử dụng SDK: các chức năng chính được tách khỏi mã nguồn ứng dụng Windows có giao diện và chuyển vào DLL;
  • tệp cấu hình: cài đặt cổng được định nghĩa trong tệp người dùng đặt vào thư mục dự án;
  • thay đổi mã thiết bị đầu cuối: người dùng có thể đổi mã thiết bị để khởi tạo cổng cho đúng thiết bị cụ thể.

Công nghệ sử dụng

  • DLL (thư viện liên kết động): hình thức nhúng chức năng cổng vào chương trình khác.
  • GoChipNow SDK: nền tảng cho chức năng cổng thanh toán.

Kết quả

Thay vì cả một ứng dụng Windows, khách hàng có một thư viện để nhúng vào chương trình và khởi tạo cổng cho thiết bị đầu cuối đã chọn.


Chuyển giá cổ phiếu từ Excel vào cơ sở dữ liệu qua API

Thực hiện trong quý IV năm 2020.

Vấn đề

Khách hàng dùng một bảng Excel trong đó giá cổ phiếu tự động cập nhật qua tiện ích Bloomberg. Cần theo dõi các lần cập nhật, nhận diện mọi thay đổi giá và ngay lập tức gửi dữ liệu mới đến một cơ sở dữ liệu cụ thể qua API. Môi trường của khách hàng có nhiều đặc thù nên giải pháp cần điều chỉnh đáng kể để mọi thành phần hoạt động cùng nhau.

Giải pháp

Một ứng dụng Windows độc lập kết nối Excel với cơ sở dữ liệu đã được xây dựng:

  • theo dõi thời gian thực: ứng dụng liên tục theo dõi bảng và phát hiện từng thay đổi giá;
  • tự động gửi dữ liệu: khi giá thay đổi, dữ liệu mới được gửi ngay đến cơ sở dữ liệu qua API đã định;
  • giải pháp tùy chỉnh: do môi trường đặc thù, dự án cần nhiều công việc khắc phục sự cố và điều chỉnh để bảo đảm tương thích và hoạt động đúng.

Công nghệ sử dụng

  • Ứng dụng Windows độc lập: theo dõi Excel theo thời gian thực và kết nối API.
  • Excel và tiện ích Bloomberg: nguồn giá cổ phiếu trực tiếp.
  • Tích hợp API: chuyển dữ liệu cập nhật vào cơ sở dữ liệu của khách hàng.

Kết quả

Mọi thay đổi giá trong Excel được đưa vào cơ sở dữ liệu của khách hàng theo thời gian thực mà không cần chuyển dữ liệu thủ công.

Bạn cần một chương trình kết nối với hệ thống khác?

Phạm vi công việc, cách xác định giá và quy trình thực hiện được trình bày tại các trang phát triển chương trình Windows và ứng dụng dịch vụ chạy nềntích hợp API. Xem thêm dịch vụ web, API và thanh toán cùng ứng dụng Windows theo yêu cầu.