Pemrograman: Psikologi Komputer

Kita semua terkait erat dengan pemrograman, baik sebagai pengguna, sebagai administrator, sebagai programmer itu sendiri, tetapi pada akhirnya itu adalah sesuatu yang akan lebih terhubung dengan kehidupan kita seiring berjalannya waktu.

Dalam artikel ini (awal dari seri kecil yang saya rencanakan untuk dibuat), Saya ingin berbagi dengan Anda beberapa konsep tentang apa yang telah saya temukan tentang pemrograman selama bertahun-tahun. Saya tidak mengklaim terlalu teknis, saya akan menjelaskan alasannya nanti. Tapi yang saya lakukan adalah membuat mereka melihat dunia dengan mata saya, dan jika mereka menyukai tampilannya, biarkan mereka menyelami sedikit.

Saya akan membahas poin paling sederhana terlebih dahulu sebelum membahas detailnya.

Mengapa saya tidak akan melakukan posting teknis?

Nah, bagi yang sudah membaca postingan saya tentang perintah linux terbaik, Anda akan tahu sedikit tentang penyebab fokus ini. Teknologi selalu berubah, dan jika saya menulis sesuatu hari ini, jika posting diterima dengan baik, maka saya harus selalu memperbarui informasinya. Dalam bahasa yang paling umum saat ini, satu-satunya hal yang pasti adalah perubahan. Dengan ini maksud saya adalah (dan programmer dapat membuktikan bahwa saya benar) framework selalu berkembang dan dimodifikasi dari intinya, hal ini karena kesalahan muncul, beberapa dapat dianggap sederhana bug, sementara yang lain mungkin menjadi kerentanan. Inilah alasan mengapa menulis posting tentang bahasa tertentu, hari ini, akan menjamin saya mungkin beberapa bulan kegunaan, dalam kasus terbaik satu atau dua tahun, tetapi itu bukan idenya

Listrik itu penting

Bagi Anda yang telah melakukan sedikit penelitian tentang bahasa pemrograman perangkat lunak terendah akan tahu bahwa semuanya berasal dari listrik. Dulu, pemrograman dilakukan pada tingkat perangkat keras, ini berarti bahwa jam-jam tua, kalkulator, dan banyak perangkat lainnya, dapat memenuhi takdirnya dengan pemrograman dengan perangkat keras.

Masalahnya

Mengubah pemrograman perangkat keras itu mahal, dan rumit 🙂 (setidaknya itulah yang mereka katakan padaku 🙂 ). Inilah sebabnya mengapa prosesor muncul, yang sebenarnya mengabstraksikan lapisan perangkat keras itu untuk memberi kita beberapa perintah agar dapat melakukan segala sesuatu yang mungkin melalui perangkat keras, hanya sekarang di lapisan perangkat keras. perangkat lunak.

Prosesor

Prosesor saat ini memiliki sejumlah fungsi yang disebut instruksi di banyak buku. Ini memungkinkan Anda untuk menjalankan fungsi paling dasar yang dapat dilakukan perangkat keras, dan untuk memobilisasi informasi melalui memori komputer.

Daftar

Register adalah ruang tempat prosesor menyimpan informasi untuk dapat menjalankan pekerjaan pada kernel, tergantung pada arsitekturnya mereka dapat memiliki ukuran dan urutan yang berbeda, tetapi secara sederhana, fungsinya adalah untuk menyimpan data yang memberi tahu prosesor salah satu jenis pekerjaan berikut: memindahkan data, aritmatika dan logika, dan kontrol mengalir. Semuanya dapat diringkas dalam jenis fungsi ini.

biner

Prosesor bekerja pada level biner, ini berarti mereka hanya mengerti 0sy 1ya 🙂. Fakta aneh di sini 😀ingat izin GNU / Linux? baiklah,Pernahkah Anda bertanya-tanya bagaimana prosesor sebenarnya mengenali izin tersebut? Sederhana 🙂 biner. Pada level terendah, prosesor akan memahami hak akses sebagai suksesi 0 dan 1, dan itulah alasan mengapa oktal yang kita bentuk memiliki nilai. untuk eksekusi, 2 untuk membaca dan 4 untuk menulis. Bagi mereka yang bisa membaca biner, mereka akan mengerti bahwa:

