Bagaimana cara menjadi programmer yang lebih terorganisir? [Tutup]

9

Saya seorang programmer yang bisa kode. Tetapi saya menemukan bahwa saya dapat menyelesaikan sesuatu, tetapi tidak menyelesaikannya dengan baik atau seperti yang dilakukan sebagian besar komunitas open source. Yah, saya menggunakan beberapa perpustakaan dari hub git. Saya menemukan sebagian besar program struktur baik. Juga, baca saya.

Pertanyaan saya adalah:

  1. Apakah itu struktur file umum atau konvensi penamaan di komunitas atau ini hanya masalah selera pribadi?

  2. Bagaimana menjadi programmer yang lebih terorganisir, alih-alih menulis kode hanya berfungsi. Tetapi lebih terorganisir yang membuat orang lain mudah mendapatkan proyek Anda?

Ted Wong
sumber
Saya tidak berpikir ada jawaban ajaib, tetapi salah satu cara untuk mendekatinya adalah dengan melihat apa yang membuatnya mudah bagi Anda untuk 'masuk' proyek sumber terbuka terorganisir yang Anda gunakan, dan ulangi hal-hal itu dalam proyek Anda sendiri. Sepotong kecil sekaligus.
Philip
2
Seperti banyak hal dalam pemrograman, sejauh ini yang paling penting adalah konsisten
Tom Squires
1
@ TomSquires: Saya harus tidak setuju. Sejauh ini yang paling penting adalah untuk selalu meningkatkan diri Anda dan dokumentasi + kode. Konsistensi demi konsistensi berfungsi untuk membuat perangkat lunak lebih sulit untuk dipelihara dari waktu ke waktu.
l0b0
tidak hanya tidak ada jawaban ajaib, ada jutaan cara pemrograman, penataan proyek dll, dan banyak orang dengan pendapat, baik atau buruk, tentang semuanya. Ada banyak hal kecil yang dapat Anda lakukan, banyak hal yang lebih besar juga, tetapi tidak ada peluru ajaib
ozz

Jawaban:

3

Struktur proyek pengembangan telah banyak dibahas di Stack * ( 1 , 2 ), pilih saja yang sesuai dengan situasi Anda.

Untuk lebih terorganisir, saya telah mencoba berbagai metode dan alat untuk mengatur kode dan informasi di sekitarnya:

  • Pelacak bug seperti file teks GitHub / Bugzilla / TODO
  • Wiki menyukai GTD TiddlyWiki / GitHub
  • Bangun alat seperti make / Maven / rake
  • Alat manajemen proyek seperti JIRA dan Redmine
  • Editor seperti jEdit dan vim
  • Gabungkan alat - alat seperti Meld dan kdiff3
  • Sistem kontrol versi seperti Subversion dan Git (sebenarnya menggaruknya, gunakan saja Git dan selamatkan diri Anda dari banyak kesedihan)

Setelah Anda mencoba beberapa dari masing-masing, Anda mungkin menemukan bahwa beberapa sesuai dengan cara berpikir Anda lebih baik daripada yang lain. Tapi ingat bahwa selalu ada alat yang lebih baik yang tidak Anda ketahui, dan alat selalu saling mengejar . Karena itu Anda harus selalu siap untuk mencoba sesuatu yang lain, bahkan sesuatu yang sudah Anda coba dan tolak, dengan dasar bahwa apa pun yang Anda pelajari dapat dan akan digunakan oleh Anda untuk kebaikan yang lebih besar.

l0b0
sumber
tautan gtdtw ke bawah?
ell
2

Perbaiki kode Anda sampai Anda puas dengannya.

Seiring waktu Anda akan perlu semakin sedikit dan kurang refactor, dan akhirnya Anda akan melakukannya dengan benar pertama kali sekitar *.

Belajar sambil bekerja.

* Sebagian besar benar :)

Orang bodoh
sumber
+1. Kode 'benar' ketika pengulangan telah diperas dan tes berlalu. Struktur dapat berubah untuk lulus tes berikutnya. Saya berusaha keras untuk tidak memperkenalkan kompleksitas untuk mengantisipasi tes tidak tertulis.
kevin cline
0

Git dan SourceForge. Ini adalah dua item yang saya gunakan saat menulis sebuah program besar yang tidak terorganisir. Untuk detail Google keduanya, karena saya tidak dapat menautkan sekarang karena beberapa alasan aneh. Maaf soal itu, semoga ini membantu.

Dinamis
sumber
0

Dapatkan umpan balik tentang gaya pengkodean Anda dari seseorang dengan lebih banyak keterampilan dan pengalaman.

Cara saya melakukannya adalah saya mendapat pekerjaan di mana saya dan seorang programmer senior bekerja sama dalam proyek-proyek, dan dia meninjau semua kode yang saya periksa. Sesekali dia menulis email kepada saya dengan segala sesuatu yang membuatnya kesal atau bingung tentang kode saya. Butuh beberapa saat bagi saya untuk menemukan gaya yang saya dan dia cukup nyaman dengan, dan kami memiliki beberapa perdebatan sengit tentang beberapa hal, tetapi secara keseluruhan saya belajar banyak dan kami berpisah sebagai teman.

Baca buku / artikel tentang pola desain, terapkan pola yang berbeda untuk masalah Anda dan lihat mana yang menurut Anda berguna dalam situasi apa.

Baca buku / artikel tentang konvensi penamaan dan gaya format. Komunitas yang berbeda menggunakan gaya yang berbeda. Biasanya merupakan ide yang baik untuk menggunakan gaya yang akan dikenali oleh orang yang paling mungkin membaca kode Anda.

Beberapa saran konkret tentang penataan kode:

  • Ketika Anda melihat bahwa beberapa bagian dari kode Anda dapat dibuat lebih sederhana, lakukanlah.
  • Ketika Anda melihat bahwa beberapa bagian dari kode Anda dapat digunakan kembali, buatlah fungsinya dan gunakan kembali.
  • Jangan takut untuk mengubah nama variabel dan fungsi jika mereka buruk.
  • Ketika Anda memiliki ide untuk sesuatu (struct, fungsi, kelas, pola, apa pun) yang dapat membuat hidup Anda lebih mudah, buat dan gunakanlah.
  • Ubah pikiran Anda sesering mungkin. Setiap kali Anda melakukannya, Anda belajar sesuatu.

Meluangkan waktu untuk melakukan ini tentu saja akan memperlambat Anda di awal. Saat kode Anda semakin lama semakin elegan, kode itu akan semakin mudah dipelihara dan Anda akan mendapat manfaat dari pekerjaan Anda.

Minthos
sumber