C++ Insights - See your source code with the eyes of a compiler.

C/C++の静的解析は、どう考えても大変なんだけどどう考えても需要が高いので、やはり色々なソフトウェアや事例があるようだ。まとまった情報が欲しいけど見つからなかったので自分の調べた範囲でまとめることにした。 他にも耳寄りな情報があったら教えてほしい。 静的解析を行うことができるソフトウェア 調べてみると結構たくさんある。それぞれの特徴とかあまりよくわからない。 (個人的には、とりわけ網羅的な形式的検証ができるツールの性能に興味があるので、それを中心に集めていたが、やはり網羅的とは限らないで探すともっとたくさん見つかるようだ。もちろん網羅性にはトレードオフがある) Frama-C …… C言語に形式手法を適用するための汎用のフレームワークで、静的検証のためのプラグインも多数(WPとかValueとか)存在する。網羅的な検証から発見的な手法、動的な手法まで様々ある。研究で使うのに便利そう Ast
Web からプログラミングのソースコードを実行できる Wandbox というサイトがあるんですが、それの API を利用してプログラミング環境がなくても CLI からソースファイルを実行する事ができる CLI ツールをつくりました。 インストール $ gem install wandbox ソースコード osyo-manga/gem-wandbox 使い方 wandbox コマンドを使用してソースファイルを実行したりします。 ソースファイルを実行する wandbox run <filename> で <filename> を Wandbox で実行する事ができます。 $ cat test.rb 5.times.each { |n| puts n } $ wandbox run test.rb 0 1 2 3 4 使用するコンパイラを指定する --compiler= オプションで使用するコン
Scrutinizerが凄い!! ScrutinizerというサービスがPHPの静的解析出来て凄いというスライドを読んで試しに使ってみたら思いの外すごかった。 公式サイトURL https://scrutinizer-ci.com/ スライドの記事 http://www.slideshare.net/hinakano/scrutinizer-ciphp オープンソースのリポジトリ(publicリポジトリ?)なら無料で利用出来るようです。 静的解析が優秀! Scrutinizerでは初期設定の段階で、php-sim、pdepend、php-analyzerツールが有効になっています。 これらツールの他に設定で、 PHP Code Sniffer PHP Change Tracking Analyzer PHP CS Fixer PHP Mess Detector Security Advis
やんごとなき事情(汗)から、自分が作成して端末にインストールしていたapkから、Javaソースコードを復元する必要に迫られたので、作業メモ。 最終的には、javaファイルは生成されていないが、コピペして元のプロジェクトに入れつつ、コメントを戻したりGOTO文wを直したりして復元完了(予定)。 注意事項 これはいわゆる「リバースエンジニアリング」と言われる手順です。 他者及び他社の作成したapkをリバースエンジニアリングすることは、法律に触れる場合が多いですので、あくまでも、ご自分のapkや社内製の成果物に対してのみ行って下さい。 自己責任でお願いします。 作業環境 Mac JDK7必須 ステップ1 リソースファイルを復元 apkからresフォルダを復元します。 ※resフォルダ、特にstrings.xmlの復元が不要な場合は、このステップはやらなくてOK。 必要ツール apktool (h
はじめに プログラマーなら誰しも、YAML や JSON、XML、Excel ファイル、あるいは独自の DSL などで書いた定義ファイルからコードを自動生成するツールを使用した経験があると思います。 でも、JSON、XML を手で書いていくのはつらい。独自 DSL は覚えるのがつらい。YAML も凝ったことやろうとするとカスタムタグとかいろいろ用意したりしないといけなくて、独自 DSL 化してつらい。Excel ファイルは…… ということで、みんな大好き TypeScript の表現力豊かな記法でそういった定義ファイルが書けて、コードを自動生成できたら幸せなんじゃないだろうかと思い、年末あたりに時間をかけて typhen というツールを作ってみました。 今回はそのご紹介です。 使い方 たとえば、typings/definitions.d.ts に下記のようなインターフェイスがあって、そこか
愛知県でシステムエンジニアとして働く友人のMは、プロジェクトメンバの書くJavaのクソコードに苦しめられているそうです。Mはリードプログラマとして、プロジェクトメンバがあげてくる成果物(ドキュメントとコード)のレビューをする立場にあるらしく、提出されてくる数々のクソコードをTwitterでつぶやいていました。 Mを救うことはできるのでしょうか? もし、クソコードをすばやく見つけることができたら救えるのであれば、救える見込みはあるかもしれません。 コードの問題を見つける静的解析ツール クソコードとは、おおむね次のような問題のあるコードをさすようです。 潜在的バグ バグの可能性があるコード。 重複 機能追加やバグ修正を困難にしがちなコードの重複。 設計上の問題 クラスやパッケージ間の依存関係、多すぎるメソッド引数など。 慣習違反 プログラミング言語やライブラリの慣習、コーディング規約などに違反
phpcaはPHPを静的に解析して小さなミスやコードの修正点を指摘してくれるソフトウェアです。 PHPを書く際にどう書けば小さなミスによるバグの発生を防げるでしょうか。一定の基準に沿って記述することで整然としたコードを実現し、可読性をあげることでバグの混入を防ぐことができます。そこで使いたいのがphpcaです。静的にPHPファイル(ディレクトリ単位も可)を解析し、修正すべき場所を指摘してくれます。 解析処理を実行しています。PHPのパスと、解析したいファイルやディレクトリ名を指定して実行します。解析処理中は随時メッセージが出力されます。 メッセージ例です。タブの利用や行の使い方に関してなどメッセージが表示されます。 ?>がない場合もメッセージが出ます。これはPHPの書き方としては逆かも知れません(確かない方が良いという話なので)。 PHPを書く上でありがちなミスやバグにつながりそうな指摘を
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く