Jadual Kandungan
回复内容:

总想重构整个项目

Jul 06, 2016 pm 01:51 PM
php

我入行it7个月 算是一个刚打湿鞋尖的一个程序员

开发中 需要学习各种知识

有html css javascript vuejs 各种web前段框架 正则表达式 php 和thinkphp框架
还有数据库

涉及的方面太多这半年也没好好学什么,要用什么看什么,所以会遇到很多问题。

在做bs软件的时候 经常会发现一些问题,解决问题以后会发现之前写的代码都遗留了自己以前没有想到过得bug.

这时候就有一种想法要把之前bug全部干掉, 这时候问题来了有些问题是当初没有仔细去考虑,就直接写代码。如果要去改正很多地方都会受到影响。可能会弄昏头,不注意就会绕回之前的涉及怪圈。

这时候就想要重构整个项目的代码,又有一个问题出来了,产品经理要求的开发时间本身就不够(他要的功能预期一天开发出来,但实际上我用了3天),在重构代码时间更是比黄金还可贵。而且产品经理每天都会说太慢了要加速(产品经理就是公司ceo,也是我的老师)。

每到这是时候我都特别浮躁,没法安心写代码,总想着项目中的bug.

咨询一下和我有一样情绪的大牛是如何解决这总问题的。

是继续开发,等产品的第一个版本开发出来以后,在去开发第二个版本好。

还是直接重构好,我个人想要直接重构,这样程序更安全。

这个问题已被关闭,原因:非技术提问的讨论型问题

回复内容:

我入行it7个月 算是一个刚打湿鞋尖的一个程序员

开发中 需要学习各种知识

有html css javascript vuejs 各种web前段框架 正则表达式 php 和thinkphp框架
还有数据库

涉及的方面太多这半年也没好好学什么,要用什么看什么,所以会遇到很多问题。

在做bs软件的时候 经常会发现一些问题,解决问题以后会发现之前写的代码都遗留了自己以前没有想到过得bug.

这时候就有一种想法要把之前bug全部干掉, 这时候问题来了有些问题是当初没有仔细去考虑,就直接写代码。如果要去改正很多地方都会受到影响。可能会弄昏头,不注意就会绕回之前的涉及怪圈。

这时候就想要重构整个项目的代码,又有一个问题出来了,产品经理要求的开发时间本身就不够(他要的功能预期一天开发出来,但实际上我用了3天),在重构代码时间更是比黄金还可贵。而且产品经理每天都会说太慢了要加速(产品经理就是公司ceo,也是我的老师)。

每到这是时候我都特别浮躁,没法安心写代码,总想着项目中的bug.

咨询一下和我有一样情绪的大牛是如何解决这总问题的。

是继续开发,等产品的第一个版本开发出来以后,在去开发第二个版本好。

还是直接重构好,我个人想要直接重构,这样程序更安全。

你选一个成熟的PHP框架,比如YII2Laravel等,学扎实了,这样就能事半功倍。
如果你总是举棋不定,只会白白浪费时间。不然你始终会有这个感觉
总想重构整个项目

个人给个建议是写代码注重模块化,分治,不妨在下一个项目的时候有意识的试试单元测试,写代码时候尽量想想那些内容是可能变化的哪些不会变化,是不是需要考虑一下封装,是不是应该考虑一下整体的框架性。我曾经借着一个项目,然后完成了一个自己的移动端ui组件库,虽然bug很多没有继续维护,后来当我写移动端的时候,即使用别人的框架,我也觉得很顺利,因为自己去思考过,然后自然懂得了框架开发者他们要解决的痛点,能够理解一些他们的思路,对于你代码整体性还是不错的。

代码永远没有真正完美的时候。只是在不断的趋于完美,能够看到之前的不足这很好,说明进步了。

遇到这种情况,其实不只是新人会有,如果项目足够大,周期足够长,随着业务量及业务的复杂层度增加,之前的模式不适合也是可以理解的。
除非你在最初的时候能够预见这些,进而选择了合适的模式或框架等。

然而既然遇到这种情况了,不改掉心里不舒服怎么办,这时候就要“逐步翻新”了,一边做新功能一边去修改、重构与之相关的部分代码,等一个版本迭代完成之后,你要的重构也就完成了。

以上,仅供参考。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

7 Fungsi PHP Saya Menyesal Saya Tidak Tahu Sebelum ini 7 Fungsi PHP Saya Menyesal Saya Tidak Tahu Sebelum ini Nov 13, 2024 am 09:42 AM

Jika anda seorang pembangun PHP yang berpengalaman, anda mungkin merasakan bahawa anda telah berada di sana dan telah melakukannya. Anda telah membangunkan sejumlah besar aplikasi, menyahpenyahpepijat berjuta-juta baris kod dan mengubah suai sekumpulan skrip untuk mencapai op

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Apr 05, 2025 am 12:04 AM

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Feb 07, 2025 am 11:57 AM

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

Program PHP untuk mengira vokal dalam rentetan Program PHP untuk mengira vokal dalam rentetan Feb 07, 2025 pm 12:12 PM

Rentetan adalah urutan aksara, termasuk huruf, nombor, dan simbol. Tutorial ini akan mempelajari cara mengira bilangan vokal dalam rentetan yang diberikan dalam PHP menggunakan kaedah yang berbeza. Vokal dalam bahasa Inggeris adalah a, e, i, o, u, dan mereka boleh menjadi huruf besar atau huruf kecil. Apa itu vokal? Vokal adalah watak abjad yang mewakili sebutan tertentu. Terdapat lima vokal dalam bahasa Inggeris, termasuk huruf besar dan huruf kecil: a, e, i, o, u Contoh 1 Input: String = "TutorialSpoint" Output: 6 menjelaskan Vokal dalam rentetan "TutorialSpoint" adalah u, o, i, a, o, i. Terdapat 6 yuan sebanyak 6

Terangkan pengikatan statik lewat dalam php (statik: :). Terangkan pengikatan statik lewat dalam php (statik: :). Apr 03, 2025 am 12:04 AM

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Apakah kaedah Magic PHP (__construct, __destruct, __call, __get, __set, dll) dan menyediakan kes penggunaan? Apakah kaedah Magic PHP (__construct, __destruct, __call, __get, __set, dll) dan menyediakan kes penggunaan? Apr 03, 2025 am 12:03 AM

Apakah kaedah sihir PHP? Kaedah sihir PHP termasuk: 1. \ _ \ _ Membina, digunakan untuk memulakan objek; 2. \ _ \ _ Destruct, digunakan untuk membersihkan sumber; 3. \ _ \ _ Call, mengendalikan panggilan kaedah yang tidak wujud; 4. \ _ \ _ Mendapatkan, melaksanakan akses atribut dinamik; 5. \ _ \ _ Set, melaksanakan tetapan atribut dinamik. Kaedah ini secara automatik dipanggil dalam situasi tertentu, meningkatkan fleksibiliti dan kecekapan kod.

See all articles