タグ

2018年2月14日のブックマーク (18件)

  • ソフトウェアのメトリクスの基本的なところ

    cles::blog 平常心是道 blogs: cles::blog NP_cles() « 特定のフォームの履歴を削除するFirefoxアドオン「... :: インターネットで最初に伝送されたのは「LO」 » 2009/10/29 ソフトウェアのメトリクスの基的なところ  softwareengineering  objectoriented  paper 125 3へぇ 最近ちょっとメトリクスまわりでゴソゴソやっているので、オブジェクト指向のソースコードを解析する際によく使われる3つのメトリクスについてちょっとまとめてみました。 McCabe のサイクロマチック数 (Cyclomatic Complexity) Martin のメトリクス (OO Design Quality Metrics) Chidamber と Kemerer のメトリクス (CK Metrics) これらは輪

    ソフトウェアのメトリクスの基本的なところ
    takuwz
    takuwz 2018/02/14
  • Excel VBE(Visual Basic Editor)に行番号を表示させる方法

    Excel VBE(Visual Basic Editor)に行番号を表示させる方法を紹介します。 行番号を表示したVBE画面 1.問題点 Excel VBAではExcel VBE(VB Editor)を使ってプログラムを書きますが、VBEの編集画面では行番号が表示されません。 デフォルトのVBE画面 数十行くらいのコードであれば問題ありませんが、数百~数千行のコードになるとかなり使いにくくなります。 ネットで検索しても「できません」というような回答がありました。 Excel2010のVBAエディタですが、行番号は表示できないでしょうか? が、冒頭のように表示することはできますので、エントリーでExcel VBEに行番号を表示させる方法を紹介します。 Excel 2010で動作確認しています。 なおWindows Vistaで説明しているので、Windows7の場合は適宜読み替えてくださ

    Excel VBE(Visual Basic Editor)に行番号を表示させる方法
    takuwz
    takuwz 2018/02/14
  • class 関数 違い - Google 検索

    function と class の違い 概念: function は処理の単位であり、単一のタスクを実行することに焦点を当てています。 一方、 class はデータとそれを操作するメソッドをまとめたもので、オブジェクト指向プログラミングの概念に基づいています。

    takuwz
    takuwz 2018/02/14
  • 関数とメソッドの違いがわからなくて少し調べたので自分なりにまとめてみた - Qiita

    はじめに 関数とメソッドの違いがわからなくて少し調べたので自分なりにまとめてみました 私は現在、Qiitaで初心者向けのSwiftの初心者向けの記事を月に1回程度、自分のSwiftへの理解を深めることと、プログラムについて再認識の意味も込めて投稿しています。 その中で関数について書こうと思ったときに「どういう内容を書こう」と考えていました。 ・初心者向けの記事だからあまり難しく書かない ・プログラムを書くって思っているほど難しくないよ、楽しいよ!と思ってもらえるように というのが記事を投稿するにあたって常に考えて投稿するようにこころがけています。 あと、一応プログラム書いたりを仕事にはしていますが、まだまだ勉強不足なので多分認識が間違っている事をツッコんでくださる方がいたら嬉しいなとかも思っています。 前置きが長くなりましたが自分なりの解釈をSwiftをベースにまとめていきます! 結論 似

    関数とメソッドの違いがわからなくて少し調べたので自分なりにまとめてみた - Qiita
    takuwz
    takuwz 2018/02/14
  • Webクリエイターの為の情報サイト | Web Programming Portal

    みなさまどうも。 これまでの記事でざざっとどどっとクラスとかインスタンスとかについて解説してきました。しかし、肝心な概念とか使い方とか使い分けとかそういうところの解説がまだでしたので、今回は初心者の方がハマりがちなその部分についてやっていきましょう。 「関数とクラスの使い分け」とか「クラスという概念の利便性」とかがよく理解できなくて何年も悩んでしまってる、という方も実際多いので結構重要な項目になりますね。 これは関数で作った処理と、クラスで作った処理を見比べてみるのが手っ取り早いので以下のサンプルを見てみて下さい。同じような処理を関数のみとクラスのみで作ってみました。 func testFn() { let n = 1 + 1 print(n) } testFn() // 『2』が出力されます。 class TestClass { let n : Int init() { n = 1 +

    Webクリエイターの為の情報サイト | Web Programming Portal
    takuwz
    takuwz 2018/02/14
  • クラスと関数・変数の違い:逆襲のニート

    クラスと関数、変数(P.96) もっとも、「クラスとは関数の集合体である」と言ってしまうと、さすがに単純化も行きすぎでしょう。最初のイメージとしてはそれでも十分なのですが、今後、オブジェクト指向を格的に学んでいく上では、もう少し正確なイメージを持っておく必要があります。 クラスと関数の違いは、データの持ち方という観点から眺めてみると明らかです。 関数は与えられた入力(引数)に対して、処理結果を戻り値として出力するだけのしくみです。つまり、データはただ関数を「通過」していくだけで、その中に留まることはありません。 しかし、クラス/オブジェクトは自分自身の中にデータを格納することができます。処理前、あるいは、処理後のデータを保持しておき、必要に応じて利用することができます。 つまり、クラス/オブジェクトと関数、そして、変数とを比較してみると、表3.1のようになります。 表3.1 クラス/オブ

    takuwz
    takuwz 2018/02/14
  • 弁当とブリトーに見る、メンテナンスのし易い設計 - Qiita

    (注:弁当とブリトーのメタファーは、Twitter の Israel Ferrer さんが提唱しているものです。) 弁当、ブリトー。それらの概要 弁当と言えば、箱のなかに様々なおかずがつめ込まれた日の伝統的な携行です。そしてブリトーと言えば、トルティーヤと呼ばれる薄い小麦粉の生地の中に、様々なおかずがつめ込まれたメキシコの伝統的な料理です。どちらも、小さな箱かトルティーヤかの違いはあるものの、それらの中に様々なおかずがつめ込まれたものであることには変わりありませんが、そのおかずのつめ込まれ方には明確な違いがあります。 弁当、ブリトー。それらの違い 弁当には仕切りがあります。この仕切りの中におかずを詰め込んでいくことで弁当が完成しますが、この仕切りは時に自由に配置することができ、好みのおかずのために場所を広くとることができます。そして何より、仕切りがあることで異なるおかず同士味が混ざり合

    弁当とブリトーに見る、メンテナンスのし易い設計 - Qiita
    takuwz
    takuwz 2018/02/14
  • 新人プログラマに正月休み中を使って読んでみてほしい技術書をセレクトしてみた。 - Qiita

    エンジニア組織を強くするためのを出版しました Qiitaでエンジニアリングをめぐる様々なコミュニケーションの問題とその解決策や考え方を書いてきた。それらの背後にあるエッセンスをこの度書籍として出版するに至りました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング この書籍は、エンジニアリングを「不確実性を削減する」という第一原理で捉え直し、様々なエンジニアリングとその間のコミュニケーションをめぐる現象を説明していくものです。 はじめに 今年、書いた幾つかの記事のタネであったり、新卒教育の際に参考書籍としてあげたものを中心にリストアップします。一応amazonへのリンクも貼っておきますが、先輩が持ってたりすると思うので、冬休みに借りて一気に読んでおくのもいいかと思います。 その時々、必要な技術の習得に日々追われているんじゃないかと思いますが、いつまでも使

    新人プログラマに正月休み中を使って読んでみてほしい技術書をセレクトしてみた。 - Qiita
    takuwz
    takuwz 2018/02/14
  • C言語やJavaのメトリクス計測ができるSourceMonitorを試してみたよ。 - 小さい頃はエラ呼吸

    はじめに C言語、C++Javaなど各種プログラミング言語のソフトウェアメトリクスの計測ができるフリーソフト「SourceMonitor」を試してみました。 今回は試しにVisual Studio 2005で作られたVC++プロジェクトを対象に計測してみました。 初めてのソフトウェアメトリクス(前編):ソフトウェアの品質を数値化して確かめる - ITmedia エンタープライズ 初めて学ぶソフトウエアメトリクス~プロジェクト見積もりのためのデータの導き方posted with amazlet at 13.12.22ローレンス・H・パトナム ウエア・マイヤーズ 日経BP社 売り上げランキング: 323,738 Amazon.co.jpで詳細を見る SourceMonitorの入手 SourceMonitorは以下のサイトから入手できます。 SourceMonitor V3.4 Sourc

    C言語やJavaのメトリクス計測ができるSourceMonitorを試してみたよ。 - 小さい頃はエラ呼吸
    takuwz
    takuwz 2018/02/14
  • swigでpythonからc++コードを使う - Into the Horizon

    c++pythonの連携はどうやるのか、ずっと気になってたのでメモ。 もともとはpythonのsubprocessモジュールを使って無理矢理連携させてたりしていたのですが、色々難しい&結局満足にできないのでオススメしません… ■どうやれば連携できるの? こちら(http://d.hatena.ne.jp/niitsuma/20080209/1203184397)に色々書かれています。 今回はswigを使ってみます。 ■swigを使ってみる まずはswigをインストール。特に問題なくインストールできました。 家ページ:http://www.swig.org/ 次に、家のpython用マニュアルに従ってサンプルを動かしてみる。(http://www.swig.org/Doc1.3/Python.html) そのまんまコピペで………あれ、いかない。 $ swig -python examp

    swigでpythonからc++コードを使う - Into the Horizon
    takuwz
    takuwz 2018/02/14
  • Python: SWIG で C 言語拡張モジュールを作ってみる

    SWIG は C/C++ を使ったライブラリのスクリプト言語のバインディングを作りやすくするためのツール。 来は Python/C API を使って自分でチマチマ書かなきゃいけない C/C++ とスクリプト言語のグルー部分を自動生成してくれる。 まずは SWIG をインストールする。 今回使った環境は OS X なので Homebrew から。 $ brew install swig 次に C/C++ のソースファイルを用意していく。 今回はシンプルに C 言語で、呼び出す関数もごく単純なものにした。 以下はヘッダファイル。 greet.h という名前で保存しておく。 void greet(void); 次にソースファイル。 greet.c という名前で保存する。 #include <stdio.h> void greet(void) { printf("Hello, World!\n"

    Python: SWIG で C 言語拡張モジュールを作ってみる
    takuwz
    takuwz 2018/02/14
  • Let's Boost - はじめに

    ご挨拶 いらっしゃいませ。ここは、Boost C++ ライブラリ を紹介するサイトです。 ある日突然「Boostを使ってみよう!」と思い立ったのですが、その時は、 このライブラリに関するまとまった日語資料はほとんど見つかりませんでした。 そこで、勉強がてら自分で読み返すためにメモをとるよな気分でhtmlを書き始め、 この「Let's boost」が出来上がりました。 ここでは、「Boostにはどんなライブラリがあるのか?」 「それぞれとりあえず何をどうすればどんな風に使えるのか」 が一目でわかるような構成を目指しています。 Boostって何よ?と興味を持った方の最初の一歩目の踏み台として、 少しでも参考にしていただけたら幸いです。 詳細なリファレンスとしては、家のドキュメントをどうぞ。 また、間違い等発見されましたら、 Twitter や メール(アドレスはページの最下部)で気軽にご指

    takuwz
    takuwz 2018/02/14
  • 色々な言語で計算速度を比較してみた - Qiita

    計算スピードの比較 ライプニッツ級数 $$ \sum_{n=0}^{\infty}\frac{(-1)^n}{2n+1} = \frac{\pi}{4} $$ は収束が遅い.それを利用して言語毎に計算要する時間を評価する.和の上限を$10^8$(bashを除く)とする. (別にfor文で回すだけなのでこの計算でなくても良いのだが,作ってしまったものは仕方がない)

    色々な言語で計算速度を比較してみた - Qiita
    takuwz
    takuwz 2018/02/14
    “Rust”
  • Pythonを速くしたいときにやったこと -Numba編- - Qiita

    前置き http://qiita.com/open_cans/items/f180ae4dc945dc7b9066 この記事の続きです。 主にミリ秒とかマイクロ秒まで気にする人向けに書いています。 numbaとは numbaとはpythonのコードをjitコンパイラでコンパイルして速くするやつ すごく手軽に高速化できるかなりすごい奴 numbaの使用例 import numba @numba.jit def sumation(num): sum=0 for i in range(num): sum += i return sum sum = sumation(100) print(sum) 3行目のように関数の前に @numba.jit と書くだけ ここまでお手軽で高速化できるなんてすごい!! numbaの注意点 手軽でいいんだけど使う際に注意してほしいことがいくつかあるので列挙する。 内

    Pythonを速くしたいときにやったこと -Numba編- - Qiita
    takuwz
    takuwz 2018/02/14
  • SourceMonitor

    SourceMonitor Version 3.5 NOTE: The author of SourceMonitor is retiring and the current version of SourceMonitor has been released as open source. The open source version of SourceMonitor, along with information on support, is available here.

    takuwz
    takuwz 2018/02/14
  • 【PICKUP】ソースコード分析/計測フリーツール「SourceMonitor」の使い方---コードメトリクスを測定、「C系」「Java」「VB.NET」などに対応

    【PICKUP】ソースコード分析/計測フリーツール「SourceMonitor」の使い方---コードメトリクスを測定、「C系」「Java」「VB.NET」などに対応 OSS×クラウド最新TOPICS 2017年1月26日 20:03 ソースコード分析/計測フリーツール「SourceMonitor」の使い方を解説。 【SourceMonitorとは】 ・フリーツール ・コードメトリクスを測定する (ソースコードが複雑に絡み合った箇所を自動的に計測) ・対応言語 ・C++ ・C ・C# ・VB.NETJavaHTML など 【テーマ】 1.はじめに 2.新ツール導入への拒否反応 3.ツールその1:ソースコード計測ツール「SourceMonitor」 3.1 「SourceMonitor」でできること 3.2 ダウンロードとインストール 3.3 実践編 4.終わりに (出所:http:/

    【PICKUP】ソースコード分析/計測フリーツール「SourceMonitor」の使い方---コードメトリクスを測定、「C系」「Java」「VB.NET」などに対応
    takuwz
    takuwz 2018/02/14
  • 【OSS情報アーカイブ】OSS-Fuzz | マジセミ

    マジセミドライブ ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。 TOP 記事一覧 【OSS情報アーカイブ】OSS-Fuzz OSS情報 2020.01.01 【OSS情報アーカイブ】OSS-Fuzz ※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。 コンテンツ 「OSS-Fuzz」とは 基情報 概要 OSS-Fuzz(オーエスエス ファズ)とは、Google製のオープンソースソフトウェア向け継続的ファズテストツールです。複数ツールを組み合わせて「ファジング手法+分散実行」によりソフトウェア脆弱性を検出します。 「ファジング(ファズテスト)」とは 「ファジング(ファズテスト)」とは、ソフトウェアの不具合(脆弱性)を発見するためのテスト手法の1つです。 検査対象のソフトウェアに予測不可能な入力データ(フ

    takuwz
    takuwz 2018/02/14
    “OSS-Fuzz”
  • Google、OSS向けファジングイニシアティブ「OSS-Fuzz」を発表 | OSDN Magazine

    Googleは12月1日、オープンソースソフトウェア向けの継続的ファジングイニシアティブ「OSS-Fuzz」を発表した。よく利用されるソフトウェアインフラの安全性と安定性を高めることを目的に、ファジング手法に分散実行を組み合わせた。これにより、オープンソースソフトウェアの脆弱性を調べるテストを大規模に行うことができるという。 OSS-Fuzzは、同社が参加するLinux FoundationのCore Infrastructure Initiativeの下で開発したベータプログラム。Core Infrastructure InitiativeはGoogleMicrosoft、Facebookらとともに2014年春のOpenSSLの脆弱性問題を受けて設立した協業プロジェクト。 自社のChromeブラウザのコンポーネントにおける脆弱性を調べるのに利用しているという「AFL」や「libFuzz

    Google、OSS向けファジングイニシアティブ「OSS-Fuzz」を発表 | OSDN Magazine
    takuwz
    takuwz 2018/02/14