これは面白そう。 以下、引用: ソフトウェア開発における「プロトタイプ」とは、シミュレーションを目的とした試作品のことをいいます。本書で解説するプロトタイピングは、主に紙などを使った「低精度プロトタイピング」を中心とした手法です。リスク回避や初期段階における可能性の模索をメ...
これは面白そう。 以下、引用: ソフトウェア開発における「プロトタイプ」とは、シミュレーションを目的とした試作品のことをいいます。本書で解説するプロトタイピングは、主に紙などを使った「低精度プロトタイピング」を中心とした手法です。リスク回避や初期段階における可能性の模索をメ...
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
OpenEars は Politepix 社より提供されているフリーの iOS 向け音声認識/音声合成(Text to Speech, TTS)ライブラリです。 OpenEars 話した言葉を認識したり、入力した文字列を読み上げたり(mac の say コマンドみたいなもの)することができます。 試してみたところ超簡単に使えたので、自分のアプリに OpenEars を導入する方法を紹介します。 音声合成の導入方法 フレームワーク追加、ヘッダインポートといった一般的なライブラリの導入手順をのぞけば、基本的にはメソッドを1つ呼ぶだけで導入できます。 1. フレームワークをプロジェクトに追加 解凍したフォルダ配下にあるFrameworkフォルダごとプロジェクトに追加します。フォルダには OpenEars.framework、Slt.framework ほか、言語モデルや辞書が入っています。 また
以前、「インスタンス変数へアクセスする」の最後に書いたように、インスタンス変数へアクセスする方法として、「宣言プロパティ」を使う方法があります。 今回はその概念と定義の方法を解説し、次回で使い方を説明したいと思います。 プロパティーの概念 propertyとはもともと所有物とか、ものの性質といった意味があります。オブジェクト指向でいうオブジェクトの所有物、性質とは一体なんでしょうか。 プロパティーの概念を知るために、ちょっとした例を考えてみましょう。 例えば今、「人間」クラスのオブジェクトがあったとします。彼は「男性」で名前は「Nick」、星座は「天秤座」です。 これら全ての情報は、この彼にとって所有物、特徴になります。これがプロパティです。 外部のオブジェクトが彼について知りたければ、この情報を見ればいいのです。 しかし、今までのObjective-Cではこのような情報に外からなかなかア
興味の赴くままに勉強してたら、読み書きできる言語は9個になりました。他にもいくつか気になる言語があったりなかったり? まだまだ続く、楽しいお仕事わーくワク♪ « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 » 2016.11.15 (Tue) こんにちわ。4ヶ月ぶりの記事ですね。 その間、何してたかというと、割とのんびりしてました。 でも、心は今秋に発売になるというMacBookProを待っていたんですね。 やっと発売されたソイツは、買い替えるにはかなりビミョーなシロモノだったわけです。 そのやり場のない気持ちを抑え込むべく始まった「現況MBPをてこ入れしてヤルゥ!」チャレンジ。 ■現況MBPの問題点 1)アダプターを外したら、いつ強制終了するかわからない貧弱バッテ
株式会社ゴクロの浜本です。SmartNewsでは、主にサーバサイドのURL収集およびインデクシング部分と、iOSアプリの開発を担当しています。 このエントリーでは、私が好きなIDEの1つで、Objective-Cによる開発効率を大幅に高めてくれると感じているAppCodeについて、Xcodeとの機能比較表を作ってみました。 XcodeやAppCodeの真価を引き出す上で、私が最重要レベルと位置付けているコマンドとショートカットキーを厳選して表にしたので(厳選という割には結構なボリュームになってしまいましたが)、チートシート的なチェックリストとしても活用していただけると思います。 AppCodeを使うようになった背景 (個人的な経緯なので、不要な方は読み飛ばしてください) 私はJavaの使用歴が長いのですが、Java開発の生産性を上げるべく、今までいろいろなIDEを試してきました。Java
ObjectiveCの文字列検索はrangeOfStringメソッドを使うことによって実現できますが、ほかの言語と比べてややこしい気がするのでまとめておきます。 基本的なrangeOfStringの使い方 NSString * str = @"abcdefg"; NSRange range = [str rangeOfString:@"cd"]; if (range.location == NSNotFound) { NSLog(@"検索対象が存在しない場合の処理"); } 上のような例を実行すると、strのうち"cd"の範囲がNSRangeという形で返されます。 NSRangeは文字列の最初の文字の位置をrange.location、文字列の長さをrange.lengthとして取得でき、存在しない場合はlocationがNSNotFoundとなります。 上の例だとrange.locati
Objective-C でプロパティ名はほとんどの場合インスタンス名と同じです。しかし、何かしらの理由でインスタンス名を公開したくない場合、インスタンス名とプロパティ名を変えることができます。 例えば Book クラスに title というインスタンス変数があり、name というプロパティ名にしたい場合は以下のようにします。 @interface Book : NSObject { NSString* title; } @property NSString* name; @end インスタンス変数に title、プロパティ名に name を指定します。 次に @implementation で synthesize を指定する際に、以下のように @synthesize name=title; と指定するのがポイントです。これで name のアクセッサ(setName: , name) が作
暗泳 怀亚特·拉塞尔,凯瑞·康顿,艾米丽·霍菲尔,加文·沃伦,南希·利内翰,本·辛克莱尔,乔迪·朗,埃迪·马丁内斯,普雷斯顿·加利,埃莉·阿莱扎,艾万·乌塔帕,Eleanor,T.,Threatt,Elijah,J.,Roberts,Celina,Cardoso,Maetrix,Fitten,埃文·沙夫兰 都是陌生人 安德鲁·斯科特,保罗·麦斯卡,卡特·约翰·格劳特,杰米·贝尔,克莱尔·芙伊,Ami,Tredrea,Cameron,Ashplant,Lincoln,R.,Beckett,Jack,Cronin,Christian,Di,Sciullo,Oliver,Franks,Hussein,Kutsi,Gsus,Lopez,Jack,Pallister,Guy,Robbins,Darren,Ryames,Zachary,Timmis,Carolina,Van,Wyhe
既存記事のまとめのため新しい要素があるわけではないのですが、Appleから発表されたXcode 5が正式にリリースされる前の復習ということで。 Tipsを適用する前のコード #pragma mark - Private Category @interface Sample () @property (strong) NSNumber* i; @property (strong) NSNumber* c; @property (strong) NSNumber* f; @property (strong) NSArray* array; @property (strong) NSDictionary* dictionary; @property (strong) Sample* child; @property (strong) UIColor* color; @property (assi
最近話題のシンプル&リーダブルなObjective-C “Modern Objective-C”について 一度ちゃんと調べたいと思ってたので記事にしてみました。 本エントリでは、Modern Objective-Cになると何がどう嬉しいのか、 古い書き方”Legacy”と新しい書き方”Modern”の比較を通して見ていきます。 ちなみに、Modern Objective-Cの詳細については、iOS Dev Centerにて公開されている WWDC 2012の下記のセッションの資料にて詳しく説明されています。 Modern Objective-C (Patrick C Beard / Session 405) Migrating to Modern Objective-C (Session 413) また、日本語情報としては下記のエントリが参考になります。 今日からライオンでも使える!XCO
昨日(6/1)、はてな京都オフィスで開催されたCocoa勉強会関西で「ワタシは Singleton がキライだ」というタイトルで発表してきた。内容について興味のある方はスライドを SlideShare に載せたのでそちらを見てください。 (2013/6/8 追記: この発表で使ったサンプルとだいたい同じものを GitHub で公開しました。CoreDataBooks ではなく、Core Data アプリのテンプレートをベースにしたものになっています) 時間はだいたい30分くらいが基本なんだけど、今回はちょっと気合いを入れて45分枠をもらった。 今回発表したようなテーマには、個人的には10年近く前に Java プログラマをやっていた頃から取り組んでいて、当時からはてなダイアリーに書いたりしてた(この記事とかこの記事とか)。Java 方面では Spring やら Google Guice とい
Objective-C の仕様は近年急激に変化しています. Objective-C 2.0 (2006, Leopard)Objective-C 2.0 with Blocks (2009, Snow Leopard)Modern Objective-C (2011, Lion) また,ランタイムのほうも2005年のTigerで一段落したかと思いきや,その後ガーベージコレクタを入れたり非推奨にしたりとめまぐるしく仕様が変わっています.ここらへんは OS X だけでなく iOS とも歩調を合わせるために致し方の無いことかもしれません. さて,Lionから導入された Objective-C の modern syntax ですが,この新文法を使うことにより非常に簡潔にプログラムが書けるようになりました. 極端な例を挙げますと, #import <Foundation/Foundation.h>
Leopardで大幅に手を加えられたObjective-Cのランタイムですが、Snow Leopardでもちょこっとだけランタイムに手が加えられました。それがAssociated Objectです。こいつはあるオブジェクトに対してキー付きで任意のオブジェクトをひも付けすることができるもので、ランタイム関数を使うことで簡単に扱えます。コードはこんな感じ。 id obj = ...; // 任意のオブジェクト NSString *key = @"key"; // キー objc_setAssociatedObject(obj, key, @"value", OBJC_ASSOCIATION_RETAIN); objc_getAssociatedObject(obj, key); // → @"value" が取り出せる objc_setAssociatedObject()で、オブジェクトに他の
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く