Bahasa pengaturcaraan terbaik untuk belajar sekarang

Cara terbaik untuk memahami komputer dan membengkokkannya dengan kehendak kita adalah belajar bertutur dalam bahasa mereka sehingga mereka akan memahami perintah kita. Orang-orang yang suka novel fantasi kadang-kadang membayangkan bahawa mereka belajar mantera dan mantera ajaib. Berfikiran praktikal menggunakan bahasa yang lebih berasas untuk mewakili struktur logik nombor dan data. Walau apa pun, ini adalah mengenai memahami urutan penekanan kekunci dan klik tetikus yang akan membuat komputer melompat melalui gelung metafora dan melakukan tarian maya.

Setiap sekolah, MOOC, dan tempat latihan perlu merangkul bahasa pertama bagi orang-orang muda Padawan. Beberapa tempat, seperti Harvard yang berkarat, masih menempel pada era 70-an C, tetapi banyak sekolah berayun antara JavaScript, Python, dan Java. Satu dikemas dalam setiap penyemak imbas, yang satu adalah pilihan yang baik dari sains sosial, dan yang lain adalah pilihan kaya jenis orang yang lebih berfikiran matematik.

Adakah satu pilihan terbaik? Adakah yang jelas lebih baik daripada yang lain? Atau adakah mereka semua cenderung menghantar sejumlah besar pelajar menjerit ke bantal mereka pada waktu malam? Mari kaji sebab terbaik untuk mempelajari Java, Python, atau JavaScript.

Java adalah klasik

Ujian Penempatan Lanjutan memilih Java sejak dulu ketika Java masih muda dan meletup. Mungkin Java tidak pernah mencapai puncak lintasan awalnya, ketika semua orang sepertinya menganggapnya akan benar-benar dominan, tetapi tetap menjadi tulang belakang banyak laman web, telefon pintar, televisyen, dan perangkat kecil.

Memilih bahasa dengan pengikut yang kuat membolehkan pelajar melompat menggunakan kereta yang sudah lengkap dengan alat pengembangan yang canggih. Lebih-lebih lagi, terdapat banyak baris kod sumber terbuka yang dapat dipelajari, disemak dan diperluas oleh pelajar untuk pekerjaan mereka sendiri. Mereka menyertai gerakan besar dan senang bagi mereka untuk masuk.

Python baru

Sebenarnya Python tidak begitu baru - projek ini dimulakan lebih dari 30 tahun yang lalu - tetapi terasa baru kerana kejayaannya datang perlahan-lahan. Baru-baru ini Python keluar dan menemui pengangkatan secara meluas dengan pengaturcara kasual. Kebaharuan ini bermaksud bahawa sekolah-sekolah yang merangkul Python sedang membuat rancangan pelajaran baru, menulis peperiksaan baru, dan mengembangkan geladak slaid baru. Mereka tidak menggali beberapa pertanyaan lama yang berdebu dari tahun 1990-an dengan merujuk kepada Pets.com dan MySpace.

Kursus AP terbaru, yang disebut Prinsip Sains Komputer, membolehkan guru memilih bahasa komputer dan ramai yang memilih Python kerana kesegarannya. Keadaan baru mungkin mendalam, tetapi semua bahasa hanyalah beberapa sintaks pintar yang menyembunyikan struktur keputusan if-then-else kod pemasangan.

Semua kejayaan ini membina gelung maklum balas positif. Indeks Tiobe edisi November 2020 menandakan pertama kalinya Python naik ke slot nombor dua (di belakang C), menyedari bagaimana bahasa itu berkembang lebih popular daripada Java.

JavaScript ada di mana-mana

Terdapat di penyemak imbas dan penyemak imbas adalah asas untuk desktop, telefon anda, dan semua kios yang anda lihat di mana sahaja. Dalam dekad terakhir, JavaScript telah mengambil alih barisan depan pelayan web kerana aplikasi web Node.js menjadi cara paling popular bagi pembangun untuk menulis "kod isomorfik" yang dapat dijalankan pada kedua-dua klien dan ladang pelayan. JavaScript hampir sama dengan Java, namun memerlukan masa bertahun-tahun untuk orang-orang dari pelayan untuk mengetahui kekuatannya. Ia baru dan lama pada masa yang sama.

