Apakah kata-kata "pembungkus" dan "shim" kurang lebih identik, atau ada perbedaan, mungkin konotatif?
sumber
Apakah kata-kata "pembungkus" dan "shim" kurang lebih identik, atau ada perbedaan, mungkin konotatif?
Shim biasanya adalah sesuatu yang ditulis secara khusus untuk menjaga kompatibilitas. Misalnya, jika Anda memiliki dua versi API, versi 1 dan versi 2, daripada mempertahankan versi 1 secara independen dari versi 2, Anda dapat menulis gim yang memotong panggilan ke versi 1 dari API, menerjemahkan parameter ke versi apa 2 membutuhkan, dan kemudian mengembalikan hasilnya.
Biasanya, shim ditulis oleh penyedia API, bukan konsumen.
Wrapper ditulis oleh konsumen API dan biasanya ditulis sehingga Anda dapat mengganti API yang mendasarinya tanpa harus mengetahui kode lainnya. Misalnya, Anda dapat menulis pembungkus basis data sehingga Anda dapat berbicara dengan MS SQL Server, atau Oracle, hanya dengan mengganti pembungkus.
Tentu saja, seperti halnya terminologi apa pun, ada area abu-abu, tapi saya pikir di atas mencakup perbedaan utama.