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

鈍器本の自前vectorをJavaで実装(修正版)

鈍器本の自前vectorをJavaで実装したかった(敗北) - 虎塚 上の記事のコードについて、師匠から色々とツッコミをもらったので修正しました。敗北っていってるのにこの追い討ち! さすがです! (勉強になりました…)マイナス点をゼロにしただけで、前回実装で…

よいお年を

「コードを読め」「はてなーたれ」と師匠は言った。さて。 - 虎塚 上の日記を書いてから、半年が経ちました。「はてなーたれ」は、そこそこ達成しました。あれから100日分以上の日記を書きました。今年、この日記には、技術的ツッコミ・雑談・助言等のコメン…

イベント参加と関心事の記録を図にしてみた(2011年版)

今年参加したイベントを図解によって振り返ります。この日記では年末恒例です。(2010年の分、2009年の分)年の前半は、クラウド関連のイベントに参加することが多かったです。春以降、クラウドと関わってきて感じた教訓は、大きく2つに集約されます。それは…

鈍器本の自前vectorをJavaで実装したかった(敗北)

前回の読書日記で悩んでいたら、E_mattsanから「Javaで書いてみては?」とコメントで助言をいただきました。なるほど!…結論をいうと、収穫を得る前にギブアップしてしまったのですが、迷走の記録を貼っておきます。(追記: 2011/12/31) 修正版を書きました…

ぐるーびーたん第4話の作画をしました

JGGUGさんの『G*Magazine』第4号が発行されたようです。 G*Mag Japan 編集長さん、執筆された皆さま、年の瀬におつかれさまでした。4コマ漫画「ぐるーびーたん」の第4話も載っています。今回も作画を担当させてもらいました。第3号が出た時の日記で、 次から…

ストラウストラップのプログラミング入門(31) 19章「ベクタ、テンプレート、例外」(続)

C++

『ストラウストラップのプログラミング入門』を読む。やっと今月初の読書日記です。やりましたね(?)これまで、本文に出てきたコードは全部写経し、動作することを確認してきたのですが、ここにきてハマってしまいました。19章のあちこちに散ったコード片…

文字列変換したいとき、明示的に変数で扱う必要はかならずしもない

C++の基本的な文法に慣れたいので、今夜もTopCoderの過去問を解きます。 SRM210 div2 (250) 問題 スペース混じりの英文字列を与え、本のタイトルのように単語の先頭文字だけを大文字に変換した文字列を返す。その際、スペースの個数は維持する。たとえば、こ…

sscanfで数字交じりの文字列から数字を取り出す

週末、C++でコードを書こうとして、文法がおぼつかないことに気がつきました。鈍器本のおかげでちょっと読めるようになった気がしても、書いてみないことには書けないものですね。当たり前でした。練習に、TopCoderの過去問をC++で解いてみることにしました…

リストを項目ごとに集計するときのデータオブジェクトの使い方

irofさんのブログを見て、自分ならどう書くかなーと思ったので、読み進める前に書いてみました。その結果、本題のアルゴリズムとは全然関係ないところで疑問を持ったので、グデグデとメモします。 元エントリ irofさんによる元エントリはこちら。 リストを項…

メモ: ICO file format plugin for Photoshop

faviconに使われるico形式のファイルは、そのままではPhotoshopで扱えません。しかし、Photoshopで.icoファイルを読み書きできるプラグインがあります。 ICO (Windows Icon) file format plugin for Photoshop http://www.telegraphics.com.au/sw/ 初めて知…

汎用ポインタへのポインタを受け取る関数

C++

汎用ポインタについて某師から教えてもらったのですが、分かったような分からないような感じなので、今の理解を書いてみます。(注)以下の記述は間違いを含む可能性があるため、疑いの目で読んでくださいますよう、お願いします。 サンプルコードと疑問 次…

java-ja忘年会2011へ行ってきました

昨年同様、id:cactusmanさんに声をかけてもらって、イベントを知りました(ありがとうございます)。場所は、秋葉原の居酒屋北海道、40名以上の大人数でした。15時から22時まで、いろいろな方とまったりお話しできて楽しかったです。今年一年を忘れるために…

テンプレートを使ったコードをビルドしようとして???ってなってる

C++

コメントで返信するには、的を外している上に、長くなったので、こっちで。 (前回の読書日記) http://d.hatena.ne.jp/torazuka/20111128/cxx id:E_Mattsan さんから頂いたコメントを読んだ後、おぉあのデフォルト値を与える行のコンパイルエラーはVC特有な…

「ほぼ週刊AWSマイスターシリーズ第11回〜Simple Email Service〜」メモ

AWSのウェビナーを聞いて、内容と質疑応答のメモを取ったので、貼っておきます。今回のテーマは、Simple Email Service(SES)で、講師はAmazonソリューションアーキテクトの荒木さんでした。SESは、名前のとおり、メール送信のサービスですね。マイスターシ…

Protocol Buffers のチュートリアル覚書き

前々回と前回でやっと準備が整ったので、Protocol Bufferesのチュートリアルを実行します。そのメモです。 チュートリアルの実行 Protocol Bufferesでは、.protoファイルに規定の形式でデータ構造を書いてprotocというコンパイラにかけると、getter/setterに…

Protocol Bufferesのチュートリアル準備(pkg-configメモ)

