2012-01-01から1年間の記事一覧

C++でデザインパターンを実装していこうよ 第3回 Bridgeパターン

"オブジェクト指向のこころ"をはじめて読んだとき、Bridgeパターンで一度挫折しかけました。「実装から抽象的側面を切り出して、それらを独立して変更できるようにする」"オブジェクト指向のこころ"では、[抽象的側面]がShapeクラス、[実装]がDrawingクラス…

C++でデザインパターンを実装していこうよ 第2回 Adapterパターン

C++

"オブジェクト指向のこころ"で出てくる順番にとりあえず従って、今回はAdapterパターンです。今回も http://www.dofactory.com/Patterns/PatternAdapter.aspx#_self2 をC++に移植していきましょう。https://github.com/TakahashiShuuhei/DesignPatternPracti…

C++でデザインパターンを実装していこうよ 第1回 Facadeパターン

C++

Wikipediaによれば、 "関連するクラス群を使用するための手続きを、窓口となる一つのクラスに集約することにより、プログラムの冗長性を無くすことを目的とする。" http://ja.wikipedia.org/wiki/Facade_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3ってことらしい…

C++でデザインパターンを実装していこうよ 第0回 はじめに

デザインパターンの復習していきます。毎回1つのパターンを取り上げて、そのパターンを使えるお題を無理やりひねり出してそれをC++で実装して行こうと思います。 とおもったけど自分で無理やりひねり出すのはやめました。 思ってた以上に思いつかなかったの…

ローカルに保存したはてなダイアリーを検索できるようにした

※ 20121001 追記 Googleデスクトップ検索でしたこんばんは。僕の勤めている会社では、自席からネットにアクセスできません。 ネット専用PCでアクセスして、データを部内サーバに一度保存して、それを自席からダウンロードするという糞システムです。糞システ…

Cygwin上のg++でGoogle Mockを動かす

"実践テスト駆動開発"超良いですね。ということで、C++で使える単体テストフレームワークであるGoogle testとモックフレームワークであるGoogle Mockを使える環境を整えましょうという話になりますね。Cygwin上で動かせるようになれば、あとはどこでも動かせ…

shared_ptrの使い方を知りたかったからいろいろ試してみた (2)

C++

前回shared_ptrの使い方を適当に勉強したので、早速使ってみるぞーと思って使ってみたら"あれ?これどうすんだ?"ってことがあったのでそれらの確認をします。 constは? shared_ptrを引数で渡すにはとりあえずそのまま渡しても動きます #include "stdafx.h"…

shared_ptrの使い方を知りたかったからいろいろ試してみた

C++

タイトルのとおりです。 基本的な使用方法 まず基本的な使い方。 #include "stdafx.h" #include <memory> #include <iostream> class Hoge { public: Hoge(){} ~Hoge(){ std::cout << "Hogeのデストラクタだよ" << std::endl; } int number_; }; int _tmain(int argc, _TCHAR* </iostream></memory>…

C++をはじめて一年くらいたちました

C++

C++をはじめてちょうど一年くらいです。 大分慣れてきた感はありますが、 未だに基本的な部分がちゃんと理解できてないようなバグをたまに出すので、 確認していきます。 ポインタ まず大前提として。 class Hoge { public: int member_; double value_; voi…

ドットインストールでやってたYouTubeジュークボックスを改良していくよー

Git講座を見てからドットインストールさんのファンになったので結構な数の講義動画を拝見させていただきました。Web関係はからきしで、JavaScriptとかもほぼ触ったことないのですが、短時間で焦点を絞った勉強ができるのでとても重宝してます。ただ、やっぱ…

Writing Great Unit Tests: Best and Worst Practices和訳

うちの会社で単体テストを誰も教えてくれません。でも、達人プログラマを読んでも、コードクラフトを読んでも、アジャイルソフトウェア開発の奥義を読んでも、リファクタリングを読んでも、コードコンプリートを読んでも、レガシーコード改善ガイドを読んで…

C++でJavaのgetClass()をする方法?

C++

今、勉強のためにケント・ベックの"テスト駆動開発入門"を再読しております。本はJavaとPythonの例が載っているのですが、仕事でC++しか使っていないので、C++でそれらの例を書き直しながら読み進めております。そこで、わからないところがありました。Money…

ある関数の一部だけ変えたい1

C++

僕の生活は、土日は 朝起きて、 朝ごはんを食べて、 息子と遊んで、 お昼ごはんを食べて、 息子と遊んで、 夕飯を食べて 寝るという素敵な生活なのですが、 平日は、 朝起きて、 糞みたいな仕事をして、 お昼ごはんを食べて、 糞みたいな仕事をして、 夕飯を…

ランチャーひとまず完成

いろいろ適当にしてるとこがありますが、とりあえず動くようになったので公開。https://github.com/TakahashiShuuhei/LauncherCtrl-Shift-F12で画面表示 ESC or Ctrl-Gで画面消去 Ctrl-Nで下へ Ctrl-Pで上へ Ctrl-M or Enterで選択みたいな感じです。ただ、…

指定したディレクトリ内の.lnkを集める

GnomeDo的なランチャを作るとすれば、所謂スタートメニュー的なところからショートカットを集めてきて、そいつをhttp://d.hatena.ne.jp/QtCoder/20110902/1315010586 を参考にして // ExplorerやFinderでローカルパスを開く QString path = QDesktopServices…

タスクトレイに常駐してホットキーでウィンドウが表示されるアプリケーションのサンプル

QuickSilverとかGnomeDoとか、ああいう感じのソフトが作りたいのでその第一歩。Windowsアプリケーション開発は少しだけ経験がありますが、Qtは最近はじめたばかりです。では早速。新規プロジェクト > Qtウィジェットプロジェクト > QtGUIアプリケーション を…

Qxtをインストールしました

QxtGlobalShortcutを使いたかったので環境はwindows7 64bitqtをインストールしてあれば、インストールしたフォルダ内にqmakeとmingw32-make.exeがあるのでそれぞれのパスを通しておくQxtのソースをダウンロード http://dev.libqxt.org/libqxt/wiki/Home ここ…

Windows7でNTEmacsの設定をしました

基本的にC/C++用 NTEmacsのダウンロード http://cha.la.coocan.jp/files/emacs-23.3.zip からバイナリをいただく c:\emacsに展開 Cygwinのダウンロード http://www.cygwin.com/ このとき、gccとかzshとか必要なものもとりあえずインストールしてくらさい。 …

Windows7 で行った設定

Thinkpad X121eを買ったので、ひとまずWindows7専用マシンとして使うことにしました。Windows7で行った設定とかをメモ バックアップ この辺を見ながらバックアップ http://allabout.co.jp/gm/gc/20922/ パーティションの分割 後でLinuxを入れるのでそれ用の…

Thinkpad X121eni