Kamus programmer yang diringkas

Mar 12 2023
Istilah-istilah menakutkan diekspos apa adanya
Kata Pengantar Pakar industri di sini di Medium dan di tempat lain suka menggunakan istilah yang terdengar mewah — maksud saya teknis — untuk meningkatkan pentingnya artikel mereka dan mengelabui Anda agar berpikir bahwa apa yang mereka katakan lebih benar. Jika Anda mengikuti definisi buku teks dari istilah-istilah ini, kemungkinan besar Anda akan salah paham dan menghabiskan sebagian besar karier Anda untuk bekerja lebih keras, bukan lebih pintar.
Foto oleh Pisit Heng di Unsplash

Kata pengantar

Pakar industri di sini di Medium dan di tempat lain suka menggunakan istilah yang terdengar mewah - maksud saya teknis - untuk meningkatkan pentingnya artikel mereka dan menipu Anda agar berpikir bahwa apa yang mereka katakan lebih benar. Jika Anda mengikuti definisi buku teks dari istilah-istilah ini, kemungkinan besar Anda akan salah paham dan menghabiskan sebagian besar karier Anda untuk bekerja lebih keras, bukan lebih pintar. Kamus pemrogram yang diringkas ini memberikan terjemahan kehidupan nyata dari istilah-istilah ini sehingga Anda bisa mendapatkan interpretasi yang lebih akurat dari artikel, pembicaraan, dan video populer.

Definisi yang diberikan dalam kamus ini mungkin berbeda dari yang ada di Wikipedia, tetapi yakinlah bahwa itu adalah representasi otoritatif dari penggunaan istilah di dunia nyata… untuk sebagian besar.

Definisi

solusi — Ketika saya menjalankannya di komputer saya, sebagian besar tidak rusak

pengujian — Saat komputer menjalankannya di komputer saya, sebagian besar tidak rusak

TDD (tear-driven development alias test-driven development) — Saat komputer menjalankannya di komputer saya, komputer saya rusak, jadi saya tahu saya belum menyelesaikan solusinya

BDD (behavior-driven development) — Saya tidak suka apa yang orang lain sebut TDD jadi saya datang dengan nama yang lebih baik

tes-pertama - Saya tidak suka apa yang orang lain sebut TDD, jadi saya memberikan nama yang lebih baik untuk mereka

SOLID (snobbish object-oriented leet & infuriated developer) — Saya jauh lebih pintar dari Anda, Anda bahkan bukan pengembang sungguhan

pengetikan statis —Saya menuliskan sesuatu itu sehingga saya tidak perlu mengingatnya

enkapsulasi — Saya merekatkan dua benda menjadi satu sehingga keduanya seperti satu benda dan tidak dapat dipisahkan

modern — Kebanyakan orang masih menggunakannya, tapi bukan kakek saya

performant — Saat saya menjalankannya di mesin saya, tidak terasa lambat

hemat memori —Ketika saya menjalankannya di komputer saya, saya tidak keluar dari kesalahan memori

intensif sumber daya — Lambat dan/atau kehabisan memori

perencanaan - Kami duduk dan membuat tanggal sehingga kami dapat kembali bekerja

perkiraan - Saya mengamati jumlah pekerjaan dan menghasilkan tebakan liar

pola desain - Ini bekerja untuk saya sebelumnya

arsitektur — Ini bekerja untuk saya sebelum XXL

algoritma — Saya membuatnya bekerja lebih efisien

struktur data — Saya membuat data lebih mudah digunakan

konvensi penamaan —Saya menamai sesuatu dengan cara tertentu dan semua orang juga harus melakukannya

panduan gaya — Saya pikir ini terlihat bagus, jadi setiap orang harus membuat kode dengan cara yang sama

standar pengkodean — Saya membuat kode dengan cara tertentu dan semua orang harus melakukannya dengan cara itu

linter —Alat kecil dan plugin IDE ini yang mengingatkan saya pada setiap kesalahan kecil yang saya buat, karena jauh lebih mudah daripada mempelajari cara melakukannya dengan benar

praktik terbaik — Beginilah cara saya melakukannya dan menurut saya semua orang harus melakukannya

idempoten — saya bisa menyebutnya berkali-kali dan belum rusak… belum

dapat diuji - saya dapat menulis tes untuk itu

modular — Saya membaginya menjadi beberapa file dan menambahkan impor dan ekspor

warisan - Saya membagi benda ini menjadi potongan-potongan kecil sehingga saya bisa menyatukannya kembali dengan lem super

komposisi — Saya membagi benda ini menjadi potongan-potongan kecil sehingga saya dapat menyatukannya kembali dengan selotip

dapat digunakan kembali - Saya menyalin/menempel ini di suatu tempat dan masih berfungsi, jadi saya memberinya nama

abstraksi — Saya menyalin/menempel ini di suatu tempat dan masih berfungsi, jadi saya memberinya nama yang bagus dan menambahkan beberapa kenop sehingga terlihat jelek

framework — Saya menyalin/menempel ini di suatu tempat dan masih berfungsi, jadi saya membuat paket untuknya, menambahkan kenop dan tombol, menulis dokumentasi, dan memberikan ceramah di acara mewah

dapat dibaca — Saya terbiasa dengan tampilannya, jadi semua orang harus menulisnya seperti itu

dapat diskalakan - Saya pikir ini mungkin hanya berfungsi untuk tugas yang jauh lebih besar

dipertahankan —Ini berfungsi selama tidak ada yang menyentuhnya, jadi jangan sentuh itu

sederhana — Cocok dalam satu baris

mudah — Ini adalah cara kerja yang menurut Joe the Superstar Developer mudah, jadi tanyakan padanya

senior — saya belum pensiun

