Paul Graham tentang Java dan bahasa pengaturcaraan "penggodam" (2001)

Paul Graham tentang Java dan bahasa pengaturcaraan "penggodam" (2001)

Esei ini berkembang daripada perbualan saya dengan beberapa pembangun tentang topik berat sebelah terhadap Java. Ini bukan kritikan terhadap Java, sebaliknya satu contoh yang jelas tentang "radar penggodam".

Lama kelamaan, penggodam mengembangkan teknologi yang baik atau buruk. Saya fikir ia mungkin menarik untuk cuba menggariskan sebab mengapa saya mendapati Java boleh dipersoalkan.

Sesetengah yang membacanya menganggapnya sebagai percubaan yang patut diberi perhatian untuk menulis tentang sesuatu yang tidak pernah ditulis sebelum ini. Orang lain memberi amaran bahawa saya menulis tentang perkara yang saya tidak tahu apa-apa. Jadi untuk kes, saya ingin menjelaskan bahawa saya tidak menulis tentang Java (yang saya tidak pernah bekerja dengannya), tetapi mengenai "radar penggodam" (yang saya fikirkan banyak perkara).

Ungkapan "jangan menilai buku dari kulitnya" berasal dari masa apabila buku dijual dalam kulit kadbod kosong yang pembeli terikat dengan keinginannya. Pada masa itu, anda tidak dapat membezakan buku dengan kulitnya. Sejak itu, walau bagaimanapun, industri penerbitan telah berkembang dengan pesat, dan penerbit moden berusaha keras untuk memastikan kulit muka depannya mempunyai banyak kata.

Saya telah menghabiskan banyak masa di kedai buku, dan saya rasa saya telah belajar untuk memahami semua yang ingin diberitahu oleh penerbit kepada saya, dan mungkin beberapa lagi. Kebanyakan masa yang saya habiskan di luar kedai buku dihabiskan di hadapan skrin komputer, dan saya rasa saya belajar, sedikit sebanyak, menilai teknologi berdasarkan kulitnya. Ia mungkin nasib buta, tetapi saya telah berjaya mengelakkan beberapa teknologi yang ternyata sangat buruk.

