Rumah >Peranti teknologi >industri IT >Bagaimana anda bekerja dengan kod orang lain ' s?
Hari ini saya akan melihat beberapa pendekatan terbaik untuk bagaimana menangani kod orang lain, membaca kod warisan, dengan berkesan. Ia bukan topik yang mudah untuk diliputi.
Untuk membuat proses lebih mudah, saya membingkai pendekatan saya melalui kawasan berikut:
Adakah anda pekerja terpencil atau freelancer? Apakah saluran komunikasi yang dimiliki oleh projek atau syarikat? Adakah pemaju di IRC, Slack, Twitter, E -mel, Trello atau yang lain?
Pastikan anda berada di mana mereka berada. Kritikan yang sering disamakan di Zend Framework 2 adalah bahawa tidak ada komuniti aktif. Itu bukan kes itu, kerana saluran IRC aktif setiap hari. Oleh itu, pastikan anda berada di mana pemaju dan ahli pasukan lain.
Perhatikan
Sesetengah orang mempunyai persepsi yang sesat yang anda boleh, entah bagaimana, hanya melompat masuk dan dengan serta -merta menjadi produktif. Mungkin mereka menonton terlalu banyak filem Hollywood seperti Swordfish.
codebases mengambil masa untuk belajar kerana mereka dilaburkan dengan idea , prasangka , kepercayaan dan pendekatan semua pemaju yang bekerja di projek itu. Memandangkan anda baru, anda tidak akan mempunyai pengetahuan latar belakang.
Berikut adalah 5 cara yang baik untuk memulakan:
Jangan bersungguh -sungguh pada diri sendiri, berikan diri anda peluang untuk membuat permulaan yang baik. Selepas beberapa ketika, anda akan mula mempunyai pemahaman yang lebih baik tentang bagaimana permohonan itu telah disatukan.
Pada ketika ini, mula bergerak lebih cepat dengan bertanya soalan pemaju lain dan pemaju kanan. Anda akan membina senarai soalan semasa anda melalui codebase.
Luangkan masa untuk meminta pemaju lain untuk menjawab soalan dan pertanyaan anda. Jangan malu, lompat masuk dan dapatkan jawapan dan input yang anda perlukan.
Sebarang asas kod yang baik harus mempunyai ujian. Jika tidak, itu bukan tanda yang baik. Ia tidak perlu berbahaya - ia hanya boleh menjadi pemaju atau pasukan pembangunan yang tidak pernah melaksanakan ujian - tetapi saya akan lebih sedikit bimbang jika tidak ada.
Jika terdapat ujian, jalankannya. Adakah mereka lulus? Saya telah menjumpai lebih daripada satu sumber kod sumber yang mempunyai ujian yang tidak dapat dijalankan. Adakah mereka telah dikemas kini?
Sekarang anda telah cuba menjalankannya, baca dengan baik melalui mereka. Sekiranya mereka ditulis dengan baik, mereka harus menerangkan bagaimana aplikasi berfungsi, apa yang diharapkan untuk dilakukan, dan bagaimana komponen yang berbeza menggantung bersama. Pastikan anda meluangkan masa untuk melakukan ini, kerana ia boleh menjadi sangat berwawasan.
Satu lagi cara mudah untuk memulakan adalah menetapkan pepijat yang disasarkan kepada pendatang baru, atau lebih banyak pemaju junior, pada projek itu. Dua contoh yang baik ialah Joind.in dan OwnCloud, pelacak bug untuk yang terakhir yang anda dapat lihat dalam tangkapan skrin di bawah.
Anda dapat melihat tiket -tiket ini telah ditandakan dengan jelas. Mempunyai bacaan dan terlibat. Pepijat ini tidak akan menjadi sangat teknikal, tetapi anda akan dapat meringankan projek, membina keyakinan dan pengetahuan anda.
Walaupun kerumitan kemuliaan dan teknikal boleh menjadi baik untuk ego, apabila perkara tidak berfungsi atau mengambil masa yang lama, mereka tidak melakukan apa -apa nikmat untuk kebanggaan dan semangat anda. Mulakan kecil dan meringankan jalan anda.
Salah satu perkara terbaik yang boleh anda lakukan apabila mengambil alih pangkalan kod, atau ketika masuk ke dalam pasukan yang ada, adalah untuk mengumpulkan seberapa banyak sumber yang dapat anda lakukan. Tidak pasti apa yang perlu dicari? Berikut adalah beberapa idea untuk memulakan anda:
Ide yang baik bernilai berat pepatah mereka dalam emas. Sama ada anda ruby , python , pergi , php atau pemaju bahasa lain, cari IDE yang baik sama ada khusus khusus untuk atau sesuai disesuaikan untuk bahasa pilihan anda.
Saya menghargai sesetengah orang adalah pemurni, lebih suka Vim atau Emacs, dan itu OK. Tetapi saya seorang kekasih IDE dan pilihan saya adalah phpstorm. Terdapat banyak yang lain, seperti Eclipse, Textmate, Sublimetext, dan VisualStudio.
Sebaik sahaja anda menemui IDE untuk anda, mula menggunakan ciri -ciri yang ditawarkannya. Saya akan merujuk kepada phpstorm secara khusus di sini, tetapi gunakan prinsip -prinsip ini untuk pilihan anda.
Mula melangkah melalui kod dan lihat jika ia mematuhi standard. Ini tidak perlu menjadi standard formal, seperti PSRS PHP. Tetapi adakah pemaju mengikuti gaya yang konsisten, atau di seluruh tempat. Gunakan alat seperti pengesan kekacauan dan penguji kerumitan siklomatik untuk mula mengukur kualiti kod.
Adakah terdapat dokumentasi kod? Jika ya, IDE anda boleh menggunakannya semasa anda memeriksa kod tersebut. Seterusnya, gunakan debugger langkah-langkah, seperti XHPROF, XDEBUG atau ZEND DEBUGGER, dan jalankan aplikasi, melihat bagaimana ia berfungsi.
apa yang dilakukannya? Apakah struktur data yang dibuat dan digunakan? Adakah ia mengulangi blok kod tidak perlu? Terdapat jauh lebih banyak daripada yang saya boleh tutup di sini, tetapi gunakan ciri -ciri IDE yang anda sediakan semasa anda melalui kod untuk menjadikan hidup anda lebih mudah.
baca dan belajar
Simpan diri anda sedikit masa dan lakukan keadilan untuk pengalaman yang sukar dipelajari dengan belajar dari mereka. Begitu banyak pemaju yang lebih baik juga penulis dan blogger.
Salah satu kegemaran peribadi saya ialah Martin Fowler, yang juga telah menerbitkan sebuah buku hebat mengenai topik refactoring. Terdapat juga buku -buku yang sangat baik, seperti corak reka bentuk, dan laman web seperti sourcemaking.com.
Buat diri anda dan terus melabur dalam sumber seperti ini. Ia tidak selalunya mudah, tetapi ia boleh memberi ganjaran yang luar biasa.
Ini adalah yang saya tidak cukup. Sangat mudah untuk menjadi pengkritik kerusi, duduk di luar dan mengkritik codebase, rangka kerja atau projek perisian lain. Daripada melakukan itu, masuk dan terlibat.
Dokumentasibukan untuk pengaturcara, pereka atau orang bukan teknikal yang gagal. Beberapa projek terbesar secara aktif mencadangkan bahawa tempat terbaik untuk memulakan adalah dokumentasi.
Salah satu projek yang paling menonjol yang melakukan ini adalah kernel Linux. Apa cara yang lebih baik untuk belajar sesuatu daripada mendokumenkannya? Lagipun, jika anda benar -benar tahu, maka anda boleh mendokumentasikannya.
Jadi jika ia adalah projek sumber terbuka, masuk, cari tahu, baca melalui kod, buat nota semasa anda pergi, kemudian menyumbang kepada dokumentasi. Jika ia adalah aplikasi dalaman, jadilah yang pertama untuk mula mendokumentasikan; walaupun tidak ada orang lain kecuali diri anda.
Mungkin tidak ada dokumentasi untuk dibicarakan; tempat yang benar -benar mengerikan. Tetapi setiap projek perlu bermula di suatu tempat. Semasa anda bekerja melalui kod sumber, tuliskan apa yang anda tahu.
Beberapa pemaju terbaik yang saya tahu, contohnya Lorna Jane yang indah, mula blog dengan cara ini. Dia blog untuk menyimpan rekod tentang apa yang dia sedang belajar, yang kemudiannya masuk ke salah satu blog PHP yang paling popular di sekitar.
Titik Terakhir: Berhati -hati dengan pemaju yang kerja anda mengkaji dan membina. Anda tidak tahu di mana mereka berada dalam kerjaya dan pendidikan mereka, atau apa sekatan yang mereka ada pada mereka, apabila mereka menulis kod yang kini anda akan datang untuk mempercepatkan.
Lebih -lebih lagi, pada tahap kemahiran anda berada? Ia boleh menjadi mudah bagi kita, apabila kita masih muda, lebih baru, dan kurang berpengalaman, untuk menghakimi orang lain.
Kami fikir kami tahu semuanya dan jangkaan, konsep dan pendekatan kami adalah cara yang benar dan betul untuk pergi. Tetapi adakah itu benar -benar berlaku? Saya suka mempercayai bahawa, ketika kita matang, dan tumbuh sedikit lebih tua, kita juga semakin bijak dan menjadi lebih menerima pelbagai pendekatan untuk pembangunan perisian yang wujud.
kita mungkin tidak perlu bersetuju dengan mereka, tetapi mereka tidak semestinya salah. Mereka mungkin mempunyai banyak untuk mengajar kita, yang dapat membantu kita berkembang. Jadi selalu cuba dan perhatian orang lain dan kedudukan mereka berada. Jangan menjadi pendatang baru yang menjengkelkan, menunjuk jari dan menyalahkan. Lagipun, itu tidak membantu siapa pun, terutama anda.
Terdapat banyak lagi yang boleh anda lakukan untuk membuat kerja dengan kod orang lain proses yang lebih mudah diurus. Kaedah, petua, helah dan alat apa yang anda gunakan?
Terdapat beberapa alat yang dapat membantu anda dalam memahami dan bekerja dengan kod orang lain. Persekitaran Pembangunan Bersepadu (IDE) sering mempunyai ciri -ciri yang dapat membantu anda menavigasi kod dan memahami strukturnya. Debuggers membolehkan anda melangkah melalui kod dan melihat bagaimana ia berfungsi. Alat semakan kod boleh membantu anda mengenal pasti isu dan memberi maklum balas. Di samping itu, alat dokumentasi dapat membantu anda memahami tujuan dan fungsi Kod. boleh menggunakan. Mulailah dengan cuba memahami struktur dan fungsi keseluruhan kod. Gunakan debugger untuk melangkah melalui kod dan lihat bagaimana ia berfungsi. Jika boleh, tanya pengarang asal atau ahli pasukan lain untuk penjelasan. Semasa anda mendapat pemahaman, pertimbangkan untuk menambah komen atau dokumentasi anda sendiri untuk membantu pemaju masa depan. untuk menghormati Kod dan Konvensyen Pengekodan yang sedia ada. Mulakan dengan memahami asas kod dan strukturnya. Pastikan perubahan anda sejajar dengan kod sedia ada dan jangan mengganggu fungsinya. Uji perubahan anda dengan teliti untuk memastikan mereka tidak memperkenalkan pepijat baru. Akhirnya, berkomunikasi dengan pasukan anda dan mengambil bahagian dalam ulasan kod untuk memastikan perubahan anda difahami dan diterima. kerana mereka memastikan konsistensi dan kebolehbacaan di seluruh codebase. Mereka menentukan bagaimana kod harus ditulis dan dianjurkan, yang memudahkan ahli pasukan memahami dan bekerja dengan kod masing -masing. Piawaian pengekodan juga membantu mengekalkan kualiti kod, kerana mereka sering memasukkan garis panduan untuk pengendalian, keselamatan, dan prestasi ralat. Komunikasi adalah kunci apabila bekerja dengan pasukan di pangkalan kod. Jelas dan ringkas apabila membincangkan kod, dan gunakan istilah teknikal yang sesuai. Mengambil bahagian dalam ulasan kod dan memberikan maklum balas yang membina. Jika anda menghadapi masalah memahami sekeping kod, jangan ragu untuk meminta penjelasan. Juga, terbuka untuk menerima maklum balas dan gunakannya untuk meningkatkan kemahiran pengekodan anda.
Atas ialah kandungan terperinci Bagaimana anda bekerja dengan kod orang lain ' s?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!