Java ditaip

Anda mungkin tidak suka menghabiskan waktu untuk menentukan jenis setiap pemboleh ubah, tetapi tidak memerlukan banyak masa untuk mengklik tiga kekunci untuk menambahkan "int" pada kod anda. Apabila anda melakukannya, anda memperoleh semua kekuatan yang ada dari membiarkan pengkompil memeriksa semula kod anda dengan segera dan mencari kesilapan bodoh sebelum diterapkan. Bahasa yang diperiksa jenis memaksa kita untuk berfikir dengan lebih teliti mengenai logik dalam kod kita, dan itulah pelajaran penting bagi pengaturcara baru. Struktur jenis Java mengurangkan bug dan membina kod yang lebih baik.

Python tidak ditaip

Pencinta bahasa yang ditaip pandai dan mereka menulis kod yang baik, tetapi jika anda fikir kod anda cukup baik untuk berjalan lancar tanpa maklumat tambahan mengenai jenis data untuk setiap pemboleh ubah, baiklah, Python sudah siap untuk anda. Komputer dapat mengetahui jenis data semasa anda menyimpannya dalam pemboleh ubah. Mengapa membuat kerja tambahan untuk diri sendiri?

Perhatikan bahawa pendekatan freewheeling ini mungkin berubah, walaupun perlahan. Dokumentasi Python mengumumkan bahawa masa berjalan Python tidak memaksakan anotasi jenis fungsi dan pemboleh ubah tetapi ia masih boleh digunakan. Mungkin pada masa yang sama menambahkan jenis akan menjadi cara yang dominan untuk memprogram dalam bahasa, tetapi buat masa ini semuanya pilihan anda.

JavaScript adalah kedua-duanya

JavaScript itu sendiri tidak diketik tetapi akhir-akhir ini beberapa anggota profil tinggi dunia JavaScript telah beralih ke TypeScript, superset dari bahasa asal yang memberi anda kemampuan untuk mengatur jenisnya apabila anda mahu. Dan jika anda tidak mahu, JavaScript biasa juga akan berjalan lancar. Ini adalah versi pemeriksaan jenis yang santai.

Java memerintah peranti

Platform telefon bimbit yang paling popular di dunia adalah Android, sebilangan besar kod yang dibina di atas Java. Tetapi itu hanyalah platform yang paling kelihatan. Kotak set-top, Chromebook baru, dan bahkan beberapa desktop menjalankan aplikasi Android seperti telefon pintar. Sepupu terdekat Java, C #, menguasai dunia Windows. C # tidak sama dengan Java tetapi sangat dekat. Sekiranya anda ingin menulis aplikasi untuk perkakasan tetap, ada kemungkinan Java adalah pilihan terbaik.

Python mengawal sains data

Sekiranya anda menulis perisian untuk berfungsi dengan data, ada kemungkinan anda ingin menggunakan Python. Sintaks yang sederhana telah menarik minat banyak saintis, dan bahasa ini mendapat ikutan yang kuat di makmal di seluruh negara. Sekarang bahawa sains data berlaku di semua lapisan dunia perniagaan, Python mengikuti.

Salah satu penemuan terbaik untuk membuat dan berkongsi dokumen interaktif, Jupyter Notebook, bermula dengan komuniti Python sebelum merangkul bahasa lain. Ini adalah salah satu kaedah terbaik untuk menggabungkan perisian, data, dan teks yang menerangkan apa yang berlaku. Pembaca dapat menyerap kata-kata dan kemudian menekan butang untuk menjalankan perisian pada data.

JavaScript mengawal web

Platform lain mungkin bagus, tetapi penyemak imbas web terus menjadi satu portal yang hampir semua orang gunakan untuk berhubung dengan dunia. Ini biasanya perisian yang paling banyak digunakan di desktop, telefon pintar, dan tablet. JavaScript bermula sebagai bos pelanggan tempatan ini dan pengaruhnya berkembang menjadi penguasaan total kerana pertumbuhan Node.js memudahkan para pembangun menjalankan kod yang sama pada klien dan pelayan.