urutan yang lebih tinggi — Ini menjadi terlalu rumit jadi saya membaginya kira-kira menjadi dua

caching — Saya menyimpan hasilnya jadi saya tidak perlu mengulanginya berkali-kali

aync — Saat baris pertama saya berjalan setelah baris kedua

sinkronisasi — Normal

event loop — Saya seorang pengembang senior karena saya tahu event loop

rekursi —Ini seperti lingkaran, tetapi fungsional

aplikasi web — Ini halaman web, tapi saya membuatnya dengan JavaScript

aplikasi web progresif — Ini seperti penanda mewah dengan ikon menu Mulai

SSR (server-side rendering) — Saya membuat server berfungsi seperti browser sehingga saya dapat menggunakan React di server, karena saya tidak tahu PHP, Python, NodeJS, Java, Go, C#…

CDN (jaringan pengiriman konten) —Saya menulis terlalu banyak kode dan butuh waktu lama untuk memuat, jadi saya meletakkan server di sebelah pengguna

perkakas —Aplikasi nyata memiliki alat, aplikasi mainan tidak

scrum - Perusahaan nyata memilikinya, perusahaan mainan tidak

komponen —Saya tahu melakukan seluruh halaman buruk untuk aplikasi nyata, jadi saya membaginya menjadi bit yang lebih kecil

integrasi berkelanjutan — Saya dapat menjalankan pengujian di GitLab sehingga rekan tim saya dapat menyetujui MR saya

pengiriman berkelanjutan — saya dapat menggunakan aplikasi saya dari GitLab sehingga saya tidak perlu menggunakan komputer saya untuk itu

permintaan penggabungan — Saya menunjukkan perubahan saya kepada rekan satu tim saya sehingga saya dapat beristirahat sejenak sambil menunggu mereka melihatnya

pengoptimalan — Saya membuatnya mendapat skor 80+ di Lighthouse

minifikasi —Saya tidak tahu cara membuat ini berfungsi dengan lebih sedikit kode, jadi saya mempersingkat semua kata kunci menjadi satu huruf dan menciutkan semua ruang putih dengan harapan browser tidak tersedak

vanilla —Saya pikir itu adalah teknologi alien yang tidak berfungsi di Bumi

pemisahan perhatian —Saya tidak pernah khawatir, saya hanya melakukan pekerjaan saya dan pulang

prinsip tanggung jawab tunggal —Saya membuat semuanya sesuai dengan satu layar

rule of least power —Ini tidak bekerja tanpa daya, jadi saya menambahkan setidaknya banyak daya

KISS (tetap sederhana, bodoh) —Saya pintar jadi saya tidak membutuhkan ini, ini hanya untuk orang bodoh

KERING (jangan ulangi sendiri) — Ini adalah prinsip suci, yang memisahkan pria sejati dari pengembang rata-rata, jika Anda memiliki baris kode yang berulang, Anda bodoh dan jelek!

MVP (produk layak minimum) — Sebuah produk

tenggat waktu —Periode tekanan puncak, jangan disamakan dengan tanggal penyelesaian proyek

sprint —Saya berhenti setelah dua minggu karena Joe the Superstar Developer mengatakan sesuatu tentang idealnya berhenti setelah dua minggu

gesit —Saya bisa mulai membuat kode sebelum saya punya rencana, sial ya!

class — Ini buruk karena merupakan boilerplate, tetapi bagus untuk aplikasi perusahaan

OOP (pemrograman berorientasi objek) — Begitulah cara Anda membangun aplikasi yang serius

FP (pemrograman fungsional) — Saya dapat menulis seluruh aplikasi hanya dengan satu kalimat

rilis mayor —Saya membuat perubahan yang lebih besar daripada rilis minor

rilis minor — saya membuat perubahan yang lebih kecil daripada rilis mayor

dependensi —Paket penting untuk membangun aplikasi nyata

Jira — Saya tidak bisa melakukan pekerjaan nyata jika saya tidak mencatatnya di Jira… tapi saya masih membencinya

refactoring — Saya tidak menyukainya jadi saya membuatnya lebih cantik

aksesibilitas — Ada beberapa undang-undang yang mengatakan bahwa Anda memerlukan font yang lebih besar sehingga orang buta dapat melihat situs Anda dengan lebih baik, dan Anda perlu menggunakan atribut ARIA

responsif — Berfungsi di iPhone dan MacBook Pro saya

markup semantik - Saya tahu <header>berada di atas dan <footer>berada di bawah

kelas utilitas — Saya dapat membuat kode CSS dalam file HTML saya karena pengguna saya tidak memerlukan caching dan saya ahli dalam pengeditan multi-kursor, dan ini adalah satu-satunya kasus di mana saya dapat merusak DRY secara sah meskipun itu adalah prinsip suci

Lampiran A

Jika Anda benar-benar ingin mempelajari arti istilah-istilah ini, cobalah Wikipedia, MDN, dan tempat serupa.

Lampiran B

Pada catatan yang lebih serius, izinkan saya memberi tahu Anda sesuatu yang sebenarnya benar. Sebagai pengembang otodidak, dan terutama sebagai noob, saya dulu sangat menghormati orang-orang yang menggunakan istilah-istilah ini. Sepanjang karir saya, saya belajar bahwa 9,5 dari 10 orang yang menggunakannya tidak tahu apa arti sebenarnya dari istilah-istilah ini , dan hari ini bahkan pemula pun menggunakannya. Jadi jangan menganggap mereka terlalu serius. Anggap mereka seserius kamus ini. Anda dapat membuat kode tanpa mengetahui arti sebenarnya dari lebih dari lima istilah di halaman ini dan menyelesaikan pekerjaan lebih baik daripada banyak orang yang dengan santai membuangnya.