Saya akan mengajukan pertanyaan tentang menyiapkan aplikasi desktop untuk mendukung banyak bahasa di UI.
Dalam pencarian saya untuk pertanyaan yang ada pada topik saya memikirkan kata "Internasional", jadi saya memilih tag Internasionalisasi dan membaca beberapa pertanyaan yang cocok.
Akhirnya saya menyadari bahwa saya mungkin harus mencari di bawah pertanyaan yang ditandai Lokalisasi. Namun sepertinya saya tidak sendirian dalam menggabungkan kedua istilah ini.
Jadi, apa perbedaan utama antara Lokalisasi dan Internasionalisasi?
Juga, apakah perbedaan yang jelas di antara mereka benar-benar penting?
Menurut Apple :
sumber
Internasionalisasi mempersiapkan aplikasi Anda untuk pelokalan. Misalnya, Anda dapat menyandikan karakter yang disimpan dalam database Anda di Unicode (
utf8mb4
alih-alihlatin1
), memindahkan string ke file sumber daya, memungkinkan penggunaan format tanggal, waktu dan mata uang, dll.Ketika Anda ingin menjual, misalnya, versi Cina dari aplikasi Anda, Anda kemudian akan melokalisasinya dengan menyewa penerjemah untuk membangun file sumber daya zh-CN, dan menggunakan format tanggal / waktu / mata uang baru.
sumber
L10n kadang-kadang dapat menunjukkan di mana i18n Anda gagal - misalnya, di mana kamus Anda memiliki satu entri untuk kata yang digunakan sebagai kata benda dan kata kerja dalam bahasa Inggris yang tidak menerjemahkan ke kata yang sama dalam bahasa lain, atau elemen UI / desain tidak cocok untuk suatu budaya (orientasi L / R).
Jadi l10n "umumnya" terjadi setelah i18n, tetapi dapat memberi umpan balik ke i18n Anda dan memerlukan pendesainan ulang lebih lanjut, sehingga Anda tidak dapat mempertimbangkan aplikasi Anda sepenuhnya diinternasionalisasi sampai Anda telah melakukan beberapa pelokalan.
sumber
Menurut Wikipedia
Internasionalisasi adalah proses merancang aplikasi perangkat lunak sehingga berpotensi dapat diadaptasi ke berbagai bahasa dan wilayah
without engineering changes
.Pelokalan adalah proses
adapting internationalized software
untuk wilayah atau bahasa tertentu dengan menambahkan komponen khusus lokal dan menerjemahkan teks.Juga , Pelokalan (yang berpotensi dilakukan beberapa kali, untuk lokasi yang berbeda) menggunakan
infrastructure or flexibility provided by internationalization
(yang idealnya dilakukan hanya sekali, atau sebagai bagian integral dari pembangunan berkelanjutan).sumber
Globalisasi (G11n): adalah proses pengembangan dan pemasaran produk perangkat lunak multibahasa ke pasar global.
Pengembangan perangkat lunak multibahasa saat ini melewati dua fase: fase pertama adalah internasionalisasi, dan fase kedua adalah lokalisasi.
Internasionalisasi (I18n): adalah proses menggeneralisasi suatu produk sehingga dapat menangani berbagai bahasa dan konvensi budaya tanpa perlu mendesain ulang (yaitu bahasa & budaya netral).
Lokalisasi (L10n): adalah proses mengambil produk dan membuatnya sesuai secara bahasa dan budaya dengan target lokal (negara / wilayah dan bahasa) di mana ia akan digunakan dan dijual (yaitu bahasa & budaya khusus).
sumber
Banyak jawaban, banyak informasi yang benar, tetapi jawaban saya sedikit berbeda.
Internasionalisasi - ini terjadi ketika pengembang tidak memiliki kode pesan langsung / pesan kesalahan / nama tombol / label keterangan / dll dalam bahasa tertentu tetapi memiliki kunci yang diteruskan ke fungsi terjemahan, dan fungsi terjemahan sesuai dengan lokal pengguna saat ini akan mengembalikan teks akhir dalam bahasa inggris / france / etc ...
Fungsi terjemahan berfungsi dengan penyimpanan (db / file / associative array / etc).
Penyimpanan berisi kunci - kunci yang digunakan dalam coode, dan nilai-nilai, yang merupakan teks-teks dalam bahasa tertentu yang didukung aplikasi.
Lokalisasi - ini adalah proses menambahkan nilai-nilai baru dalam bahasa baru (misalnya Spanyol) yang sesuai untuk kunci ke penyimpanan tanpa melibatkan pengembang dalam proses ini.
Misalnya, kami memiliki penyimpanan:
Internasionalisasi yang digunakannya dalam kode seperti
confirm(t(agree));
bukanconfirm("I agree");
atauconfirm("Sono d'accordo");
Pelokalan - ini menambahkan lokal baru ke penyimpanan kami, seperti:
dan di sini pengembang tidak perlu kode pembaruan, fungsi terjemahan akan membawa teks yang sesuai dengan benar.
sumber
Ini sangat sederhana jika Anda pergi dengan definisi di bawah ini,
i18n (internasionalisasi) adalah
l10n (lokalisasi) adalah
sumber
Ada beberapa jawaban yang sangat bagus di sini, jadi saya tidak akan mendaur ulangnya. Namun pada titik tertentu, biasanya antara pengujian internasionalisasi dan pengujian linguistik lokalisasi, internasionalisasi dan lokalisasi cenderung tumpang tindih. Satu orang menyebutkan 10n memberi umpan balik ke internasionalisasi, tetapi jika Anda melakukan pengujian kualitas i18n, dan membuat konten lokal semu, maka iterasi pada isu-isu pembangunan selama pelokalan harus menjadi pengecualian, bukan aturan. Mengubah ukuran antarmuka, dan terutama mengadaptasi halaman untuk mendukung bahasa dua arah seperti Bahasa Arab dan Bahasa Ibrani juga cenderung memadukan masalah lokalisasi dan rekayasa internasionalisasi.
Cukuplah untuk mengatakan, Internasionalisasi melibatkan membuat perubahan pada sumber untuk mendukung setiap lokal berdasarkan persyaratan. Jika internasionalisasi dilakukan dengan baik ...
... Pelokalan melibatkan adaptasi konten dan beberapa tingkat presentasi (mis. Tag tebal) sehingga yang terbaik mengatasi kebutuhan pasar yang ditargetkan spesifik (lokal).
Banyak artikel & kertas putih untuk referensi di sini: http://www.lingoport.com/software-internationalization-articles
sumber
Internasionalisasi - i18n - Abstraksi aplikasi dari bahasa / budaya tertentu.
Lokalisasi - l10n- Memasukkan dukungan konkret untuk bahasa / budaya / lokal tertentu ke kerangka i18n di atas.
Pada dasarnya dengan melakukan i18n pertama Anda membuat P10 jauh lebih sedikit.
Sebaliknya jika Anda membuat aplikasi di lokasi konkret terlebih dahulu dan kemudian mencoba menginternasionalkannya, itu akan menjadi PITA besar. Ini bukan masalah sederhana dengan hanya menukar string bahasa Inggris konkret mengatakan "Hello World" ke Resource.Global.HelloWorld.
Bahasa yang berbeda akan memiliki kebutuhan ruang, tata letak, penekanan, warna yang berbeda, dll.
Anda memerlukan kerangka i18n di tempat dari bawah ke atas untuk dengan mudah mendukung peralihan antar lokal ini untuk perbedaan di atas jika Anda bahkan berpikir Anda mungkin perlu mendukung lebih dari satu lokal.
Pemasangan kembali ke aplikasi nanti sangat sulit. Anda harus mengunjungi kembali seluruh pertimbangan arsitektur dan kendala yang Anda (atau orang lain) buat untuk pertama kalinya.
sumber
Saya merasa lokalisasi bisa berjalan tanpa internasionalisasi tetapi .. internasionalisasi dengan lokalisasi tidak boleh dilakukan ...
sumber
analogical pov: Bayangkan sebuah rak di perpustakaan Anda yang hanya dapat mengambil satu buku ukuran 4x4 inci. Internasionalisasi akan membangun rak dengan semua jenis kompartemen berbeda yang dapat memungkinkannya untuk menangani ukuran atau bentuk buku apa pun. Dan lokalisasi akan mengatur semua buku di bagian yang tepat. Pikirkan Basis Data, logika bisnis, dan UI Anda sebagai rak dan berbagai bahasa, mata uang, dan orientasi teks sebagai buku.
sumber
Mari kita pahami lokal terlebih dahulu
locale - seperangkat parameter yang mendefinisikan bahasa pengguna, wilayah dan preferensi varian khusus apa pun yang ingin dilihat pengguna di antarmuka pengguna. Biasanya pengidentifikasi lokal setidaknya terdiri dari pengidentifikasi bahasa dan pengidentifikasi wilayah.
i18n - Merancang dan mengembangkan perangkat lunak untuk mendukung banyak lokal.
l10n - Ini hanya mungkin jika perangkat lunak Anda mendukung i18n. Tapi l10n memastikan, bahwa bahasa, format tanggal, format mata uang dll ditampilkan dalam konteks untuk lokal tertentu.
Sebagai contoh,
# 1. 3 Juni 1977 akan diterjemahkan ke dalam bahasa Spanyol sebagai 3 de junio de 1977.
# 2. Mata uang di beberapa negara dipisahkan oleh '.' vs ','
# 3. Tampilkan simbol mata uang masing-masing berdasarkan negara setempat
# 1, # 2 dan # 3 adalah kasus penggunaan untuk pelokalan.
Jika perangkat lunak dirancang untuk mendukung # 1 ATAU # 2 ATAU # 3 berdasarkan pengguna-lokal, maka produk diaktifkan.
Jika mendukung banyak lokal, maka i18nnya diaktifkan.
sumber
Secara sederhana,
Internasionalisasi (I18N) adalah proses membuat perangkat lunak Anda dapat beradaptasi dengan berbagai bahasa, wilayah, dan budaya.
Lokalisasi (L10N) adalah proses menerjemahkan perangkat lunak Anda ke berbagai bahasa. Tetapi sebelum Anda dapat melokalkan perangkat lunak Anda, Anda menginternasionalkannya.
sumber
Ada banyak definisi i18n dan l10n. Yang saya gunakan adalah:
internasionalisasi (i18n) : adaptasi khusus bahasa aplikasi Anda (terjemahan)
lokalisasi (l10n) : adaptasi spesifik lokal aplikasi Anda (uang, format angka, format tanggal ...).
Misalnya, kita dapat memiliki bahasa yang sama untuk aplikasi yang didistribusikan di Prancis dan Swiss (kami berdua berbicara bahasa Prancis, setidaknya di beberapa bagian Swiss), tetapi kami masih memerlukan beberapa adaptasi untuk mengubah EUR ke CHF.
sumber