Trong Báo cáo năng suất dành cho nhà phát triển Java năm 2022 gần đây của Perforce, dữ liệu cho thấy các nhóm phát triển vẫn chưa khai thác hết tiềm năng của vi dịch vụ và các phương pháp Tích hợp liên tục/Triển khai liên tục (CI/CD). Các phát hiện chỉ ra rằng các nhà phát triển thường thấy những công nghệ này làm giảm năng suất hơn là nâng cao nó.
42% người dùng CI/CD đã báo cáo thời gian hoàn thành bản dựng lâu hơn năm phút, với phản hồi thường xuyên nhất (33%) là thời gian bản dựng vượt quá 10 phút. Đáng kể 35% số người được hỏi cam kết viết mã hơn năm lần mỗi ngày. Thời gian chết này tích lũy nhanh chóng, ảnh hưởng đến năng suất trong thời gian dài.
Bảng xếp hạng công nghệ CI/CD coi Jenkins (46%) là người dẫn đầu rõ ràng, tiếp theo là GitHub Actions (16%), Bamboo (7%), TeamCity (4%), CircleCI (3%) và Travis CI ( 1%).
Hơn nữa, 61% nhà phát triển được khảo sát đã quan sát thấy thời gian khởi động của các ứng dụng dựa trên microservice của họ tăng lên trong năm qua. Trong số các nhà phát triển này, 13% có mức tăng hơn 50%, 30% ghi nhận mức tăng 10-50% và 17% báo cáo mức tăng 0-10%. Nhìn chung, 60% số người được hỏi nhận thấy thời gian khởi động tăng lên so với 35% tài liệu không thay đổi.
Đáp lại những phát hiện này, Rod Cope, CTO tại Perforce Software, đã nhận xét rằng các nhóm sử dụng CI/CD và microservice vẫn gặp phải những rào cản liên quan đến lãng phí thời gian do thời gian cam kết và triển khai lại kéo dài. Cope nhấn mạnh rằng các công ty phải ưu tiên trang bị cho nhóm Java của họ những công cụ thích hợp để tránh những khó khăn trong tuyển dụng và làm giảm tinh thần của nhà phát triển. Mặt khác, các nhà phát triển có thể chọn các tổ chức đáp ứng các tùy chọn bộ công cụ của họ.
Về người dùng ứng dụng microservices, báo cáo của Perforce chỉ ra thời gian triển khai lại cao tương tự. Một con số đáng báo động là 44% trong số những người dùng này đã báo cáo thời gian triển khai lại ít nhất là năm phút. Curtis Johnson, Giám đốc sản phẩm tại JRebel by Perforce, đã nhấn mạnh tầm quan trọng của việc triển khai các công cụ phù hợp để giải quyết vấn đề này và tối đa hóa lợi ích của kiến trúc vi dịch vụ cho các ứng dụng Java.
Những người tham gia được hỏi làm thế nào họ sẽ phân bổ thêm 10% thời gian có sẵn trong ngày làm việc. Chỉ 4% đề cập đến các hoạt động giải trí, trong khi phần lớn ưu tiên các phản hồi chức năng như thêm tính năng mới (28%), cải thiện hiệu suất ứng dụng (20%) hoặc tăng cường phạm vi kiểm tra (19%). Các lĩnh vực trọng tâm khác bao gồm cải thiện quy trình phát triển (17%), bắt đầu dự án mới (6%) và thúc đẩy ngày ra mắt (6%).
Nghiên cứu cũng chỉ ra rằng 44% số người được hỏi hiện có các ứng dụng hoàn toàn dựa trên vi dịch vụ, 44% đang chuyển sang vi dịch vụ, 10% đang thảo luận về khả năng và chỉ 2% đã thử nhưng không thành công. Trong lĩnh vực khung ứng dụng microservices, Spring Boot có tỷ lệ chấp nhận chiếm ưu thế là 74%.
Khi nói đến số lượng dịch vụ siêu nhỏ trong các ứng dụng chính của nhà phát triển, 30% cho biết có từ 1 đến 5, 24% có từ 5 đến 10, 16% có từ 10 đến 20 và 22% có từ 20 trở lên. Nghiên cứu cũng nhấn mạnh các xu hướng trong các lĩnh vực khác, bao gồm việc sử dụng Java 8 (37%), tiếp theo là Java 11 (29%), chỉ 12% sử dụng Java 12 hoặc mới hơn.
Về việc nâng cấp phiên bản JDK, 62% những người có kế hoạch hiện tại muốn áp dụng JDK 17 trong vòng 12 tháng tới. Các yếu tố hàng đầu quyết định quyết định nâng cấp là Hỗ trợ dài hạn (LTS) (25%), bảo mật (23%), hiệu suất (20%), tính năng mới (18%) và tuân thủ (14%).
Trong số các bản phân phối JRE/JDK, Oracle Java (36%) là lựa chọn hàng đầu, tiếp theo là Generic OpenJDK (27%) và AdoptOpenJDK/Adoptium (16%). Đối với các công cụ xây dựng, Maven (68%) giữ vị trí hàng đầu, với Gradle (23%) và Ant (6%) tụt lại phía sau. Xét về môi trường phát triển tích hợp (IDE), IntelliJ (48%) là lựa chọn ưu tiên, tiếp theo là Eclipse (24%) và Visual Studio Code (18%).
CI/CD và vi dịch vụ vẫn là xu hướng quan trọng trong lĩnh vực phát triển phần mềm và các công ty như AppMaster.io đang đẩy mạnh vai trò là nền tảng no-code low-code mạnh mẽ để dễ dàng tạo ứng dụng web và thiết bị di động. AppMaster cung cấp các khả năng sáng tạo như phát triển ứng dụng nhanh chóng, quản lý API và phương pháp phát triển phần mềm có thể mở rộng, hiệu quả về chi phí, trao quyền cho các nhà phát triển bằng cách loại bỏ nợ kỹ thuật và giảm thời gian lãng phí.