Năm 2023 là một năm chứng kiến sự bùng nổ của AI đặc biệt là Generative AI đã can thiệp vào rất nhiều lĩnh vực của cuộc sống, trong đó có ngành IT. Năm 2024 đã trôi qua được gần một nửa. Liệu nỗi lo về việc dân IT nói chung và dân lập trình nói riêng bị AI cướp việc có thành hiện thực? Để không bị đứng ngoài dòng chảy của công nghệ, chúng ta hãy cùng xem xét nhanh Top 10 xu xu hướng phát triển phần mềm năm 2024 nhé.
Trí tuệ nhân tạo và Học máy – Tất nhiên rồi!
Trí tuệ nhân tạo và học máy không còn là những thuật ngữ xa lạ; chúng đã trở thành những thành phần không thể thiếu trong lĩnh vực phát triển phần mềm hiện đại, thiết lập những tiêu chuẩn mới về chức năng và hiệu suất. Từ các thuật toán dự đoán đến việc tự động hoá việc đánh giá mã, các công nghệ AI/ML đang nâng cao hiệu quả và khả năng cho các ngành nghề khác nhau.
Trong số những bước đột phá nổi bật nhất của năm 2023 và nửa đầu năm 2024 là sự ra mắt của các tính năng ChatGPT nâng cao, bao gồm khả năng tạo mã và tạo văn bản. Sau đó là một loạt các công cụ AI khác cho phép tạo hình ảnh, âm thanh và thậm chí cả video dựa trên các mẫu văn bản.
Các nhà phát triển đang ngày càng sử dụng nhiều công cụ lập trình hỗ trợ bởi AI. Điều này không chỉ làm tăng tốc độ quá trình lập trình mà còn giúp giảm thiểu các lỗi do con người. Ví dụ, Copilot của GitHub sử dụng AI để đề xuất các đoạn mã và toàn bộ chức năng cho các nhà phát triển theo thời gian thực. Tương tự như vậy, các công cụ phân tích dữ liệu do AI hỗ trợ như Tableau đang giúp các doanh nghiệp hiểu biết sâu sắc về dữ liệu của họ một cách hiệu quả hơn bao giờ hết. Không nghi ngờ gì nữa, năm 2024 sẽ là một năm của sự phát triển và tích hợp thêm các công nghệ này, đặc biệt trong việc tự động hóa các tác vụ văn bản, lập trình và trực quan hóa.
Blockchain – vẫn còn gà để lùa!
À, gà đâu không biết nhưng blockchain đã và đang tìm được chỗ đứng vượt ra ngoài lĩnh vực tiền tệ điện tử. Sự bùng nổ của các ứng dụng di động nhấn mạnh vào việc nâng cao an ninh và chất lượng vượt trội đã dẫn đến việc áp dụng rộng rãi các ứng dụng dựa trên blockchain. Từ đó dẫn đến một xu hướng Phần Mềm Hướng Blockchain (BOS). Các đặc điểm cơ bản của một BOS bao gồm:
- Sao chép dữ liệu: Dữ liệu được nhân bản và lưu trữ trên hàng ngàn hệ thống, tăng cường đáng kể an ninh dữ liệu.
- Xác minh yêu cầu: Trước khi tiến hành bất kỳ giao dịch nào, các hệ thống BOS kiểm tra các yêu cầu của giao dịch để đảm bảo chúng đáp ứng các tiêu chí cho sự xác thực thành công.
- Ghi nhật ký giao dịch tuần tự: BOS ghi lại các giao dịch trong một nhật ký được sắp xếp theo thứ tự thời gian, bao gồm các khối liên kết được thiết lập thông qua thuật toán đồng thuận.
- Mật mã khóa công khai: Quá trình giao dịch trong BOS dựa trên mật mã khóa công khai, đảm bảo các giao dịch an toàn và có thể kiểm chứng.
Tuy nhiên, blockchain cũng có những hạn chế: khả năng mở rộng và tiêu thụ năng lượng vẫn là những rào cản đối với sự áp dụng rộng rãi của nó.
Multi-runtime Microservices – nhỏ và nhiều!
Trong năm 2024, kiến trúc dịch vụ vi mô (microservice architecture) dự kiến sẽ tiếp tục phát triển, dần dần tiến tới dịch vụ vi mô đa thực thi. hay còn gọi là kiến trúc MACH, là từ viết tắt của các từ Microservices-based, API-first, Cloud-native, và Headless. Kiến trúc MACH cho phép các dịch vụ khác nhau được viết bằng các ngôn ngữ lập trình khác nhau, sử dụng các công nghệ lưu trữ dữ liệu khác nhau và được triển khai trên các môi trường thực thi khác nhau. Sự đa dạng này phục vụ cho các nhu cầu và đặc điểm cụ thể của từng dịch vụ, cho phép một cách tiếp cận được tùy chỉnh và tối ưu hóa hơn cho từng thành phần của ứng dụng.
Lợi ích chính của kiến trúc dịch vụ vi mô đa thực thi là khả năng tận dụng ưu điểm của các công nghệ và nền tảng khác nhau. Ví dụ, một dịch vụ yêu cầu sức mạnh tính toán cao có thể được triển khai trên một môi trường thực thi được thiết kế riêng cho những tác vụ đó, trong khi một dịch vụ khác xử lý dữ liệu thời gian thực có thể sử dụng một môi trường khác được tối ưu hóa cho tốc độ và độ trễ thấp. Cách tiếp cận này không chỉ đảm bảo rằng mỗi dịch vụ hoạt động trong môi trường lý tưởng của nó mà còn giúp việc cập nhật và bảo trì dễ dàng hơn, vì các thay đổi đối với một dịch vụ không nhất thiết ảnh hưởng đến các dịch vụ khác.
Ngoài ra, dịch vụ vi mô đa thực thi còn hỗ trợ một quá trình phát triển linh hoạt hơn, cho phép các nhóm làm việc đồng thời trên các dịch vụ khác nhau mà không phụ thuộc lẫn nhau.
Bạo lực mạng, à không, bảo mật mạng
Sự phức tạp ngày càng tăng của các mối đe dọa an ninh mạng đã biến an ninh thành một khía cạnh thiết yếu trong lĩnh vực phát triển phần mềm vào năm 2024. Những ai quan tâm tới lĩnh vực này hẳn còn nhớ vụ việc sàn chứng khoán VNDirect bị tấn công mã hoá dữ liệu đòi tiền chuộc gần đây. Việc tích hợp các giao thức bảo mật nâng cao và sử dụng AI để phát hiện đe dọa đang trở thành những phương pháp tiêu chuẩn. Sự chú trọng đang dịch chuyển từ các biện pháp bảo mật phản ứng sang các biện pháp chủ động:
DevSecOps: Các công ty đang tích hợp an ninh vào quá trình DevOps của họ, đảm bảo rằng các yếu tố bảo mật là một phần không thể tách rời của toàn bộ chu kỳ phát triển phần mềm.
Kiến trúc Zero Trust – nôm na là không tin ai cả, hoạt động trên nguyên tắc “không bao giờ tin, luôn luôn xác minh.” Điều này có nghĩa là phải xác minh mọi người dùng và thiết bị, bất kể họ có nằm trong hay ngoài mạng của tổ chức.
Mã hóa tăng cường: Với sự gia tăng các vụ vi phạm dữ liệu, xu hướng sử dụng các phương pháp mã hóa mạnh mẽ để bảo vệ dữ liệu trong quá trình truyền tải và lưu trữ đang ngày càng phổ biến.
Lập trình bảo mật: Lập trình bảo mật không phải là lập trình bảo mật mà là lập trình bảo mật 😀 Thực ra vẫn là lập trình nhưng chú trọng tính bảo mật ngay trong lúc lập trình. Điều này bao gồm phải đánh giá mã lệnh (code review) thường xuyên, kiểm tra lỗ hổng và sử dụng các công cụ phân tích tĩnh và động để xác định và giảm thiểu các lỗi bảo mật trong quá trình phát triển.
AR và VR – Thực mà như ảo, ảo mà như thực
Với sự trở nên phổ biến hơn của công nghệ Thực tế Ảo (VR) và Thực tế Tăng cường (AR), nhu cầu dành cho các ứng dụng sử dụng công nghệ này đang tăng vọt trên nhiều ngành công nghiệp:
- Giáo dục: VR đã biến đổi cách thức giáo dục, cho phép các bài học lịch sử, địa lý và khoa học trở nên tương tác, và cung cấp các buổi huấn luyện y tế không rủi ro thông qua các mô phỏng phẫu thuật ảo. Ví dụ, qua Google Expeditions và các ứng dụng AR giáo dục khác, học sinh có thể khám phá các di tích lịch sử, mổ xẻ các sinh vật ảo, hoặc xem các mô hình 3D của các chủ đề phức tạp.
- Y tế: Ví dụ như AccuVein, một ứng dụng AR giúp xác định vị trí của các mạch máu để dễ dàng tiêm kim, và các công cụ lập kế hoạch phẫu thuật giúp trực quan hóa các mô hình 3D lên cơ thể bệnh nhân để hướng dẫn phẫu thuật chính xác.
- Kinh doanh: VR ngày càng được sử dụng trong doanh nghiệp cho việc nguyên mẫu, đào tạo nhân viên và dịch vụ khách hàng. Trong ngành bất động sản, các công ty sử dụng VR/AR để cung cấp các tour du lịch bất động sản ảo và các ứng dụng AR để hình dung cách bài trí nội thất hoặc các bản sửa chữa trước khi mua.
Các phát triển thú vị mà chúng ta mong đợi trong năm 2024 bao gồm:
- Thực tế ảo siêu thực tế: VR giờ đây có thể mô phỏng các cảm giác thế giới thực, như cảm giác của mưa hoặc mùi của một đồng cỏ mùa hè, làm mờ ranh giới giữa thực và ảo. Xu hướng này dự kiến sẽ tiếp tục phát triển mạnh.
- Mở rộng các nền tảng VR xã hội: Các nền tảng VR xã hội cho phép tương tác thời gian thực, tổ chức các bữa tiệc ảo, tham dự các buổi hòa nhạc, và tham gia các trò chơi nhiều người chơi.
- Tích hợp AI trong VR: AI cá nhân hóa trải nghiệm bằng cách thích ứng với hành vi người dùng, tạo ra môi trường động phản ứng với sở thích và hành động của từng cá nhân.
Mời các bạn đọc tiếp 5 xu hướng còn lại ở phần 2 của bài viết.
Lược dịch từ bài gốc: https://serokell.medium.com/top-15-software-development-trends-in-2024-5a4526653004
Pingback: Top 10 xu hướng phát triển phần mềm năm 2024 (phần 2) – Greenwich Vietnam