Như nhiều người biết, sự phát triển di động đang tăng vọt trong những ngày này và, tôi tin rằng, nó ảnh hưởng đến những gì chúng ta viết mã. Để cụ thể, tôi quan tâm đến việc phát triển các dịch vụ web cho một ứng dụng di động.
Tôi thấy hai kiến trúc có thể - RPC và REST. Tôi đã phát triển cả hai dịch vụ REST và RPC và điều tôi nhận thấy là các dịch vụ RPC dễ viết mã hơn, đặc biệt là trong các ngôn ngữ như PHP. Vấn đề với nó dường như là khả năng mở rộng - phía máy chủ có thể dễ dàng biến thành một mớ hỗn độn khi có nhiều thủ tục.
Mặt khác, REST dường như có cấu trúc hơn rất nhiều, phía máy chủ trở nên tương đối dễ bảo trì nhưng nó có khả năng phá vỡ dữ liệu thành nhiều tài nguyên có hại cho các ứng dụng di động (vì nhiều lý do).
Từ những gì tôi đã trải nghiệm, RPC có vẻ tốt hơn một chút trong hầu hết các trường hợp:
- Cả hai phía khách hàng và máy chủ đều quan tâm đến việc giảm thiểu số lượng thủ tục có sẵn và các cuộc gọi được thực hiện.
- Theo quy tắc kiến trúc không đối phó với tối ưu hóa có thể.
Tôi không thực sự mong đợi ai đó giải thích cho tôi REST và RPC là gì, web chứa đầy điều đó. Tôi muốn những người có kinh nghiệm phát triển ứng dụng di động bày tỏ ý kiến của họ về việc sử dụng hai kiến trúc này ở phía máy chủ. Lời khuyên cũng được hoan nghênh (ai không thích mẹo, hả?).