Salah satu daripada teknologi ini ternyata Java untuk saya. Saya tidak menulis satu program pun di Jawa, dan hanya membaca sekilas dokumentasi, tetapi saya merasakan ia tidak ditakdirkan untuk menjadi bahasa yang sangat berjaya. Saya mungkin silapβ€”membuat ramalan tentang teknologi adalah perniagaan yang berbahaya. Namun, semacam bukti era, inilah sebabnya saya tidak suka Java:

  1. Semangat yang berlebihan. Piawaian ini tidak perlu dikenakan. Tiada siapa yang cuba mempromosikan C, Unix atau HTML. Piawaian sebenar ditetapkan lama sebelum kebanyakan orang mendengar tentangnya. Pada radar penggodam, Perl kelihatan tidak kurang daripada Java semata-mata kerana kebaikannya.
  2. Java tidak bertujuan tinggi. Dalam huraian asal Java, Gosling secara jelas menyatakan bahawa Java direka bentuk untuk memudahkan pengaturcara yang terbiasa dengan C. Ia direka bentuk untuk menjadi satu lagi C++:C dengan beberapa idea yang dipinjam daripada bahasa yang lebih maju. Seperti pencipta sitkom, makanan segera atau lawatan pelancongan, pencipta Java secara sedar mereka bentuk produk untuk orang yang tidak sepandai diri mereka sendiri. Dari segi sejarah, bahasa yang direka untuk digunakan oleh orang lain telah gagal: Cobol, PL/1, Pascal, Ada, C++. Walau bagaimanapun, yang berjaya adalah yang dicipta oleh pencipta untuk diri mereka sendiri: C, Perl, Smalltalk, Lisp.
  3. Motif tersembunyi. Seseorang pernah berkata bahawa dunia akan menjadi tempat yang lebih baik jika orang hanya menulis buku apabila mereka mempunyai sesuatu untuk diperkatakan, bukannya menulis apabila mereka berasa ingin menulis buku. Begitu juga, sebab kami terus mendengar tentang Java bukan kerana mereka cuba memberitahu kami sesuatu tentang bahasa pengaturcaraan. Kami mendengar tentang Java sebagai sebahagian daripada rancangan Sun untuk menghadapi Microsoft.
  4. Tiada siapa yang mencintainya. Pengaturcara C, Perl, Python, Smalltalk atau Lisp jatuh cinta dengan bahasa mereka. Saya tidak pernah mendengar sesiapa menyatakan cinta mereka kepada Java.
  5. Orang ramai terpaksa menggunakannya. Ramai orang yang saya kenali yang menggunakan Java berbuat demikian kerana keperluan. Mereka fikir ia akan memberi mereka pembiayaan, atau mereka fikir ia akan menarik pelanggan, atau ini adalah keputusan pengurusan. Ini adalah orang yang bijak; jika teknologi itu bagus, mereka akan menggunakannya secara sukarela.
  6. Ini adalah hidangan ramai chef. Bahasa pengaturcaraan terbaik telah dibangunkan oleh pasukan kecil. Java didorong oleh jawatankuasa. Jika ia menjadi bahasa yang berjaya, ia adalah kali pertama dalam sejarah bahawa sebuah jawatankuasa mencipta bahasa sedemikian.
  7. Dia birokratik. Daripada sedikit yang saya tahu tentang Java, nampaknya terdapat banyak protokol untuk melakukan apa sahaja. Bahasa yang benar-benar baik tidak seperti itu. Mereka membenarkan anda melakukan apa sahaja yang anda mahu dan tidak menghalang anda.
  8. Gembar-gembur buatan. Kini Sun cuba berpura-pura bahawa Java dipacu oleh komuniti, bahawa ia adalah projek sumber terbuka seperti Perl atau Python. Namun, pembangunan dikawal oleh sebuah syarikat besar. Oleh itu, risiko bahasa berubah menjadi kebodohan yang sama seperti segala-galanya yang keluar dari perut sebuah syarikat besar.
  9. Ia dicipta untuk organisasi besar. Syarikat besar mempunyai matlamat yang berbeza dengan penggodam. Syarikat memerlukan bahasa yang mempunyai reputasi yang sesuai untuk pasukan besar pengaturcara biasa-biasa saja. Bahasa dengan ciri seperti pengehad kelajuan pada trak U-Haul, memberi amaran kepada orang bodoh supaya tidak menyebabkan terlalu banyak kerosakan. Penggodam tidak suka bahasa yang meremehkan mereka. Penggodam memerlukan kuasa. Dari segi sejarah, bahasa yang dicipta untuk organisasi besar (PL/1, Ada) telah kalah, manakala bahasa yang dicipta oleh penggodam (C, Perl) telah menang. Sebab: Penggodam juvana hari ini ialah CTO esok.
  10. Orang yang salah suka dia. Pengaturcara yang paling saya kagumi biasanya tidak gila tentang Java. Siapa suka dia? Saman, mereka yang tidak melihat perbezaan antara bahasa, tetapi sentiasa mendengar tentang Java di akhbar; pengaturcara dalam syarikat besar, terobsesi untuk mencari sesuatu yang lebih baik daripada C++; pelajar pra-grad omnivor yang akan menyukai apa sahaja yang akan memberi mereka pekerjaan (atau berakhir dalam peperiksaan). Pendapat orang-orang ini berubah mengikut arah angin.
  11. Ibu bapanya mengalami masa yang sukar. Model perniagaan Sun sedang diserang di dua bahagian. Pemproses Intel murah yang digunakan dalam komputer meja telah menjadi cukup pantas untuk pelayan. Dan FreeBSD nampaknya menjadi OS pelayan sebaik Solaris. Pengiklanan Sun membayangkan bahawa anda memerlukan pelayan Sun untuk aplikasi gred pengeluaran. Jika ini benar, Yahoo akan menjadi yang pertama dalam barisan untuk membeli Sun. Tetapi apabila saya bekerja di sana, mereka menggunakan pelayan Intel dan FreeBSD. Ini memberi petanda baik untuk masa depan Sun. Dan jika Matahari terbenam, Java juga mungkin menghadapi masalah.
  12. Cinta Kementerian Pertahanan. Jabatan Pertahanan menggalakkan pemaju menggunakan Java. Dan ini kelihatan seperti petanda yang paling teruk. Jabatan Pertahanan melakukan tugas yang sangat baik (jika mahal) untuk melindungi negara, mereka menyukai rancangan, prosedur dan protokol. Budaya mereka sangat bertentangan dengan budaya penggodam; apabila ia datang kepada perisian, mereka cenderung membuat pertaruhan yang salah. Bahasa pengaturcaraan terakhir yang diminati Jabatan Pertahanan ialah Ada.

Sila ambil perhatian, ini bukan kritikan terhadap Java, tetapi kritikan terhadap penutupnya. Saya tidak tahu Java dengan baik untuk saya suka atau tidak suka. Saya hanya cuba menjelaskan mengapa saya tidak berminat untuk mempelajari Java.

Ia mungkin kelihatan tergesa-gesa untuk mengetepikan bahasa tanpa cuba memprogramkannya. Tetapi inilah yang perlu ditangani oleh semua pengaturcara. Terdapat terlalu banyak teknologi untuk diterokai kesemuanya. Anda perlu belajar untuk menilai dengan tanda-tanda luaran sama ada ia akan berbaloi dengan masa anda. Dengan tergesa-gesa yang sama, saya membuang Cobol, Ada, Visual Basic, IBM AS400, VRML, ISO 9000, SET Protocol, VMS, Novell Netware dan CORBAβ€”antara lain. Mereka hanya tidak merayu kepada saya.

Mungkin saya salah dalam kes Java. Mungkin bahasa yang dipromosikan oleh sebuah syarikat besar untuk bersaing dengan yang lain, yang dibangunkan oleh jawatankuasa untuk orang ramai, dengan banyak gembar-gembur, dan digemari oleh Jabatan Pertahanan bagaimanapun akan menjadi bahasa yang kemas, indah dan berkuasa yang saya akan gembira. program dalam. Mungkin. Tetapi ia sangat meragukan.

Terima kasih untuk terjemahan: Denis Mitropolsky

PS

Sumber: www.habr.com

Tambah komen