新着情報

[2014-05-10] AdLint 3.2.14 を公開しました

>> 詳細を見る

オンライン試用サイト "AdLint PAD" は公開終了しました

AdLint とは

AdLint (アドリント) は、オープンソースで無償のソースコード静的解析ツールです。

AdLint は、ソースコード中の信頼性や移植性に欠ける部分について警告メッセージを出力し、また、同時にさまざまな品質メトリクスを測定することができます。

活用事例の一部は、スクリーンショットで確認してください。

AdLint は、(現時点では) ANSI C89 / ISO C90 / 一部 ISO C99 規格に準拠した C 言語のソースコードを解析することができます。

AdLint は Ruby で実装されているため、Windows、Mac OS X、GNU/Linux、FreeBSD など Ruby がサポートする全てのプラットフォームで利用することができます。

特徴 (クリックで展開)

不具合となる可能性のあるコードをメッセージで警告可能

ソースコード内の信頼性や移植性に欠ける部分に、問題を指摘する警告メッセージを出力することができます。

AdLint 3.2.14 では 720 種類の警告メッセージに対応しています。

詳しくは、利用者ガイドの 6 メッセージ一覧 をご参照ください。

コードの複雑度などの品質メトリクスを測定可能

サイクロマティック複雑度、推定静的パス数、デッドコードとなる文の数など、ソースコードの品質メトリクスを定量的に測定することができます。

AdLint 3.2.14 では 15 種類の品質メトリクスに対応しています。

詳しくは、利用者ガイドの 7 メトリクス一覧 をご参照ください。

コードの構造情報を抽出可能

インクルードによるファイル間の依存関係、関数呼び出し / グローバル変数のアクセスによるモジュール間の依存関係、型やオブジェクトの定義情報など、ソースコードの内容を要約した構造情報を抽出することができます。

AdLint 3.2.14 では 14 種類のコード構造情報に対応しています。

詳しくは、利用者ガイドの 8 コード情報一覧 をご参照ください。

Adqua と連携してソフトウェアの品質を定量的に評価可能

Adqua は、ソフトウェアのソースコード品質を定量的に評価するツールです。

AdLint の出力結果を Adqua で処理することで、ソースコード品質を可視化して、実装レベル / 設計レベルにおける問題発見や品質改善に活用することができます。

Adqua は、株式会社オージス総研 から入手可能です。 詳しくは Adqua 製品情報 をご覧ください。

全関数の全実行パスを評価する抽象インタプリタを搭載

抽象インタプリタにより AdLint は、開発者がプロジェクト中の全関数を綿密にコードレビューすることと同等のチェックを自動化することができました。

AdLint が持つ抽象インタプリタは、1 パスの解析処理で関数毎にデッドコードを除くすべての実行経路を評価することができます。

>> 更に詳しく見る

解析結果を標準的なフォーマットのテキストファイルとして出力

AdLint は、利用者ガイドに記載されるオープンな仕様のテキストファイルとして解析結果を出力します。

したがって、AdLint の解析結果を利用する開発支援ツールなどを自由に作成することができます。

詳しくは、利用者ガイドの 5 出力仕様 をご覧ください。

また AdLint は標準的なビルドツールと同様のコマンドインタフェースを持つため、統合開発環境やテキストエディタなどへ組み込んで使用することができます。

進化する自由なオープンソースソフトウェア

みなさまからのフィードバックにより AdLint は更なる進化を続けます。

ライセンス

Copyright © 2010-2014, OGIS-RI Co.,Ltd.

AdLint is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

AdLint is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with AdLint. If not, see <http://www.gnu.org/licenses/>.