EZ-NET

UPDATES

更新日 内容
2015-06-17 Makefile 内で sed を使って文字列を加工してみる。
Makefile 内で変数に渡されてきた文字列を自由に加工したくて、Makefile 内で sed コマンドを使ってみることにしました。
2015-06-17 Makefile で特定のファイルを削除しないようにする。
Makefile で更新日を残すために作成したファイルが最後に自動で削除されてしまったので、削除されないようにしてみました。
2015-06-17 Swift のオブジェクトが共有されていないか判定する。
Swift でキャッシュの役割をするオブジェクトを作っていたら、そのオブジェクトが共有されていないかを知る必要に迫られました。Swift では isUniquelyReferencedNonObjC 関数を使って唯一の存在であるかを調べられるようです。
2015-06-14 持ち運びに便利な LAN ケーブルを購入しました。
これまでも何かのときのためにフラットな短い LAN ケーブルを持ち歩いていたのですけど、巻き取り式の LAN ケーブルを見つけたので使ってみることにしました。
2015-06-13 Swift の Error Handling について考えてみる
Swift 2.0 に Error Handling が新設されたと知って、どんな場面で使うのがいいのかなって思っていたんですけど、NSFileManager で実際に使われているのを見たら感じるところがあったので、それについて書き綴ってみることにしました。
2015-06-11 Swift: プロトコルで名前の衝突をさける方法は…?
Swift 2.0 でプロトコル拡張が積極的に使われそうな印象を受けて、プロトコルが求める機能の名前が他のプロトコルのと衝突しそうに思えてきました。そこで、どんな風にすると名前の衝突を抑えることができるかなと想像してみることにしました。
2015-06-11 Swift でプロトコル拡張を使ってプログラミングする。
Swift 2.0 からプロトコル拡張が導入されて、プロトコル主体のプログラミングがさらに本格化しそうです。そんなプロトコル拡張に感じた魅力を簡単にながら整理してみました。
2015-06-10 第0回 カジュアルSwiftプログラミング勉強会を開催しました。
2015年6月6日に『カジュアル Swift プログラミング勉強会』の第0回目を横浜の青葉台で開催しました。初回でいろいろ手探りでしたが、おかげさまで無事に初回を終えることができました。
2015-06-04 アプリをiOS8対応したら連絡先選択で電話発信するようになった話
iOS 5 を想定したアプリを iOS 7 以上でビルドしていたところ、アプリ内で連絡先を選択したときに画面に番号が入力されるはずが電話発信されるようになっているのに気がつきました。どうやら iOS 8 から動作が変わっていたみたいです。
2015-06-04 MOSA の Swift 初級セミナーに登壇させて頂きました。
先日に MOSA 様に Swift 初級セミナーとして登壇する機会を頂いて、Swift の魅力をたっぷり話してきました。素敵な思いをたくさんさせて頂いたので、その想い出を記念に綴っておくことにしました。
2015-06-02 #yidev 第19回を開催しました。
#yidev 横浜 iPhone 勉強会の第19回を開催しました。
2015-06-01 浄水器を『トレビーノ MK307MX』に交換してみました。
水道の蛇口に浄水器を付けて使っていたんですけど、何年も使ってそろそろ古くなってきたので、新しい浄水器に取り替えてみることにしました。
2015-05-30 Apple Watch 対応のバンドを買ってみました。
Apple Watch のバンドといえば Apple 純正のお高いものしか存在しない状況でしたが、この頃になって他のメーカーからも比べれば安価なバンドが買えるようになってきました。ただ、人に紹介するには品質的にはどんなものかが気になったので、試しに買って心地を試してみることにしました。
2015-05-26 Evernote のデータフォルダーを Finder で開く。
Mac OS X の Evernote でノートデータが保存されている場所を知りたくなって調べていたのですけど、Evernote アプリ自体にデータフォルダーを Finder で開く機能が用意されていました。
2015-05-15 Thunderbolt ディスク上のタグを検索できなかった原因。
OS X Yosemite にアップデートしてから Thunderbolt で接続していた外付け SSD ディスクに保村したファイルを "タグ" で検索できなくなっていました。それ以外のディスクでは問題なかったので Thunderbolt の問題かと思っていたんですけど、実は Spotlight のインデックスが破損したのが原因でした。
2015-05-14 USB 3.1 機器がいよいよ登場してきたみたい。
新 MacBook の登場で USB 3.1 に急速に注目が集まってきました。発売当初は Apple 純正のものくらいしか選択肢がなかった USB 3.1 対応機器でしたが、いよいよ他のメーカーからも登場してきたみたいです。早くも価格も比較的手頃で、今後ますますの盛り上がりがとても楽しみです。
2015-05-14 今年もクレジットカードで自動車税を納付してみる。
今年も自動車税を納税する季節になりました。自分の手元にも納税通知書が届いたので、今年も昨年と同じようにクレジットカードで納付しておくことにしました。
2015-05-06 標準ライブラリの機能には Swift 名前空間でアクセスできる。
Swift で標準ライブラリにある関数と同じ名前の関数を新たに定義したときに、標準ライブラリにある方の関数を呼びたいときには Swift 名前空間を指定することで実現できます。
2015-05-06 Equatable に準拠しているかを実行時には判定できない様子
Swift で、実行時に渡されてきたインスタンスが Equatable に準拠しているかを判定したかったのですけど、どうやらそれはできない様子でした。
2015-05-03 Swift の変数で型を扱う。
Swift の変数を型でやり取りしたいときには Type 型を使用します。ここではその特徴と、型の判定方法について見ていきます。
2015-05-02 Apple Watch に初めて触れて感じたこと。
待ちに待った Apple Watch が発売されて 1 週間が経ちました。嬉しいことに自分も初日に手に入れられたので、それから使ってみている中で感じた心地を綴ってみることにしました。
2015-04-21 Swift で書式文字列を受け取る関数を作る。
Swift でも Objective-C 言語でおなじみの書式文字列を受け取って文字列を作る関数やメソッドを簡単に実装できるようになっています。
2015-04-07 Xcode で Derived Data を簡単に削除する方法。
このところ Xcode で、クリーンビルドだけでは問題が解消しなくて Derived Data の削除が必要になることがたびたびある気がします。そこで簡単に Derived Data を削除する方法を整理しておきます。
2015-04-07 Swift 1.1 では独自の演算子を定義しない方が無難そう。
Swift では独自の演算子を定義できるようになっていますが、同じ記号の演算子を複数のモジュールで定義すると何かと困ったことになるようです。同じ記号の演算子を複数のモジュールで定義すると途端に使えなくなったりするので、使う場所はかなり制限されそうです。
2015-04-05 Swift でディレクトリを中間層も含めて作成する。
Swift でディレクトリを作成したいときは NSFileManager を使うと中間ディレクトリも含めて簡単に作成できます。
2015-04-05 Xcode 内のバイナリを探してヘッダーファイルを抽出する。
Xcode のプラグインを作っていて知らないオブジェクトに出会ったときに、都度それが持つ機能を調べなくても良いように、Xcode アプリ内のバイナリから手当たり次第にヘッダーファイルを抽出するスクリプトを作ってみました。
2015-04-04 class-dump でバイナリからヘッダーファイルを抽出する。
Xcode のプラグイン作りに手を出してみると、フレームワークからヘッダーを抽出する必要に迫られたので class-dump を使ってみました。
2015-04-02 ビルド時に corrupted AST file エラーが発生。
Xcode 6.2 でいつものようにアプリをビルドしていたところ、ある日から突然 malformed or corrupted AST file というビルドエラーが発生するようになりました。それを解消してみたときのお話です。
2015-03-31 JSContext の作成に失敗しないようにする。
JavaScriptCore で頻繁に JSContext を作成していると、ときどき EXC_BAD_ACCESS が発生することがありました。そんなときの対処法を見つけたので記しておきます。
2015-03-30 Swift でデリゲートを実装する方法。
Swift でデリゲートパターンを実装する方法を整理してみました。Objective-C でお馴染みのデリゲートメソッドの実装を任意にする方法についても紹介します。