iT邦幫忙

1

程式碼用自己的還是用現成的比較好?

  • 分享至 

  • xImage

我看網路上很多人都會使用Bootstrap等等比較現成的程式碼,你們覺得呢?是自己寫比較好,還是用現成的?

看更多先前的討論...收起先前的討論...
deh iT邦研究生 1 級 ‧ 2021-08-11 22:06:11 檢舉
雖然從問題感覺您的理解有些問題。不過簡單來說,別自己造輪子,徒勞。
就我個人的開發經驗來說,我一開始也是用前端三大語言純手刻,但經常會遇到跑版或樣式不如預期等情況,自從用Bootstrap之後,上面的情況就少很多,開發效率變比較高。
我只能說,比起花費心力和時間在前端的樣式上,不如多投注在後端的邏輯規劃上比較有意義。
試想一下,你總不會想要每次專案都還要從按鈕開始刻吧?
PPTaiwan iT邦好手 1 級 ‧ 2021-08-12 03:22:11 檢舉
使用現成的或是上網去尋找相關的 Bootstrap 的美術設計,將其整個與應用到你的專案會比較快。找時間學習與設計 Bootstrap 的方法..
haward79 iT邦研究生 1 級 ‧ 2021-08-12 07:46:31 檢舉
應該說看狀況決定
例如:你如果要練基本功,又怎麼能用 bootstrap?
例如:你如果要快速建置功課要用的網站,bootstrap 也許是個好選擇
例如:如果你是接 case,客戶指定要全手工,你又哪能用 bootstrap 呢?
個人觀點......我要是能寫的出完整且有辦法持續維護的框架,就不會是領現在這一點薪水了
再者,最難維護的就是自己手工寫的程式,過個幾年回頭看都有可能看不懂,又如何能傳承給其他工作伙伴一起協同開發,沒有框架協助,協同起來的結果就是你有你的風格,他有他的史代兒......
基本上只要注重資安且願意在IT花大量預算的公司,絕對不允許使用框架,所有的CODE都是原生自己開發,為什麼,最簡單的問題就是資安,你用BOOTSTRAP開發前端UI,要是有人惡意在瀏覽器外掛埋BOOTSTRAP的洞,而不知情的用戶端安裝了外掛,你的網站馬上被挖洞,這已經有很多案例了,不要以為不可能,基本上就是省了預算,等著被埋洞的公司一大堆,但沒預算沒時間你也只能用了不是嘛,這很現實,能從頭寫的人,速度快的跟火箭一樣的人,那些人的年薪隨便都是千萬以上,是要怎麼比
ckp6250 iT邦好手 1 級 ‧ 2021-08-12 15:06:48 檢舉
>>願意在IT花大量預算的公司,絕對不允許使用框架
您的意思是,laravel 之類的,也不用嗎?
archer9080 iT邦研究生 3 級 ‧ 2021-08-12 16:10:47 檢舉
CSS部份我自己在剛接觸的時候是手刻
上面開會是想買模板(別人作品)修改比較快速
結果需求加著加著........我還不如手刻
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
5
㊣浩瀚星空㊣
iT邦大神 1 級 ‧ 2021-08-12 18:05:32
最佳解答

上面許多人談到框架的引用好不好、對不對、錯與不錯....等等等觀點。

認真來說,使用框架並沒有所謂的對與錯。全看個人當下的環境及功力來決定。
但不可否認的一件事。只有功力非常好的人,才會多「原生開發」這個選項出來。
要不然使用框架。一大堆事都不需要再自造輪子、自刻。為何不好呢?
開發速度快又穩(?)又安全(?)
(?)的代表我是持保留態度。

回來樓主本身的問題來說好了。
Bootstrap 有非常多好看且也設計好的樣式。簡單的規劃一下,佈局就生好。
當然要用啊。為何不用?
但...是否Bootstrap就可以適用所有的站呢?這是不一定的。
全用Bootstrap來表現一個網站是否可以?
當然也是可以。你高興就好,客戶高興也可以。

也就是說,其實要自已寫,要用框架。
其一是看你的功力,其二是看你的心情,其三是看你當下的環境情況。

想花時間自已刻,為何不好。想直接用框架來處理。也行啊!

再來說說我自已。
有輪子可以用為何不直接用。有好用的工具為何不拿來用。
當然,我自已其實也有本事自已造輪子。自已搞工具。
但太累了。

