這是一篇從技術角度來說非常入門級的文章,別看到標題又是AJAX又是chat room,就以為用到了Atlas和HttpHandler之類復雜的東西,實際上他僅僅使用了XMLHttpRequest和Page。這就降低了讀者所需要跨越的技術門檻,即使你平常只是使用Page,而對XMLHttpRequest也僅有一點點的了解,也不會妨礙你閱讀這篇文章。
文章開篇第一段Introduction簡單介紹了項目的背景,作者說他最初設計聊天室是使用ASP,只放置了兩個文本框,并且采用每幾秒刷新一次的辦法。這聽起來非常“原始”對吧,不過我覺得正是“原始”的東西才能夠讓新手容易理解和模仿,然后他們才能一步一步做出更高級的東西來。
文章的第二段說明了sample的一些情況,例如他只有一個聊天室,用戶列表會隨用戶登錄和會話超時而改動。文章的第三段告訴你一些程式的特性,例如他創建了一個ChatEngine的類,這個類負責處理整個聊天室相關的邏輯,并且聲明其一個靜態實例于HttpApplication當中。
接下來文章會仔細說明這個聊天室的工作流,如果你有過制作聊天室的經驗,你能一邊對比著自己的經驗,一邊去理解文章的意思和其中的代碼。這個聊天室的sample雖然是用ASP.NET寫成的,但卻是混合則ASP和ASP.NET的寫作風格,然而又不至于讓人覺得雜亂無章,反而可能會讓你感覺到“簡單就好”的道理??有時候在ASP.NET中制作一個簡單應用,特別是非面向頁面的,用回ASP的面向流的方式思考也不錯。
怎么建立共識 (Building Consensus)
作者是Brad Abrams,文章第一句就說"One of the core skills of a Program Manager is to build consensus",也就是“程式經理的一項核心技能就是建立共識”。接著作者花了兩段的文字說明在Microsoft這樣的企業內部,建立共識是多么重要的一件事情,然后就開始列舉建立共識的方法了。
在文章中,作者共列舉了25種建立共識的方法,包括“請求幫助”、“寫下來”、“獲取數據”等等,每一個方法后面都有一小段文字幫你理解他的意思。你能先嘗試用自己的經驗去理解方法的名稱,然后再看看后面的說明是否和你想的一致。別忘記了,"not all of them work in every case, pick the ones that feel best for you and for the situation",也就是說“并非所有方法都在各種場合中適用,選擇那些讓你感覺到對你和對當前形勢最佳的方法”。
最后,作者還指出了3個會讓你無法建立共識的做法,分別是“祈求忽略”、“事件升級”和“來自高層的任務”。使用這個3種方法,通常會導致共識無法達成。
通過Flash替換法在頁面上顯示特定字體 (sIFR 2.0: Rich Accessible Typography for the Masses)
超值贈送部分又來了,這次提供的是個Flash+JavaScript的小工具,能夠讓你將頁面上特定區域(通常是標題)的文字用Flash替換掉,而好處當然是能顯示所有你想要的字體,因為Flash是能嵌入字體的。
需要下載此工具的話,能直接滾動到該文章的最后一部分找到下載鏈接。文章的中間部分解釋了他是怎么工作的:
一個普通的XHTML頁面加載到瀏覽器中。
一個JavaScript函數開始檢查是否安裝了Flash及搜索出你指派他處理的tag、id或class。
如果沒有安裝Flash,那就什么事情都不會發生。如果安裝了Flash,他就幫你遍歷你指派他處理的元素,測量他們當前的大小。
一旦測量完成,JavaScript就會在元素上創建一個相同大小的Flash覆蓋原本的文字,并將原本的文字通過Flash變量的形式傳入。
Flash中的ActionScript會按照你指定的字體繪制傳入的文字,從6點字體開始放大,直到他剛剛好填充滿Flash的大小。
|
新聞熱點
疑難解答
圖片精選