<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 241,  comments - 116,  trackbacks - 0

    靜態代碼分析,在Windows平臺上長期受到忽視,近幾年卻變得越來越重要。靜態分析重新獲得關注,始于一款Microsoft內部的工具—— FX Cop,由于它非常受歡迎,所以微軟將其公開發布。在Visual Studio 2005中,FX Cop作為Visual Studio團隊開發版的一部分集成到該IDE中。

    帶有附加功能或免除單元測試需要的第二代工具正在研發當中,包括.NET4的Code Contracts和自主研發的NStatic。

    托管代碼并不是唯一獲得關注的領域。Ubitsoft公司正對T-SQL應用相同的技術。隨著數據庫增長,封裝在T-SQL中的業務邏輯數量變化相當明顯,有時候甚至在重要性方面勝過普通代碼。要協助管理這一情況,Ubitsoft公司創建了SQL Enlight。我們就此和他們的開發主管Iliyan Stoyanov進行了溝通。

    這是個相當新穎的產品,你可以給我們一些關于SQL Enlight如何誕生的背景嗎?

    我們設計SQL Enlight作為T-SQL管理和反射工具,但由于我們需要更多的時間來實現心中的所有想法,所以決定先發布T-SQL重格式化功能,稍后逐步來添加新功能。

    你決定對Transact-SQL腳本分析提供支持是基于哪一點考慮呢?

    從本項目開始,該分析功能就是我們其中一個目標,但我們決定推遲它的發布,直到我們完成T-SQL語法分析器擴展為止,它支持新的SQL Sever 2005 T-SQL語法。

    你如何決定給分析添加哪些規則呢?

    我們實現的分析規則基本上來自互聯網找到的提示和實踐,或者來自SQL Enlight用戶提交給我們的分析規則請求。

    你們的技術支持提到過你正研發一個新版本,它會對整個數據庫進行分析??梢越o我提供一些關于它的信息嗎?

    是的。我們正研發新的1.6版本,它將是我們SQL Enlight1.x版本的里程碑。該新版本會包含兩項重要特性——創建自定義分析規則功能和支持在數據庫上運行分析。我們也打算包含命令行工具和MsBuild任務。

    SQL Enlight當前版本支持這些分析規則。

    設計

    • 包括NULL常量在內的相等和不等比較
    • 非ANSI外部聯接語法
    • 非ANSI內部聯接語法
    • 過時的語法,字符串_別名=表達式
    • 在執行數據操作語句(像INSERT/UPDATE/DELETE)之后,使用TRY..CATCH結構或者檢查該@@ERROR變量
    • 在存儲過程、視圖和表值函數中支持SELECT *
    • 使用SCOPE_IDENTITY()替換@@IDENTITY
    • 支持ORDER BY子句中使用常量已經過時
    • TOP子句用在不帶ORDER BY子句的查詢
    • 在INSERT語句中總是使用列的列表
    • 反對不帶WITH關鍵字的表提示用法
    • (聚集或非聚集)索引類型未指定
    • 避免使用GOTO語句來改善可讀性
    • 考慮使用括號來改善可讀性和避免由于邏輯操作符的優先級導致的錯誤。

    命名

    • 在命名函數的時候避免使用“fn_”前綴
    • 在命名存儲過程的時候避免使用“sp_”前綴

    性能

    • 變量@variable已聲明但從未使用
    • 變量@variable已使用但之前未分配
    • 變量@variable已分配但其值從未使用
    • 在LIKE謂詞中以“%”開始的模式
    • 考慮使用表變量來代替臨時表
    • 在觸發器中避免返回結果
    • 使用非常小的變量長度類型(大小為1或者2)
    • 在存儲過程和觸發器中使用“SET NOCOUNT ON”選項
    • 在WHERE子句中避免使用不等操作符(<>,!=)
    • 本地游標沒有關閉
    • 本地游標無明確釋放
    • 本地游標引用無明確釋放
    • 在WHERE子句的函數中避免封裝過濾列
    • 可以從WHERE子句中提取確定性函數調用,避免不必要的表掃描
    • 輸入參數從未使用
    • 輸出參數從未賦值
    • 在WHERE子句中避免使用“NOT IN”謂詞
    • 不要使用不帶聚合函數的“GROUP BY”子句
    posted on 2008-12-09 09:24 墻頭草 閱讀(1179) 評論(1)  編輯  收藏 所屬分類: 業界資訊
    人人游戲網 軟件開發網 貨運專家
    主站蜘蛛池模板: 国产国产成年年人免费看片| 无码中文在线二区免费| 亚洲国产精品激情在线观看| 亚洲七久久之综合七久久| 大地资源免费更新在线播放| 国产成+人+综合+亚洲专| 在线a级毛片免费视频| 亚洲欧美黑人猛交群| 日本特黄a级高清免费大片| 国产尤物在线视精品在亚洲| 亚洲AV无码不卡在线观看下载| 人人鲁免费播放视频人人香蕉| 亚洲精品国产福利一二区| 一级有奶水毛片免费看| 亚洲成a人片在线观看日本| 久久成人a毛片免费观看网站| 亚洲精品国产情侣av在线| 日本三级2019在线观看免费| 亚洲av无码成人精品国产| 亚洲精品麻豆av| 三年片在线观看免费观看大全一| 亚洲天堂一区二区| 国产又黄又爽又猛免费app| 色欲色欲天天天www亚洲伊| 国产亚洲精品久久久久秋霞| 久久国产乱子伦精品免费不卡| 亚洲性色成人av天堂| 国产真实伦在线视频免费观看| 九九九精品视频免费| 久久久久亚洲AV片无码下载蜜桃| 两个人的视频高清在线观看免费 | 亚洲精品在线免费观看| 91丁香亚洲综合社区| 亚洲av日韩片在线观看| 日本视频免费高清一本18| 亚洲永久网址在线观看| 久久精品国产精品亚洲| 天天影院成人免费观看| 理论秋霞在线看免费| 亚洲网站在线免费观看| 在线观看亚洲免费视频|