台灣最大程式設計社群網站
線上人數
1203
 
會員總數:245253
討論主題:189111
歡迎您免費加入會員
討論區列表 >> 心情甘苦談 >> .net元件與html 元件的差異
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
.net元件與html 元件的差異
價值 : 500 QP  點閱數:7176 回應數:11

樓主

小石頭
中級專家
4065 117
5124 1260
發送站內信

捐贈 VP 給 小石頭
小弟的工作是一個寫網站的小小工程師 使用軟體/語言 vs2010/asp.net(vb)
最近換了新單位~前輩對著我們新人說,開發專案時盡量不要用 .net 元件
原因好像是效能不好?(不確定) 希望我們開發專案時,前端介面全是html元件
連.net gridview 都覺得不好用改用jqGrid ,心裡一直有個疑問,這樣不就
回到寫ASP沒什兩樣,只是開發軟體用VS 而已,真的.NET 元件效能有如此的
差嗎? 差到需要使用HTML 元件來寫,還是另有其它的原因,我並不是排斥,
只是想得到一個合理的答案,所以想請教小鋪前輩們各方的意見,對這件事的看
法。 點數不是重點,只希望各位前輩們給點自已的意見而己。   謝謝

本篇文章發表於2012-10-19 11:08
== 簽名檔 ==
人一生~~省吃儉用 只為了一個.......(貨櫃屋) 
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

Pan01
檢舉此回應
1. ASP.NET 元件 必較適合 在 IE 瀏覽器 顯示

某些元件 在 不同的 瀏覽器 容易出現 版面錯亂 ,

為了要調整 這些版面 的 CSS , 你 就要 花很大的功夫.

=============

2. ASP.NET 的 元件 都會 有存放在網頁上的 ViewState 的資料 , 會造成 網頁 容量 大增 , 傳輸效能大減.
尤其是 GridView , ListView

雖然 , 是可以 關掉ViewState , 但是 卻會喪失 元件 所提供的某些功能.

============

3. 目前 AJAX 的 使用 可以說是 主流了.
為了 減輕 傳輸的資料量 , 好的 設計 都是傳輸 JSON 格式的 純資料 ,
於 Client 端 再用 JavaScript 建構 顯示的 頁面 Layup.

所以 可以 說 AJAX 的重點 是 在 Client 端的 JavaScript .

因此, 大量使用 前端 的 UI元件 ( 如 JQ UI 元件) , 也是很正常的.
本篇文章回覆於2012-10-19 11:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
不錯的參考

Allen
捐贈 VP 給 Allen 檢舉此回應
前輩有沒有教你javascript 變數名稱取短一點以減少流量呢?(太龜毛了, 對吧)
有沒有跟你說網頁裡只要少一張圖就可以少數KB呢?(加一張圖,增加的流量也許就比viewstate大多了)
有網站是對外,有的網站是對內, 有的重效能,有的比較不重視
由於方法有很多, 所以每個人會因為考量不同採用不同的做法, 建議你可以去問問原因, 若有興趣可以真的實作來比較看看, 就會有答案
本篇文章回覆於2012-10-19 13:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

純真的人
捐贈 VP 給 純真的人 檢舉此回應
.net提供的元件不是不好,是因為他提供太過便利的範例,造成垃圾碼一堆以及活用性變少。

雖然我是從asp時代活過來的老人,但習慣看到乾淨的程式碼(前端生成的網頁),自然對asp.net提供的方式略有不滿。

但我個人習慣就是前端網頁都要很乾淨,沒有多餘的程式碼載入(含jq特效)。

我還是習慣去算一下載網頁的速度考慮...
本篇文章回覆於2012-10-19 14:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
不錯的參考

神來之筆
捐贈 VP 給 神來之筆 檢舉此回應
如果你老闆覺得開發時間不是很 care, MVC的方案使用jqGrid
是不錯的方案,
但很多東西要自行控制, 沒寫好是另一個災難
本篇文章回覆於2012-10-19 15:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
不錯的參考

香帥
檢舉此回應
.net 元件會愈來愈新,多會要求ie更換新版
像我們公司數十個系統,有些系統用了.net元件,就一定要求ie要換為8.0以上,
但某些系統還只能在ie6下執行,換了ie8就不能執行
就會產生各系統之間的矛盾,很難去解決
因此若是簡單的網頁填表資料,前端都是簡單的是html元件就可以
那他支援的廣度就會比較大,比較沒有版本的問題
不過有一些.net元件是相當好用,魚與熊掌是不可兼得,
但主要條件,是前端的使用者都能用是最要緊的,使用者不會管您是用哪個元件
只要速度與正確都在合理的範圍內,都可自行運用自己想用的元件
本篇文章回覆於2012-10-19 21:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

