Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Dimulai dari dasar-dasarnya, berikut ini adalah definisi informal dari Registry:
Namun:
Oleh karena itu, sebaiknya pahami kelas ini agar
dengan Tink secara efisien untuk saat ini.
Apa yang terjadi saat Anda memanggil getPrimitive() pada tuas keyset? Ini akan meneruskan
panggilan ke Registry1, yang berisi objek dengan metode konkret untuk membuat
kunci dan primitif, seperti
tombol AesGcm atau instance ChunkedMac. Tugas Registry adalah meneruskan panggilan
ke objek yang benar. Ini hanya berfungsi jika objek telah terdaftar. Itulah sebabnya
penting untuk selalu mendaftarkan primitif yang akan digunakan.
Namun, bagaimana jika saya menggunakan library yang sudah mendaftarkan primitif yang saya perlukan?
Itulah masalahnya. Dan salah satu alasan penghapusan Registry.
Karena dalam hal ini, kode Anda hanya berfungsi
hingga penulis pustaka memutuskan untuk
tidak mendaftarkan primitif itu lagi. Pada tahap ini, kode Anda akan rusak, dan
tidak jelas dan membingungkan. Jadi, selalu daftarkan apa yang Anda
digunakan. Sebagai contoh, jika Anda ingin menggunakan MAC di kode Java Anda, Anda harus melakukan
hal berikut dalam tahap penyiapan:
MacConfig.register()
Kode ini memastikan bahwa semua objek yang diperlukan telah terdaftar di
tempat yang diperlukan untuk
menggunakan primitif MAC.
Ada satu hal lagi dari masalah ini. Beberapa dependensi Anda
mungkin mendaftarkan
hal-hal yang sebenarnya tidak Anda perlukan
dan tidak ingin Anda andalkan. Ini adalah
alasan lain untuk menghapus
{i>Registry<i} global.
ke instance singleton global Registry class, tepatnya. Kami menggunakan
nama "Registry" untuk keduanya, class dan singleton, secara bergantian. ↩
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-25 UTC."],[],["The Registry is a global entity in Tink for generating keys and primitives, but it's slated for removal and should not be directly accessed. `getPrimitive()` calls are forwarded to the Registry, which then creates the correct object, if registered. It is crucial to register the primitives one intends to use directly, using method like `MacConfig.register()`, because relying on library registration leads to code fragility and unwanted dependencies. The class is considered for removal.\n"]]