忘備録

日々の調べ物をまとめる。アウトプットする。基本自分用。

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

【Objective-C】NSDateFormatterにまつわるエトセトラ

NSDateFormatterでやらかしそうなやらかしたミスをメモっておく。 24時間表示をOFFにした際、dateFromStringによる正しく評価されない 前提として、「設定」>「一般」>「日付と時刻」>「24時間表示」 をOFFにしているものとします。 やらかした例 NSDateF…

【Vim】置換など

Vim

よく使うものをメモしておく 現在の行の最初に一致したものを置換 例)「before」を「after」に置き換え :s/before/after/ 全行全ての一致について確認しつつ置換 例)「before」を「after」に置き換え :%s/before/after/gc 置換前の文字列利用 例)「hoge.p…

【Objective-C】NSLogの出力方法

Objective-C:デバッグの基本!NSLogでBOOLや様々な値を出力する | siro:chro Cを触って来なかったので四苦八苦しますね。。。

【Objective-C】NSDictionary キーの存在チェック

残念ながらJavaにある Map#containsKey のようなメソッドはない模様。。。 なので以下の方法で。 NSArray containsObject: を利用する方法 NSDictionary objectForKey: を利用する方法 NSArray *keys = @[@"key1",@"key2",@"key3",@"key4"]; // "key2"と"key…

NSInvalidArgumentException reason: nil argument

HogeClass *hogeClass = nil; // HogeクラスはNSString型のproperty「hogeProperty」を持っている。実際のコードはメソッドから戻り値を受け取ってますが。 NSMutableString *string = [NSMutableString string]; [string appendString:hogeClass.hogeProper…

【Xcode7】ファイル作成時に自動挿入される「Created by」とか「Copyright」を変更する方法

調べてみたら色々と出てきたのでまとめておく 環境 Xcode 7.1 OS X 10.10.5 成功 下記の記事で紹介されている方法はXcode7でもうまくいきました。 Xcodeでコードに自動設定される"Created by"と"Copyright"の元ネタ - Simple gadget life programming diary …

【Objective-C】NSDictionaryの中身を全て取り出す

NSDictionary *dictionary = [NSDictionary dictionaryWithObject:@"hoge" forKey:@"fuga"]; for (id key in dictionary){ NSLog(@"Key:%@ Value:%@", key, [dictionary valueForKey:key]); } 参考 Objective-C - NSDictionaryの中身を全部取り出すときは - …

CIDR表記とサブネットマスク表記

超基本的なことだけど、CIDRの読み方とか何の略称とか初めて知ったので。。。 IPアドレスの範囲「192.168.1.0 〜192.168.1.255」の表記の仕方 CIDR表記 192.168.1.0/24 XXX.XXX.XXX.XXX/○○ ○○は先頭何bitがネットワーク部かを表す。 ちなみにCIDRはClassless…

"Network is unreachable" と "Request timeout"

Network is unreachable Network is unreachable (主要メッセージの手引き) ネットワークへの送信経路が存在しないか、あるいは中間ゲートウェイまたは交換ノードからネガティブな状態情報が返されたため、動作エラーが発生しました。 →ルーティング設定ミス…

【Mac】接続したことのあるWifiのパスワードを調べる方法

Mac

環境 OS X 10.10.5 手順 調べたい接続先のSSIDを控えておく キーチェーンアクセスを起動 左側のペインからパスワードを選択 右上にある検索窓から手順1で控えたSSIDで検索する 調べたい接続先の行を右クリックし、開かれたメニューから「情報」を選択 開かれ…

【Objective-C】イニシャライザー

イニシャライザー 引数ありのイニシャライザーの書き方。 HogeClass.h @interface HogeClass : NSObject /** 引数1 */ @property(readonly) NSString *param1; /** 引数2 */ @property(readonly) NSString *param2; /** イニシャライザー */ - (id)initWit…

【Objective-C】"__block"ってなんぞ?

シングルトンについて調べていたら"__block"とかいう謎のキーワードに遭遇。 【Objective-C】シングルトン - 忘備録 __block id ret = nil; Block構文での自動変数アクセス | iOSchool Block構文内で自動変数に対して代入をするとエラーになります。 エラー…

Xcodeのエディタで分割表示

XcodeでEditorを縦分割する方法 - Katzhideの徒然なるままに 右のエディタ:ファイルをoption + クリックで開く

【Objective-C】protectedなメソッド

そんなものはなかった。。。 Objective-C の Private / Protected Method: 雲か霧のようになくなってまうブログ そもそも Objective - C には、他の Object 指向言語のような private/protected メソッドの機構が無いらしい。 無名カテゴリで無理くりprivate…

オープンソースソフトウェア