最後Samと可樂快跑 該呼叫出來了。
就我所知道,叔叔可是有接過不能用框架的CASE過喔。好像連 Bootstrap 也不能用。
我也曾經接過這一類的任務。不過當時的框架還沒那麼方便。是在JQUERY 0.XX 的年代
也沒啥PHP框架。再當時我是自已創了一個我自已用的框架來用。

我睡的好好的吵醒我幹嘛?
3缺1嗎?(群聚禁止)

4
ckp6250
iT邦好手 1 級 ‧ 2021-08-12 08:54:14

如果我寫的比現成的好,我當然就自己寫,
如果現成的比我寫的好,那我幹嘛不用呢?

通常,現成的都比我寫的好~

想吃肉,版主考慮自己養。

0
kagaya
iT邦新手 2 級 ‧ 2021-08-12 10:04:03

沒必要重新發明輪子
如果現成的好用很多人用 用就對了
節省下來的時間可以拿來做很多事

0
混水摸魚
iT邦研究生 2 級 ‧ 2021-08-12 11:18:58

可以參考我寫的這篇 https://www.webteach.tw/?p=2351

ckp6250 iT邦好手 1 級 ‧ 2021-08-12 15:11:37 檢舉

話又說回來,自己要獨立開發一套類似 WordPress,幾乎也不可能。

混水摸魚 iT邦研究生 2 級 ‧ 2021-08-16 10:38:06 檢舉

太多技術的坑很難一個人做到,可能開發完技術都是過時的。

0
Yaowen
iT邦研究生 3 級 ‧ 2021-08-12 11:19:35

每個功能都要手刻程式碼
會累到想哭
有現成的沒必要搞死自己
去學現成沒有的比較有意義

2
whitefloor
iT邦研究生 2 級 ‧ 2021-08-12 12:28:31

通常有幾種做法

1.導入framework

優點:快,方便,統一風格,大家都一樣
缺點:可能被埋惡意code,或是被人家針對式攻擊,framework本身就有bug

2.用standard package

優點:東西都是自己人產出的,安全,有bug的話可以有效快速的修復,完全客製化符合公司需求
缺點:花錢,花時間,花人力,可能難以復用在其他領域上,會遷移的可能性就是公司被併購時

實際上這兩種做法通常是併行的
例如像JWT已經是被驗證過且有效被廣泛運用的package,直接導入對公司是一個不錯的選擇
但在導入framework或是third party package的時候會嚴格的去review source code去做對維護性/安全性/易用性等方面去做評估
或者是還有去選擇特定版本的framework去做二次封裝,客製成自己需要的功能當作base module

總結來說可以從成本/時間/安全三方面去做考量,再決定是要自己客製或是導入framework

但公司爸爸有錢就是任性的話什麼都自己來

0
打雜工
iT邦研究生 1 級 ‧ 2021-08-14 11:14:41

這問題應該問你自己才是,很多時候我們會用Open Source的東西,這個問題就像是你沒$買微軟的作業系統,問大家我要自己寫一套作業系統,還是用開源的OS(很多讓你挑)?沒有絕對的答案,端看你當下的情境跟條件而定,提供你參考...

0
windincloud
iT邦見習生 ‧ 2021-08-17 19:47:13

其實不管哪一個都有一定的風險,所以重點還是擺在資安管理的方式。

使用框架有框架的好,至少不用在花時間去踩前人走過的坑,不必閉門造車。
自己寫也很好,掌握度高,自己想要的自己刻,用的也會順手。

但是以上都還是有盲點,就是程式漏洞。
你自己寫固然好,但你可以確保全部自己開發出來的都沒有CWE(Common Weak Enumeration)內的錯誤嗎?
而框架也有可能會藏程式漏洞,或是不小心被人開發出來可運用的漏洞。
所以,只要是人寫的都有機會有漏洞!但是重點是事前的防範與代碼後續的管理與維護。

事前防範可以做的項目像是有

  1. 良好的code review機制
  2. 有static code scanning
  3. 對code/使用的component的掌握度要高

事後的部份可以做的項目像是有

  1. 訂閱與程式相關的資訊安全RSS並根據最新資訊查驗自己的系統是否有問題
  2. 團隊定期資訊安全教育
  3. review開發的安全準則
  4. 定期查驗所使用之元件是否有被通報之CVE,並定期更新
  5. 若組織許可,可以部建紅藍隊來增強或補足開發之不足

以上項目僅依可能的方向列出,供參考用。
不過最重要的還是自己資安管理策略是否合宜,不然怎樣都有機會製造出資安問題的。

我要發表回答

立即登入回答