前回でProtocol Bufferesのコンパイルとインストールができた(http://d.hatena.ne.jp/torazuka/20111201/protobuf)ので、チュートリアルをやってみようということで、その準備です。examplesディレクトリ以下に、C++、Java、Pythonで書かれた(おそらくは…

inline関数・・・

C++

余談ですが。。。りょーさんから読むことを勧めていただいたBoost::assignや、Protocol Bufferesのprotocコンパイラが生成するC++のコードを眺めると、そこここにインライン関数が使われています。 (参考)インライン関数 http://www33.ocn.ne.jp/~loreley/…

Protocol Buffers 2.4.1 のビルドメモ(on Fedora 15)

GoogleのProtocol Buffersをビルドしたので備忘メモです。 http://code.google.com/p/protobuf/ 前提 ビルド対象 protobuf-2.4.1 ビルド環境 Linux 2.6.40.6-0.fc15.x86_64 gcc version 4.6.1 20110908 (Red Hat 4.6.1-9) (GCC) # 作業前に2.6.41にupdateし…

ストラウストラップのプログラミング入門(30) 19章「ベクタ、テンプレート、例外」

C++

『ストラウストラップのプログラミング入門』を読む。今日は、第19章「ベクタ、テンプレート、例外」の19.4まで。ようやくHello, templateです。19章では、前章までに作成したvectorクラスをさらに拡張します。前半(18.2節まで)では、あるサイズのvectorを…

ストラウストラップのプログラミング入門(29) 18章「ベクタと配列」(続々)

C++

『ストラウストラップのプログラミング入門』を読む。今日は、18章「ベクタと配列」の最後までです。 18.5.1「配列の要素へのポインタ」 少し前にC++では配列の添え字に負数を指定できると知り、何じゃそりゃと思っていたのですが、この章を読んで、使い道を…

メモ: JSON-java

githubサーフィンしてたら、Douglas Crockford先生のJavaでJSONを扱うための参考実装を見つけました。 https://github.com/douglascrockford/JSON-java 試しに使おうとしたらjarもビルドファイルもなかったので、書いたbuild.xmlをメモ。findjar(http://fin…

メモ: ベンチマークツール jvm-serializers

jvm-serializers https://github.com/eishay/jvm-serializers/wiki ツールメモ 兼 プチコードリーディングメモ。MessagePackのWikiを眺めていて知った、Javaのシリアライズ/デシリアライズのパフォーマンスを測定するツール。以前からあったTPC(Thrift-Prot…

ストラウストラップのプログラミング入門(28) 18章「ベクタと配列」(続)

C++

『ストラウストラップのプログラミング入門』を読む。今日は、18章「ベクタと配列」18.3.2。間が開きましたが、前回の続きです。本は読み進めず、コンストラクタとデストラクタの動きを追っただけ。リハビリ・リハビリ。 前提となるコード p.573から引用しま…

ApacheまわりのメタクラウドAPI群

メタクラウドAPIとは 様々なクラウドサービスプロバイダが提供するAPIの違いを吸収するライブラリ。たとえば、仮想マシンのON/OFFは、ベンダーが違っても本質的にほぼ同質の振舞いだが、各ベンダー依存のAPIで実現されている。これらを抽象化するのがメタク…

ストラウストラップのプログラミング入門(27) 18章「ベクタと配列」

C++

『ストラウストラップのプログラミング入門』を読む。今日は、18章「ベクタと配列」の18.3まで。前章のドリルで悩んでいたvectorのコピーについては、この章で本格的に扱われていました。ところで、ソ ラ ノートが他人事とは思えない今日この頃。あれほどの…

ストラウストラップのプログラミング入門(26) 17章「ベクタとフリーストア」

『ストラウストラップのプログラミング入門』を読む。第17章「ベクタとフリーストア」です。この章から、第3部「データとアルゴリズム」に入りました。17〜19章では、ポインタを理解するために、vectorを再実装していきます。 読書メモ ポインタ 次の表は、…

メモ: リンクで構成されたリストへの要素追加 via 鈍器

『ストラウストラップのプログラミング入門』の17章を読んでいたら、ポインタで構成されたLinkのデータ構造が出てきました。双方向リンクドリストを作って、要素を追加しているようですが、ん・・? んんん?算数は苦手なので、絵で理解します。(17.9.3)ふ…

ストラウストラップのプログラミング入門(25) 16章「GUI」

『ストラウストラップのプログラミング入門』を読む。今日は第16章「GUI」。12章から始まったグラフィックス話の最後の章です。ウィンドウにボタンやテキストボックスなどのウィジェットを貼り付ける話や、コールバックの説明が登場します。それにしても、「…

「ほぼ週刊AWSマイスターシリーズ第5回」の質疑応答メモ

AWSのウェビナーを聞きました。全10回セミナーの第5回です。今回のテーマは、ELB、CloudWatch、Auto Scalingで、講師はAmazonエバンジェリストの玉川さんでした。 ELB & Auto Scaling & CloudWatch 詳細 -ほぼ週刊AWSマイスターシリーズ第5回- http://www.sl…

ストラウストラップのプログラミング入門(24) 15章「関数とデータのグラフ化」

『ストラウストラップのプログラミング入門』を読む。今日は第15章「単純な関数のグラフ化」です。オーバーライドに関する理解は保留中ですが、先に進むことにしました。15章では、シンプルなグラフを色々描画します。 ここで示すグラフィックス機能よりも、…