OSSの特徴 プログラムのソースコードが手に入る プログラムの改良を行うことができる コピーや頒布を自由に行える 利用目的に制限がなく、商用目的や有償販売もできる OSSの定義 再頒布の自由 ソースコードが入手可能 派生ソフトウェア作製を行える 作者のソ…

上付き/下付き文字

参考にさせていただきましたm(. . )m はてなブログで上付き/下付き文字 - always one step forward sup { vertical-align: baseline; position:relative; top:-3px } sub { vertical-align: baseline; position:relative; top:3px } メニューから「デザイン…

【Objective-C】シングルトン

ARCという前提で... Singleton.h #import <Foundation/Foundation.h> @interface Singleton : NSObject /** インスタンス生成ファクトリメソッド @return Singletonクラスのインスタンス */ + (Singleton*)sharedManager; @end Singleton.m #import "Singleton.h" @implementation Sin</foundation/foundation.h>…

【Objective-C】staticな定数なNSArray

を作ろうとして、NSStirngと同じように定義したらXcodeに怒られた。 // hoge.h extern NSArray * const kHoge; //hoge.m NSArray * const kHoge = @[@"hoge", @"fuga"]; Xcodeさん「Initializer element is not a compile-time constant」 2012-07-04 - Kazz…

【Objectibe-C】メソッドのラベルの引数について

Objective-Cのメソッド。 ラベルが意味わかんなかったけど、以下の記事で理解できた 笑 メソッド引数のラベリング - TrashSUITE 第一引数はメソッド名で意味付けできているからよしとして,第二引数以降はラベルで意味付けしなさいよという代物

【Objective-C】真偽値について

なんか色々でてくるので整理する。 Objective-Cでの真偽値型 - ちくわプログラマにっき BOOL Objective-Cの標準 値はYES/NOもしくは0/1 結論Objective-cではこいつを使えばOKかな bool Cの標準 Boolean 「Mac OS historical type」とのこと。 「Mac OS histo…

ソフトウェアのメモリ管理について

仮想記憶 ページング方式 ページと呼ばれる固定長の単位にプログラムを分割し、必要なものだけメモリにアロケートする。 スワッピング方式 使用されていないプロセスを補助記憶に退避させる。 ページングアルゴリズム LRU (Least Recently Used) 最後に使わ…

デジタル署名

デジタル署名の仕組み デジタル署名の仕組み

LAN

LANのトポロジ LANのトポロジとは LANを構成する通信機器の接続形態のこと。 バス型 スター型 リング型 LAN (Ethernet)の規格 イーサネット規格 10BASE2 10BASE5 10BASE-T 100BASE-TX 1000BASE-T LANのアクセス制御方式 CSMA/CD方式 (Carrier Sense Multiple…

WEBサーバのユーザ認証技術

ベーシック認証 簡単に導入できる。お手軽。 ただし、セキュティに難あり。 また、ユーザが増えてくると運用が大変。 ApacheによるWebサーバ構築(10):ユーザー認証によるアクセス制限(ベーシック認証編) (1/2) - @IT 入力されたユーザー名とパスワード…

暗号化技術について

共通鍵暗号方式(秘密鍵暗号方式) 暗号方式 DES (Data Encryption Standard) Data Encryption Standard - Wikipedia DESは今では多くの用途において安全ではないと見なされている。これは主に56ビットという鍵長が短すぎることに起因する。 というわけで、…

情報セキュリティについて

情報セキュリティとは ISO/IEC 27001 機密性 (Confidentiality) 認可されていない者に情報を使用不可または非公開にする特性。 代表的脅威:不正アクセス、盗聴 完全性 (Integrity) 資産の正確さおよび完全さを維持する特性。 代表的脅威:改ざん、ソフトウ…

【Objective-C】NSDateオブジェクトからエポック秒を取得する

NSDate timeIntervalSince1970プロパティを取得する NSDate *now = [NSDate date]; double timeInterval = [now timeIntervalSince1970]; 参考: NSDate Class Reference

【Objective-C】数値の絶対値を取得する

C言語の関数 abs などを使う Objective-Cと戦うブログ: NSDateでマイナスの値が返る場合はfabs関数で絶対値を取る fabs(int n) →int型の絶対値を取得する labs(long n) →long型の絶対値を取得する fabs(float n) →double型の絶対値を取得する

【Objective-C】NSIntegerがあって、NSDoubleがないわけ

objective c - Do NSDouble, NSFloat, or other types than NSInteger exist? - Stack Overflow NSInteger exists because the int type varies in size between 32-bit and 64-bit systems. float and double don't vary in size the same way, so there's …

【Objective-C】数値を文字列に変換

NSString + (instancetype)stringWithFormat:(NSString *)format を使う double number = 3.14; NSString *numberString = [NSString stringWithFormat:@"%f", number]; 参考:NSString Class Reference