JavaRush /Java Blog /Random-ID /Satu bahasa untuk mengatur semuanya

Satu bahasa untuk mengatur semuanya

Dipublikasikan di grup Random-ID
Ada bahasa yang terletak di bawah setiap lapisan kode, dalam bahasa pemrograman apa pun. Dan dia menunggu untuk ditemukan... Terjemahan dan adaptasi artikel oleh Eric Girois dari komunitas pemrograman Better di Medium. Satu bahasa untuk mengatur semuanya - 1Saat saya menulis artikel ini, jumlah permintaan pencarian dengan gaya “bahasa pemrograman apa yang harus dipelajari” melebihi 517 juta (!). Setiap halaman dari daftar hasil pencarian menceritakan tentang keunggulan bahasa tertentu dibandingkan bahasa lain, dan dalam 90% kasus Anda akan direkomendasikan hal yang sama, seperti Python, JavaSctipt (atau sesuatu dari 3 peringkat bahasa resmi teratas. peringkat saat ini untuk bulan Juli ada di sini ;) Izinkan saya berani dan secara resmi tidak setuju dengan 517 juta hasil dan mengatakan bahwa bahasa pemrograman pertama yang harus Anda pelajari adalah logika . Tidak cukup hanya mengetahui cara menulis kode. Pasar dipenuhi dengan lulusan dari berbagai program studi, itulah sebabnya posisi pengembang junior pada dasarnya sudah tidak ada lagi. Untuk berhasil dalam kenyataan ini, Anda tidak hanya perlu menulis kode, tetapi juga memiliki pikiran yang logis.

Pelajaran ilmu komputer pertama saya

Perkenalan pertama saya dengan ilmu komputer terjadi di kelas pilihan di kelas sepuluh. Saya datang ke kelas dan merasakan kegembiraan: ada banyak kotak es krim dan toples sirup di dalam kelas. Saat kami duduk, guru mengumumkan: “Hari ini kami akan membuat hari minggu ( makanan penutup yang terbuat dari es krim dan sirup - catatan editor ). Tapi dengan satu syarat: Anda harus menuliskan instruksi yang tepat untuk menyiapkan makanan penutup, dan saya akan mengikutinya.” “ Tidak diragukan lagi ,” pikirku, “ itu akan mudah .” Hanya dalam satu menit, saya menuliskan instruksi yang sempurna: Tempatkan tiga sendok es krim raspberry ke dalam cangkir Tuangkan dua sendok makan sirup coklat ke dalam cangkir itu Tambahkan krim kocok ke dalam cangkir Tambahkan taburan dan ceri di bagian atas minggu Lalu saya guru—bertindak sebagai “komputer”—mengikuti instruksi dengan tepat, dia melakukan pertunjukan paling pedas yang pernah saya lihat. Dia mulai "menyerang" kotak kardus berisi es krim dengan ganas, tetapi tutup yang tahan lama tetap tidak terluka. “Oke, buka dulu tutupnya,” kataku, berharap cepat mendapatkan makanan penutup. “Anda gagal menulis instruksi dengan benar untuk saya, jadi sayangnya saya tidak dapat membuatkan Minggu BERIKUTNYA untuk Anda!”

Maju cepat untuk mencoba #2

Buka sekotak es krim raspberry dengan membuka tutupnya Masukkan tiga sendok es krim raspberry ke dalam cangkir Buka sirup coklat dan tambahkan dua sendok makan ke dalam cangkir itu Buka krim kocok dan tambahkan sedikit ke dalam cangkir Tambahkan taburan dan ceri di atasnya pada hari Minggu aku yakin aku telah berhasil melakukan yang satu ini sekali. Guru membuka tutupnya, mengambil tiga sendok es krim dan menaruhnya di dalam cangkir. Akhirnya, hari Minggu saya akan segera siap! Dia kemudian membuka sirup coklat dan memasukkan dua sendok makan ke dalam cangkir. Tapi bukan dua sendok sirup - hanya sendok, tanpanya! Instruksi saya sekali lagi tidak cukup tepat. Setelah semuanya selesai, saya menerima secangkir es krim, dua sendok logam, satu ton krim kocok, dan sekitar 300 sendok taburan. Tampaknya pada saat itu semuanya menjadi jelas bagi saya: komputer adalah suatu entitas yang dipandu oleh logika murni. Dia tidak memahami konteksnya dan tidak membuat asumsi. Dia mengikuti serangkaian instruksi yang ketat dan mengikutinya hingga tuntas. Petunjuk terakhir untuk membuat hari Minggu sangat bertele-tele, tetapi itu perlu: ​​Jika belum dibuka, buka kemasan semua item berikut: Es Krim Raspberry, Sirup Cokelat, Topping, dan Krim Kocok Ambil secangkir dari rak dan letakkan di depan Anda Ambil satu sendok es krim dan, Satu per satu, ambil dan masukkan tiga sendok es krim ke dalam cangkir. Setelah semuanya selesai, letakkan sendok di atas meja. Ambil sendok sirup coklat jika Anda belum memilikinya. Kemudian ambil sesendok sirup coklat dan tuang ke dalam cangkir. Lakukan tindakan ini dua kali. Letakkan sirup coklat di rak setelah selesai. Balikkan botol krim kocok dan tekan tombol di dekat cerat botol dengan jari Anda selama tiga detik, lalu kembalikan botol ke posisi semula. Taburkan 40 butir sprinkle di atas es krim dan sirup coklat yang ada di dalam cangkir, lalu kembalikan sprinkle shaker ke posisi semula. Keluarkan satu buah ceri dari stoples ceri dan letakkan dengan hati-hati di atas minggu. Berikan siswa hari Minggu dan sendok pencuci mulut. Perintah terakhir dalam petunjuk itu sangat penting, karena tanpanya guru sendiri yang mulai makan hari Minggu. Inilah realitas pemrograman - Anda perlu memberikan instruksi yang paling tepat ke komputer. Intinya, semua bahasa pemrograman terdiri dari instruksi.

