2009年3月12日 星期四
Microsoft Visual Studio 2008 Express Edition - 繁體中文
下載詳細資料: Visual Studio 2008 Express 版 SP1
下載詳細資料: .NET Framework 3.5 Service pack 1 (full package)
下載詳細資料: Windows Installer 4.5
2009年3月8日 星期日
程式語言中常用的命名法
CSS的命名:駱駝命名法,匈牙利命名法和帕斯卡命名法
駱駝式命令法:
正如它的名稱所表示的那樣,是指混合使用大小寫字母來構成變量和函數的名字。例如,下面是分別用駱駝式命名法和下劃線法命名的同一個函數:程序代碼
printEmployeePaychecks();
print_employee_paychecks();
第一個函數名使用了駱駝式命名法,函數名中的每一個邏輯斷點都有一個大寫字母來標記;第二個函數名使用了下劃線法,函數名中的每一個邏輯斷點都有一個下劃線來標記。
駱駝式命名法近年來越來越流行了,在許多新的函數庫和Microsoft Windows這樣的環境中,它使用得當相多。另一方面,下劃線法是c出現後開始流行起來的,在許多舊的程序和UNIX這樣的環境中,它的使用非常普遍。
匈牙利命名法:
廣泛應用於象Microsoft Windows這樣的環境中。Windows 編程中用到的變量(還包括宏)的命名規則匈牙利命名法,這種命名技術是由一位能幹的 Microsoft 程序員查爾斯- 西蒙尼(Charles Simonyi) 提出的。
匈 牙利命名法通過在變量名前面加上相應的小寫字母的符號標識作為前綴,標識出變量的作用域,類型等。這些符號可以多個同時使用,順序是先m_(成員變量), 再指針,再簡單數據類型,再其它。
例如:m_lpszStr, 表示指向一個以0字符結尾的字符串的長指針成員變量。
匈牙利命名法關鍵是:標識符的名字以一個或者多個小寫字母開頭作為前綴;前綴之後的是首字母大寫的一個單詞或多個單詞組合,該單詞要指明變量的用途。
帕斯卡(pascal)命名法:
與駱駝命名法類似。只不過駱駝命名法是首字母小寫,而帕斯卡命名法是首字母大寫,如:程序代碼
DisplayInfo();
string UserName;
二者都是採用了帕斯卡命名法。在C#中,以帕斯卡命名法和駱駝命名法居多。
簡單的說引用內容
MyData 就是一個帕斯卡命名的示例
而myData是一個駱駝命名法,它第一個單詞的第一個字母小寫,後面的單詞首字母大寫,看起來像一個駱駝
而iMyData是一個匈牙利命名法,它的小寫的i說明了它的型態,後面的和帕斯卡命名相同,指示了該變量的用途.
匈牙利命名法
有關匈牙利命名法的一點有意思的說明是它的名字的由來。這種命名技術是由一位能幹的 Microsoft 程式員查爾斯·西蒙尼(Charles Simonyi) 提出的,他出生在匈牙利。在 Microsoft 公司中和他一起工作的人被教會使用這種約定。這對他們來說一切都很正常。但對那些 Simonyi 領導的項目組之外的人來說卻感到很奇特,他們認為這是死板的表達方式,甚至說代有這樣奇怪的外觀是因為它是用匈牙利文寫的。從此這種命名方式就被叫做匈牙 利命名法。匈牙利命名法關鍵是:標識符的名字以一個或者多個小寫字母開頭作為字首;字首之後的是首字母大寫的一個單詞或多個單詞組合,該單詞要指明變數的用途。匈牙利命名法中常用的小寫字母的字首
但 是在任何情況下,都硬性規定使用匈牙利命名法是迂腐的。尤其是 Unix 程式設計,在使用沒有變數名、關鍵字自動補齊功能的編輯器,如 vi 下,去敲入大小寫混合的變數名是痛苦的。其實只要注意兩個原則:1) 含義清晰,不易混淆; 2) 不和其它模組、系統API的命名空間相衝突即可。
1.有意義的為變數名、巨集名加上本模組的關鍵字,就不至於和其它模組、系統API的命名空間相衝突;例如: 巨集的名稱過短,如:DEBUG; 或_DEBUG,很可能和別的模組,系統模組相衝突;
2.局部變數尤其是循環變數外,使用約定俗成的 i,j,k ,沒有問題;
3.巨集、常數、列舉enum,全部用大寫字母;
4.全域變數加上字首 "g",後面跟上首字母大寫的單詞;
2009年3月7日 星期六
40 個輕量級 JavaScript 庫 (下)
流行的 JavaScript 庫不勝枚舉,jQuery, MooTools, Prototype, Dojo, YUI。這些 JavaScript 庫功能豐富,加上它們的插件,幾乎能勝任任何工作,然而這是有代價的,這些庫往往導致你的網頁尺寸臃腫。在某些場合,如果你只想完成特定的工作,可以使用 一些功能更專一的輕量庫,本文介紹了40個非常出色的輕量級 JavaScript 庫。
這是本文的第二部分,第一部分參見40 個輕量級 JavaScript 庫 (上)。
5. 字符串與數學函數
Date.js
和日期打交道不是件容易事,有很多格式要處理。Datejs 可以很好地處理簡單或複雜的日期函數。可以將日期解析出諸如「Next thursday」,「+2 years」一類的格式,也支持所有日期形式,如 2009.01.08, 12/6/2001。
Sylvester
一個處理矢量和點陣的數學 JavaScript 庫,包含多維矢量和點陣建模類,以及在3D空間的一些模型。
Pretty Date
一個很出色的 JavaScript 庫,用一種很漂亮,很友好的方式顯示日期,如下圖所示。
XRegExp
JavaScript 中的 RegExp 對象已經支持正則表達式,XRegExp 增加了更多未來瀏覽器可能包含的功能(ECMAScript 4 - ES4)。該庫對 RegExp 對象進行緩存,重用並增加了眾多新功能。
JavaScript URL Library
一個用來處理 URL 的 JavaScript 庫,可以對 URL 中的任意部分進行處理。
6. Fonts
typeface.js
這個庫可以讓你在網頁中使用任意字體,但和 sIFR 以及 FLIR 這些基於 Flash 的方案不一樣,typeface.js 100% 基於 JavaScript,只需將你的字體文件上傳到一個基於 Web 的生成器那裡,再將生成的 JavaScript 文件下載回來包含到網頁中即可。
Cufón
和 typeface.js 很相像,Cufón 也可以讓你在網頁中使用任意字體,同樣,它也是使用一個生成器,將字體轉換成 VML,將生成的 .js 文件包含到網頁即可。
7. 調試與記錄
Blackbird
人們經常使用 Alert() 調試 JavaScript 程序,Blackbird 提供了一個漂亮的控制台記錄,查看,過濾程序的運行。
NitobiBug
基於瀏覽器的跨瀏覽器 javaScript 對象記錄與檢查工具。
Firebug Lite
目前最好的 JavaScript 調試工具非 Firebug 莫屬,然而該工具只支持 FireFox,將 Firebug Lite .js 文件插入你的網頁,就可以在所有瀏覽器都實現 FireBug 功能。
8. 其它
swfobject
這是一個最受歡迎的對 Flash 對象進行引用的方法。可以生成標準 swf 引用代碼,並探測用戶播放器版本。如果用戶版本不支持,會顯示備用內容。
sorttable 與 dragtable
不管你喜歡與否,table 仍然是最好的表現數據的方式,但可以更好地利用。sorttable 可以讓表格數據排序,只需在 table 上加一個 class="sortable" 標誌,還可以排除指定的欄。dragtable 讓表格的欄可以拖動,在表格上加上 class="dragable" 標誌即可,這兩個類可以結合起來使用,只需加上 class="sortable dragtable" 即可。
DD_roundies 與 DD_belatedPNG
DD_roundies 可以不依賴圖片實現圓角功能,只面向 IE, 通過 VML 實現,其它瀏覽器會被略過,因為那些瀏覽器本身支持 CSS 圓角。
DD_belatedPNG 是為瞭解決 IE6 對 PNG 支持不好問題而開發的,不管 PNG 圖片用於 src 還是 background-image,DD_belatedPNG 都能提供修補。
Custom JavaScript Dialog Boxes
一個只有 4.5K 的輕量 JavaScript 庫,可以創建用戶定製對話框,可顯示4種類型的消息框,alerts, warnings, prompts, success。可以設定消息框標題,內容,以及過多長時間顯示。
GameJS
GameJS 是微軟的 XNA 遊戲框架在 JavaScript 上的移植,使用 canvas 對象作為輸出設備。JavaScript 不是最佳遊戲平台,但對那些幀率較低的遊戲也沒有問題。
Shortcuts.js
從 Google Reader 和 Gmail 開始,Web 程序中的快捷鍵開始流行起來。Shorcuts.js 讓快捷鍵的處理變得簡單。
Mapstraction
有不少地圖提供商都提供不同 API,如果你要更換提供商,比如從 Google Maps 到 MapQuest,需要更新代碼,Mapstraction 提供了常用地圖提供商的 API,只需該一行代碼就能完成轉換。
Amberjack
一個只有 4K 的微型 JavaScript 庫,可以為你的網站添加漂亮的教程功能,一個模式窗口會以教程的形式顯示任意內容,教程中的步驟可以通過手工編碼實現或在線自動生成。可以使用主題或 CSS 控制內容的格式。
JsLoad
JsLoad 可以從 Google server 遠程加載各種 JavaScript 庫,可以自動加載各種版本的支撐庫。
本文國際來源:http://www.smashingmagazine.com/2009/03/02/40-stand-alone-javascript-libraries-for-specific-purposes/
中文翻譯來源:COMSHARP CMS 官方網站
40 個輕量級 JavaScript 庫 (上)
流行的 JavaScript 庫不勝枚舉,jQuery, MooTools, Prototype, Dojo, YUI。這些 JavaScript 庫功能豐富,加上它們的插件,幾乎能勝任任何工作,然而這是有代價的,這些庫往往導致你的網頁尺寸臃腫。在某些場合,如果你只想完成特定的工作,可以使用 一些功能更專一的輕量庫,本文介紹了40個非常出色的輕量級 JavaScript 庫。
這是本文的第一部分,第二部分請參閱40 個輕量級 JavaScript 庫(下)。
1. 表單相關
wForms
一個低調的開源項目,簡化了絕大多數常用 JavaScript 表單功能,包含可以直接使用的表單驗證功能,另外,還包含強大的表單同步以及表單條件判斷功能。
Validanguage
又一個低調的 JavaScript 表單驗證框架。它擁有集成邏輯,一些設置可以針對全局,單個表單或單個對象。提供兩個API,集成 AJAX 支持,緩存,以及回調函數。它提供類似 HTML 的 API 語句,以及面向對象的 JavaScript API 。
LiveValidation
一個輕量的表單驗證庫。除了傳統的驗證功能,還提供實時驗證,可以一邊輸入一遍驗證。Ruby on Rails 用戶可能會發現這個庫非常好用,因為他們的命名規則和參數十分近似。該庫既有獨立版本,又有一個 Prototype 版本。
yav
一個強大,靈活,可擴展的表單驗證庫。支持各種場合,從簡單的如日期,電子郵件地址以及整數的驗證,到複雜的,如正則表達式。內置 AJAX 支持,輸出的錯誤消息可以定位到對象級。
qForms
處理表單的整套方案。功能包括各種驗證規則,防止多次發佈的機制,以及鎖定或解鎖制定輸入框。
formreform
不基於 table 的多欄設計向來是一個挑戰。這個微型庫將傳統的表單變成漂亮的多欄形式。
2. 動畫相關
$fx()
一個用來讓 HTML 對象運動的輕量庫。你可以在一個時間軸上改變任何 CSS 屬性,對於複雜動畫,你可以將各種效果結合起來,將對象分組,讓它們並行運動。
JSTweener
一個生成中間幀的 JavaScript 庫,它的 API 類似著名的中間幀引擎 Tweener。你可以指定動畫時間,定義切換效果以及時延。在幾乎任何點都可以觸動事件。
Facebook Animation
一個強大的,用來創建可定製的,基於 CSS 的動畫。在 Facebook 動畫中,幾行代碼就可以改善 UI。語法和 FBJS (用於 Facebook 的庫)一樣。
FX
一個語法類似 YUI 的輕量 JavaScript 庫,可以為幾乎任何 CSS 屬性創建中間幀。支持顏色和滾動動畫,為對象設置 to 和 from 值就可以了。
3. 視覺與圖形效果
JS charts
支持柱狀圖,圓餅圖以及簡單的曲線圖。直接將這個庫插入網頁,然後從 XML 文件或 JavaScript 數組變量調用數據。PNG 格式,兼容所有主要瀏覽器。
Canvas 3D JS Library (C3DL)
C3DL 使 3D 程序的編寫變得簡單。提供一套數學,場景與 3D 對象類,可以直接在瀏覽器中開發 3D 內容,不需要很深的 3D 知識。
Processing.js
這是 Processing 語言在 JavaScript 的移植。2D輸出功能豐富。提供了繪圖,色彩處理,字體,對象等處理函數。
Rapha?l
一個讓人驚嘆的 JavaScript 庫,可以在 Web 上實現矢量圖。使用 SVG, VML 創建的圖形可以被更改或綁定事件。功能極其豐富,包括旋轉,動畫,縮放等。
ImageFX
該 JavaScript 庫為圖片添加效果,如虛化,銳化,浮雕,加亮等。ImageFX 使用畫布對象實現這些效果,兼容所有主流瀏覽器。這個庫非常容易使用,只要將 .js 庫文件插入網頁,調用那些函數即可。
Pixastic
Pixastic 使用 HTML5 畫布對象,允許對原始像素進行操作。效果包括去飽和度,灰度級,反轉,亮度,對比度調整,色調,飽和度調整,以及浮雕,虛化等效果。因為用到了 HTML 5 的畫布對象,因此還無法兼容所有瀏覽器。
Reflection.js
一個很低調的 JavaScript 自動實現倒影效果。倒影的高度,透明度可以調整。支持所有主流瀏覽器,文件尺寸小於5K。
4. 數據庫
Taffy DB
一個 JavaScript 庫,可以看作瀏覽器中的 SQL Server,或高級數組管理器。在使用了 AJAX 的程序中,可以用作數據庫層,可以創建,讀取,編輯,刪除數據,使用循環,排序以及高級查詢。
ActiveRecord.js
這個庫支持 Google Gears 以及 Chrome,Aptana Jaxer, Adobe AIR 以及任何支持 HTML 5 SQL 細則的平台(目前有 Webkit 以及 iPhone)。可以自動創建表,驗證和同步數據。
本文國際來源:http://www.smashingmagazine.com/2009/03/02/40-stand-alone-javascript-libraries-for-specific-purposes/
中文翻譯來源:COMSHARP CMS 官方網站