我總結了一下,總的走向就是更加的Web化,比如Webform的Tag的ID可以控制了,MVC將成為主流,C# 4.0更加向動態語言靠,甚至引入了一個dynamic的關鍵字。
這些基本和我的預期相符合。其實都指向一個理念。Web的本質是文檔。
以前有網友對我的所謂“文檔化”理念提出疑問。因為我一直認為理念和戰略思想可能在一開始就決定了成敗。感覺有必要探討一下,或許可以給大家提供一個新的視角。
我盡可能羅列結論,略去推導過程,節省大家的時間。
首先,Web本質是文檔,或者說更傾向于文檔化。我對文檔和應用的區分標準是,文檔更傾向于讓人理解,應用更傾向于讓機器理解。
WEB的三個要素已經產生了,就是3位一體的HTML+CSS+Javascript
這個三角形結構已經愈發成熟愈發穩定愈發強大了。也許第四類要素也顯出雛形了,就是語義要素,需要的只是時間吧。
任何試圖忽略,取代這三個要素中的任何一個都是一個危險的企圖。
(一個最典型的這樣的嘗試就是asp.net webfrom,居然可以同時屏蔽和封裝這三個要素,而asp.net mvc則是一種回歸,我對asp.net webform的最新理解是,一個使用Web技術的Windows應用。而Asp.net mvc才是更接近web的本質)。
HTML是一種文檔。
CSS是一種變換,它的最大特點是在它變換HTML的時候不會改變HTML的拓撲結構,或者說是DOM結構。
Javascript也是一種變換,它可以改變HTML的拓撲結構,或者是DOM結構
(信息科學的本質是數學,用數學的觀點看待問題,有的時候就會變得很清晰)
HTML文檔的最大特點是自我解釋性,這是互聯網的特性決定的,因為互聯網就是最大程度的交流。如果你開發了一個應用,試圖“封裝”,或者“替代”HTML,那么可能會在做一件蠢事。因為你的應用沒有自我解釋性,也許你要配一個詳細的文檔,教程,或者其它什么東西來解釋你的應用,而且還須要用戶能正確理解這種說明和解釋。這就違背了Web了精神,分享的精神。
那CSS為什么也不能被繞過呢?因為它和HTMl配合的最好,和HTML之間屬于松散型耦合,通過長期演化,已經接近完美了。現在甚至發展出了,MicroFomats這樣的賦予語義的css標準,或許這是邁向語義網的一個途徑呢?who knonws?
Javascript呢?很多.Net程序員不熟悉JS,不是也過得好好的嗎?我在想,也許好日子到頭了。Javascript的地位將不會被削弱,而可能是大大加強。
CSS的成熟,導致了Div+CSS的開發方式的流行,而由于Firefox和AJax的流行,將近一步加強這3大要素的地位。相信多用用firebug可能對此有更深感受。Jquery的出現更是大大降低了JS開發難度。設想一下這樣一個Firebug版本,在你發出一個Ajax請求 的時候,你看到了一個Response到達你的瀏覽器,可以看到一個Json數據結構是如何改變你的DOM,不但可以設置斷點,更為神奇的是DOM改變過程居然可逆。在C#程序中,設置一個斷點,然后到了這個斷點以后倒退著執行,能辦到嗎?也許要到C# 7.0了。但是,DOM可以,因為它是文檔。只要建立快照就可以了。會不會有Transactional DOM出現呢?
HTML是拓撲結構,是第一性,Javasript是一種變換,屬于第二性。
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