Terdapat juga puluhan kerangka kerja JavaScript yang bagus (Angular, React, Vue, dll.) Yang menawarkan asas untuk membina aplikasi web anda dan ada yang cukup pintar untuk memindahkan kod anda antara klien dan pelayan jika diperlukan. 

Walaupun di dunia yang dikuasai oleh bahasa lain, JavaScript berfungsi ke dalam timbunan. Banyak pembangun telefon pintar melewati Java dan Swift untuk membuat aplikasi lintas platform mereka dalam JavaScript. Bagaimanapun, JavaScript menentukan apa yang berlaku di segi empat tepat penyemak imbas dan itu cukup menjamin bahawa ia akan membuat keputusan untuk apa yang berlaku pada kebanyakan klik dan ketukan kekunci di mana sahaja.

Java menjalankan semuanya

Sekiranya anda menulis kod Python, ada kemungkinan besar ia akan berjalan di Jython, sebuah implementasi bahasa yang ditulis di Java untuk memanfaatkan kelebihan Mesin Virtual Java. Sekiranya anda perlu menjalankan JavaScript, Anda juga dapat memasukkannya ke Rhino dan Nashorn, dua alat yang mengubah JavaScript menjadi bytecode Java.

Kedua-dua bahasa ini bukanlah satu-satunya bahasa yang bergantung pada prestasi JVM yang kukuh. Banyak bahasa pengaturcaraan berfungsi seperti Scala, Clojure, dan Kotlin juga bergantung pada asas yang sama. Ini membantu semua orang dengan menjadikannya lebih mudah untuk menghubungkan bahasa berasaskan JVM ini jika anda mahu menggunakannya dalam projek yang sama.

Python berjalan di mana-mana

Python bukanlah pilihan pertama atau bahkan pilihan terakhir bagi orang yang menulis emulator untuk bahasa lain. Namun, mudah untuk mencari Python di banyak komputer. Pencipta bahasa sentiasa menyebarkan kod sebagai sumber terbuka dan pakejnya terdapat di mana-mana sahaja. Anda pasti akan dapati Python termasuk dalam MacOS dan sebilangan besar distribusi Linux yang lengkap. Walaupun tidak disertakan dalam Windows, mudah dipasang — lakukan dengan cara yang bijak.

JavaScript berjalan di penyemak imbas

Sukar untuk mempercayai bahawa bahasa mainan yang dibina untuk membuat kotak amaran di penyemak imbas kini menjadi asas bagi banyak bahasa. Pembangun ingin menjangkau pengguna dan jika pengguna tinggal di penyemak imbas, dengan baik, mencari jalan agar kod anda dijalankan dalam JavaScript adalah cara terpantas untuk menjangkau semua orang.

Bukan hanya sepupu JavaScript seperti CoffeeScript dan LiveScript yang beralih ke JavaScript. Malah bahasa seperti Lisp, OCaml, dan Pascal dapat ditukar menjadi JavaScript dan dijalankan di penyemak imbas. Python terkenal di penyemak imbas dalam projek seperti notebook Jupyter dan bahkan Java dapat diterjemahkan ke JavaScript menggunakan alat seperti Google Web Toolkit.

Java mempunyai IDE yang kuat

Eclipse, NetBeans, dan IntelliJ adalah beberapa persekitaran pembangunan bersepadu terbaik di sekitar. Mereka diciptakan oleh masyarakat Jawa dan dipelihara selama bertahun-tahun untuk membuat salah satu persekitaran yang paling menyokong untuk menulis kod. Penyelesaian kod dan algoritma penghasilan kod mungkin tidak menulis semua perisian anda, tetapi mereka dapat menaip sejumlah besar. Semua pegangan tangan ini sangat membantu pembangun baru mendapatkan sintaksnya dengan betul. 

IDE ini sangat popular sehingga pemaju dari bahasa lain menemui cara untuk menjalankan kod mereka di dalamnya. Sekiranya anda menjadi pengaturcara Java profesional, anda pasti akan menggunakan salah satunya. Sementara itu, jika anda mahukan pengalaman pengaturcaraan Java yang lebih sederhana dan mesra, cubalah BlueJ atau Greenfoot. "IDE pemula" ini dirancang khusus untuk belajar Java.

