看板 Soft_Job 關於我們 聯絡資訊
覺得前端簡單嗎?那只是你用不到難的部份而已。 個人覺得前端難可以很難,而且是超級的那種。 來看一個需求如何慢慢長大的 input field。 1. 一個輸入欄位,嗯...簡單。 2. 一個美化的輸入欄位,拼一下 Dom,一點圖,一些 CSS, 一些客製的 hover focus...仍然 easy。 3. 其實這 input 是要到後端撈選單的,輸入後要跳個 list 在下方, 好吧,聽 key event 發 Ajax + 以上,還好嘛? 4. 一直發 request 伺服器負擔太大? 好吧加個 debonunce / throttle,仍然 ok 5. User 敲完字後立刻選好選項 (更新了 input) response 才回來, 選單又跳出來?噢好吧檢查一下有選項就不跳選單。 6. 這時發現因為 Dom 結構的原因,在瀏覽器縮放時會破圖, 或產生 color bleeding 7. User 敲完字後立刻選好選項但發現選錯,結果因為 5 選單沒跳? ... 什麼?你說上面 1234567 都已經有現成元件可以用? 你確定? style 是你要的嗎? 當你需要客製行為時抓得到 inject point 嗎? 用現成元件最怕的是狀態你無法掌握, 狀態改變的事件它不見得有提供, 而其實到上述 7 的部份, 個人覺得就已經不下於後端多執行序下的資源管理問題了, 那通常還不會是最後一個問題... 而且...這還只是個輸入欄位哦? 如果 A 元件如何時 B 元件要有什麼改變, 或是多個元件間有親子關係影響到顯示問題, 或是遇到規格上的限制 (如 302 redirect) 要找 workaround, 那...故事可精彩的咧! ※ 引述《neo5277 (I am an agent of chaos)》之銘言: : 程式很講天分 : 前端也是自己覺得還 更加吃天分。 : 很多時候重點在排版~~ : 我們同期有一個,以前是念新聞的。 : 自己有再兼攝影婚攝修圖,PS,AI神手。 : 我們是.net, backend的時候他比較困擾 : 上到前端部分時候他整個人根本就變成超級賽亞人 : 順便還包辦修圖出圖。 : UI出來就先贏了~~ 現在在某銀行做前端跟手機薪水也是不錯。 : 前端的世界的確是滿迷人的。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.141.96 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1446124529.A.3E7.html
aiyswu: 而且這1234567還沒考慮到元件耦合性,維護性,重用性,跨專 10/29 22:13
aiyswu: 案重用,等等的問題,每一個元件都可以是一個open source 10/29 22:13
aiyswu: 專案 10/29 22:13
加一個各瀏覽器 (尤其舊 IE) 的獨特行為 @@
CaptainH: 後端產生適合的選單比調整ui還難 10/29 22:15
可能個人感覺不同吧,我前後都做, 我是覺得只要邏輯明確生選單容易多了。 或許可以說,我沒有前端的天份 XDD
superpai: 我還特地回去看一下,沒看到人說簡單呀 10/29 22:19
就...天份的部份 @@
CaptainH: 你舉google docs這種SPA還比較有說服力 10/29 22:22
SPA 難的部份也是在這裡啊,流程管理跟狀態維護。 不然只是 call AJAX 拿資料改頁面也沒什麼。 如果是指多人共同編輯的部份,相信我, 前端的部份那會再難一點點而已,不會難很多, 因為光單使用者的情況就可以包含大部份複雜的 case。 後端的難度倒是會提昇不少 個人剛好有陣子處理不少某支援共同編輯的 SPA 試算表元件的客製跟 Debug ( 這個 http://www.zkoss.org/product/zkspreadsheet ) 置入性行銷一下 XDD ※ 編輯: lovdkkkk (1.164.141.96), 10/29/2015 22:42:25
Masakiad: 我覺得最難還是maintain跟擴充功能了,比起以前不太會 10/29 23:56
Masakiad: 更改ui的網站,現在都是webapp,系統營運後功能越來越 10/29 23:56
Masakiad: 複雜,如果沒有好的軟體架構,會發生什麼事情? 10/29 23:56
Masakiad: 又或是老闆說這些都做好的ui,加幾個欄位改成b功能應該 10/29 23:59
Masakiad: 不難吧?就跟另外一個api隨便接一下就可以了 10/29 23:59
aiyswu: 房子都裝潢好了,我只是要改一下廁所,廚房和客廳的位置 10/30 00:27
aiyswu: 應該不難吧。 10/30 00:27
abccbaandy: 同感,一開始架構不好好弄,後面想改超麻煩 10/30 00:33
真的,面對各個使用者各種情境下的不同需求, 持續的擴充與維持穩定就更麻煩了。 因此請愛用瀏覽器自動化工具做 acceptance test 0rz 這裡順便舉個用現成元件 (google map) 時, 要確認狀態可能有多麻煩的例子 http://goo.gl/acag1q
bndan: 你被推文釣出來了 何必呢?(攤手) 有些人帶有舊時代"寫網頁" 10/30 12:15
bndan: 的.這種詞來看待現在新式WEB APP..別的不說 稿不好你講SPA 10/30 12:16
bndan: 他還不知道你在說啥3小 更不用說後來的hybird APP 或是靠整 10/30 12:17
bndan: 合物(EX:Cordova)整合的多平台程式.(個人習慣稱client APP) 10/30 12:19
其實我是有點想要說, 要好好考慮是不是一開始就要從前端入門, 當然基礎的部份是比較快能看到成果有成就感, 但是實際工作上坑可能會很大也更快把熱情燒光。 突然想到 "釣出來" 的另一種意思, 不用想太多,這種例子到處都是,Google Map 不過是其中之一, 其它如 solmate (一個幾乎就是 1~7 缺 4 的元件) 選單開啟/關閉時沒發 event 等等, (這個還比較接近上述 1~7 的例子) ※ 編輯: lovdkkkk (1.164.141.96), 10/31/2015 01:01:13
Dnight: 隨便弄一個可以很簡單,要做的好不管前後端都很難... 10/31 19:28