推 atst2:感謝說明:) 08/06 20:53
推 leicheong:2bii的部份, 由於.NET ajax現在也是用jQuery, 和其他 08/06 20:55
→ leicheong:語言寫web的做法已無多大分別了. 08/06 20:56
→ TonyQ:應該只限於有用 update panel 的那部份吧?我的意思是 08/06 20:57
→ TonyQ:專門使用 .net ajax framework 設計的部份? 08/06 20:57
→ TonyQ:我覺得 .net 先天包袱在於舊的東西跟新的東西,造成複雜度 08/06 20:58
→ TonyQ:也就是如果你想要避免不必要的 page reload ,你必須要很清 08/06 20:58
→ TonyQ:楚哪些行為會造成 page reload ,哪些不會。 08/06 20:58
→ TonyQ:雖然說這件事情是大家都會遇上的,但是 .net 的 user 先天 08/06 20:58
→ TonyQ:比較容易弄出會 page reload 頻繁的應用。XD 08/06 20:59
推 leicheong:2biii是我最不習慣的地方. 本來View和Controller在MVC 08/06 20:59
→ leicheong:結構來說是不應該做data manipulation的. 可是你不管 08/06 21:00
→ leicheong:使用者給甚麼你, 總之就給Model打包回去做processing. 08/06 21:01
→ leicheong:在client side只做簡單的validation, 這樣有意義嗎? 08/06 21:01
→ TonyQ:那件事情的意義在於降低對開發者的負擔,client 對開發者而 08/06 21:02
→ leicheong:由其在這有ajax可以以相當低的overhead來做這些的時候? 08/06 21:02
→ TonyQ:言並不好管理,而且資料的序列化/反序列化成本很高。 08/06 21:02
→ TonyQ:或者再直接說, javascript 的邏輯再利用不利,組織上也困難 08/06 21:03
→ TonyQ:另外以敝公司的作法,我們也是透過ajax 傳輸model。:P 08/06 21:03
→ leicheong:目前我只用jQuery+jQuery Form組件, 不排除以後會加/改 08/06 21:03
→ TonyQ:我們主要還是降低序列化/反序列化 跟寫出/找到對應的事件 08/06 21:04
→ TonyQ:處理者的 overhead . 08/06 21:04
→ leicheong:在IDE中可以用NuGet連到微軟的網站選用. 08/06 21:04
→ TonyQ:這裡就我所知其實玩家們現在有兩票分歧的路縣 08/06 21:06
→ leicheong:我現在傾和不依賴那叫Model的object, 把可以給user知道 08/06 21:07
→ TonyQ:有一票的玩法是認為所有的 js 是難以被 reuse 的,所以他們 08/06 21:07
→ TonyQ:寧願手工去操作每個細節,這樣的作法是可以有效掌握每個細節 08/06 21:07
→ TonyQ:不浪費任何一點資源,有最好的體驗。 08/06 21:07
→ leicheong:和修改的東西都攤開到hidden control內, 在user action 08/06 21:08
→ TonyQ:有另一票的玩家則認為他們可以犧牲一點細節,但他們希望能重 08/06 21:08
→ TonyQ:用邏輯,或者是加速他們的開發效率(犧牲細節來方便包裝util 08/06 21:08
→ leicheong:用$.ajax()的data參數控制只回傳這動作需要知道的東西. 08/06 21:08
→ TonyQ:.net當年的 form submit 走得其實就很有這味道。 08/06 21:09
→ TonyQ:leicheong , 其實你說的並不violate 我說的 b.iii XD 08/06 21:09
→ TonyQ:甚至我覺得我們在這點上作得相當好。:P 08/06 21:09
→ leicheong:我想對大型網站來說還是一開始算清楚點好, 實在沒有多少 08/06 21:11
→ TonyQ:透過元件化你才能有效封裝操作 08/06 21:11
→ leicheong:浪費系統資訊的餘裕呢... :P (照需求來說) 08/06 21:12
→ TonyQ:那效果會比自己寫ajax 來得好很多,他封裝的單位會更細。 08/06 21:12
→ TonyQ:這倒是。 08/06 21:12
→ TonyQ:其實我覺得有機會應該要來討論一下元件封裝這件事,我在 08/06 21:13
→ TonyQ:這件事情上已經做了快一年了,有很多在js/server side 合作 08/06 21:13
→ TonyQ:我覺得很值得一談的東西。 08/06 21:13
→ TonyQ:元件封裝在web 上是個不容易成功的案例,因為它需要一起綁定 08/06 21:16
→ TonyQ:server side跟client side 。 08/06 21:16
→ TonyQ:目前最成功也最廣為人用的元件應該是 ckeditor 08/06 21:16
→ TonyQ:再來就是pure client 的 solution , ex. extJS 08/06 21:16
→ TonyQ:元件封裝對維護是件好事 對效能要看你有多要求。 08/06 21:17
→ TonyQ:嘖嘖 這樣寫很像有我在推銷我家產品的感覺 -3-;; 08/06 21:19
→ TonyQ:不過本來作產品的就會對自家產品有認同敢 哈哈 沒辦法 :P 08/06 21:19
→ TonyQ:還是覺得有機會的話應該來作一下案例探討,這塊很有趣。 08/06 21:20
推 lovdkkkk:元件封裝一個難點在修改 尤其有需要改動到生命週期的話 08/06 21:25
→ lovdkkkk:某些用純servlet很簡單的事 會拆拆解解到抓狂 08/06 21:26
→ TonyQ:是啊 這考驗元件設計者的功力 08/06 21:27
→ TonyQ:另一個就是學習曲線的問題 元件的學習曲線一定比serlvet高 08/06 21:27
→ TonyQ:這沒辦法。 08/06 21:27
→ TonyQ: *servlet 08/06 21:27
→ TonyQ:不過我覺得元件封裝 跳下來作的人實在太少了 所以還沒有 08/06 21:28
→ TonyQ:好的 pattern 累積下來,我現在公司的例子算是還可以了。 08/06 21:28
推 lovdkkkk:不過這就是所謂的 spec...用以前要k熟再... (倒 08/06 21:28
→ TonyQ:至少我寫 javascript 也這麼久了,對這個 pattern 還蠻滿意 08/06 21:28
→ TonyQ:講到元件封裝,我想到幾個糟糕例子,JSF/portlet.. 08/06 21:29
推 rex1224:.net 還有該死的生命週期問題....Orz 08/06 21:37
推 leicheong:我覺得用ajax後.NET生命週期的重要性淡化了許多. 08/06 22:25
→ leicheong:因為那些HTML element和grid都是等page載入完成後再 08/06 22:26
→ leicheong:pull data去更新的... :P 08/06 22:26
→ andymai:淡化?還是要看需求和行為吧... 08/06 22:31
推 atpx:很清楚的觀念, 原po專業不推不行 08/07 00:22
推 leicheong:或者這樣說吧... 因為現在都是由client-side的script 08/07 23:01
→ leicheong:呼叫生成child control, 不像以前「一體成型」時要求 08/07 23:02
→ leicheong:每個control render順序都想得清楚. Viewstate我都拆開 08/07 23:03
→ leicheong:成幾塊自己包了, Save/LoadViewstate的先後也沒甚麼 08/07 23:04
→ leicheong:影響了... 08/07 23:04
→ prag222:viewstate那種東西不是內建的嗎=_=? 08/12 21:53
→ leicheong:本來是. 但如果是因為需求要在一個webform放多於一個 08/13 14:44
→ leicheong:form control的組合, 而每一個組合需要persist的東西 08/13 14:45
→ leicheong:都不同的時候 (主要是為了serve custom control), 就要 08/13 14:46
→ leicheong:手動生出來了... :P 08/13 14:46