Ini adalah sesuatu yang selalu saya pikirkan, dan saya tidak dapat menemukan satu pun penyebutannya di mana pun secara online. Ketika sebuah toko dari, misalnya Jepang, menulis kode, apakah saya dapat membacanya dalam bahasa Inggris? Atau apakah bahasa, seperti C, PHP, apa saja, memiliki terjemahan bahasa Jepang yang mereka tulis?
Saya kira apa yang saya tanyakan adalah apakah setiap pembuat kode di dunia cukup tahu bahasa Inggris untuk menggunakan kata-kata khusus yang sama seperti yang saya lakukan?
Apakah kode ini:
If (i < size){
switch
case 1:
print "hi there"
default:
print "no, thank you"
} else {
print "yes, thank you"
}
tampilan yang sama persis seperti yang saya lihat sekarang dalam bahasa Inggris, atau apakah orang lain yang tidak bisa berbahasa Inggris melihat kata "if", "switch", "case", "default", "print", dan " else "dalam bahasa asli mereka?
EDIT - ya, ini serius. Saya tidak tahu apakah pelokalan bahasa yang berbeda memiliki kata kunci yang berbeda. atau jika ada pelokalan yang berbeda sama sekali.
sumber
Jawaban:
Jika saya memahami dengan baik, pertanyaan sebenarnya adalah: "apakah setiap pembuat kode di dunia cukup tahu bahasa Inggris untuk menggunakan kata-kata khusus yang sama persis seperti yang saya lakukan?"
Nah .. Bahasa Inggris bukan subjek disini tapi bahasa pemrograman kata-kata yang dipesan. Maksud saya, ketika saya mulai sekitar 10 tahun yang lalu, saya tidak memiliki petunjuk tentang bahasa Inggris, dan saya masih dapat memprogram hal-hal sederhana dengan mempelajari bahasa pemrograman, bahkan ketika saya tidak tahu apa artinya (dalam bahasa Inggris). Sebenarnya ini membantu saya belajar bahasa Inggris.
Sebagai contoh. Saya tahu untuk melakukan "iteración" (iterasi tentu saja) saya harus menulis:
Bagi saya "untuk", ";" dan "++" di mana kata atau simbol asing sederhana. Kemudian saya belajar bahwa "untuk" berarti "para" dan "sementara" berarti "mantra" dll. Tetapi sementara itu saya tidak perlu tahu bahasa Inggris, tetapi dalam kasus saya yang saya butuhkan adalah mengetahui "C".
Tentu saja ketika saya perlu belajar lebih banyak, saya harus belajar bahasa Inggris, karena dokumentasinya ditulis dalam bahasa itu.
Jadi jawabannya adalah: Tidak, saya tidak melihat apakah, while, untuk dll. Dalam bahasa ibu saya. Saya melihat mereka dalam bahasa Inggris, tetapi mereka tidak bermaksud untuk saya hal lain yang mereka maksudkan untuk bahasa pemrograman pada gilirannya.
Seperti pernyataan switch di bash: case .. esac. Apa itu "esac" ... bagi saya akhir dari pernyataan sakelar di bash.
Saya rasa itulah yang kita sebut "abstraksi"
sumber
Dalam bahasa Java, beberapa metode harus diberi nama (setidaknya sebagian) menggunakan bahasa Inggris karena konvensi JavaBeans.
Konvensi ini mengharuskan properti X dibuat melalui pasangan metode getX () dan setX (). Di sini, di Prancis-Kanada, di mana beberapa pengembang diwajibkan untuk membuat kode dalam bahasa Prancis, ini mengarah ke parodi berikut:
sumber
Saya kesulitan mencari referensi, tapi saya teringat akan tiga cerita.
Seorang hacker Lisp membela fungsi yang tidak berarti seperti "cdr" dan "car" dengan membandingkannya dengan pemrograman dalam bahasa non-asli Anda: http://people.csail.mit.edu/gregs/ll1-discuss-archive-html/msg01171. html
Ketika Yukihiro Matsumoto ("Matz") mulai mengembangkan Ruby, dia menggunakan kata kunci bahasa Inggris meskipun dia menulis semua dokumentasi dalam bahasa Jepang! . Tidak ada dokumentasi bahasa Inggris untuk Ruby selama beberapa tahun, dan sangat sedikit orang Amerika yang menggunakan bahasa tersebut. Tapi sekarang ini adalah bahasa kelas dunia, dan fakta bahwa ia lahir di Jepang hanyalah kepentingan sejarah. Jika bahasa tersebut menggunakan kata kunci dalam hiragana, itu akan jauh lebih sulit untuk mendapatkan popularitas.
Saya pernah membaca esai - mungkin orang lain dapat menemukannya, Google tidak membantu hari ini - yang menyarankan bahwa menerjemahkan kata kunci salah karena kata-kata itu sebenarnya bukan bahasa Inggris - itu jargon. Tidak hanya (untuk menggunakan contoh di atas) para dan tuangkan tidak cukup memiliki arti yang tepat yang untuk memiliki dalam bahasa Inggris, untuk non-programmer frase "untuk loop" adalah jibberish. Bahkan orang Amerika harus mempelajari arti baru. Jadi, menerjemahkan makna dangkal kata-kata tersebut ke dalam bahasa lain lebih seperti membuat permainan kata lintas bahasa daripada benar-benar membantu.
sumber
Saya benar-benar belum terlalu memikirkan tentang pemrograman dalam bahasa Jepang sebelumnya, tetapi ini dia, menggunakan contoh kode pertanyaan.
Hanya menggunakan pernyataan bahasa dalam bahasa Jepang dengan variabel dalam bahasa Inggris:
sumber
Seperti yang telah ditunjukkan oleh banyak orang, di sebagian besar bahasa pemrograman Anda hanya perlu mempelajari beberapa kata kunci, jadi tidak masalah jika kata kunci itu dalam bahasa Inggris (atau bahasa lain selain bahasa Anda, dalam hal ini). Itu hanya simbol yang Anda asosiasikan dengan beberapa konstruksi. Misalnya, di VB Anda memiliki "THEN", yang dalam banyak bahasa C-style adalah "{" dan itu tidak membuat perbedaan besar dalam keterbacaan (yah, setidaknya begitulah menurut saya, menjadi non-Inggris penutur asli).
Tapi di mana hal-hal terkadang menjadi rumit, dan di mana pilihan bahasa (alami) penting dalam penamaan pengenal. Jika nama variabel, fungsi, kelas, dll, tidak memiliki nama yang berarti untuk Anda karena kendala bahasa, mengikuti kode yang paling sederhana pun bisa jadi agak menantang.
Saya ingat seseorang pernah memberi saya cuplikan pendek Actionscript yang diambil dari beberapa blog. Nama-nama itu dalam bahasa Jerman dan karena saya tidak berbicara sepatah kata pun dari bahasa itu, barang-barang itu bisa saja disebut var_123, var_562 atau func_333 juga (dan mungkin akan lebih mudah bagi saya untuk mengingat nama-nama itu atau setidaknya memiliki kemungkinan mengeja dengan benar tanpa menyalin dan menempel). Karena ini adalah cuplikan pendek dan mandiri, saya menggunakan penerjemah online untuk memberikan nama yang bermakna pada vars dan fungsi tersebut dalam bahasa asli saya (Spanyol) dan setelah itu, semuanya menjadi jelas. Intinya adalah bahwa kodenya sebenarnya sederhana, tetapi saya hanya bisa memahaminya tanpa terlalu banyak usaha ekstra (tidak perlu) saat saya mengatasi kendala bahasa.
Sejak itu, saya telah beralih menggunakan bahasa Inggris untuk pengenal penamaan. Suka atau tidak suka, itu adalah "koine" untuk pemrograman, teknik, dan umumnya hal-hal teknis. Sebagian besar API ditulis dalam bahasa Inggris dan begitu pula sebagian besar dokumentasi (dan mungkin sumber daya terbaik yang dapat Anda temukan juga dalam bahasa Inggris). Sebagai tambahan yang bagus, itu membuat kode Anda lebih koheren dengan kode yang mungkin Anda gunakan untuk berinteraksi, dan saya pikir itu cenderung lebih kompak dan ringkas daripada bahasa lain seperti Spanyol (yang sebaliknya akan menjadi pilihan alami saya).
Tentu saja, jika Anda tidak dapat memahami setidaknya sedikit bahasa Inggris, masalahnya tetap sama, jadi ini bukan solusi yang tepat. Namun, mengingat sejumlah pengembang dari berbagai negara, kemungkinan besar bahasa yang digunakan untuk berkomunikasi (melalui kode dan tentu saja cara lain) adalah bahasa Inggris. Jadi, memilih bahasa Inggris mungkin merupakan pilihan terbaik, meskipun itu bukan solusi yang tepat untuk masalah ini.
sumber
Bahasa pemrograman mendefinisikan kata kunci dan nama kelas standar, dan praktik terbaiknya adalah memberikan tipe, variabel, dan fungsi yang ditentukan pengguna, juga nama bahasa Inggris (sebagai penutur non-penutur asli yang saya tahu ;-).
Jadi ya, jika semuanya baik-baik saja, Anda akan bisa membaca kodenya.
Namun bahasa seperti Java dan Perl mengizinkan set Unicode lengkap untuk pengenal, jadi jika seseorang menulis nama kelasnya dalam Kanji, Anda mungkin akan mendapat masalah.
Pembaruan: Untuk Perl ada modul lelucon yang memungkinkan Anda untuk menulis Perl dalam bahasa Latin. Tapi sebenarnya hanya itu, lelucon. Tidak ada yang menggunakan hal-hal seperti ini dengan serius.
Pembaruan Kedua: Ide bahasa pemrograman yang dilokalkan tidaklah konyol. Bahasa makro Excel dilokalkan, tapi untungnya itu disimpan dalam satu bahasa kanonik (Inggris) di file, jadi pelokalan hanyalah lapisan di atas hal normal. Hal-hal seperti itu hanya masuk akal untuk "program" kecil, karena program "nyata" menjadi sulit untuk dipertahankan.
sumber
Sebenarnya ada yang beberapa bahasa pemrograman berbasis Non-Inggris (Wikipedia)
Saya orang Norwegia tetapi saya selalu menggunakan bahasa Inggris untuk semua kode kecuali keluaran (mengabaikan beberapa kode konyol dari sekolah). Sebenarnya saya biasanya menulis semuanya dalam bahasa Inggris dan kemudian menerjemahkannya ke bahasa ibu saya, menggunakan gettext (atau sesuatu).
sumber
Saya orang Inggris dan masalah yang sering kita hadapi adalah benturan ejaan Amerika / Inggris. Hal ini sering terjadi dengan istilah terkait pemrograman seperti Initialise () atau Initialize (), Analyze () atau Analyze () dll. Hal ini dapat (telah) menyebabkan masalah mencoba untuk mengganti metode, dan terkadang sulit dikenali.
Karena kerangka kerja (dalam kasus kami C #) dirancang oleh orang Amerika, kami menemukan bahwa yang terbaik adalah konsisten dan menggunakan ejaan Amerika. Kami bahkan mengadopsi Warna.
Kami memiliki campuran kebangsaan dalam tim pengembangan kami dan sebagian besar orang non-Inggris cenderung ke arah ejaan Amerika secara alami.
sumber
AppleScript pernah tersedia dalam dialek Prancis dan Jepang. Saya tidak tahu mengapa itu ditarik.
sumber
Membawa ini ke tingkat selanjutnya, bagaimana dengan kemampuan untuk mengganti simbol?
Setelah melihat bahasa seperti Brainf ** k dan Whitespace saya berpikir untuk membuat bahasa seperti ini: itu akan identik dengan C kecuali Anda menggunakan kurung kurawal untuk membuka, membuka kurung kurawal untuk menutup, menukar arti dari + dan -, * dan / ,; dan:,> dan <, dll.
Konsep ini tidak lebih dari kompiler C yang diubah untuk menarik perhatian. Namun, seperti memikirkan kata kunci secara berbeda, ini menantang Anda untuk memikirkan kembali beberapa asumsi dasar jika Anda belum pernah memikirkan hal seperti itu sebelumnya. Ex:
sumber
Saya berada di tim Prancis yang mengembangkan sistem perangkat lunak di C #. Terlepas dari kenyataan bahwa kata kunci bahasa pemrograman seolah-olah bahasa Inggris, saya membayangkan Anda akan mengalami kesulitan besar membaca kode karena semua nama fungsi, variabel, komentar kode, tabel dan kolom database, spesifikasi teknis, protokol, dan sebagainya, semuanya ada di Prancis, termasuk karakter beraksen indah ç, é, è, ù, dll. Saya bahkan tidak yakin apakah sistem akan berjalan di tempat lain karena bug lokalisasi, seperti mengandalkan koma sebagai pemisah desimal default.
Jika tidak, WinDev adalah platform pemrograman populer di Prancis, dan bahasa pemrogramannya WLanguage memiliki kata kunci dalam bahasa Prancis atau Inggris, lihat dan contohnya di sini: teks tautan
sumber
Satu-satunya bahasa yang saya lihat dilokalkan adalah Excel dengan makronya. Jika Anda mencoba menjumlahkan kolom menggunakan Office versi Italia, Anda harus menulis
SOMMA(A1:A10)
dan bukan SUM. Itu memalukan.Ngomong-ngomong, hanya karena menyenangkan, berikut tampilan kode Anda dengan kata kunci Italia:
sumber
Saya telah melihat VBA diterjemahkan ke dalam perintah seperti bahasa Spanyol. itu salah satu hal paling jelek yang pernah dilihat. saya akan malu memiliki sesuatu seperti ini di komputer saya.
PD: Saya kebetulan berpikir bahwa bahasa Spanyol adalah bahasa yang jauh lebih baik daripada bahasa Inggris; tetapi menerjemahkan SALAH
sumber
Nah, Seperti yang ditunjukkan orang lain, kata kunci dan panggilan sistem kemungkinan akan tetap dalam bahasa Inggris.
Namun, memahami kata kunci dari bahasa tersebut hanya sebagian kecil dalam memahami kode. Nama variabel, nama fungsi, dan komentar semuanya berisiko menggunakan bahasa asli penulis.
Sunting : Saya baru saja mengingat kembali masa muda saya di mana saya pergi ke tabel pemetaan BASIC bawaan TRS-80 saya untuk mengganti kata kunci ke bahasa Prancis. Saya bisa mengubah semua kata kunci tapi saya tidak bisa memperbesarnya. Dibuat untuk program lucu.
sumber
Jangan mengolok-olok ini. Beberapa tahun yang lalu, Microsoft telah mengumumkan G # (German Sharp) - C # dengan kata kunci dan API Jerman. Tentu saja, itu adalah lelucon April Mop, tetapi seluruh situs tentang itu tampak begitu nyata dan profesional (dan ada di microsoft.com). Mengerikan.
Di tempat kerja, kami menggunakan dua sistem bus lapangan, keduanya dikembangkan di negara-negara berbahasa Jerman, yang memiliki campuran bahasa Jerman dan Inggris yang menakutkan untuk pengenal, termasuk beberapa teman palsu yang menyenangkan. Ini berantakan.
Tidak, kata kunci dan pengenal bahasa Inggris baik-baik saja. Meskipun beberapa mungkin membantah apakah itu Warna atau Warna :)
sumber
Dalam beberapa proyek VBA yang saya kerjakan (ya, di awal karir saya) kami harus mendeteksi versi office yang diinstal pada mesin pengguna dan mengubah rumus yang digunakan di speradsheets yang sesuai.
Karena saya memprogram dalam bahasa Portugis, "SUM" harus diterjemahkan ke dalam "SOMA" dan seterusnya dan seterusnya. Saya tidak bisa membayangkan pekerjaan yang diperlukan untuk mewujudkannya dalam beberapa bahasa. Apakah ada orang lain yang menderita masalah ini?
sumber
Ada beberapa bahasa yang memiliki kata kunci terjemahan. Rumus Excel, misalnya. Jika Anda menulis beberapa kalkulasi dalam spreadsheet, ini akan menggunakan bahasa Anda.
Untungnya, ini bukan praktik umum, dan bahkan penutur non-Inggris seperti saya alhamdulillah ada bahasa standar untuk kata kunci:
Dan di mana harus berhenti? Dapatkah Anda membayangkan huruf C dalam bahasa Yunani kuno?
Kata kunci harus tetap dalam satu bahasa, dan ya, itu dimulai dengan bahasa Inggris, biarkan tetap seperti itu. Ini bisa jadi yang terburuk (bahasa Asia?). Jadi kami harus menulis metode dan komentar dalam bahasa Inggris. Oke, lebih banyak pekerjaan untuk kami, tetapi setidaknya basis kode internasional tetap kongruen.
Namun, ada satu kasus di mana menggunakan nama metode bahasa asli dan komentar bisa menjadi praktik yang baik: di negara dunia ketiga. Saya akan ke Senegal dalam beberapa bulan untuk mengelola proyek Django. Senegal memiliki tingkat analisis alfabetisasi yang tinggi, dan karenanya sangat bagus bahwa mereka memberikan energi untuk meningkatkan pengetahuan pemrograman mereka. Bahasa Prancis adalah bahasa ibu di sini, jadi tidak efisien untuk memaksa mereka belajar komputasi DAN bahasa baru pada saat yang bersamaan.
BTW, itu akan menjadi kode Anda dengan kata kunci Prancis:
Bukan berarti menerjemahkan kata kunci tidak ada hubungannya dengan menerjemahkan string. Tentu saja, kami memiliki terjemahan "hai, di sana" dalam bahasa kami. Pembuat kode Eropa bahkan cenderung menggunakan I18N lebih banyak daripada orang Amerika sehingga layanan mereka dapat menjangkau khalayak yang lebih luas.
sumber
Secara umum, kebanyakan programmer beradaptasi dengan bentuk bahasa Inggris. Saya belajar program ketika saya berusia 7 tahun dan hanya berbicara bahasa Ibrani (yang dari kanan ke kiri) dan tanpa bahasa Inggris, yang menjadikannya pengalaman yang cukup menarik.
Masalah yang biasanya Anda dapatkan adalah dengan dokumentasi, variabel, dan nama fungsi. Saya telah melihat bagian saya variabel dalam bahasa lain menggunakan alfabet Inggris.
Satu-satunya bahasa yang saya kenal yang benar-benar diterjemahkan adalah Logo lama yang bagus (masih luar biasa sampai hari ini).
sumber
Ketika saya masih kecil kami pergi ke Prancis, dan di sebuah museum yang kami kunjungi, saya ingat menemukan sebuah pajangan yang menunjukkan kepada Anda bagaimana menulis program komputer. Bahasanya adalah sejenis varian BASIC dan saya mengingatnya dengan jelas menggunakan POUR, bukan FOR, dan seterusnya. Saya berumur 7 tahun dan baru saja belajar BASIC, dan sepertinya wajar bagi saya bahwa bahasa Prancis memiliki dialek sendiri seperti ini !!
Saya kira mungkin LSE yang saya lihat?
sumber
Bahasa skrip pembuat film dilokalkan. Skrip (dan data!) Disimpan dalam bentuk "semacam kanonik" yang mengerikan.
Jadi jika Anda menulis skrip dalam versi Amerika, kemudian membukanya dalam versi Prancis, semua kata kunci dan nama fungsi bawaan akan menggunakan bahasa Prancis. Tapi kenapa itu tidak berjalan ?! Aha! Versi Prancis menggunakan "," sebagai titik desimal, dan oleh karena itu untuk menghindari ambiguitas gunakan ";" untuk memisahkan argumen fungsi - di mana versi Amerika menggunakan "." dan ",". Konversi ini harus Anda lakukan sendiri.
Jadi Anda bekerja melalui antarmuka pengeditan skrip yang sangat buruk (Anda tidak dapat menulis skrip sebagai file teks) untuk memperbaiki semua hal ini. Ini berjalan! Bagus! Hasilnya semua salah! Oh tidak! Aha! Tanggal Jan-7-2004 yang Anda masukkan dalam versi Amerika ditafsirkan sebagai Juli-1-2004 - tampaknya tanggal tidak hanya ditampilkan tetapi disimpan dalam urutan yang bergantung pada lokal. Apakah saya bercanda ? Tidak.
[Catatan: Pembuat film 8 dan 9 mungkin waras - saya hanya pernah bekerja dengan 3 - 7.]
sumber
Pertanyaan Anda sangat menarik berkaitan dengan Perl karena sintaksnya dirancang untuk mengikuti bahasa alami (Inggris). Saya ingin tahu apakah itu membuat lebih sulit bagi penutur non-Inggris ...
Tentu saja, Perl dan Perlers menolak bermain dengan aturan konvensional. Ilmuwan gila Damian Conway menulis modul Lingua :: Romana :: Perligata yang menggunakan sihir hitam filter sumber untuk memungkinkan Anda menulis Perl dalam bahasa latin!
sumber
Di sini, di Australia, kita masih perlu mengeja warna seperti warna . Namun, saya merasa menjengkelkan ketika pengembang (Australia) lain, yang mengerjakan proyek Australia, memutuskan bahwa nama variabel internal perlu dieja dengan cara Amerika.
sumber
Tidak ada gunanya, IMHO, untuk i18n sintaks bahasa . Itu hanya akan membunuh segala jenis portabilitas.
Satu-satunya pengecualian adalah bahasa pendidikan, seperti LOGO. Mereka dirancang untuk kemudahan belajar, jadi portabilitas tidak menjadi masalah.
sumber
Saya membaca banyak kode, tetapi masalahnya selalu ada pada nama variabel / metode dan komentar, jika mereka mengomentari kode mereka pada bahasa mereka sendiri, menggunakan karakter khusus bahasa seperti Jepang atau Sirilik, kami dalam masalah! tapi kata kunci saya pikir mereka akan tetap dalam bahasa Inggris apa adanya.
sumber
dalam bahasa Italia
Untuk mengkonfirmasi kekhawatiran dari beberapa poster sebelumnya, saya telah melihat kode Fortran dengan menyertakan makro untuk menerjemahkan semua kata kunci dari bahasa Inggris ke Prancis. Izinkan saya untuk tidak melanjutkan ini.
Saya juga harus bekerja dengan kode yang secara bersamaan berisi pengenal dalam bahasa Italia, Jerman, Inggris, dan Prancis, tidak hanya karena dikembangkan di banyak tempat berbeda, tetapi juga karena pengembang utama menganggapnya menyenangkan dan membantunya untuk tidak menduplikasi nama pengenal ( tentu saja, dengan rutinitas sepanjang 2000 baris ....)
sumber
Saya pikir WordBasic dilokalkan. WordBasic digunakan untuk menulis makro di Word sebelum VBA digunakan.
Jika saya mengingatnya dengan benar, hanya WordBasic yang ditulis dalam versi bahasa Inggris yang akan dijalankan pada semua versi lokal. Jika Anda ingin menulis versi bahasa Belanda, Anda hanya dapat menjalankannya di Word Belanda.
sumber