Porting: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Baris 16:
 
Standar internasional, seperti yang ditetapkan oleh [[International Organization for Standardization|ISO]], sangat memfasilitasi porting dengan menentukan detail lingkungan komputasi dengan cara yang membantu mengurangi perbedaan antara berbagai [[Platform komputasi|platform]] yang sesuai standar. Menulis perangkat lunak yang tetap dalam batas-batas yang ditentukan oleh standar ini merupakan upaya praktis meskipun tidak sepele. Porting program semacam itu antara dua platform yang sesuai standar (seperti [[POSIX|POSIX.1]]) hanya masalah memuat kode sumber dan [[Compiler|mengompilasinya kembali]] di platform baru. Namun, praktisi sering menemukan bahwa berbagai koreksi kecil diperlukan, karena perbedaan platform yang tidak kentara. Sebagian besar standar mengalami "area abu-abu" di mana perbedaan interpretasi standar menyebabkan variasi kecil dari platform ke platform.
 
Ada juga jumlah alat yang terus meningkat untuk memfasilitasi porting, seperti [[GNU Compiler Collection]], yang menyediakan bahasa pemrograman yang konsisten di berbagai platform, dan [[GNU Autotools|Autotools]], yang mengotomatiskan pendeteksian variasi kecil di lingkungan dan menyesuaikan perangkat lunak sesuai sebelum kompilasi.
 
Kompiler untuk beberapa [[bahasa pemrograman tingkat tinggi]] (misalnya, [[Eiffel (bahasa pemrograman)|Eiffel]], [[Esterel]]) mendapatkan portabilitas dengan mengeluarkan kode sumber dalam [[Representasi menengah|bahasa perantara]] tingkat tinggi lainnya (seperti [[C (bahasa pemrograman)|C]]) di mana kompiler untuk banyak platform umumnya tersedia.