111100101111

Mereka menempatkan izin baca, tulis, dan eksekusi untuk grup lain sambil menampilkan pertunjukan dan membaca untuk kelompok kelompok dan hanya membaca untuk pemilik file. Bagi yang paling penasaran, tiga angka 1 terakhir mengaktifkan setguid, setuid dan sticky bit. Jika Anda tidak tahu apa biner ini, saya dapat menjelaskannya di posting lain, jika Anda tidak tahu tentang setuid, setgid dan bit sticky, saya akan serahkan kepada Anda 😉 tetapi saya juga dapat menjelaskannya di tempat lain jika perlu.

Ketika rasa ingin tahu memanggil ...

Nah, jika Anda telah mengikuti saya di sini, maka rasa ingin tahu Anda harus mulai menanyakan banyak hal, yang pertama ingin saya jawab (dan mungkin satu-satunya posting ini akan mengizinkan saya karena saya sudah banyak menulis) adalah : Jika panggilannya sama, mengapa programnya begitu berbeda?

Psikologi

Pemrograman adalah seni belajar membaca pikiran 🙂 Saya ingin memulai bagian ini dengan kutipan yang sudah lama saya baca, Edsger Dijkstra berkata:

Jika debugging adalah proses debugging, maka pemrograman harus menjadi proses untuk memperkenalkannya

Dan saya tidak dapat menemukan cara yang lebih baik untuk menjelaskan semua ini 🙂 mengapa memprogram seni untuk memperkenalkan kesalahan? lebih dari satu orang akan bertanya-tanya saat ini. Jawabannya sederhana, karena pikiran kita adalah manusia, dan manusia membuat kesalahan 🙂 itu sudah menjadi sifat kita, dan itu akan terjadi selama manusia ada di planet ini.

Komputer tidak salah

Yang membuat kesalahan adalah kita, tim akan selalu membatasi diri untuk mereproduksi apa yang kita katakan, mereka tidak berasumsi apapun, mereka tidak menafsirkan apapun, mereka tidak keberatan dengan apapun, mereka hanya membaca dan bertindak. Jadi di buku C lain saya pernah membaca sesuatu seperti ini:

C adalah bahasa kasar, Anda dapat melakukan banyak hal dengannya, tetapi itu tidak akan pernah menghentikan Anda untuk menembak diri sendiri jika Anda ingin melakukannya, atau begitulah yang Anda katakan.

Ini adalah kebenaran yang agak aneh 🙂 Karena ketika bekerja pada tingkat rendah seperti itu, mungkin saja banyak operasi yang dilakukan dapat merusak, sesuatu yang tidak terjadi dengan bahasa tingkat yang sedikit lebih tinggi, karena lapisan pencegahan kesalahan mereka lebih tua.

Semuanya psikologi

Setiap bahasa, kerangka kerja, pemrogram, menghormati dan mengikuti beberapa jenis filosofi, dan jika tidak, tidak akan memiliki masa depan yang menjanjikan. Kita yang mengerjakan UNIX dan turunannya mungkin akan tahu ungkapan lama:

Lakukan satu hal, dan lakukan dengan sangat baik.

Filosofi ini diikuti oleh beberapa proyek seperti kernel, fungsi yang cukup kecil yang hanya melakukan satu hal, tetapi melakukannya sebaik mungkin.

Jika kita pergi ke bahasa lain, masing-masing akan memiliki fungsi dan tujuan, beberapa lebih permisif dan yang lain lebih membatasi, tetapi semua mengikuti cara berpikir mereka sendiri.

Belajar membaca pikiran