Karir dalam Pengembangan Perangkat Lunak

Pengembangan perangkat lunak berada pada tahap perkembangan di mana membicarakannya sebagai industri yang terpisah tampaknya terlalu umum. Dan posisi “pengembang perangkat lunak” terdengar samar-samar mengingat hal ini. Dua pengembang dengan keahlian berbeda mungkin memiliki permintaan yang sama di pasar kerja, yang menunjukkan bahwa karier yang sukses di bidang pengembangan memerlukan lebih dari sekadar keterampilan pemrograman. Pengembang berpengalaman memiliki ciri umum yang terpisah dari logika pemrograman . Pengembang terbaik kuat dalam berpikir kritis. Hal ini penting karena sebagian besar proyek pengembangan perangkat lunak merupakan mimpi buruk yang tidak terdokumentasi dengan baik. Dibutuhkan seseorang yang berpikir kritis untuk mengumpulkan semua data dan mengisi kekosongan. Oleh karena itu, para spesialis yang tidak mampu menghubungkan fakta-fakta menjadi satu kesatuan akan tertinggal. Semua ini mengarah pada pernyataan lain yang sangat penting: Dasar-dasar ilmu komputer - baik saat ini maupun di masa depan - adalah yang utama. Mereka lebih penting daripada kemampuan menulis kode. Bahasa populer datang dan pergi. Kerangka kerja sudah ketinggalan zaman, dan perusahaan merespons perubahan permintaan pasar dengan menggabungkan berbagai teknologi yang digunakan. Apa yang tetap tidak berubah? Dasar-dasar dari dasar-dasar.

Bagaimana mengembangkan pemikiran logis

Logika dan pemikiran kritis dapat dan harus dikembangkan. Saya menyarankan Anda untuk memperhatikan hal-hal berikut:

1. Pelajari efektivitas algoritma dalam lingkungan runtime

Dikenal sebagai notasi Big-O digunakan untuk menggambarkan kompleksitas algoritma. Jika Anda dapat mengevaluasi kode Anda dalam istilah Big O dan menganalisis jumlah langkah yang dilakukan versus waktu yang dihabiskan, pertimbangkan bahwa Anda telah mengambil langkah pertama ke arah yang benar.

2. Pelajari struktur data

Struktur data adalah dasar dari setiap program yang kompleks. Mengetahui tipe mana yang terbaik untuk digunakan dalam hal ini merupakan keterampilan yang penting. Struktur data berhubungan langsung dengan kompleksitas algoritma, karena pemilihan struktur yang salah dapat mematikan program.

3. Membaca/menonton/mendengarkan

Nah, untuk memahami dasar-dasarnya, bacalah buku tentang konsep desain, praktik terbaik, dan gaya pengkodean. Bagi yang sedang belajar pemrograman sangat disarankan untuk membaca:
  • “Teknik desain berorientasi objek. Pola Desain” (E. Gamma R. Helm R. Johnson J. Vlissides),
  • “Memfaktorkan ulang. Memperbaiki kode yang ada” (M. Fowler),
  • “Kode Sempurna” (S. McConnell)
  • “Kode Bersih” (B. Martin)
  • “Pemrogram pragmatis” (E. Hunt)
  • “Algoritma: konstruksi dan analisis” (T. Cormen, C. Leiserson, R. Rivest dan K. Stein)

4. Latihan!

Anda tidak bisa menjadi pemain cello yang baik tanpa latihan ratusan jam. Latihan sehari-hari adalah kunci keberhasilan pemrograman. Saat ini ada banyak platform online tempat Anda dapat menemukan ribuan tugas yang memerlukan pemahaman tentang struktur data dan algoritme (HackerRank, LeetCode, CodeWars, dan lainnya).
Soal-soal pemrograman Java, dari yang sederhana hingga yang rumit, tersedia di JavaRush. Ada lebih dari 1200 kursus, serta proyek mini dan permainan tugas .
Bagi saya, cara paling efektif untuk bekerja dengan platform semacam itu adalah dengan memikirkan pendekatan unik terhadap masalah tersebut dan memposting solusi Anda di Github. Kemudian lihat solusi teratas untuk masalah serupa dan analisis pendekatan pemrogram lain. Ini membawa kita ke tip terakhir kami:

5. Analisis kode orang lain

Kesalahan utama dalam mempelajari pemrograman dan pada tahap awal bekerja adalah isolasi diri. Pengembangan perangkat lunak adalah bidang yang sangat bergantung pada kerja tim. Kita bersama-sama menciptakan standar, membuat kesalahan, dan seiring berjalannya waktu (sekali lagi, melalui trial and error) kita mencari tahu mana yang terbaik. Meluangkan waktu untuk membaca kode dari pengembang berpengalaman akan membuahkan hasil. Pastikan saja kodenya benar-benar bagus.

Kesimpulan

Nasihat pribadi: jangan pernah malu dengan apa yang (belum) Anda ketahui. Seperti disebutkan di atas, industri ini sangat besar, jumlah bahasanya luar biasa, dan terdapat lautan informasi. Dibutuhkan banyak waktu dan usaha untuk membentuk setidaknya gambaran umum tentang pemrograman, terlebih lagi untuk mendapatkan pengalaman, dan lebih banyak lagi untuk menjadi seorang profesional sejati. Kalau akhirnya aku berhasil, aku akan memberitahumu :)
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION