備忘録

開発でつまったところの備忘録.不定期に更新します.

2013-10-01から1ヶ月間の記事一覧

FFTの窓関数とオーバーラッピング

FFTの窓関数とオーバーラッピングが何なのかやっと分かったのでメモ まずここ http://www.toyo.co.jp/page.jsp?id=2399 を読むと FFTでは一定のブロック幅でデータを切り出して解析するけど、一つのブロックを並べたときに連続になるように切り出さないと(…

キー値コーディング

キー値コーディングとはオブジェクトが持つ情報を表す文字列をキーとして用いて間接的にその値にアクセスする仕組みです。基本的にはアクセサメソッドか宣言プロパティ、またはインスタンス変数が存在していれば、その名前を文字列として指定してアクセス可…

通知センター

何かの事象の発生を複数のオブジェクトに発信したいとき、通知と呼ばれるメッセージ送信方式を使います。 プログラム内に通知センタと呼ばれるオブジェクトが用意されており、あるオブジェクトがメッセージ送信の依頼を通知センタに送る(ポスト)と、その通…

デリゲート

デリゲートは簡単に言うと、あるオブジェクトが別のオブジェクトに処理を代行してもらう機構です。 既存のクラスに新しい機能を付け加えたり、情報を取得して利用するための柔軟性の高い仕組みとして便利に使うことができます。継承でも同様なことは実現でき…

ブロックオブジェクトまとめ

ブロックオブジェクトはObjective-CではなくC言語の機能として実装されています。 他のプログラミング言語ではクロージャとして知られている言語機能に相当します。 ・定義(ブロックリテラル) ^( 引数列 ) { 本体 } ・変数宣言 返り値の型 (^ブロック変数)…

無名カテゴリを用いたprivateなproperty宣言について

これもよく忘れるのでまとめときます まずカテゴリとは あるクラスの一部分のメソッドを実現するモジュールのこと で、具体的には @interface クラス名 (カテゴリ名) メソッド宣言; @end @implementation クラス名 (カテゴリ名) メソッドの定義; @end で書き…

プロパティ変遷まとめ

なんども忘れるので一回まとめときます ・昔 @interface A : NSObject { int member; //インスタンス宣言 } @property (retain) member; //プロパティ宣言 @end @implementation A : NSObject { @synthesize member; //セレクタ(インスタンス、アクセサ宣言…

objective-cでのprivate宣言

@interface A : NSObject { id protected; @public id public; @private id private; } - (id) method1; @end @implementation A { id private2; } - (id) method1{ ..... } このときprivate2はヘッダーに現れないので実質隠蔽されてprivateと同じ扱いになり…

YouTubeの元ファイルをダウンロードする方法

適当にググってでてきたパイソンスクリプトをつかってみたところ古くて使えませんでした。 Youtubeの仕様ってのは頻繁にかわるらしくがんばって解析した方法もすぐ使えなくなってしまうらしいです。 なんですが、youtube-dlっていう頻繁に更新されるyoutube…

AVFoundationによるストリーミング再生について

AVFoundationでストリーミングを再生するには HTTP Live Streamingとかいう形式にそってないといけないらしいです https://developer.apple.com/jp/devcenter/ios/library/documentation/StreamingMediaGuide.pdf 無理矢理一文にまとめると こいつのサーバで…

AVAsyncronousKeyValueLoading Protocolについて

いままで面倒でちゃんとリファレンス読んでなかったのですがせっかく読んだのでメモ。 要するに 動画や音声でAVAssetを扱うときに、なんらかのstatusを読み込みたい ↓ でもローカルファイルはともかく読み込むまでに基本タイムラグがあるから読み込み指示を…

vimの<ESC>設定

ノーマルモードに戻るためにいままで<ESC>を使っていたのですが、遠いので変えたくなりました。 ググったら<C-c>,<C-[>などもデフォで<ESC>の動きをするということですが、せっかくなので多くの人が取り入れていた<C-j>に<ESC>を割り当てるという方法をとります。 imapで挿入モードの時のキ</esc></c-j></esc></c-[></c-c></esc>…

XcodeでVimの操作を実現する

XcodeでVimのキーバインドが使えるプラグインXVimというプラグインがありました。 導入は http://monopocket.jp/blog/vim/2720/ 参照 vimと同じように.xvimrcで拡張できます http://sangoukan.xrea.jp/cgi-bin/tDiary/?date=20120612 とか参照 ほとんどの操…