Python mempunyai awan

Bahasa Python mendapat tempat pertama di dunia Unix dan oleh itu tidak menghairankan bahawa awan yang dipenuhi dengan kotak Linux adalah tempat semula jadi untuk mencari banyak kod Python. Beberapa alat terkini seperti Jupyter menggabungkan kod, data, dan penjelasan sehingga orang dapat berkongsi pandangan mereka dengan orang lain sebagai makalah penyelidikan yang menjadi hidup. Buku nota Jupyter bukan dokumen statik, tetapi alat interaktif untuk meneroka.

Yang lain membina alat canggih di sekitar bahasa untuk meningkatkan penyelidikan. PyTorch, misalnya, adalah toolkit pembelajaran mendalam yang dipenuhi dengan kod, data, dan algoritma untuk analisis. Persekitaran seperti ini akan menguasai masa depan sains data.

Terdapat juga beberapa host yang baik untuk notebook yang menambah ciri tambahan untuk berkongsi data dan menangani pekerjaan analisis data komputasi yang besar dan intensif. Google, misalnya, menjalankan Kolaborator, yang akan menyimpan data anda dan menawarkan beberapa akses percuma ke GPU untuk pengiraan yang lebih pantas. Saturn Cloud memuji prestasi yang mungkin 100 kali lebih pantas daripada desktop anda.

JavaScript mempunyai JSFiddle

Setiap penyemak imbas dilengkapi dengan kekuatan lebih dari cukup untuk bertindak sebagai IDE. JSFiddle adalah yang paling terkenal dari lebih dari selusin laman web yang membolehkan anda berkongsi kod JavaScript dengan pembangun lain. Laman web, bagaimanapun, tidak statik kerana anda boleh bermain-main dengan kod dan menontonnya berjalan di laman web yang sama. Alat seperti ini menjadikannya mudah untuk bereksperimen dengan keseronokan sintaksis JavaScript.

Ketahui mana-mana - atau ketiga-tiganya

Dunia pengaturcaraan suka melakukan pendebungaan silang. Walaupun membingungkan untuk melantunkan bahasa yang berlainan dan menjaga sintaksnya tetap lurus, adalah mungkin untuk menggunakan ketiga-tiga bahasa dalam projek tanpa terlalu tersekat. Projek Java atau JavaScript yang menganalisis data dapat dihubungkan di perpustakaan sains data yang ditulis dalam Python. Atau projek Python boleh menggunakan kod Java atau JavaScript.

Pembangun pintar juga telah mencipta alat untuk menterjemahkan, memaut, dan menggabungkan bahasa yang berbeza antara satu sama lain secara automatik. Adakah anda ingin menjalankan kod Python dalam penyemak imbas anda? Terdapat beberapa pilihan yang berbeza sekarang dan mungkin lebih banyak lagi yang akan datang. Java mempunyai kelas ScriptEngine yang akan menilai JavaScript. Terdapat beratus-ratus bahasa yang berbeza yang akan dijalankan sebagai JavaScript melalui terjemahan atau peniruan.

Ringkasnya, ketiga-tiga bahasa tidak perlu menjadi pulau, terpisah antara satu sama lain. Anda tidak perlu memilih satu dalam jangka masa panjang. Tetapi mulakan dengan yang pertama.

Baca lebih lanjut mengenai pembangunan perisian:

  • Kursus pengaturcaraan percuma terbaik semasa lockdown
  • Apa itu CI / CD? Integrasi berterusan dan penyampaian berterusan dijelaskan
  • Apa itu metodologi tangkas? Pembangunan perisian moden dijelaskan
  • Apa itu API? Antaramuka pengaturcaraan aplikasi dijelaskan
  • Bahasa pengaturcaraan terbaik untuk belajar sekarang
  • Kemahiran pembangun perisian yang paling berharga pada tahun 2020
  • 6 bahasa pengaturcaraan terbaik untuk pengembangan AI
  • 24 peranan pembangun dengan bayaran tertinggi pada tahun 2020
  • Pembangun timbunan penuh: Apa itu dan bagaimana anda boleh menjadi satu
  • 9 perangkap kerjaya yang harus dielakkan oleh pembangun perisian