Skip to main content

Bộ phát triển bản địa là gì?

Trong lập trình máy tính và phát triển phần mềm, Bộ phát triển gốc (NDK) thường là giao diện lập trình trừu tượng (API) cung cấp cho nhà phát triển khả năng sử dụng các chức năng hoặc thực thi mã trực tiếp qua hệ điều hành cốt lõi.Phương pháp thực thi chương trình này khác biệt rõ rệt so với chạy mã được quản lý hoặc các chương trình được giải thích, trong đó mã được viết được thực thi bởi một máy ảo hoặc trình thông dịch hoạt động như một lớp phần mềm giữa các chức năng của hệ điều hành cốt lõi và mã viết người dùng.Việc sử dụng bộ phát triển gốc có thể rất cần thiết trong các ứng dụng yêu cầu thời gian thực hiện và xử lý nhanh nhất có thể, bởi vì nó có thể cung cấp quyền truy cập trực tiếp vào phần cứng và thư viện mà hệ điều hành sử dụng.Tùy thuộc vào loại chương trình được viết và hệ điều hành mục tiêu, việc sử dụng bộ công cụ phát triển gốc có thể không tăng tốc độ chương trình và có thể làm cho mã khó duy trì, đọc và chuyển sang các hệ thống khác.được viết cho một số thiết bị, chẳng hạn như điện thoại thông minh hoặc sử dụng ngôn ngữ máy tính được giải thích không được thực hiện trực tiếp bởi các quy trình hệ điều hành cốt lõi hoặc kernel.Thay vào đó, mã chương trình được thực thi bởi một chương trình riêng biệt được gọi là máy ảo (VM) hoặc trình thông dịch.Máy ảo đọc mã, mở rộng và giải quyết các lệnh và giao diện với kernel để thực thi mã.Điều này có thể có lợi cho một số nhà phát triển, bởi vì nó cung cấp một lớp trừu tượng tốt cho tính di động và để lại nhiều chi tiết phức tạp, chẳng hạn như quản lý tài nguyên và xử lý tệp, cho những người tạo ra máy ảo.Máy có thể là một trở ngại cho một số loại chương trình.VM có thể chậm thực thi hoặc không cung cấp quyền truy cập vào một số chức năng trong kernel của máy chủ.Một bộ phát triển gốc cho hệ điều hành mục tiêu hoặc thiết bị hiển thị các chức năng của kernel cho ứng dụng được viết.Tùy thuộc vào mức độ của bộ dụng cụ, điều này có thể cho phép một chương trình truy cập trực tiếp phần cứng, tải các thư viện tùy chỉnh của riêng mình vào kernel hoặc sử dụng tối ưu hóa cụ thể theo hệ thống.của một chương trình.Đây có thể là các tính toán xử lý đồ họa, đầu ra vào màn hình hoặc đầu vào tệp và đầu ra.Không phải tất cả các chương trình sử dụng các chức năng hoặc thói quen gốc sẽ thấy lợi ích tốc độ, bởi vì máy ảo có thể đã thực hiện tối ưu hóa mã được quản lý để mã máy kết quả giống hệt nhau, bất kể các hàm gốc có được sử dụng hay không.Ngoài ra, mã gốc gắn một chương trình để triển khai cụ thể hệ điều hành và đôi khi là phiên bản cụ thể của thiết bị, có nghĩa là mã sử dụng bộ phát triển gốc có thể không dễ dàng chuyển sang các hệ thống khác.