Ada pepatah yang cukup umum di kalangan programmer, bahwa ada ratusan cara untuk memecahkan masalah yang sama. Ini benar, tetapi ada sesuatu yang lebih dalam tentang aspek ini. Membaca kode sumber memungkinkan Anda membaca pikiran - bukan sembarang pikiran, tetapi pikiran pemrogram (atau pemrogram) yang menulisnya. Ini adalah semacam buku harian virtual dan mendalam 🙂 memungkinkan Anda mengetahui secara mendalam pikiran pengembang, dan dalam kasus proyek besar, ini memungkinkan Anda untuk melihat bagaimana pemikiran logis dan kritis mereka telah berkembang dari waktu ke waktu. Sesuatu yang luar biasa dan yang sangat menyehatkan pikiran yang termuda, karena Anda dapat mengetahui jalan terbaik dari orang-orang yang harus menemukannya 🙂

Untuk menjadi konsisten

Banyak programmer dan spesialis mengatakan bahwa kami harus keluar dari kami zona kenyamanan, dan meskipun itu benar, itu juga lebih dari perlu untuk mempertahankan proses dan format tertentu. Ini mudah dijelaskan, pikiran kita berulang dan menghormati struktur, jika Anda menulis kode dengan cara yang sama setiap hari, dalam waktu singkat Anda akan berhenti memikirkan formulir dan Anda akan dapat berkonsentrasi padanya. latar belakang. Ini memungkinkan Anda untuk melihat file logika dari program, bukan sintaks bahasa. Dan inilah alasan mengapa saya menganggap pembelajaran itu konsep akan selalu lebih penting daripada belajar bentuk. Ini adalah pendapat pribadi, tapi saya harap setelah membaca semua ini Anda bisa mengerti mengapa saya menganggapnya seperti itu 🙂 juga diceritakan oleh seseorang yang pernah memprogram di C, Java, Javascript, Python, Ruby, PHP, dan lain-lain 🙂 tahu konsep ini memudahkan penulisan kode.

Singkatnya

Nah, ini adalah langkah pertama dalam rangkaian yang saya harap akan membantu Anda berpikir secara berbeda tentang seni pemrograman, bahkan mengundang Anda untuk mempelajari konsep yang memungkinkan Anda untuk mengeksekusi kode yang telah Anda tulis mungkin ratusan kali, tetapi mereka tidak berhenti untuk memikirkan tentang apa yang sebenarnya dilakukannya. Dan bagi mereka yang belum memulai pemrograman, tetapi ingin, dapat memprioritaskan sedikit tentang apa yang benar-benar penting untuk diketahui 🙂 Salam


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   Javier G.Delgado dijo

    Artikel yang sangat teliti di mana pemrograman dibahas (dalam hal ini) mungkin dalam bahasa baru yang memprogram secara lebih mendalam, dukungan saya pergi ke yang berikut.

    1.    ChrisADR dijo

      Halo Javier, terima kasih banyak 🙂 Saya pikir ini sangat penting karena mereka selalu ingin mengajari saya hanya untuk mereproduksi kode, Ctrl + C yang terkenal ... Ctrl + V 🙂 tetapi saya tidak pernah membiarkan diri saya terseret oleh ini, bahkan jika ini adalah masalah paling sederhana di dunia, saya lebih suka menulisnya daripada menyalinnya dari orang lain, itu membuat saya merasa itu adalah ciptaan saya.
      salam

  2.   rakit dijo

    Sudah menunggu bab berikutnya, saya berhenti pemrograman sejak lama, dan saya pikir saya dapat menemukan di bab selanjutnya beberapa alasan untuk keputusan saya, sungguh, sejak bab ini saya melepaskan topi saya.

  3.   ChrisADR dijo

    Halo Balua 🙂
    Baiklah, saya akan menemukan sesuatu untuk yang berikutnya. Agak rumit untuk memesan semuanya sedemikian rupa sehingga utas dapat diikuti dari pos mana pun, tetapi saya akan mencoba untuk memiliki yang ini (dan beberapa orang lain yang meminta saya) segera. Terima kasih atas komentar Anda. Bersulang

  4.   Anders dijo

    Permata dari sebuah artikel! Saya harap selanjutnya ...