Saya baru-baru ini sengaja menemukan iniartikel dari beberapa tahun yang lalu. Ini berpendapat bahwa perbedaan signifikan dalam budaya yang mengelilingi VB dan C #, bukan perbedaan yang sebenarnya dalam bahasa, berkontribusi untuk coders C # yang umumnya lebih berbakat daripada coders VB. Jelas, yang menyebabkan banyak perang api dan pertanyaan apakah C # ers atau VBers adalah dumber tidak akan pernah dijawab. Karena itu, para penulis mengklaim bahwa budaya yang mengelilingi platform tertentu berkontribusi pada kualitas tim masih masuk akal. Misalnya, meskipun Java lebih efisien untuk mengembangkan aplikasi dengan saat ini, tim pengembang Google Go tampaknya akan memiliki kaliber yang lebih tinggi daripada tim pengembang Java, karena untuk belajar Go, pengembang mungkin memiliki menjadi pengadopsi super awal dan jagoan peretasan perbatasan. Singkatnya,bagaimana budaya yang melingkupi satu platform atau yang lain mempengaruhi kualitas pengembang rata-rata pada platform itu, jika sama sekali?
sumber
Jawaban:
Benar-benar pertanyaan menarik. Pendapat pribadi saya adalah bahwa itu adalah pertanyaan yang terlalu sering ditanyakan dan benar-benar tidak mengandung air sama sekali.
Script kiddies (dan perusahaan yang mempekerjakan mereka) membiarkan bahasa pilihan menentukan status mereka di antara eselon "programmer". Insinyur yang baik tidak bisa tidak peduli tentang bahasa pilihan, tetapi berkonsentrasi pada pemecahan masalah yang diberikan dengan cara yang paling optimal (jelas optimal adalah pernyataan umum dan dapat diterapkan pada banyak faktor yang berbeda). Apakah ini adalah C #, VB, C ++, Python atau perakitan tulisan tangan, tidak masalah karena ada manfaat yang jelas untuk menggunakan teknologi itu untuk menyelesaikan masalah.
Jadi singkatnya, saya pikir itu lebih berharga untuk melihat kompleksitas masalah yang diselesaikan secara teratur sebagai lawan dari bahasa apa yang mereka gunakan untuk menyelesaikannya.
Hanya dua sen saya pada subjek :)
sumber
Kualitas kode yang dikembangkan di masing-masing bahasa ini didasarkan pada filosofi dasar ini dan kurang pada masing-masing pengembang
Setiap bahasa memang memiliki budaya di sekitarnya, karena setiap bahasa dikembangkan untuk alasan oleh seseorang dengan agenda dan filosofi yang mendasari mengapa bahasa mereka akan menjadi lebih baik pada sesuatu daripada apa yang ada pada saat itu dibuat.
Seperti halnya agama, bahasa pemrograman cenderung menarik orang-orang yang sudah memiliki kecenderungan yang sama dengan kepala sekolah dan filosofi inti dari pembuat bahasa.
Contoh tentang Persepsi Kualitas Solusi
Di satu kamp Microsoft Anda memiliki:
Di kamp Microsoft lainnya:
Inilah beberapa bahasa dan filosofi mereka:
Apa yang dipedulikan kelompok-kelompok ini membentuk bahasa, perkembangannya, dan komunitasnya.
Filsafat berubah dengan pengalaman dan kebutuhan
Saya mengadopsi ASM dan BASIC karena pada tahun 1983 hanya itu yang Anda miliki. Saya ingin menulis game dan demo, itu adalah alat untuk melakukannya. Sebagian besar ASM untuk demo.
Saya mengadopsi C dan kemudian C ++ kembali ketika itu adalah satu-satunya cara untuk menulis hal-hal seperti rendering 3D dan cukup banyak hal lain yang merupakan ruang dan waktu kritis. Itu bukan ASM jadi saya mempelajarinya.
Saya mengadopsi VB untuk menghasilkan uang, itu adalah hal yang paling dekat dengan lingkungan pengembangan Scala, Direktur, dan Cando yang biasa saya gunakan di Amiga. Saya setuju dengan filosofi pengembangan yang cepat
Saya mengadopsi Jawa sejak awal untuk menghasilkan uang yang lebih baik. Saya menghasilkan uang dengan VB sampai 1999 dan meninggalkannya ketika Java 1.2 menjadi stabil dan matang dan web telah sepenuhnya ditendang pada saat itu, saya memiliki pengalaman 4 tahun di Jawa ketika orang-orang mulai menganggapnya serius. Saya setuju dengan penulisan itu sekali, jalankan di mana saja di mana semakin banyak kode saya berjalan semakin mudah untuk menjualnya. filsafat.
Saya mengadopsi Python di akhir timeline, 2005 karena ia menggaruk gatal yang tidak dimiliki Java. Saya perlu cepat menulis kode untuk menggunakan beberapa perpustakaan yang hanya tersedia di C dan juga saya perlu melakukan prototipe layanan web yang cepat Python lebih cepat dan lebih sedikit kode untuk melakukan hal yang sama di Jawa. Sesuatu pergi ke produksi karena Jawa beberapa tetap Python, banyak hal tidak pernah berhasil masuk ke alam liar.Saya setuju dengan baterainya termasuk, filosofi idiom tunggal dan yang lainnya.
Saya mengadopsi Lua ketika saya perlu menempatkan mesin scripting ringan di program C ++ dan Java saya. Ini jauh sebelum dukungan JSR233 di Jawa. Saya setuju dengan menanamkan bahasa scripting berfitur lengkap yang mudah digunakan harus filosofi Lua sederhana.
Saya mengadopsi Erlang pada tahun 2006 ketika saya mulai membutuhkan skalabilitas besar dan eksekusi multi-core yang relatif tidak menyakitkan pada masalah yang sangat paralel dan memiliki eksekusi lintas platform. ** Saya setuju dengan negara yang tidak dibagikan, lewat pesan, filosofi negara yang tidak berubah. * 8
Saya mengadopsi Objective-C ketika saya mulai perlu membangun aplikasi OSX dan iOS. Saya setuju dengan tambahannya tentang Orientasi Objek ke C untuk menjadikannya filosofi yang lebih baik . Juga untuk menghasilkan uang yang lebih baik.
Saya mengadopsi JavaScript secara resmi pada tahun 2009 karena saya setuju dengan filosofi CouchDB dan menggunakan JavaScript. Masih tidak suka JavaScript ketika saya harus berurusan dengan DOM.
Saya masih belum secara resmi mengadopsi Lisp, tetapi pada akhirnya saya akan melakukannya! Saya setuju dengan mereka. Mereka yang tidak tahu lisp dikutuk untuk menemukan kembali filsafatnya.
sumber
Memang pertanyaan yang menarik. Ini adalah salah satu di mana Anda memahami jawabannya di tingkat bawah sadar tetapi berusaha untuk memasukkannya ke dalam kata-kata.
Paling baik dilihat sebagai lingkaran sebab akibat.
Budaya bertanggung jawab atas komposisi "etnis" dari pengembang yang tertarik pada platform. Komposisi itu pada gilirannya menentukan kualitas programmer "rata-rata". Kualitas pengembang yang menggunakan platform saat ini memengaruhi budaya atau persepsinya di luar yang berakibat pada pengembang yang datang ke platform atau meninggalkannya. Nilai "kualitas" berubah sebagai hasilnya.
Saya sudah mencoba untuk membuat aturan khusus tetapi saya merasa sulit untuk menggeneralisasi. Kita perlu menyelidiki secara terpisah setiap platform. Beberapa pengamatan yang telah saya lakukan:
Kecepatan di mana platform tertentu dikembangkan, diperluas, ditingkatkan memiliki korelasi langsung dengan kualitas pengembang. Aliran konstan fitur-fitur baru dan alat-alat baru yang menarik menarik pengembang yang antusias (yang rata-rata lebih mampu melakukan pekerjaan berkualitas) dan mengusir pikiran konservatif yang kesal dengan upaya belajar yang konstan.
Semakin sedikit batas yang ditawarkan platform bahkan dengan risiko lebih tinggi untuk menembak diri sendiri dengan cara yang sama menarik pikiran eksperimental yang antusias
Semakin kompleks hal-hal yang perlu dipahami dan dikuasai seseorang untuk menggunakan platform yang sama-sama menarik minat orang-orang yang terselesaikan dan membuat takut para pengembang yang malas
sumber