今天我大學的一位同學,向我求救一個問題,又是打電話,又是發資訊,再外加上郵件,我恍惚難道他又去大考了嗎?
作弊??後來才知道是在為公司做項目的時候遇到了一個很鬱悶的問題,我一聽很難嗎??為了大學哥們的情誼,
於是我放下了手中的活,準備幫他好好弄弄,於是我開啟郵箱看了一下,我傻了。。。。怎麼回事啊哥們,你和你們公司的程式員???
我把那個題目給大家貼上來,大家也來看一下:
<div>
<script type="text/javascript">
function InsertServer()
{
document.getElementById("getserver").innerHTML="<input id=/"Text1/" runat=/"server/" type=/"text/" />";
}
</script>
</div>
<div id="getserver">
</div>
相信大部分人可能已經看出來,我當時那不叫一個鬱悶,於是我又耐心的給我同學說,“用戶端怎麼能直接輸出伺服器控制項呢?”
我同學的回答是:“我以前就是這麼用的啊”,於是我暈乎,只能無奈的說,那你找找你以前的項目呢??
當然了,這隻是我生活中的一個例子,但是呢,我想通過這個簡單的例子來跟大傢具體的來探討一下,應該怎樣學習asp.net
往往在社會上有這樣一種現象:會拖幾個伺服器控制項,調用一下資料,就說自己是一位軟體工程師,我暈乎!
我想跟大家說的就是,無論我們做事情,都要看到它事務的本質,我想我們學程式也應該是這樣的,
我們不能在表面性的東西上停留的太九,我們要去深入的去探悉它,研究它!
從上面貼出的代碼大家可以看得出來,一個用戶端的事件(InsertServer())去輸出了一個伺服器控制項,
稍有點程式經驗的人,肯能都會說這是不可能的事情,從asp.net運行原理上來說,asp.net控制項只能是一個類的執行個體,
在呈現UI介面之前就是要進行初始化和編譯的,而用戶端的事件是隨著UI的程式而進行執行的,這樣一個很明顯的先後順序都看不出
那還能怎麼去做出一個優秀的項目來呢??
從上面的例子可以看出來,能犯那樣的錯誤,應該是沒有真正的理解asp.net啟動並執行真正原理!
當然了 ,上面只是一個說明性的例子,我希望大家以後再學程式的時候,多問幾個為什麼,多去探索它事務的本質 !
轉自:http://www.cnblogs.com/yeah/archive/2009/02/16/1391977.html