pada monitor layar lebar orang dapat dengan mudah melihat lebih dari 80 karakter sekaligus, tanpa scrollbar. bahkan linus torvalds melihat batas 80 karakter sebagai ketinggalan zaman .
jadi, apakah batas 80 karakter masih relevan di saat monitor layar lebar?
coding-style
lesmana
sumber
sumber
Jawaban:
Ada beberapa alasan untuk tetap mematuhi batas 80 karakter (atau, batas 74 karakter bahkan lebih baik; ini memungkinkan kode untuk tetap kurang dari 80 kolom bahkan ketika spidol dan kutipan email ditambahkan, jika Anda melakukan review kode pada Daftar surat).
Bahkan di era monitor layar lebar, saya suka memiliki beberapa jendela terbuka berdampingan, menunjukkan bagian kode yang berbeda. Sebagai contoh, saya biasanya membuka browser web dan email pada satu layar, dan dua file dan terminal terbuka berdampingan pada monitor kedua. Jika Anda memiliki garis yang memuat lebih dari 80 kolom, Anda harus berurusan dengan editor yang membungkusnya (yang jelek dan membuat kode lebih sulit untuk dinavigasi), atau memperlebar jendela Anda sehingga Anda tidak dapat memuat sebanyak mungkin di layar pada sekali.
Bahkan jika Anda biasanya tidak mengedit dengan cara ini, jika Anda pernah menggunakan alat diff berdampingan, Anda akan menghargai file dengan panjang garis wajar yang akan membuat diff Anda lebih mudah untuk dilihat.
Ada juga masalah kepadatan kode. Saya suka memiliki banyak konteks ketika membaca kode. Jauh lebih cepat untuk melirik ke atas dan ke bawah jendela daripada menggulir. Jika Anda memiliki garis yang sangat panjang, Anda juga cenderung memiliki garis yang panjangnya bervariasi, yang menyebabkan banyak real estat layar terbuang dan mampu memuat lebih sedikit kode di layar pada waktu tertentu secara keseluruhan.
Dan akhirnya, jika Anda memiliki garis yang sangat panjang, maka itu umumnya berarti bahwa Anda memiliki garis yang sangat rumit, indendasi yang dalam, atau bahwa Anda memiliki pengidentifikasi yang sangat panjang. Semua ini bisa menjadi masalah. Baris yang rumit mungkin melakukan terlalu banyak; Jika Anda dapat memecahnya menjadi beberapa baris sederhana, Anda mungkin harus melakukannya. Lekukan yang dalam berarti bahwa Anda mungkin bersarang terlalu banyak loop dan kondisional, yang dapat membuat aliran kode Anda membingungkan; mempertimbangkan refactoring ke dalam beberapa fungsi. Dan jika pengenal Anda terlalu panjang, itu bisa membuat membaca kode Anda sangat sulit. Orang umumnya mengenali kata-kata sebagai unit individu; mereka tidak membaca setiap karakter satu per satu, tetapi melihat keseluruhan bentuk kata. Pengidentifikasi panjang lebih sulit untuk dibedakan dengan cara ini, dan biasanya jika mereka selama itu, mereka berisi informasi yang berlebihan atau berulang.
Sekarang, meskipun masih merupakan praktik yang baik untuk menjaga kode di bawah 80 kolom, ini bukan salah satu aturan yang perlu diikuti secara religius, memutarbalikkan diri Anda untuk membuat beberapa baris sesuai ketika itu tidak. Saya menyarankan Anda mencoba menyimpan semua kode Anda di bawah 80 kolom, tetapi ketika itu tidak sesuai, jangan terlalu khawatir tentang hal itu.
sumber
std::vector<...>::const_iterator
), meskipun dalam kasus terakhir, hal-hal biasanya dapat dikurangi dengan typedefs.Jika saya menjaga garis saya menjadi kurang dari 100 karakter, saya dapat memiliki dua jendela editor berdampingan pada monitor layar lebar. Sangat berguna untuk membuat file header kelas dan implementasi keduanya terlihat pada saat yang sama, atau memiliki kode di satu sisi yang memanggil kode di sisi lain. Dan, jika saya menjaga garis pendek, saya tidak perlu scrollbar horizontal pada jendela editor saya, yang memberi saya lebih banyak ruang vertikal.
80 karakter mungkin sudah ketinggalan zaman, tetapi ada beberapa manfaat dalam menjaga hal-hal yang masuk akal.
sumber
Saya tidak berpikir monitor ada hubungannya dengan itu - setidaknya tidak lagi.
Jika Anda tidak dapat membuat kode baris dalam 80 karakter, mungkin itu pertanda kode yang buruk. Ekspresi yang terlalu rumit. Lekukan terlalu dalam. dll. Anda harus berhenti dan memikirkan kembali apa yang Anda lakukan.
Tetapi jika Anda yakin bahwa kode tersebut membutuhkan lebih dari 80 baris, maka silakan lakukan. Saya pikir lebih baik memiliki kode yang melampaui 80 karakter daripada menambahkan perubahan idiomatik hanya untuk membuatnya lebih kecil.
Saya pribadi benci hal-hal semacam ini:
Alih-alih hanya:
sumber
Untuk coding?
Tentu saja ya Manusia normal tidak bisa membaca terlalu lebar. Dengan beberapa kolom Anda menggerakkan mata Anda lebih sedikit, Anda fokus lebih baik dan menunda kelelahan. Ini keuntungan minimum tetapi yang penting.
sumber
Ya, ada alasan untuk membatasi panjang baris kode:
Karena itu, 80 sedikit terlalu sedikit. Namun, tetap saja, beberapa batasan mungkin merupakan ide yang bagus sebagai prinsip desain.
Saya akan mengatakan bahwa garis ekstra panjang tidak harus dianulir, karena kadang-kadang mereka yang diperlukan. Tetapi jika sebagian besar fungsi hanya dapat dilihat pada layar 30 "maka kode memiliki beberapa masalah.
sumber
Ini arbitrer, tetapi ada batas non-arbitrer untuk apa yang mudah dibaca. Saya menemukan bahwa kolom teks super lebar sangat sulit untuk dipindai dan dibaca, terlepas dari apakah itu kode atau prosa. Lebih lanjut, seperti yang banyak ditunjukkan oleh jawaban lain, bukan berarti kode ini akan menjadi satu-satunya yang muncul di layar Anda. Sangat bagus untuk memiliki dua atau lebih jendela kode pada saat yang bersamaan, dan memasangnya pada satu monitor layar lebar.
sumber
Mungkin tidak relevan untuk memilih tepat batas 80 karakter; apa yang akan berubah jika batasnya 85, misalnya?
Memang benar bahwa monitor yang digunakan saat ini memiliki resolusi yang lebih tinggi, tetapi dalam editor teks / IDE, tidak semua ruang diambil dari tampilan teks; di editor saya menggunakan acara di sebelah kiri daftar file yang termasuk dalam proyek.
Resolusi yang digunakan dalam netbook, atau notebook tidak sama dengan yang digunakan pada monitor; mungkin masuk akal untuk menggunakan batas karakter yang tidak membuat "masalah" kepada siapa pun.
sumber
Itu sangat tergantung pada lingkungan pengembangan.
Sebagai contoh, dalam sebuah perusahaan besar dengan ribuan pengembang, mungkin ada ratusan orang yang, selama masa hidup produk, harus melihat beberapa bagian dari kode itu. Dengan begitu banyak orang, pasti ada beberapa yang, karena alasan apa pun (perangkat keras yang lebih lama, netbook, dll) beroperasi pada 800x600 atau lebih kecil. Ada beberapa nilai untuk mengakomodasi mereka.
Di perusahaan 25-orang saya, saya katakan mengacaukannya. Kita semua menggunakan monitor modern ganda dengan resolusi maksimum - 120-140 atau lebih adalah pedoman informal.
sumber
Memiliki batasan tentu masuk akal. Tapi batas 80 karakter terlalu membatasi. Saya lebih suka sesuatu seperti batas 96 karakter. Cukup lebar untuk sebagian besar kode yang harus saya tangani dan cukup sempit sehingga dua file dapat diletakkan berdampingan untuk dif'ing (pada layar lebar).
Saya percaya pembacaan kode mengalahkan semua masalah lainnya. Dan dengan 96 karakter per kode baris dapat dibuat lebih mudah dibaca daripada dengan 80.
Saya tidak membeli argumen bahwa kebanyakan orang mengatur terminal mereka untuk lebar 80 karakter, tidak ada printer yang harus membungkus garis lebih dari 80 karakter. Ini bukan batas keras seperti dulu di masa lalu (jauh). Anda dapat dengan mudah mengatur terminal dan lebar printer menjadi 100 karakter.
sumber
Tidak, itu tidak lagi relevan:
80 karakter adalah pedoman untuk font dengan lebar tetap di lingkungan konsol.
Tentu saja, jika Anda masih menggunakan font dengan lebar tetap di lingkungan konsol ... maka pasti, 80 karakter masuk akal :)
sumber
Jika Anda menggunakan editor dalam GUI, maka 80 karakter per baris tidak relevan, karena sebagian besar editor yang layak - misalnya Notepad ++ - memiliki tombol untuk beralih bungkus garis. Dengan itu, seharusnya tidak menjadi masalah, bahkan ketika melihat kode di jendela tipis.
sumber