Allen
捐贈 VP 給 Allen 檢舉此回應
>>像我們公司數十個系統,有些系統用了.net元件,就一定要求ie要換為8.0以上
請問您是用哪一個控制項無法在ie8以下執行?
本篇文章回覆於2012-10-19 21:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
不錯的參考

KKBruce
捐贈 VP 給 KKBruce 檢舉此回應
我同意2F的說法,沒有"絕對"的好壞。

用控制項,是比較吃伺服器資源。
用腳本,是比較吃用戶端資源。

如果你要開發html5好了,那根本沒有控制項可用,你會說,那和寫ASP有什麼不一樣嗎?
用你的想法,那麼,寫JavaScript、寫CSS又和寫ASP有什麼不一樣?
又如4F說的MVC,你寫寫看,你也會問,那和寫ASP有什麼不一樣?

把ASP忘了吧,那是業障。尤其是看到SQL Injection時,細問下,都是寫過ASP害的。XD
本篇文章回覆於2012-10-19 23:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
不錯的參考

mark shu
捐贈 VP 給 Mark Shu 檢舉此回應
聽聽就好
那是因為你待在公司內工作 有主導權的人說什麼好就是好
沒也絕對的好 也沒有絕對的壞
那要看很多點...看誰能主導技術 誰能主導專案 誰有權力..或是這個客戶想不想要繼續合作而已..

老王賣瓜 誰能不自賣自誇
因為自己的工作類型 是長期在各客戶端駐點工作
因此 往往底層或開發架構 是依照客戶的想法去建構
但是 那些都不是小公司
而他們能主導技術的人 用的方式都完全不一樣
當你走多了 看多了
你自然會明白 什麼叫做好與不好
因為 客戶出錢 所以永遠都說他好 他的架構最英明
遇過的客戶沒有用同樣的開發架構的
每個都說自己的開發架構多好
當然到客戶端 也只能當客戶解釋完他的架構後 替他鼓鼓掌
難道還能兔草他 或糾正他 ...當然是不能的 除非純心要得罪這客戶...

之前在某園區的某公司 客戶說什麼爛LINQ 還有EF..他們用STRONGLY TYPED TABLE APAPTER
結果工作到個段落 去到另一家客戶 客戶說 什麼強型別TABLE ADAPTER...他們堅持用.NET2003開始就有的DATASET和DATATABLE,並且說這架構是MICROSOFT某知名講師建議的架構...弄什麼ORM 弄什麼強行別...
又到了下一家客戶 結果他要用LINQ TO SQL...並且大力的批評傳遞DATASET或傳統的回傳強行別或弱型別的DATATABLE的方式..

到底什麼最好...當然是能滿足客戶的想法的做法 就是最好
技術不是用來伸張正義的 是用來解決問題 和賺錢用的..
得罪了客戶 什麼技術都不是好技術
能滿足客戶 什麼技術都是好技術..

本篇文章回覆於2012-10-20 00:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

純真的人
捐贈 VP 給 純真的人 檢舉此回應
呵...總之公司政策、專案主導權、客戶要求為主吧~

那個最好或差異都不重要~畢竟全都是事在人為呀~_~!!

效能效率~網路文章~書本論點~參考就好~應用在現實碰到人為都沒什麼用~
本篇文章回覆於2012-10-20 01:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

小石頭
捐贈 VP 給 小石頭 檢舉此回應

非常感謝各位前輩的意見!

其實有試著去追問原因~但我就不在這裡細說了~~畢竟都是我單方面的說明,是不公平的
大家共識一個專案大家統一寫法,對於往後的維護是好的,我知道像.net GV 效能可能
沒有jqGV來的好,我非常認同(EX:分頁撈資料問題),但就像#4所說的對於進階功能如果
沒有相當熟悉度與把握都有可能對專案上的進度影響,另外連textbox 都希望用html的
寫法,這是我比較好奇的地方,不知道是不是希望元件都不要綁 tag = asp ex:<asp: xxxx
不知道是不是這個原因,對於MVC 比較好規劃。因為我本身沒接觸過MVC 所以這點需要去
研究查證!

我知道沒有絕對好壞與對錯~只是當下丟了一句令命心裡總覺的不舒服而已,所以才會上來問
一下大家見解與意見
#8 的文感觸很深 , 也謝謝各位意見



本篇文章回覆於2012-10-22 10:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
回應

mark shu
捐贈 VP 給 Mark Shu 檢舉此回應
MVC是一種設計系統的模式 和微軟沒任何關係
java或其他程式語言都可以設計實作
不是名稱取個MVC的技術 就才是MVC
從.NET2003開始就可以自己設計MVC的開發模式
另外更不是把程式碼包進HTML裡面 那就叫做MVC
一點關係也沒有
本篇文章回覆於2012-10-22 13:42
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.