Chúng tôi có một dự án đầy đủ các thành phần tùy chỉnh mà hiện nay đang làm việc trong Lazarus và Delphi.Sự khác nhau giữa việc thực hiện Giao diện trong Delphi và Lazarus (FPC) là gì?
Tôi đang suy nghĩ về các giao diện mã trên đó, nhưng tôi không quen thuộc lắm với chúng. Những gì tôi muốn biết là: các sắc thái thực hiện từ Delphi và giao diện Lazarus là gì? Có điều gì đó mà tôi nên đặc biệt nhận thức? Tôi có phải viết mã những thứ khác nhau không?
Giải thích nền: Tôi nghĩ rằng các thành phần có thể được hưởng lợi từ giao diện hoặc ít nhất, tôi sẽ tìm hiểu thêm từ chúng. Ví dụ, một trong những thành phần làm cho giao tiếp với nhiều phần cứng khác nhau bằng cách sử dụng cổng nối tiếp. Nhưng người dùng chỉ nên sử dụng thành phần của chúng tôi để tạo ứng dụng. Vì vậy, chúng tôi có các thành phần và một lớp học cho mỗi phần cứng này mà hậu duệ từ một lớp cơ sở. Tại thời gian chạy, chúng ta tạo ra một lớp cụ thể bên trong thành phần.
Không chắc chắn giải thích cuối cùng này là cần thiết, nhưng tôi có thể viết thêm nếu bạn cần.
Đây là một [đọc cơ bản'] (http://www.freepascal.org/docs-html/ref/refch7.html#x84-940007) về các giao diện trong FreePascal. Như một kết luận rất nhanh tôi sẽ nói, nếu bạn đang nhắm mục tiêu nền tảng Windows và bạn sẽ sử dụng kiến trúc Windows COM (các giao diện giảm dần từ IUnknown) sẽ không có sự khác biệt trong mã từ Delphi, nhưng câu trả lời cho câu hỏi của bạn sẽ được nhiều hơn tinh vi. – TLama
Bạn có ý nghĩa gì bởi "sắc thái thực hiện"? Có vẻ như điều đó thực sự quan trọng với bạn. Điều quan trọng là liệu bạn có thể viết mã * có nghĩa là * cùng một thứ với cả hai trình biên dịch, không phân biệt mỗi trình biên dịch thực sự thực hiện các giao diện như thế nào. –
@DavidHeffernan Tôi có nghĩa là "sự khác biệt nhỏ trong việc thực hiện". Có lẽ tôi không thể viết mã có nghĩa là giống nhau cho cả hai, nhưng có lẽ, tôi sẽ không cần phải viết tất cả những điều cho mỗi trình biên dịch. Tôi đã hỏi chỉ vì tôi mong đợi có, nhưng tôi không biết nếu có bất kỳ sự khác biệt trong cả hai trình biên dịch trong trường hợp này. Điều này có rõ ràng hơn không? – EMBarbosa