1 名前:デフォルトの名無しさん [2010/07/22(木) 01:38:19 ] Objective-C(オブジェクティブ シー)はプログラミング言語の一種。C言語をベースにSmalltalk型のオブジェクト指向機能を持たせた上位互換言語。 (Wikipedia:ja.wikipedia.org/wiki/Objective-C より) Objective-C [ObjC part:4]; pc12.2ch.net/test/read.cgi/tech/1239721860/ Objective-C [ObjC part:3]; ttp://pc12.2ch.net/test/read.cgi/tech/1186543111/ Objective-C ttp://pc11.2ch.net/test/read.cgi/tech/1106983092/ Objective-C ttp://pc5.2ch.net/tech/kako/990/990574267.html
2 名前:デフォルトの名無しさん mailto:sage [2010/07/22(木) 01:40:01 ] *** プログラム技術板 *** 【マック】Macintoshプログラミング質問箱 ttp://pc11.2ch.net/test/read.cgi/tech/1113058054/ Mac OS Xでの開発環境はどれがイイ? ttp://pc11.2ch.net/test/read.cgi/tech/1163314891/ *** 新・mac板 *** Cocoaはさっぱり!!! version.15 pc11.2ch.net/test/read.cgi/mac/1277992217/ Macでプログラミング{10} pc11.2ch.net/test/read.cgi/mac/1248682344/ Xcode part8 pc11.2ch.net/test/read.cgi/mac/1265669504/ iPod touch/iPhone ネイティブアプリ製作 ver.14 pc11.2ch.net/test/read.cgi/mac/1275056337/
3 名前:デフォルトの名無しさん mailto:sage [2010/07/22(木) 01:41:02 ] *** 本家 *** Objective-C 2.0 プログラミング言語 ttp://developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjectiveC/ Introduction to The Objective-C 2.0 Programming Language ttp://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html そのほか英語 ttp://developer.apple.com/documentation/Cocoa/ObjectiveCLanguage-date.html *** 書籍 *** 荻原本 amazon.jp/dp/4797346809 HMDTダイナミック本 amazon.jp/dp/4861006414
4 名前:デフォルトの名無しさん mailto:sage [2010/07/22(木) 01:41:46 ] ダイナミック Objective-C サイト journal.mycom.co.jp/column/objc/ Apple のランタイムのソースコード (10.5.6) www.opensource.apple.com/darwinsource/10.5.6/objc4-371.2/ 英語のサイト Objective-C 入門 cocoadevcentral.com/d/learn_objectivec/ Objective-C Style 1, 2 (変数名のつけかた等) cocoadevcentral.com/articles/000082.php cocoadevcentral.com/articles/000083.php Mike Ash さん(Audio Hijack の中の人)のブログ、 Obj-C のランタイムの話が良く出る mikeash.com/?page=pyblog/ C++ と Objective-C の文法の比較 ktd.club.fr/programmation/objective-c.php
5 名前:デフォルトの名無しさん mailto:sage [2010/07/22(木) 04:04:24 ] >>1 乙 荻原本、BlocksやGCDを追記して改訂版出してくれないかな
6 名前:デフォルトの名無しさん [2010/07/23(金) 01:19:42 ] あげ
7 名前:デフォルトの名無しさん mailto:sage [2010/07/23(金) 17:06:37 ] なんとかBASIC!!!
8 名前:デフォルトの名無しさん mailto:sage [2010/07/24(土) 15:09:57 ] memory管理めんどくせ
9 名前:デフォルトの名無しさん mailto:sage [2010/07/24(土) 15:17:23 ] 作法が理解出来ない奴はみなそう言う。
10 名前:デフォルトの名無しさん mailto:sage [2010/07/24(土) 16:19:05 ] memory管理めんどくせって思ってたら、 GCあるからretain/releaseしなくていいよって聞いたのに、 iOSにはGCないんだってさ。 memory管理めんどくせ
11 名前:デフォルトの名無しさん [2010/07/25(日) 07:10:53 ] GCは甘え
12 名前:デフォルトの名無しさん mailto:sage [2010/07/25(日) 21:03:48 ] 解説本読んでると、メソッド名と同じ名前の変数名が使ってあって頭がこんがらがります。 こういうのOKなんですかね。
13 名前:デフォルトの名無しさん mailto:sage [2010/07/25(日) 21:21:52 ] >>12 JavaでもOKだね。
14 名前:デフォルトの名無しさん mailto:sage [2010/07/25(日) 21:42:44 ] >>13 そうなんですか。 OKでも使わない方がいいような気がするんですが、慣れたら平気なんでしょうね。
15 名前:デフォルトの名無しさん mailto:sage [2010/07/26(月) 19:34:25 ] retain/releaseでいいじゃんいいじゃん
16 名前:デフォルトの名無しさん mailto:sage [2010/07/28(水) 13:02:34 ] 新・mac板から勝手に転載w ---- [SDK]iPhoneアプリ開発初心者質問箱7[touch][iPad] pc11.2ch.net/test/read.cgi/mac/1278433229/ 624 名前: 名称未設定 Mail: sage 投稿日: 2010/07/28(水) 00:08:55 ID: B8n5McN10 電子書籍アプリ自分で作ろうかと思ったけど、プログラミング未経験にはキツい! だれかソースコード売ってください笑 ガチで買いたいです。 詳細はappleandbananaあっとmail.goo.ne.jp •文字サイズ変更(大中小くらいで可) •閉じたページ記憶&そっから再開 •ページ間に画像も入れれる •タップでページスクロールバーがでる •右側タップで戻る、左側タップで進む ----
17 名前:デフォルトの名無しさん mailto:sage [2010/08/05(木) 08:30:02 ] >>11 オートマ車を認められずに、マニュアル車に固執する臭いオッサンみたいだ
18 名前:デフォルトの名無しさん mailto:sage [2010/08/05(木) 09:08:38 ] オートマ車はブレーキとアクセルの踏み間違い事故が多すぎ 明らかな構造的欠陥に目をつぶって売り続けるのは信じられない
19 名前:デフォルトの名無しさん mailto:sage [2010/08/07(土) 03:52:34 ] iphoneアプリでhttpリクエストで取得したフィードのHTMLから、 特定のクラスのinnerHTML等を簡単に抜き出す方法を教えてくれ。 フィードの投稿一つずつをUITableViewのcellに置き換えたいです。 jqueryのようにできませんかね?webkitを少し調べればできるの? 教えてエロイ人!
20 名前:デフォルトの名無しさん [2010/08/07(土) 03:54:32 ] スレ違い 失せろ
21 名前:デフォルトの名無しさん [2010/08/07(土) 03:55:02 ] age
22 名前:デフォルトの名無しさん mailto:sage [2010/08/07(土) 03:57:27 ] >>20 間違えたの!
23 名前:デフォルトの名無しさん mailto:sage [2010/08/07(土) 04:00:33 ] 板違い
24 名前:デフォルトの名無しさん mailto:sage [2010/08/07(土) 04:09:09 ] >>22 おまえマジでうぜえよ 社会のゴミだな まったく価値が無い
25 名前:デフォルトの名無しさん [2010/08/07(土) 08:48:34 ] 新規ファイルでUIVIEW SUBCLASSを作成したいんですが Cocoa Touch Classの欄内に UIVIEW SUBCLASSが存在しないので作成できません。 なにかインストールし忘れとかでしょうか? どなたか教えてください。
26 名前:デフォルトの名無しさん mailto:sage [2010/08/07(土) 08:58:15 ] 自分で書け、以上。
27 名前:デフォルトの名無しさん mailto:sage [2010/08/08(日) 18:56:49 ] そもそもある
28 名前:デフォルトの名無しさん [2010/08/09(月) 09:06:00 ] >>27 どのように作成すればよいのでしょうか? 自分の場合cocoa touch classの欄内が↓のようになっている為 uiview subclassが選択出来ません。 www.iphonedevcentral.com/wp-content/uploads/2009/08/tutorial015.jpg
29 名前:デフォルトの名無しさん [2010/08/09(月) 09:18:22 ] たのしそうだな・・・何年かしたら、できるようになるんじゃない?
30 名前:デフォルトの名無しさん [2010/08/09(月) 11:12:44 ] MT車の方が楽しい
31 名前:デフォルトの名無しさん mailto:sage [2010/08/09(月) 13:10:09 ] >>28 う〜ん、落ちが分かったような… MacOSのバージョンとXcodeのバージョンは? あとCPUの種類も聞いておこうかw
32 名前:デフォルトの名無しさん mailto:sage [2010/09/02(木) 14:13:07 ] @interface Foo : NSObject { NSString filePath; } -(id)initWithFilePath:(NSString)filePath; @end とメンバ変数と同じ名前の引数を渡したいのですが、 @implementation Foo -(id)initWithFilePath:(NSString)filePath { self = [super init]; if(self != nil){ filePath = filePath; } } @end とするとエラーになります。自身が持つメンバ変数を指定する方法はありませんか? Javaで言うと、this.filepath = filepath; のような方法を教えてください。
33 名前:デフォルトの名無しさん [2010/09/02(木) 14:40:49 ] >> 32 基本的にはできないと思ったほうが幸せかも。 普通はメンバ変数をアンダースコア付きにするとか、仮引数を変更する。 NSString *_filePath; - (id) initWithFilePath:(NSString *)path; self->filePath = filePath; とか、self.filePath = filePath; は、できるけど警告出るし。 それよか、NSString に * がない方が気になるのだが…
34 名前:デフォルトの名無しさん [2010/09/02(木) 14:48:59 ] アンダースコアプレフィックスはAppleに予約されてる いつか痛い目みるかもしれない GoogleのObjC規約ではサフィックスにアンダースコア付けることになってる google-styleguide.googlecode.com/svn/trunk/objcguide.xml?showone=Variable_Names#Variable_Names
35 名前:デフォルトの名無しさん mailto:sage [2010/09/02(木) 15:24:03 ] >>33 さん ありがとうございます。 警告が出ると鬱陶しいので、アンダースコアを先頭に付けようと思ったのですが、 >>34 さんが書かれているようにAppleが使いますね。 メンバ変数の末尾にアンダースコアを付ける記述を試してみようと思います。 お二人共、ありがとうございました。 (NSString *)になってないのは、単純にミスです。お恥ずかしい…。
36 名前:デフォルトの名無しさん [2010/09/02(木) 15:26:46 ] それの適応範囲はクラス名、メソッド名など。 よく読めば分かると思うけど、インスタンス変数名には適応されてない。 KVC のダイレクトアクセスで "_hoge" が検索対象のトップだしね。 google の規約を持ち出すのはなぜ? developer.apple.com/mac/library/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingIvarsAndTypes.html
37 名前:デフォルトの名無しさん [2010/09/02(木) 15:32:53 ] 追記: サフィックスにアンダースコアをつけると、KVC の検索対象に入らないから勧めない。
38 名前:デフォルトの名無しさん [2010/09/02(木) 15:51:19 ] >インスタンス変数名には適応されてない されてる だいたい実際に使われてるんだから普通に考えれば使いたいと思わない >KVC のダイレクトアクセスで "_hoge" が検索対象のトップ それこそまさに Appleが使っているから→フレームワークのコア部分→すこしでも早くしたい からであって、一般開発者が立ち入る領域ではない >google の規約を持ち出すのはなぜ? 単に例として挙げた 他にObjCのまとまった規約の存在を知らないし >KVC の検索対象に入らない 普通にプロパティ立てればいいだけ
39 名前:デフォルトの名無しさん [2010/09/02(木) 17:57:08 ] >>38 > 他にObjCのまとまった規約の存在を知らないし Cocoa なら、Appleのコーディングガイドラインをきちんと読むべきだ。その上で、 それでもなお、「適応されている」と主張するなら根拠となる記述を挙げて欲しい。 Appleのインスタンス変数命名規約には"_"の禁止なんて、どこにも書いてない。 お宅様の「普通」とやらはしらんけど、さっき貼った正規のガイドラインすら読まずに 適当なこと書くのは、世間一般でいう「普通」ではないようだね。 インスタンス変数はクラス毎の名前空間にあるので、クラス間で被っても問題なく 使えるのが当然。例外は継承元のいずれかに同名のインスタンス変数があった場合だが、 これも理由つきでエラーが出るので安全。KVCも対応。これで禁止する理由は何かある? メソッド名すら「かぶらないことが確実に確認できるなら」という条件付きで、 "_"プレフィックスが正式に認められているのに? >少しでも早くしたい 速くするのに KVC なんて、メソッドなんて使わねーす。冗談も大概にしてくだせぇw
40 名前:デフォルトの名無しさん mailto:sage [2010/09/02(木) 18:16:38 ] まぁまぁ、そんなにカッカしないで、俺にファイルから1行ずつ読み込む方法を教えてくれよ。 NSFileHandleとNSDataを使ってあとはゴリゴリやるしか方法は無いのかね?
41 名前:デフォルトの名無しさん [2010/09/02(木) 18:22:11 ] NSString -getLineStart: end: contentsEnd: forRange: ?
42 名前:デフォルトの名無しさん mailto:sage [2010/09/02(木) 18:24:10 ] >>41 それこそ正に、NSData からゴリゴリやるの一例だろ。
43 名前:デフォルトの名無しさん [2010/09/02(木) 18:54:17 ] >>39 A prefix has a prescribed format. It consists of two or three uppercase letters and does not use underscores or “sub prefixes.” >メソッド名すら「かぶらないことが確実に確認できるなら」という条件付きで、 >"_"プレフィックスが正式に認められている Don’t use the underscore character as a prefix for your private methods. Apple reserves this convention. >速くするのに KVC なんて、メソッドなんて使わねーす あなたがあなたのコードの中でどうするかなんて問題にしてないです フレームワークへのアクセスを言ってるんです なんかドキュメントに書いてることと真反対のこと言い出すとか、触っちゃいけないタイプの人に触っちゃったようだ みなさんごめんなさい、もう終わりにします
44 名前:デフォルトの名無しさん mailto:sage [2010/09/02(木) 18:56:54 ] 一行づつ読み込むのにゴリゴリじゃない方法って、、、一行づつ読む時点でゴリゴリだろう
45 名前:デフォルトの名無しさん [2010/09/02(木) 19:49:36 ] >>43 >39の意味が分からないようですね。ガイドラインを、正確に、読みましょうね。 あなたの挙げたものはインスタンス変数の規約ではありません。 インスタンス変数についての規約には、次のように書いてあります。 @public は避けろ。データの格納の仕方より、interface に気を使え。 @private と @protected をうまく使え。 名前は的確に。 アクセスできる変数にはアクセサつけろ。 以上。これらから「インスタンス変数名に"_"を使うな」とは読めませんね。
46 名前:デフォルトの名無しさん mailto:sage [2010/09/03(金) 09:22:55 ] >>44 一気に取得する方法があるのかい+?
47 名前:デフォルトの名無しさん [2010/09/03(金) 09:35:48 ] まるごと読み込んでから、componentsSeparatedBy...:
48 名前:デフォルトの名無しさん mailto:sage [2010/09/03(金) 10:45:11 ] 自己解決。 NSString stringWithContentsOfFile:encoding:error なんつー便利なメソッドがあるじゃないの。 これで取得して改行コードで区切っていけばオッケーって訳だな。 それがもしかしたら、>>47 さんのメソッドなのかもしれない。 試してみるよ、ありがとう!
49 名前:デフォルトの名無しさん mailto:sage [2010/09/03(金) 13:41:38 ] >>48 自己解決って、、、質問の直後 >>41 で真っ先に回答が出てるじゃないか。 改行コードで区切ったりすんなよ。
50 名前:デフォルトの名無しさん mailto:sage [2010/09/03(金) 13:57:45 ] >>49 それこそ正に、NSData からゴリゴリやるの一例だろ。
51 名前:デフォルトの名無しさん mailto:sage [2010/09/03(金) 16:14:15 ] 巨大なファイルを扱うから NSFileHandle で部分的に読む込もうとしてるのかと思ったら、それ以前の問題だったらしい。
52 名前:デフォルトの名無しさん mailto:sage [2010/09/03(金) 20:13:30 ] ファイルの中身がそのまま見えるイメージで良いならmmap()するのが一番簡単 メモリ中に置かれてるのと同じ処理で良いし、巨大なファイルでも仮想記憶システムが 面倒見てくれるので無駄なコピーも発生しない。
53 名前:デフォルトの名無しさん mailto:sage [2010/09/08(水) 19:11:09 ] >>45 ガイドラインには、「インスタンス名の頭に_を使うな」とは書いてないかもしれません。 しかし、スーパークラスとサブクラスで同じ名前のインスタンス変数を宣言することはできません。(コンパイルエラーになります) そして、Cocoaのクラスのインスタンス変数名は全て_から始まっています。 なので、実質的に「インスタンス変数名の頭に_は使えない」となります。 逆に言うと、インスタンス変数名の頭に_を使わなければ、Appleとの競合を確実に避けられるということです。
54 名前:デフォルトの名無しさん [2010/09/08(水) 20:03:54 ] >>53 まだやるんですかぁ・・・書いてないんだから、使ってもいいでしょうに。 >スーパークラスとサブクラスで同じ名前のインスタンス変数を宣(ry 安全にコンパイルエラーになるなら、変数名変えればいいだけ。>39で言及済みです。 >そして、Cocoaのクラスのインスタンス変数名は全て_から始まっています。 誠に残念ですが、isa は "_isa" ではない。よって "_" が無くてもダブる可能性がある。 反論終わり。勝手にガイドラインを拡大して、それを広めないでくださいな。 あなたのスタイルを批判しているのではない。 不正確な情報を、さも正しいかのように言うのを批判しているのみ。
55 名前:デフォルトの名無しさん [2010/09/08(水) 20:18:33 ] そもそも>>39 が嘘ばっかりやん
56 名前:デフォルトの名無しさん mailto:sage [2010/09/08(水) 21:01:18 ] 具体的にどこでしょう?ぜひ改めさせていただきたいので、ご指摘願います。 タイポ ○適用 ×適応 メソッド名の "_" は誤解を招いたかもしれませんが、ガイドラインにある "BF_..." の例。 「名前空間」が同じく誤解を招くかもですが、継承を含めた ivar[] のことです。
57 名前:デフォルトの名無しさん mailto:sage [2010/09/08(水) 22:34:40 ] AT車の便利さと比較してる奴は馬鹿か? AT車MT車は一般人が使うものだろ。 一般人が使うものなら楽であればあるほどいい。 しかしおまえらはプログラマという専門家だろ?楽に走ってどうすんだ。 楽な言語で楽に書いて細かい原理は知りませ〜ん、じゃあ専門家とは言えんぞ。
58 名前:デフォルトの名無しさん mailto:sage [2010/09/08(水) 23:37:13 ] 昔はObjective-Cは専門家しか使わなかったけど iPhogeが出て来てここ数年でがらっと風向きが変わった
59 名前:デフォルトの名無しさん mailto:sage [2010/09/09(木) 00:14:15 ] 楽な言語で楽に書いて詳細も知ってます、 だろ普通は
60 名前:デフォルトの名無しさん mailto:sage [2010/09/09(木) 12:41:33 ] Javaで書きたいiPhoneアプリ
61 名前:デフォルトの名無しさん mailto:sage [2010/09/09(木) 13:33:23 ] Javaだけはないわ
62 名前:デフォルトの名無しさん mailto:sage [2010/09/09(木) 18:38:59 ] ヌルポ
63 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 03:42:44 ] すいません何故こうなるか教えてください。 ヘッダで宣言したインスタンス変数に、実装で型を指定せずにallocしようとしたら、その変数は分からないと言われました。 反対に、ヘッダで宣言したNSArray*変数を実装でも型を使用しようとしたら名前ダブってると言われます。 同じように感じるその二つに、二通りの結果があるのは何故でしょう?
64 名前:デフォルトの名無しさん [2010/09/11(土) 09:13:28 ] >>62 ガッ!!
65 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 09:49:23 ] >>63 ソース書いてみて
66 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 10:30:02 ] >>65 ありがとう。今外出しているので晩に書かせていただきます。
67 名前:デフォルトの名無しさん [2010/09/11(土) 11:28:34 ] >60 そういや2008年頃に、SunがiPhone用のJava VMを作成するとかいうのが ニュースにあったような気がするけど、どうなったのかな?
68 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 17:54:12 ] >>67 Jobsが禁止した。
69 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 18:20:33 ] 新しい規約だと各々がJAVA VMを内包するという力技ならOK かな?
70 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 18:59:57 ] >>69 え、できるようになったのは確定事項? もしそうなら嬉しい Java VMじゃないけど、SchemeのSECDマシンが動けばいいのにと妄想してた
71 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 21:43:51 ] >>70 外から見えるVMは改定でもダメ。
72 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 22:18:43 ] >>71 iPhoneアプリケーションに、Obj-Cで書いたSECDエンジンと SECDコード(=Schemeソースをコンパイルしたオブジェクト)を内蔵させる、 という考え方なんだけど、それでもダメ? ユーザからは、普通のiPhoneアプリにしか見えないはずなんだ。 SECDエンジンなら(Java VMよりも)単純だから、 自分で作ってみようかと妄想してたんだけど....
73 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 22:51:02 ] 昔々の事じゃ、Cocoa-JavaというJavaからCocoaフレームワーク呼ぶ物がMac用にあってのう。 Objective-Cになれた開発者にはえらい不評だったそうな。
74 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 23:01:44 ] 自分は結局Cocoa-Javaは使わずじまいだったが、 Javaは(少なくとも当時のJavaは)静的な言語だったから、 Objective-Cデベロッパからすれば、 柔軟性の無い堅苦しいものに見えたのだろね
75 名前:デフォルトの名無しさん mailto:sage [2010/09/11(土) 23:04:24 ] Obj-C習得者がいちいち Cocoa-Java に手を出すことあるかね? 自分はまったく触らなかったから、特に思うことはないな。
76 名前:デフォルトの名無しさん mailto:sage [2010/09/12(日) 09:17:58 ] Javaを使う意味の一つに、マルチプラットフォームって言うのがあるけど、Macだけで動かすつもりならJavaを使う必要なんてないだろうね
77 名前:デフォルトの名無しさん mailto:sage [2010/09/12(日) 10:03:20 ] Objective-Cのような欠陥言語は使いたくもない。
78 名前:デフォルトの名無しさん mailto:sage [2010/09/12(日) 13:07:02 ] >>77 コード書くほうに欠陥があるのでは? 裸のCで書いても問題ないわけだし。
79 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 00:46:50 ] >>72 新しい規約なら問題ない筈。面白そう。
80 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 09:12:35 ] >>77 どういった部分に欠陥があるのかkwsk
81 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 14:58:20 ] ひじょーに個人的な思いを横レスすると、Dictionary のような多用する物が重くて stl を併用しなきゃならない辺りがオタ心をくすぐって嬉しいよな。
82 名前:デフォルトの名無しさん [2010/09/23(木) 12:54:25 ] TableViewに複数のセクションがあり、各セクションごとにセルを追加/削除できる プログラムがあれば教えて頂きたいのですが、 よろしくお願いします。
83 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 13:46:26 ] NSTableView?UITableView?
84 名前:デフォルトの名無しさん [2010/09/23(木) 14:39:09 ] >>83 UITableViewです。 お手数おかけしますがよろしくお願いします。
85 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 17:08:38 ] @encode ディレクティブでとれる const char * から、ビットフィールドを含む 構造体のサイズを計算したいのですが何かよい関数ご存知ありませんか? NSGetSizeAndAlignment はビットフィールドを処理できないようで、SIGABRT が でます。ビットフィールド無しだと計算してくれるのですが… また、10.3.* ~ 10.5.* の gcc_os に objc_sizeof_type() というのを見つけたのですが、 bit field のエンコード形式がどうも実際(10.5SDK)とは違っていました。 これは修正して自分で組むしか無いでしょうか?
86 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 18:35:39 ] >>82 >>84 自分で調べる気、やる気まったく無しw 書いておけば適当に解答返ってくるだろって雰囲気丸出し。
87 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 18:38:55 ] >>85 なんか難しいことをしようとしてる様に見えるけど、大元の目的が何なのかを書けば 誰か別の方法を教えてくれるかも。 struct st1 {char flag : 1;}; struct st2 {int flag : 1;}; @encodeの文字列は両方b1だけど、sizeofしたら1と4だよね。 だから@encodeの文字列からはできないんじゃ?
88 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 19:22:06 ] >>87 レスどうもです。具体的には自前のデータ領域付きのArrayを作りたいと思ってまして。 CFArray + 領域、みたいな感じで、構造体に応じてデータ領域を確保できればなーと。 @encode の情報だけで何とかならないかなと思っていたのです。ご指摘の問題を見ると 確かに難しそうですね。やりたかった事は sizeof(type) 渡せば解決するんです。 ですが、NSGetSizeAndAlignment がビットフラグで SIGABRT だすのを知ったので、 じゃあどうやって NSValue なんかは処理しているのかな?と調べていたのです。 で、objc_sizeof_type() にたどり着いた訳ですがどうも違う。 手がかりがなくなったので、ご存知の方がいるかもしれないと書き込んだ次第です。
89 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 19:44:22 ] >>84 んじゃUITableView Class Reference見て Table View Programming Guide for iOSよっく読んでから Related sample codeの中から好みに合うの探してw
90 名前:デフォルトの名無しさん mailto:sage [2010/09/23(木) 20:01:04 ] >>88 NSValueにビットフィールドありの構造体を渡したらnullが返らない?
91 名前:88 mailto:sage [2010/09/23(木) 20:28:59 ] >>90 げ!確かに null が返ってきますね。 何でも入るもんだと思い込んでいました、お恥ずかしい。 てことは、やはり@encode情報からはsizeはとれないと思った方が良さそうですね。 いろいろとご指摘、ありがとうございます。
92 名前:デフォルトの名無しさん mailto:sage [2010/09/27(月) 02:54:14 ] 教えてください。 ビューを編集する様な処理をして、次の行に進んだところでブレークポイントを入れて見ると、 まだビューがその編集に反映してなくて、そのクラスの処理が終った時点でやっと反映されるのですが、 それを編集直後に反映させるにはどうしたら良いでしょうか。
93 名前:デフォルトの名無しさん mailto:sage [2010/09/27(月) 05:45:27 ] エスパーすると -setNeedsDisplay: or -display やれ
94 名前:デフォルトの名無しさん [2010/09/27(月) 09:41:32 ] 相互に定義しあうprotocolってうまい書き方ないでしょうか。 @protocol protocolA - (void) setTarget:(id <protocolB>)obj; @end @protocol protocolB - (void) setTarget:(id <protocolA>)obj; @end 当然ですが、コンパイルが通りません。 classの場合、@class hoge、とか書いておくと双方向での参照を 難なく定義出来ると思いますが、protocolの場合はどうすればよい でしょう。
95 名前:デフォルトの名無しさん mailto:sage [2010/09/27(月) 09:47:43 ] @protocol protocolB; @protocol protocolA - (void) setTarget:(id <protocolB>)obj; @end @protocol protocolA; @protocol protocolB - (void) setTarget:(id <protocolA>)obj; @end
96 名前:94 mailto:sage [2010/09/27(月) 09:56:35 ] ばっちり通りました。ありがとうございました。 @protocol ESProtocolServer; @protocol ESProtocolClient; @protocol ESProtocolServer <NSObject> - (int) idleTime; - (oneway void) shutdownServer; - (oneway void) setClient:(id <ESProtocolClient>)client; - (BOOL) receiveReq:(NSDictionary *)msg type:(int)type index:(int)index; @end @protocol ESProtocolClient <NSObject> - (oneway void) setServer:(id <ESProtocolServer>)server; - (BOOL) receiveReply:(NSDictionary *)msg type:(int)type index:(int)index; @end
97 名前:92 mailto:sage [2010/09/28(火) 12:19:46 ] >>93 ありがとうございます。 しかし、mainViewControllerにUIViewのインスタンスを合成して、 [self setNeedsDisplay] を表示させたいタイミングに入れましたが、 そうしていない時と同じように、スレッドが終了するまで描画されません。 何か根本的に勘違いしてますでしょうか私は、、。
98 名前:デフォルトの名無しさん mailto:sage [2010/09/28(火) 12:34:03 ] UIKitの処理は指示してすぐに全部その場でやってるとは限らないよ たぶんスレッドを長い間止めないための最適化だと思うけど メソッド呼んでもRunLoopに処理を登録するだけで、実際に処理されるのは イベントループが一回以上回った後なんてのはたくさんある
99 名前:デフォルトの名無しさん mailto:sage [2010/09/28(火) 12:40:34 ] というかsetNeedsなら当然の結果だろ。
100 名前:92 mailto:sage [2010/09/28(火) 22:11:13 ] >>98 ありがとうございます。 UIViewは基本好きな時に再描画出来ない様ですね。 別スレッドに描画メソッドを入れて、 [self performSelectorOnMainThread:@selector(メインスレッド名) withObject:nil waitUntilDone:TRUE]; でメインループを呼びましたら、描画スレッドはそのままスレッドから抜けてくれて、その際に再描画してくれました。 そのメソッドが何ものかハッキリ分かりませんが、支障が出ない事を祈ります。
101 名前:92 mailto:sage [2010/09/28(火) 22:13:19 ] 上のですが、普通にメインループを呼んだだけだと、描画スレッドが処理が戻ってくるまで終わってくれなくて再描画してくれませんでした。
102 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 01:00:37 ] というかsetNeedsなら当然の結果だろ。
103 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 21:47:57 ] Xcodeの静的アナライザでメモリリークが見つかって、当該オブジェクトをメソッドの最後で releaseするようにしたらアプリが落ちるようになったんだけど、こんなときどうすればいいの?
104 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 21:54:17 ] 常駐アプリでないなら、些細なリークを気にしない。
105 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 22:11:41 ] >>104 THX!
106 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 22:24:07 ] >>103 自分に開発は向いてないと悟り、そっとMacBookを閉じる。
107 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 22:36:08 ] >>103 developer.apple.com/jp/iphone/library/japanese.html Cocoaメモリ管理プログラミングガイド Objective-C 2.0 プログラミング言語 が参考になるかと もし初心者なら入門書を買うほうがいいよ
108 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 22:38:26 ] >>106 そしてNintendo DSを開く… …じゃなくて、なぜアナライザが指摘した理由をマニュアルで調べないと分かんないよ 条件分岐とか絡んでない?
109 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 23:04:36 ] 静的アナライザって、リークではない部分を誤ってリークだと報告することはないの?
110 名前:デフォルトの名無しさん mailto:sage [2010/09/29(水) 23:14:46 ] あると言えばある ないと言えばない
111 名前:デフォルトの名無しさん mailto:sage [2010/09/30(木) 00:10:47 ] 条件分岐の中でのみアロケートなりリリースなりをしてないか?
112 名前:デフォルトの名無しさん mailto:sage [2010/09/30(木) 00:56:41 ] リリースして落ちるんだったら、別のとこから参照されてるんだろ。
113 名前:デフォルトの名無しさん [2010/09/30(木) 23:37:48 ] iPhoneSDK アプリケーション開発ガイドという参考書を読んで、 なんとなく全体的に理解できた程度の実力です。 objective-cのアプリ開発経験はありません。 現在、ログイン機能を搭載しているWebサイトを、 iPhoneアプリとして動作しようとしています。 こういう風なデザインにしたいという案があり、 imixというiPhoneアプリのUI的な感じで作ろうと思っています。 ログイン情報を保持して、 アプリを起動した時点でログイン状態になる、 っという仕組みが全くわかりません。 ログイン状態の保持はNSMutableDictionaryを使用して、 書き込み読み出しを行うのかなっていうのが、 なんとなく分かっていることです。 しかし、その情報を使用して、 自動的にログインというのが全く分かりません。 どなたかご教授お願いいたします。 また今作成しようとしているiPhoneアプリでは、 一般的にペニオクと呼ばれるシステムに近いアプリです。 クレジットカードを使用しての仮想マネーの購入、 仮想マネーを使ってのオークションへの参加、 こういった機能はiPhoneアプリとして認可されるのでしょうか? こちらについてもご教授お願いいたします。
114 名前:デフォルトの名無しさん mailto:sage [2010/09/30(木) 23:54:44 ] >>113 スレチ
115 名前:デフォルトの名無しさん mailto:sage [2010/10/01(金) 02:13:33 ] Obj-Cもメジャーになったな。
116 名前:デフォルトの名無しさん mailto:sage [2010/10/01(金) 03:45:59 ] >>113 いろいろな意味で無理。
117 名前:デフォルトの名無しさん mailto:sage [2010/10/01(金) 08:38:53 ] >>115 いろいろな意味で無理。
118 名前:デフォルトの名無しさん mailto:sage [2010/10/01(金) 09:25:54 ] 色々な意味で真理(が好き)
119 名前:デフォルトの名無しさん mailto:sage [2010/10/01(金) 10:46:05 ] ま〜たヤクザがペニオクに目を付けたな
120 名前:デフォルトの名無しさん mailto:sage [2010/10/01(金) 15:31:07 ] ペニスオークション?
121 名前:デフォルトの名無しさん mailto:sage [2010/10/07(木) 08:17:28 ] アップデートきてた Xcode 3.2.4 は Mac OS X 用のデベロッパツールのアップデートリリースです。このリリースは、gdb、Interface Builder、Instruments、llvm-gcc および Clang オプティマイザ、Shark、および Xcode でのバグを解決します。 Mac OS X 10.6.2 Snow Leopard 以降にインストールする必要があります。詳しい手順、既知の問題、およびセキュリティ上の注意事項については、付属のリリースノートを参照してください。
122 名前:デフォルトの名無しさん mailto:sage [2010/10/07(木) 23:58:44 ] ホゲってなんですか?
123 名前:デフォルトの名無しさん mailto:sage [2010/10/08(金) 12:09:24 ] >>122 kmaebashi.com/programmer/hoge.html
124 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 01:47:21 ] >>123 冗談でしょうもっと深い意味があるはず
125 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 15:41:28 ] ああ、鮫島事件並みに深い意味があるんだよ
126 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 17:12:14 ] 基本的な事ですが教えてください。 合成やデリゲートでインスタンスを操作出来るのなら、 ライブラリ設計の段階で何故継承が必要なクラスを作ったのでしょうか?
127 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 17:21:40 ] 例えばNSViewの描画メソッドで一部に独自の描画を加える場合delegationではどうするの? originalのdelegateを取得しておいて新しいdelegateを設定、 描画メソッドでoriginalのdelegateに描画させた後、独自の描画を加える? サブクラス化の方が分かりやすくていいと思うけど?
128 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 17:33:34 ] >>127 ありがとうございます。 つまり継承の意義は、メソッドのオーバーライドが出来るか否かにかかっているのですね。
129 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 18:46:28 ] >>125 的確だな
130 名前:デフォルトの名無しさん [2010/10/11(月) 13:03:04 ] Webページのダウンロードで行き詰ってしまっため、アドバイスを頂けないでしょうか。 指定したサイトを画像付きで一式ダウンロードして、オンラインで閲覧できるようにしたいと思っています。 #ByLine等と同じ感じです ここを参考にダウンロード処理を書きました。 developer.apple.com/library/ios/#documentation/cocoa/Conceptual/URLLoadingSystem/Tasks/UsingNSURLConnection.html#//apple_ref/doc/uid/20001836-BAJEAIEE 取得結果をファイルに保存したのですが、htmlファイルしか保存出来ていません。 画像込みでダウンロードするにはどうしたらよいのでしょうか?
131 名前:デフォルトの名無しさん [2010/10/11(月) 13:05:25 ] >オンラインで閲覧 すいません、"オフライン"の間違いです。。
132 名前:デフォルトの名無しさん mailto:sage [2010/10/11(月) 13:19:23 ] >>130 ダウンロード処理はいいが、HTMLの解析の処理は?
133 名前:デフォルトの名無しさん mailto:sage [2010/10/11(月) 13:22:47 ] あー、というか、HTMLとはどういう構造で、httpでどのような通信のやりとりをするか、 分かってないのでは?プログラミング以前の問題。
134 名前:デフォルトの名無しさん [2010/10/11(月) 13:34:36 ] 回答ありがとうございます。 >HTMLの解析の処理は? 解析とは「取得したHTMLからimgタグ等を探して画像を保存&パスもローカルに変更」 ということを指している、と思ってよいでしょうか。 ダウンロードのメソッドを叩いて、これと同じことが出来るのかな、と思っていました。 これを手で書くのは結構つらそうですね。。 IE等で「Webページの完全保存」を実行した場合と同じようなことができるライブラリはないでしょうか。 #WebページをキャッシュするiPhoneアプリは皆さん自作しているのかなぁ。。
135 名前:デフォルトの名無しさん mailto:sage [2010/10/11(月) 14:12:52 ] スレチだっつの ここは Objective-C"言語" のスレだ iPhone開発スレあるから探してそっち行けよウゼェ
136 名前:デフォルトの名無しさん [2010/10/11(月) 14:57:33 ] 了解です。失礼しました
137 名前:デフォルトの名無しさん mailto:sage [2010/10/17(日) 12:28:41 ] メソッドの第一引数のコロンの前はメソッド名なのに、第二引数以降はコロンの前がラベルになってる。 アンバランスな気がするんだけど、言語デザイン的に理由があるのかね。 コロンを縦に並べたときの見栄えのためだけに、第一引数の前のラベルはなかったことにしたの?
138 名前:デフォルトの名無しさん mailto:sage [2010/10/17(日) 14:07:02 ] 全部メソッド名なんだが。 ラベルなんてものはない。
139 名前:デフォルトの名無しさん mailto:sage [2010/10/17(日) 14:23:21 ] だな。
140 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 10:28:46 ] developer.apple.com/jp/documentation/cocoa/conceptual/objectivec/Articles/chapter_2_section_3.html ラベルって呼ぶんだよね、実は。 便宜上そう呼んでるだけっぽいけど
141 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 12:39:04 ] メソッドをメッセージとか読んだりすることもある。 初めての時は、別物だと思っていた
142 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 13:23:08 ] >> 141 厳密には違うので、別物が正しい。 [object hoge]; はobjc_msgSend()でメッセージを送っているだけ。 メッセージを受けたobjectが対応するメソッドを見つけて実行する。 メソッドには個々の実装があるけど、メッセージは共通の実装。
143 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 14:00:40 ] >>140 ObjCの専門用語としてラベルって言ってるんじゃなくて 日常英語としてラベルって書いてるんだろうね ラベルって単語だけ抜き出されるとC言語のgoto文のラベルを先に連想しちゃう
144 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 14:02:37 ] >>142 >メッセージは共通の実装。 ? メッセージとは実装である、と言ってるように見えるけどそれはまた違うような?
145 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 14:20:39 ] >>144 では、メッセージは id + SEL + ... とすればいいの? それともメッセージは概念だから、対応するものを考えない方が良いのかな。
146 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 15:03:20 ] メッセージというと、レシーバに対して送られるもの、つまり メッセージセレクタに加えて引数までひっくるめたものになるんじゃないかな? もしC++やJavaと比較して、対応するものを考えてるのであれば あまり考え込まない方がいいかもw
147 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 15:58:15 ] >140のリンク先読んだ メッセージを送信すると メッセージのメソッド名(=セレクタ)(とレシーバ)から メソッド実装 が決定される だそうですね なのでメソッド名(SEL)がメッセージの属性であることは確実です が、 「メッセージが実際に呼び出すメソッドは、レシーバによって決まります」 てことなのでレシーバはメッセージにはふくまれないです 引数は不明ですね
148 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 16:21:07 ] >>143 おらの本ではキーワードたべ
149 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 20:53:32 ] setWidth:10 height:20 なんだか気持ち悪いよ〜 setPos width:10 height:20 だったらすっきりするんだが。 なんで前者みたいな仕様になったの?
150 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 20:57:06 ] setPos はまずったな。 setSize にしとくわ。主旨はそこじゃないのでカンニン
151 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 21:47:36 ] >>149 setSize(of)width(and)height setWidth(and)height
152 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 21:50:31 ] setWidth:height: こんなメソッド無いだろ。
153 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 22:03:29 ] setSize:(CGSize)sizeとかにしろや潔癖症。
154 名前:デフォルトの名無しさん mailto:sage [2010/10/18(月) 23:12:14 ] >>152 いや、話の流れ的に、>>140 のサイトに出てきた例を引き合いに出してるだけ。
155 名前:デフォルトの名無しさん mailto:sage [2010/10/24(日) 20:42:22 ] delegateが絡むと参照カウンタの動きが見えづらくなるのがホントに嫌になる
156 名前:デフォルトの名無しさん mailto:sage [2010/10/24(日) 21:01:06 ] えっ
157 名前:デフォルトの名無しさん mailto:sage [2010/10/28(木) 21:33:20 ] デバッグコンソールにすら何も出力せずに黙って落ちるのってどうにかならないの?
158 名前:デフォルトの名無しさん mailto:sage [2010/10/28(木) 21:41:31 ] 所詮中身はCなんだからそんなもんだ
159 名前:デフォルトの名無しさん mailto:sage [2010/10/29(金) 18:56:53 ] >>157 そのパターンは大抵、スタックぶち壊して、リターンするときあり得ない所へすっ飛んでるだけ。
160 名前:デフォルトの名無しさん mailto:sage [2010/10/29(金) 21:26:47 ] >>157 出力するようにプロジェクトの設定変えろよ。
161 名前:デフォルトの名無しさん mailto:sage [2010/10/29(金) 22:02:40 ] >>160 え!そんな設定があるんですか?!
162 名前:デフォルトの名無しさん mailto:sage [2010/10/29(金) 22:55:19 ] 環境変数で NSZombieEnabled=YES NSDebugEnabled=YES NSDeallocateZombies=YES NSHangOnUncaughtException=YES NSAutoreleaseFreedObjectCheckEnabled=YES とかを追加すると、コンソールに出てくる内容が変わる。 あとはビルドの設定でDebugモードにしたりとか。
163 名前:デフォルトの名無しさん mailto:sage [2010/10/30(土) 10:22:28 ] デフォでは、ビルド設定Debugモードじゃないの?
164 名前:103 mailto:sage [2010/11/07(日) 20:32:28 ] releaseメッセージの送り先のインスタンスのdeallocメソッドの中で、外部オブジェクトへの参照変数をnilにしてなかったのが落ちる原因でした。 こんなもん気づくかw
165 名前:デフォルトの名無しさん mailto:sage [2010/11/07(日) 21:15:31 ] それが原因じゃない方に10^10ジンバブエドル賭ける
166 名前:デフォルトの名無しさん mailto:sage [2010/11/09(火) 12:39:29 ] >>165 やけに安いなぁw
167 名前:デフォルトの名無しさん mailto:sage [2010/11/10(水) 17:12:53 ] NSMutableArrayって永続化できる? NSArrayにへんかんしなきゃ駄目?
168 名前:デフォルトの名無しさん mailto:sage [2010/11/10(水) 17:35:08 ] >>167 中身が全部永続化できるなら出来るよ でも、NSArrayで返って来るからmutableCopyしなきゃダメだったと思う
169 名前:デフォルトの名無しさん mailto:sage [2010/11/10(水) 18:51:31 ] >>168 おおお、返りのことまでエスパー回答ありがd!!!!
170 名前:デフォルトの名無しさん mailto:sage [2010/11/15(月) 21:44:28 ] NSEvent が引数の関数を書いたのですが、これはイベントが起きると自動で呼ばれるのでしょうか? それともaddEventListenerみたいなことをしないといけないのでしょうか?
171 名前:デフォルトの名無しさん mailto:sage [2010/11/15(月) 22:05:20 ] まず関数とメソッドの違い、レスポンダチェーン、NSResponder について学んで下さい。
172 名前:デフォルトの名無しさん mailto:sage [2010/11/16(火) 07:05:34 ] >>171 ありがとうございます。おかげでイベントの取得に成功しました。 一つ質問があるのですが、 ウィンドウにフォーカスがない状態でマウスのイベントを取得することはできますか?
173 名前:デフォルトの名無しさん mailto:age [2010/11/17(水) 11:16:38 ] #CのConsole.Clear();みたいなコンソールクリアするメソッドある? 標準出力をAIRに渡してるんだが、出力するたびにログが蓄積されて困ってる(´・ω・`)
174 名前:173 mailto:sage [2010/11/17(水) 12:47:00 ] 自己解決。 printf("Hello World\n");の後にfflush(stdout);しないとバッファに溜まっちゃうんだな・・・。 コンソールクリアする必要はなくなったが、 system("clear");はデバッガコンソールでTERM environment variable not set.とエラーでるが、 ターミナルでは実行出来る感じ。
175 名前:デフォルトの名無しさん mailto:sage [2010/11/17(水) 23:09:24 ] >>172 試してないけど [NSApp currentEvent] はどうか。
176 名前:デフォルトの名無しさん mailto:sage [2010/11/24(水) 21:33:33 ] Windowsで使えるIDE(コード補完があれば十分)って何かない? ※できればCocoaのライブラリも補完できれば理想。
177 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 15:32:45 ] ソニー、次世代デバイスの開発環境にAppleのiOSと同じObjective-C採用 ttp://365yen.jp/news/2010/11/36170/ だってお^^;
178 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 16:50:45 ] 動的結合不可なカスタムObjective-Cとか持ってきそうだなw
179 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 17:50:56 ] 最近のソニーって後追いばっかりな印象があるな ObjCを選んだのは…話題性狙いか?
180 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 17:52:02 ] 卑屈になるなよw objcの良さが一般にも浸透してきたんだろ。
181 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 17:53:08 ] >>178 UIKitとかあるんかねぇ?
182 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 19:17:04 ] sonyKit
183 名前:デフォルトの名無しさん mailto:sage [2010/11/25(木) 19:42:49 ] APIが3年で破綻するのかw
184 名前:デフォルトの名無しさん mailto:sage [2010/11/26(金) 18:40:35 ] SONY版Objective-Cでは、ObjectがSonyTimerを継承します。
185 名前:デフォルトの名無しさん [2010/11/26(金) 21:42:01 ] 初心者におすすめのObjective-Cの解説本ある? できればcocoaについても解説がのってるととても嬉しい
186 名前:デフォルトの名無しさん mailto:sage [2010/11/26(金) 23:03:05 ] >>185 >初心者におすすめのObjective-Cの解説本 このスレの3あたり嫁
187 名前:デフォルトの名無しさん mailto:sage [2010/11/26(金) 23:03:34 ] ほんとにObjective-Cの言語だけの解説なら10ページくらいで終わっちゃいそう ランタイムAPIまで含めても30ページもありゃ終わるんじゃないか
188 名前:デフォルトの名無しさん mailto:sage [2010/11/27(土) 05:49:23 ] >>187 是非書いてみて晒してくれ
189 名前:デフォルトの名無しさん mailto:sage [2010/11/27(土) 09:06:04 ] C/C++の基本的な知識についての説明は他本に譲りますとか
190 名前:デフォルトの名無しさん mailto:sage [2010/11/27(土) 14:32:42 ] C分かるならマイコミとかの記事で十分習得できるけどな。
191 名前:デフォルトの名無しさん mailto:sage [2010/11/27(土) 15:43:13 ] >>187 このスレ残り800近くあるからぜひここで晒してみてくれ
192 名前:デフォルトの名無しさん mailto:sage [2010/11/27(土) 17:30:40 ] ここに貼るのはやめれ 2ch に著作権譲るのはバカバカしい どっかのロダに貼ってリンクすべし
193 名前:デフォルトの名無しさん mailto:sage [2010/11/27(土) 17:44:15 ] >>181 AppKitはあるね。と、いうかOpenStepにSnapのExtensionを追加した形 既にドキュメントもSDKも(最新は1.2)一応配布されてる。
194 名前:デフォルトの名無しさん mailto:sage [2010/11/29(月) 21:26:30 ] >>187 Apple提供のpdf Objective-C 2.0 プログラミング言語 が最低限だろうな。
195 名前:デフォルトの名無しさん mailto:sage [2010/11/29(月) 21:30:48 ] Objective-C、Cocoa、Xcode、foundationフレームワーク、これらの用語の関係を教えてください。 初級者本ですら色んな用語が次から次に出てきて理解できません。 XcodeはMacでiPhone開発する時に使う、ツール群のことを指していると考えていいのかな? しかしそうするとCocoaって何なんですかね。。Cocoa環境とか言われてますが。 そのCocoaとやらの中にFoundationというのがあるらしいのですが、ここら辺までくるともう何がなにやら。
196 名前:デフォルトの名無しさん mailto:sage [2010/11/29(月) 21:53:20 ] >>195 まずは、初心者本を読んで、用語を理解してください
197 名前:デフォルトの名無しさん mailto:sage [2010/11/29(月) 23:05:51 ] >>195 別に覚えなくて良いよ
198 名前:デフォルトの名無しさん mailto:sage [2010/11/30(火) 01:00:34 ] >>195 ま〜ぱのコトテンでも読んでな!
199 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 01:07:22 ] >>194 それどこ情報〜?どこ情報よ〜?
200 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 02:42:30 ] >>199 ttp://developer.apple.com/jp/documentation/cocoa/Conceptual/ObjectiveC/
201 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 04:41:14 ] >>199 こっちの方が新しい ttp://developer.apple.com/jp/devcenter/ios/library/documentation/ObjC.pdf
202 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 16:26:52 ] アプリ起動時にスクリーンセーバーを無効にして、 終了時に戻すことやりたいんだけど、 どうすればいい?
203 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 19:16:00 ] ggrks hintsforums.macworld.com/archive/index.php/t-61525.html
204 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 22:12:30 ] で、187は>>201 をどう10ページにまとめあげるか楽しみに待っているんだが。
205 名前:デフォルトの名無しさん mailto:sage [2010/12/02(木) 23:41:16 ] 4x4のサムネール表示なら収まる とネタを潰しておこうw
206 名前:デフォルトの名無しさん [2010/12/03(金) 00:00:19 ] NSDataのなかの特定の範囲のバイト列を取り出して、32ビットのint型に 変換したいのですが、どのような方法がありますでしょうか? subdataWithRange:NSMakeRange(3,4) のようにしてバイト列を取り出して int32_t datasize; [data getBytes:&datasize]; こすうれば一応できるのですが、JavaにあるByteBufferのgetIntのような感じで 取得したいと思っています。 そういう方法ってありますか?
207 名前:187 mailto:sage [2010/12/03(金) 00:21:26 ] 冗談半分のレスにそんな期待されてもなあ そもそも書くなんて言ってないし 10pは大げさすぎたけどどっちにしても言語の解説だけなら 薄っぺらい本にしかならないしCocoaの解説も含んでないと 成り立たんでしょーっていう >>185 への回りくどいツッコミ だったんだが誰も気づいていくれなかった 長文スマソ
208 名前:デフォルトの名無しさん mailto:sage [2010/12/03(金) 00:26:17 ] 俺は気付いてたよ
209 名前:デフォルトの名無しさん mailto:sage [2010/12/03(金) 00:38:14 ] ヲレもヲレも
210 名前:デフォルトの名無しさん mailto:sage [2010/12/03(金) 01:03:26 ] >> 206 Java全く知らないんだけどgetBytesを見つけといてgetBytes:range: を使わな いのはなにか画期的な良さがそのgetIntにはあるの? int32_t intData; [data getBytes:&intData NSMakeRange(offset, sizeof(int32_t))]; 戻り値が直接返ってくるような関数がご希望ならカテゴリでNSDataに追加すれ ばいいだけだと思うのですが、この手のデータの扱いだとエンディアンが必ず 問題になるのでこのまま表に見えるようにして使うほうが無難そうだし。
211 名前:デフォルトの名無しさん mailto:sage [2010/12/03(金) 01:15:43 ] >> 206 int32_t intData = *((int32_t *)([data bytes] + offset)); Objective-Cっぽくないな。
212 名前:デフォルトの名無しさん mailto:sage [2010/12/03(金) 05:51:01 ] なんでいちいちNSData新規に作る必要があるの? >>211 に一票追加。
213 名前:デフォルトの名無しさん mailto:sage [2010/12/03(金) 11:31:04 ] >>211 OOPっぽくはないが、Objective-Cっぼい気はする
214 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 01:55:44 ] 完全未経験からITスクールに1ヶ月半ほど通ってiPhone開発の会社に入社しました。 ITスクールではHTMLとJavaScriptとPHPを勉強しました。 研修も無しに来週から1人で出向することになりました。 土日でObjective-CとiPhone SDKとやらを勉強しておけ、ということらしいです。 出向先は社員数人のベンチャーで全員デザイナーということなので 開発者は自分1人です。 どう考えても詰んでるんですが、この業界はこういうのが普通なのでしょうか。。 2日で出来る限り覚えるとしたらどの本で勉強すればいいでしょうか?
215 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 02:04:41 ] >>214 金をケチってObjective-C未経験者を雇うとか、底辺デザ事務所らしい発想だな。 一般的なIT業界はさておき、iPhone界隈では普通ではない。 とりあえず、アップルの日本語に翻訳されたドキュメントを読め。 言語仕様、チュートリアル、UIのガイドライン、MVC、KVCあたりのことは必読。 C言語すら知らなかったら2日じゃムリ。 デザイナー相手ってことなら、Interface Builderの使い方だけ覚えて、 見た目でごまかして、時間稼ぎをしつつ勉強するのがいいと思う。
216 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 02:08:31 ] どう考えたって真っ当な会社じゃない。 が、今時未経験者を取るような会社はそんなレベルが多いんだろうね… とりあえず日本語参考資料。 developer.apple.com/jp/devcenter/ios/library/japanese.html 出向先が全員デザイナーって…iOSのデベロッパ契約も結んでないに300ペリカ
217 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 02:13:55 ] うわ、すげぃ 手持ちの技能から考えるなら Obj-CじゃないけどDashcodeいじって なんかアピール出来るもの作って生き残りをはかるとか
218 名前:214 mailto:sage [2010/12/04(土) 02:47:04 ] 皆様ありがとうございます。 やはり普通ではないのですね。 C言語も分からないので、一からObjective-Cを勉強ってのは難しそうですね…。 とりあえずアップルの日本語資料を読むことにします。 macを支給してもらえたのが唯一の救いなのかな。土日は寝ずに勉強して誤魔化せる程度にはしておこう。
219 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 09:23:17 ] すみません、質問です。 プロパティの宣言で、retainとreadonlyを一緒に宣言するのって どういう意味があるんでしょうか? CoreDataのさンプルでこんな宣言がされています。 @property (nonatomic, retain, readonly) NSManagedObjectModel *managedObjectModel; retainって、値をセットするときの指定だと思っていたんですが..
220 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 09:30:03 ] - (id)retain; ってご存じ?
221 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 09:31:32 ] いや、..存じません。
222 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 09:49:23 ] 自己解決しました。
223 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 18:57:08 ] >>219 すいません。219と違う人だけど、わからないので 説明お願いします。実質retainは機能しないと思うのですが。
224 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 19:19:41 ] Google in English で、「retain readonly」でググるとでてくるよ。
225 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 19:59:18 ] public では readonly でも、private では readwrite で利用するから?
226 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 20:42:02 ] >>224 ttp://stackoverflow.com/questions/1933489/objective-c-2-0-properties-why-both-retain-and-readonly 出て来たわw 見方が分からんが、#10ってやつだと実装はreadwriteになってる。 readonlyは、いつもgetterを書いてたからこういった形式は 初めて見たわ。
227 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 20:52:28 ] クラスエクステンションとかで拡張するときのために、 あらかじめ、指定しておくみたいな
228 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 01:06:35 ] >>225-226 外に向けてreadonlyにするときは実装側でプロパティが使えなくて いつも面倒だなあと思ってた。でもこういう方法があったんだね。 これならほぼ全てにプロパティ使えてコードが綺麗になるわ。 とてもためになったよ、ありがとう。
229 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 21:51:17 ] うーむ…なんというか、なんか二度手間に見えてしまうなぁ… 個人的には synthesize を無理矢理使っているような感じを受けてしまう。
230 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 22:12:14 ] 煽りでも何でもないんだけど Objective-Cが一般的に普及することはあり得ないのかな? この先もマック開発とかiPhone開発とか限定でしょうか?
231 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 22:45:29 ] まず「一般的に普及」を定義してくれ。
232 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 22:51:16 ] >>230 ソニーが採用したって噂を聞いたけど、まあ、一般的に普及することは無いだろう。
233 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 23:25:02 ] 充分普及してると思うが
234 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 23:35:16 ] ええそうですね、十分普及してますね。 でも、一般的に普及することは無いでしょうね。
235 名前:デフォルトの名無しさん mailto:sage [2010/12/05(日) 23:57:51 ] つーか普及すればAppleにとっても嬉しいはずなのに、どうしてこんなに閉鎖的なんだろうな。 iPhone SDKだって他のOSにも開放してれば今頃iPhoneはモバイル界のWindowsになっていたはずなんだ。
236 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 00:12:44 ] Mac の一台も買えないような開発者に何が出来ると
237 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 00:39:20 ] >iPhone SDKだって他のOSにも開放してれば そんなこと出来る会社ならintelMacがもっと伸びて世界中のPCはMacになってるはず
238 名前:デフォルトの名無しさん [2010/12/06(月) 01:23:14 ] ハードとソフトを自分たちで設計し作っているから、 個々の性能を引き出し、微妙な調整を施し、デザイン を洗練し、独特のブランドを確立できているんだろが。
239 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 01:30:18 ] Macは壊れやすい印象しかないな
240 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 01:35:32 ] Macの起動速度は、少なく見積もっても、Windowsの1/2以下。 Windows使いは人生のうち100時間ぐらいをその起動待ちで ぼーっと費やしている。とってもかわいそう。
241 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 01:43:18 ] Macはハッカー御用達ツール。 Googleを初め、世のハッカー企業社員のプレゼンは その幹部を含め、ほとんどがMacを使っている。 独自の文化と真のUnixと、プロプライエタリの堅牢性と、 オープンソースの柔軟性を絶妙のバランスで見事に融合 させた結晶。それがMac。 Macを知らない人は、人生の1/10くらい損している。 ましてやプログラマを名乗ってはいけない。土方を名乗る のはまぁ許す。
242 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 01:53:24 ] いやいや、Googleは業務用にはUbuntu使ってる社員が多いし、プレゼンはたいてい WindowsでPowePointだよ。 プロプライエタリの堅牢性なんて言えば聞こえはいいが、実際はオープンソースへのただ乗り。 Darwinの公開だっていやいやだし、WebKitはKHTMLからのフォークだから仕方なく。 Objective-Cコンパイラに至っては、FSFからGPL違反の指摘を受けて、やっと公開したよね。 (まあ当時は、AppleではなくNeXTだったが) まあ、おれも漢字Talk7の頃からMac使っててNeXTCUBEも持ってたので、好きこのんで 使ってはいるが、企業としては一貫して嫌いだ。
243 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 01:59:46 ] 昔は囲い込みの方針を曲げずにズルズルと失敗し続けてた印象だけど 最近はiPhoneアプリをXcode+ObjCだけに一度限定して その後すぐに緩和するとか割と狡猾だよねー
244 名前:デフォルトの名無しさん [2010/12/06(月) 02:00:57 ] >>235 わかんないよ Windows用Xcodeも準備中かもしれないよ? まあ手を広げすぎても自分たちの実現したいユーザエクスペリエンスが維持できるかと自問して 出来そうにないからやらないだけなんだろう。まずMSが信用ならんし・・・
245 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 02:01:15 ] え?
246 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 02:05:12 ] >>242 PowePointは糞。つか名前も聞いたことない。 Keynoteは神。
247 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 02:10:05 ] >>242 お前が嫌ってるのはAppleじゃなくてCanonの間違いじゃないのか?
248 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 02:10:39 ] >>244 Windows用Xcode? なぜわざわざ? なぜわざわざ開発環境を悪化させる必要があるの? なぜわざわざ情弱大衆に媚びるの? なぜわざわざ使えないのが分かりきってる土方に提供するの? イラネwww
249 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 02:17:06 ] コマンドがBSDとGNU系で混ざってたりシステムコールが特異なところがあるし MacPortsがあるから助かっているものの、 インタネット系開発はLinux系のがなにかと楽かなー。
250 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 02:54:51 ] 一般的にというのはC++くらいあちこちで使われるという意味です
251 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 03:15:48 ] きめぇ…これがマカーというやつなのか
252 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 08:00:36 ] >>230 ありえねーよ馬鹿。
253 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 12:30:55 ] 新しく流行するデバイスのアプリ開発がアセンブリ縛りだったとして、 これからはアセンブリが流行りますかってくらいの愚問だな。
254 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 16:00:05 ] mutableCopyで返されるオブジェクトは、autoreleaseされていないぞ、気をつけろ。
255 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 17:35:50 ] BLOCKSが簡単すぎてワロタ もうthreadはいらねーな
256 名前:デフォルトの名無しさん mailto:sage [2010/12/06(月) 17:39:15 ] mutableCopyに限らずcopyって単語が含まれるメソッドで返るオブジェクトの 所有権は使う側にある(allocしたのと同じ) メモリ管理ポリシー読もう
257 名前:デフォルトの名無しさん [2010/12/08(水) 17:58:30 ] Blocksは使用する直前に宣言する派 メッセージの中に含めるのはなかなか馴染めない・・・
258 名前:デフォルトの名無しさん mailto:sage [2010/12/09(木) 00:43:55 ] Cはエッチのことと聞きましたが、 Objectiveとはどんなプレイですか?
259 名前:デフォルトの名無しさん mailto:sage [2010/12/09(木) 01:07:13 ] それぞれの性感帯をカプセル化します
260 名前:デフォルトの名無しさん mailto:sage [2010/12/09(木) 10:04:02 ] RootViewControllerって、プログラムがでかくなると、 適合する、プロトコルの宣言がいっぱいになるよね。
261 名前:デフォルトの名無しさん [2010/12/09(木) 10:37:28 ] そんなに何でもかんでもRootViewに載せようとすることはないな 多くて4つぐらい
262 名前:デフォルトの名無しさん mailto:sage [2010/12/09(木) 13:10:40 ] ぬぁに、俺が今作っている奴、RootViewControllerのプロトコル の宣言が、既に10越えているんだが… やりかたがまずいんだろうか…
263 名前:デフォルトの名無しさん mailto:sage [2010/12/09(木) 21:09:04 ] 何から何まで同じクラスにデリゲートさせてないか? データの持ち方が混沌としてるなら一度整理して 役割を分担させてみてはいかがかと。
264 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 00:26:54 ] >>258 客観的なセックスだよ。
265 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 00:42:02 ] オブジェクト性行
266 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 00:43:14 ] >>263 だってよぉ、画像編集アプリなんだけど、ナビゲーションコントローラにしてるから、 まず、UINavigationControllerDelegate そして、ScrollViewの中にタップ可能な ImageViewを配置しているから、UIScrollViewDelegateとタップ検知を受け取る、 TapDetectingViewDelegate(サンプルからパクった奴) そして、画像選択用の、 UIImagePickerControllerDelegate そして、位置情報を使うから、 CLLocationManagerDelegate それから、警告などでアラートの表示もするから、 UIAlertViewDelegate 処理確認用のアクションシートも表示するから、 UIActionSheetDelegate、それから、メイン画面から呼び出せる画像処理用のボタン をいくつか配置していて、そこから、他のビューコントローラを呼んだりもするわけだけど、 結局処理する画像は、メインに配置してあるから、各コントローラからの通知を受け取る ための、〜ControllerDelegate とか、いつのまにか、いっぱいになっちまったわけさ。 処理対象(画像)がメイン画面にあるから、いずれにしても、UIの結果を受け取らないと いけないわけで、しょうがなくね?何かいいやり方あれば教えてちょ。
267 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 09:47:45 ] カスタムViewControllerとかTarget-ActionとかNotificationとかDelegateとか なんとでもなりそうだけど
268 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 12:56:37 ] むりくり分割すれば、できなくはないんだけど、 その分割したモジュールとのやりとりが必要に なって、面倒くささが先にたっちゃうんだよな。
269 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 16:29:32 ] Objective-Cの初心者です。 URLをSafariで開く、というのをメソッドで書くとしたら、 どのようになりますか? 次のように書いたところ、 NSString * string = [@"www.google.co.jp/ "]; の行で、Expacted '-' before '' Token(小さくて読めない)というエラーが出てます。 ''のあいだの文字は「}」ですか? #import <Cocoa/Cocoa.h> IBOutlet id inputField; IBOutlet id outputField; int main(int argc, char *argv[]) { NSString * string = [@"www.google.co.jp/ "]; - (void) startURL:(string) URL; return NSApplicationMain(argc, (const char **) argv); } - (void) startURL:(string) URL { NSTask * task = [NSTask new]; [task setLaunchPath: @"/bin/sh"]; [task setArguments:[NSArray arrayWithObjects: @"-c open -a Safari ", URL, nil]]; [task launch]; }
270 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 16:34:24 ] URL文字列を括っている[ ] は、いらないんじゃね?
271 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 17:11:17 ] NSString * string = @"www.google.co.jp/ "; としたところ、startURL undeclared とか、エラーが増えました。
272 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 17:24:37 ] ここでは教えられないほどの間違いがあるので、本やセミナーでやってください 少なくとも developer.apple.com/jp/documentation/cocoa/conceptual/objectivec/index.html これが理解できなければ無理。
273 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 18:02:01 ] 宣言と実装がごっちゃになってるな。 どういうコピペをしたらこんなソースが出来上がるんだ
274 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 18:40:55 ] アルファベット覚えたて人がTOEIC受験しに行くぐらい無茶 最低限の文法理解と語彙が必要
275 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 18:53:29 ] これはちょっと、ぶったまげるくらい可笑しいな。
276 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 20:37:18 ] デバッガが苦笑するレベル
277 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 20:38:20 ] いつもそういわれるんです。 まずはこれを動くようにしてから。 本は5冊(斜め読み)しましたが、 ぜんぜんわからんのです。 おかしく楽しんだんですから、動かしてくださいよ。 お願いします。
278 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 21:52:55 ] どんだけ斜め読みしてんだよ 5冊を斜め読みするんじゃなくて、 1冊をじっくり読んでくれ
279 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 23:39:09 ] でも初心者のもつ疑問に答えるような本は、ないんです。 具体的には、一連の手順(メソッド?)を呼び出すときのメソッドの書き方(書式)、 それはMainのなかに書くのか外に書くのかとか。
280 名前:デフォルトの名無しさん mailto:sage [2010/12/10(金) 23:53:32 ] > Mainのなかに書く んなことやってるサンプルコードがあったの? 無いのにどうしてそんなことしようと思ったの? どこからそんな発想湧いてきたの? ねぇなんで?
281 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 00:03:06 ] >>279 まずはやっぱCじゃね? そこが分かってたら、そのソースみたいな間違いは、そもそもやらないと思う。 >>280 は書き方は悪いけど、基本中の基本があんたに欠けてるのは俺も感じるよ。 自分は楽しいココアでxcodeの操作の概要と、ココアフレームワークの使い方は 大体分かるようになった。 そこまでくれば、あとはもう慣れだ。アップルにサンプルコードも沢山あるし。
282 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 01:21:36 ] C#でそうだから。 C#暦2年です。 #import <Cocoa/Cocoa.h> IBOutlet id inputField; IBOutlet id outputField; int main(int argc, char *argv[]) { return NSApplicationMain(argc, (const char **) argv); } NSString * string = [@"www.google.co.jp/ "]; - (void) startURL:(string) URL; - (void) startURL:(string) URL { NSTask * task = [NSTask new]; [task setLaunchPath: @"/bin/sh"]; [task setArguments:[NSArray arrayWithObjects: @"-c open -a Safari ", URL, nil]]; [task launch]; } ってこと?
283 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 06:15:27 ] >>270 の言うことすら既に守られてないじゃん。 他人の言うことに耳を傾けない人なんだね。
284 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 09:47:48 ] >>282 メドッドの理由がないんだから、ただの関数で 書いておけよー
285 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 10:37:01 ] 5冊も斜め読みでこれって凄い才能だな
286 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 10:59:32 ] C#ってすごい言語なんだな OOPLだと思ってたけど違うみたいだし
287 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 12:17:20 ] >>279 公式ドキュメントが一番易しく的確に理解に必要最小限のことを解説してる。 アプリケーションチュートリアルの熟読をおすすめする。 市販の本は酷いとこれのほぼコピペで深く説明すべきところをはしょった劣化版だったりする。 ほんの数ページで手取り足取り動くとこまで連れてってくれるだろう。 これ読んでわからなければお前の脳じゃ無理だから諦めろ。
288 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 13:27:11 ] >>282 C#やったんなら、classに相当する記述がそのソースに見当たらないことに違和感を覚えない? まあ、この場合は、>>284
289 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 14:12:55 ] >>285 この人の事だから本当に斜めに読んでそう。
290 名前:sage [2010/12/11(土) 15:12:41 ] いや、きっとC#でもまともには... C#が悪いわけではないと思うw
291 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 15:28:13 ] C#はVBと同じような書き方すらできるからなー 元々はVB坊なんじゃね?
292 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 16:00:57 ] 本のページの左上から右下へ真っ直ぐに斜め読みしてんだろうな。
293 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 22:49:33 ] 文字列比較でisEqualToString:メソッドとstrcmp()関数のどっちが早いか 下のようにテストしたのですが、isEqualToString:メソッドの方が10倍ぐらい早い結果になりました。 自分的にはstrcmp()の方が早いと予想してたので驚きました。これは普通でしょうか。 NSString *s1 = @"abc"; NSString *s2 = @"ABC"; for (int i = 0; i < 1000; i++) { // isEqualToStringメソッドを使った比較 // BOOL flag = [s1 isEqualToString:s2]; // strcmp()関数を使った比較 // BOOL flag = strcmp([s1 UTF8String], [s2 UTF8String]); }
294 名前:デフォルトの名無しさん mailto:sage [2010/12/11(土) 23:05:15 ] 常識で考えて -UTF8String がオーバーヘッドになってるだけ
295 名前:デフォルトの名無しさん [2010/12/11(土) 23:37:06 ] まぁ、最近は常識のない奴が増えたからな
296 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 00:27:18 ] Objective-Cのメソッドと関数の違いを知らないので、 ただの関数でどう書くのかよくわからないので、 ただの関数での書き方を教えてください。 メソッドの理由があるかないかを判断するのには、 条件が少ないと思いますが。 Classに相当する記述がないことには違和感がありますが、 そんなことを言い始めたら、ぜんぶに違和感を感じています。 なぜNSとすべてにつける無駄をするのか(ジョブズの趣味)とか。 \を含まないのに@を""の前につける意味は、とか。 *はなんだとか。 -はなんだとか。 nilってなんだよ、へんな略し方するなとか。 ま、それでいまこんな感じです。
297 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 00:30:51 ] #import <Cocoa/Cocoa.h> IBOutlet id inputField; IBOutlet id outputField; int main(int argc, char *argv[]) { return NSApplicationMain(argc, (const char **) argv); } NSString * string = @"www.google.co.jp/ "; - (void) startURL:(string) URL; - (void) startURL:(string) URL { NSTask * task = [NSTask new]; [task setLaunchPath: @"/bin/sh"]; [task setArguments:[NSArray arrayWithObjects: @"-c open -a Safari ", URL, nil]]; [task launch]; }
298 名前:sage [2010/12/12(日) 00:52:10 ] #include <stdio.h> #include <stdlib.h> #include<ctype.h> #define iskanji(c)\ (0x81 <= (c & 0xff)&&(c & 0xff) <= 0x9f || 0xe0 <= (c & 0xff) && (c & 0xff) <= 0xfc) main(int ac, char *av) { FILE *fp; ++av; if(av==0){ exit(1); } fp=fopen(av,"r"); char c; while((c=fgetc(fp))!=EOF){ if(iskanji(c)){ fputc(c,stdout); fputc(fgetc(fp),stdout); } else { fputc(c,stdout); } } } segmentation faultになったよ なぜ
299 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 01:07:05 ] >>298 >main int main(int argc, char * argv[], char * env[]);
300 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 07:53:50 ] >>296 全部、サイトや本に書いてあるよ
301 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 11:14:52 ] 地獄のソースコードだな。 霊媒師とかにお祓いしてもらった方が良いレベル。
302 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 14:15:52 ] 天才チンパンジー「アイちゃん」が Obj-C訓練してるのかと思った。
303 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 14:31:27 ] objectivecってどれぐらいでマスターできますか? C言語は簡単でした。 オブジェクト指向言語は今回が初めてです。 今高@ですが模試の評価でも東大余裕なので頭も悪くないです。
304 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 14:57:11 ] >>303 >今高@ですが模試の評価でも東大余裕なので頭も悪くないです。 頭が悪くない人はこんなスレ見つけてる間にささっと始めてる
305 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 17:48:46 ] >>304 ちゃんと質問に答えてくださいよ
306 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 18:14:55 ] >>303 まあ、まずはこれでも読んどけ。古い本だが、オブジェクト指向の勘をつかむのには悪くない。 www.amazon.co.jp/dp/4881356194 その後はこれな。 www.amazon.co.jp/dp/4797311126 じゃあな。
307 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 18:18:33 ] オブジェクト指向初めてで、Cは分かってて、Objective-Cやりたいんだったら、 オブジェクト指向の学習に特化したSmalltalk本がいいと思う。 結構出てるみたいだし。
308 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 19:02:10 ] >>305 おまえなら1ヶ月だな
309 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 19:49:11 ] >>307 にもあるように、Smalltalk 本に書かれていることがすんなり理解できる柔軟性があれば Objective-C の Smalltalk 的側面なんかサブセットなので、恐るるに足らずと思っていていいです。 Smalltalk やその考え方自体、小難しく受け取られがちですが、分かってしまえば何と言うことはないので。 中古本が安く手に入る「例題による!!オブジェクト指向分析設計テクニック」amzn.to/eoZia2 とかお薦めですが、あいにく処理系が古くてコードを試すことができないので、同じ著者の「Smalltalkで 学ぶオブジェクト指向プログラミングの本質」amzn.to/9aDb2f とかざっと読んでみるのはいかがと。
310 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 19:53:19 ] オーケーオーケー。 つまりたったこれだけのコードを修正もできず、 問題点を具体的に説明もできない程度にしか力がないんだ、キミタチは。 ぜんぶサイトに書いてあるよって、どこのサイトだよ。 developer.apple.com/jp/documentation/cocoa/conceptual/objectivec/index.html ならよんだけどわかんないぜ。 数ページでいいっていうそのサイトを具体的に頼む。
311 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 20:55:10 ] だから言ったじゃん。こんな奴は精神科行くかお祓いしてもらった方が早いんだって。
312 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 21:20:18 ] また斜め読みかよ
313 名前:デフォルトの名無しさん [2010/12/12(日) 23:04:06 ] >>310 だいぶ疲れているようだな まあ珈琲でも飲んでモチツケ
314 名前:デフォルトの名無しさん mailto:sage [2010/12/12(日) 23:46:29 ] >>298 >なぜNSとすべてにつける無駄をするのか Objective-Cにはネームスペースが無いから一定のまとまりに対するプレフィックスは必要だろ。 ちなみに、NSは今のマックの前身となったNextStepで使われていたときの名残。 >\を含まないのに@を""の前につける意味 @はNSStringのインスタンス生成を簡略化するためのシンタックスシュガー @をつけないのはC言語の文字列 >*はなんだ ポインタの宣言や値参照の演算子。乗算の演算子。 >nilってなんだよ、へんな略し方するなとか nilは略語ではなくて、無を意味する歴とした英単語。 nullとほぼ同義だけど、Objective-Cではインスタンスが割り当てられていないことを示すため に使われる。
315 名前:デフォルトの名無しさん mailto:sage [2010/12/13(月) 04:07:36 ] >>314 その親切さは、本当に彼にとって親切なのだろうか?
316 名前:デフォルトの名無しさん mailto:sage [2010/12/13(月) 08:11:46 ] 逆にそこまで気を使ってやる必要もないだろう。 どうせ、>>296 は「名前空間程度も実装できない」とか「yes, noがキモい」とか言うだけさ。
317 名前:デフォルトの名無しさん mailto:sage [2010/12/13(月) 10:57:48 ] >>310 >ならよんだけどわかんないぜ。 あんたコンピュータ業界にゃ向いてないから諦めなって 自分探しの旅にでも出たらどうだ? できれば薄着で、北の方へ
318 名前:デフォルトの名無しさん mailto:sage [2010/12/13(月) 11:29:55 ] >>310 煽って答えを出して貰おうとしているんだろうけど、それで答えを得てもあなたの知識にはならないよ あと、書物は読むだけじゃなく理解しないと意味がない
319 名前:デフォルトの名無しさん [2010/12/13(月) 17:09:36 ] 【C#, C♯, C#】 MonoMac 【MonoDevelop】 hibari.2ch.net/test/read.cgi/mac/1291602001/
320 名前:デフォルトの名無しさん mailto:sage [2010/12/15(水) 02:26:36 ] 多重配列の指定セクションのロウを数える用途で以下の定義を書きました。 宣言 - (NSUInteger)countRowDoubleArray:(NSMutableArray*)doubleArray ofSection:(NSUInteger)section; 実装 - (NSUInteger)countRowDoubleArray:doubleArray ofSection:section { NSMutableArray* row = [doubleArray objectAtIndex:section]; return [row count]; } しかし、宣言と定義で二重に宣言されているというエラーが。また、関数objectAtIndexの第一引数は、 キャストせずにポインタを整数型に変換しているとエラーが出ます。 しかし他に同じ名のメソッドなど宣言も実装もしておらず(試しに名前を変えても同じエラー)、 objectAtIndexの引数は明らかにNSUInteger型として宣言しています。なぜエラーが出るのでしょうか?
321 名前:デフォルトの名無しさん mailto:sage [2010/12/15(水) 02:32:02 ] ヘッダに書いてるとか。
322 名前:デフォルトの名無しさん mailto:sage [2010/12/15(水) 03:34:50 ] implementationの方のdoubleArrayとsectionの型を省略してるからid型になってる つかエラーは勝手に解釈せずにそのままコピーしろ
323 名前:デフォルトの名無しさん mailto:sage [2010/12/15(水) 10:16:57 ] >>321 >>322 有難うございます。 implementationで引数に型を宣言した事が今までなかったので驚きました。 何故いる時と要らない時があるのか、、。 エラーの件次に質問させて頂く時はそのままコピーしますすいません。 (確かにid型になってました、、。)
324 名前:デフォルトの名無しさん mailto:sage [2010/12/15(水) 13:04:55 ] >implementationで引数に型を宣言した事が今までなかったので驚きました。 こっちが驚くわ
325 名前:デフォルトの名無しさん mailto:sage [2010/12/15(水) 16:00:46 ] 新人類だな。
326 名前:デフォルトの名無しさん [2010/12/16(木) 09:49:44 ] >>58 iPhogeという呼び方があるのか〜 今度から使わせてもらおう
327 名前:デフォルトの名無しさん mailto:sage [2010/12/16(木) 14:36:35 ] isEqualToString を使って文字列の比較をしたいのですがどうやっても上手くいきません。 比較方法は配列に保存してある文字列をobjectAtIndex で呼び出してそれを比較するようにしています。 NSString* seikai NSString* answer seikai = [mondai objectAtIndex:1] answer = [mondai objectAtIndex:2] if ([seikai isEqualToString:answer]) のような形で比較しています。
328 名前:デフォルトの名無しさん mailto:sage [2010/12/16(木) 15:13:25 ] >>327 中の文字列、書き出してくれないと。 コード自体は問題ない。 NSLog(@"%@,%@",seikai,answer); でもいれてみたら。
329 名前:デフォルトの名無しさん mailto:sage [2010/12/16(木) 16:36:45 ] セミコロンも使ってないし変数名も間違ってるけど、コンパイル通ってるのかなあ。 seikai = [mondai objectAtIndex:0]; answer = [mondai objectAtIndex:1]; で上手く行きました! とか無いよね
330 名前:327 mailto:sage [2010/12/16(木) 17:59:37 ] すいません。詳しく書くと -(void)StringArray{ NSString *path = [[NSBundle mainBundle] pathForResource:@"mondai" ofType:@"csv"]; NSString *string = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:NULL]; pMondai = [string componentsSeparatedByString:@"\n"]; //読み込んだ文字列を行ごとに分解して配列に保存 } ここでcsvファイルを呼び出して -(void)setPrcString{ srand(time(NULL)); i=rand()%Qnum; NSString *stringTmp = [pMondai objectAtIndex:i]; //ランダムに行を選択 pBunkai = [stringTmp componentsSeparatedByString:@","]; //行ごとに分解したものを、さらに「,」ごとに分解して配列に保存 pQuestion = [pBunkai objectAtIndex:0]; pAnswer1 = [pBunkai objectAtIndex:1]; pAnswer2 = [pBunkai objectAtIndex:2]; pAnswer3 = [pBunkai objectAtIndex:3]; pAnswer4 = [pBunkai objectAtIndex:4]; seikai = [pBunkai objectAtIndex:5]; } ここで分解したものを格納 -(void)answerCheck:(NSString*)answer{ if([seikai isEqualToString:answer]) result = 1; else result = 2; } ここで文字の比較
331 名前:デフォルトの名無しさん mailto:sage [2010/12/16(木) 18:12:49 ] で>>328 やってみろよ。
332 名前:デフォルトの名無しさん mailto:sage [2010/12/16(木) 18:40:03 ] >>330 seikaiはpBunkaiが保持している pBunkaiは誰も保持してない よって-answerCheck:で吹き飛ぶ
333 名前:デフォルトの名無しさん mailto:sage [2010/12/16(木) 18:53:33 ] pMondaiも保持されてない気が... つか、インスタンスの生成と破棄に無頓着なコードだな。メンテし辛そう...ある意味新種のスパゲッテイだな。
334 名前:デフォルトの名無しさん mailto:sage [2010/12/17(金) 15:52:54 ] キー値監視についてです。オブジェクト(objA)のプロパティを監視してるオブザーバーは何か調べる方法で NSLog(@"%@", [objA observationInfo]); のようにobservationInfoメソッドを使うと <NSKeyValueObservationInfo 0x13eba0> ( <NSKeyValueObservance 0x14d7d0: Observer: 0x14f7e0, Key path: finished, Options: <New: YES, Old: NO, Prior: NO> Context: 0x0, Property: 0x11ab00> ) という感じで出力されますが、このオブザーバーにアクセスするためのポインタはどうやって取得するんでしょう???
335 名前:デフォルトの名無しさん mailto:sage [2010/12/17(金) 18:28:38 ] NSKeyValueObservationInfo をハクってみたけど、どうもできそうにないな。 そういう用途は想定外なんだろ。 ivars = ( "_retainCountMinusOne", "_observances", "_cachedHash", "_cachedIsShareable", "_observables" ); methods = ( dealloc, retain, release, description, retainCount, hash, "isEqual:", "_initWithObservances:count:" ); properties = ( );
336 名前:デフォルトの名無しさん mailto:sage [2010/12/17(金) 19:12:26 ] >>335 ありがとうございます!そういう使い方ではないのですね。 うーん。。このobservationInfoメソッド本当に謎すぎです。。
337 名前:デフォルトの名無しさん mailto:sage [2010/12/20(月) 17:09:40 ] もう全部C++で書くは あばよ
338 名前:デフォルトの名無しさん mailto:sage [2010/12/20(月) 20:51:05 ] たっしゃでのぉ
339 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 13:38:40 ] インスタンス変数の値を、他のインスタンスから見るにはどうしたらよいでしょうか? つまりCならグローバル変数を使う環境設定の様な実装はどうやっているのですか?
340 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 13:50:45 ] 今風ならproperty 今まで流ならgetterメソッド 荒技は @interface AClass : NSObject { @public id hoge; } @end ------------------ AClass *obj = [AClass new]; id aHoge = obj->hoge; // 構造体へのポインタと同じ。代入も可。ただし運用を誤ると爆発する
341 名前:デフォルトの名無しさん [2010/12/24(金) 14:06:56 ] @publicだったらgetterいらないんじゃねと思ったら @publicと @property付きのインスタンス変数のアクセスの違いを理解していなかった 勉強しなおしてくる
342 名前:デフォルトの名無しさん [2010/12/24(金) 14:18:16 ] 勉強しなおして>>340 の言ってる事を理解した @publicだと -> で参照できるんですね。すいません、勉強になりました。
343 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 14:35:34 ] >>339 シングルトン objective-c で検索。
344 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 15:13:47 ] 独身ブタ
345 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 16:58:00 ] 同じクラスの別のインスタンスならアクセス制限関係無しで obj->hoge; でアクセスできるお -isEqual:とかは大抵 -> でやるお
346 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 17:27:03 ] ありがとう御座います。 なるほど@publicで参照させて、対象インスタンスは念の為にシングルトンで実装ですか。 シングルトンはどこで使うかわからなかったのですが、 こう言う時に使うのですね。
347 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 18:30:42 ] 微妙に話がかみ合ってないような気がする >346 なぜ荊の道を選ぶ
348 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 19:28:07 ] ワロタ
349 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 19:53:06 ] シングルベルを聞きながら シングル族が シングルトンのお勉強ですか
350 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 20:20:37 ] あれシングルトン必要ないのかな、、。
351 名前:デフォルトの名無しさん mailto:sage [2010/12/24(金) 20:34:34 ] @protected メリークリスマス ( ´ρ`)
352 名前:デフォルトの名無しさん mailto:sage [2010/12/25(土) 00:25:58 ] > インスタンス変数の値を、他のインスタンスから見るにはどうしたらよいでしょうか? ↑こっちじゃなくて、 ↓こっちが本題だったんじゃないのか? > つまりCならグローバル変数を使う環境設定の様な実装はどうやっているのですか?
353 名前:デフォルトの名無しさん mailto:sage [2010/12/25(土) 16:28:08 ] >>352 、、、。
354 名前:デフォルトの名無しさん mailto:sage [2010/12/25(土) 16:31:31 ] >>353 Zzz...
355 名前:デフォルトの名無しさん mailto:sage [2010/12/26(日) 02:14:35 ] シングルトーン シングルトーン [[鈴 sharedInstance] 鳴る];
356 名前:デフォルトの名無しさん mailto:sage [2010/12/26(日) 13:58:32 ] クリスマスって言葉を見ると殺意が沸くので止めてくれないかな
357 名前:デフォルトの名無しさん mailto:sage [2010/12/26(日) 20:43:51 ] クリスマス
358 名前:デフォルトの名無しさん mailto:sage [2010/12/26(日) 23:50:35 ] クリスマス
359 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 01:25:42 ] クリトリス
360 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 02:18:49 ] おまえにはがっかりだ
361 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 05:44:45 ] 早く沸かせよ
362 名前:デフォルトの名無しさん [2010/12/27(月) 15:24:09 ] なんか質問しづらい雰囲気ですがすんません・・・ プライベートなプリミティブ型にアクセサつけるのって間違ってますよね?
363 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 15:27:25 ] プライベートなカテゴリで定義すれば良いんじゃないか。
364 名前:デフォルトの名無しさん [2010/12/27(月) 15:37:13 ] あーすいません外から見えるか見えないかの問題ではなくて、参照毎にアクセサのオーバーヘッドが発生するのはプライベートだと無駄じゃない?と思ったもので。
365 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 16:17:39 ] 生で触ることの危険性とアクセサ経由の柔軟性を秤にかけて自分で決めなさい
366 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 16:55:34 ] なるほど、ありがとうございました。
367 名前:デフォルトの名無しさん mailto:sage [2010/12/27(月) 17:19:59 ] いえいえ、どういたしまして。
368 名前:デフォルトの名無しさん mailto:sage [2010/12/29(水) 01:00:24 ] 生はリスクが高いから、アクセサつけなきゃね。
369 名前:デフォルトの名無しさん mailto:sage [2010/12/29(水) 01:05:32 ] 薄ければ薄いほど良い
370 名前:デフォルトの名無しさん mailto:sage [2010/12/29(水) 12:53:55 ] >>346 読み込み専用だよな? 初期化時に設定ファイルか何か 食わせたら変更しないんじゃないか? もし、読み書きの必要が有るならシングルトンは止めろ。 シングルトンが許されるのは読み込み専用か書き込み専用だけだ。 でないと、関数の呼び出し先と呼び出し元で 干渉が起こることがある(広域変数最大の問題点) そもそも広域変数にする必要が有るかもよく考えろ。 値オブジェクトがツリー構造にもなってなく ただ引き渡すのが面倒なだけだろ。
371 名前:デフォルトの名無しさん mailto:sage [2010/12/30(木) 00:16:32 ] setterがatomicであれば問題ないと思っていたのだけど間違い?
372 名前:デフォルトの名無しさん mailto:sage [2010/12/30(木) 03:10:10 ] >>370 おつきあいありがとうございます。 詳しく言うと、iphoneのブログラミングのnavigationのテンプレートを実行すると appDelegateからrootViewControllerに飛び、その時テーブルの内容を読み込み 表示すると思うのですが、今回は起動直後のみ、前回終了した時に didSelectRowAtIndexPathで遷移したviewController (今回は編集されたテキストビューをアドされたビューコントローラー) が保存されたファイルを読み込んで、そこにテーブルのリストを表示する前に viewDidLoadでpushViewControllerで遷移したいのです。 その為にはviewDidLoad上で起動直後かそうでないかを知らなければならないのですが、 appDelegate上でAfterLaunchingというクラスのインスタンス変数である、 ブール型のisAfterLaunchingにYESを入れ、それを読み込む様にすれば、 処理を分岐出来ると思いました。で、遷移が終わればその変数をNOにするというものです。 そして編集が終わり、ファイルから読み込んだ多重配列にそのビューコントローラーを 挿入し、rootViewControllerに戻ると、isAfterLaunchingがNOなので、通常通り その多重配列を元にテーブルのリストが表示されるという物です。 確かにグローバル変数やRootViewControllerで処理を分岐するのはプログラムが ややこしくなるのであまりやりたくないのですが、
373 名前:372 mailto:sage [2010/12/30(木) 03:12:38 ] すいません途中で送ってしまいました。 確かにグローバル変数やRootViewControllerで処理を分岐するのはプログラムが ややこしくなるのであまりやりたくないのですが、appDelegeteでwindowに navigationをアドすると、まずrootViewControllerに飛んでしまうので、 他に方法が見つかりませんでした。 という事でした。
374 名前:デフォルトの名無しさん [2011/01/05(水) 17:07:39 ] NSArray *history = [self.navigationController viewControllers]; NSMutableArray *newHistory = [history mutableCopy]; [newHistory removeLastObject]; [self.navigationController setViewControllers:newHistory animated:YES]; んえこうすると self.navigationController の viewControllers が null なんですけど まったく理由がわかりません。ボスケテ。
375 名前:デフォルトの名無しさん mailto:sage [2011/01/06(木) 15:58:28 ] 一行目で返ってくるのがすでに nil だったりして。
376 名前:デフォルトの名無しさん mailto:sage [2011/01/06(木) 16:15:24 ] array = viewControllerというのが既におかしい。
377 名前:デフォルトの名無しさん mailto:sage [2011/01/06(木) 16:47:34 ] >>376 それはあってる self.navigationController.viewControllers だから >375 思い切ってself.navigationControllerがすでにnilとか
378 名前:デフォルトの名無しさん [2011/01/06(木) 17:20:32 ] >>375 >>376 >>377 ありがとうございます。 一行目でかえってくるのは普通にはいってるんですよ。 んで、mutableCopy したあとに最後の履歴を抜いてる。 newHistory の中身はちゃんとある。 ただ、セットすると null なんですよね。 setViewControllers:history とするともちろん null にはならんのですが。 履歴の加工ができないってことなんでしょうか。
379 名前:デフォルトの名無しさん mailto:sage [2011/01/06(木) 23:19:05 ] ちなみに、viewControllersがnullであることを、どのようなコードで確認しましたか? あと、self.navigationController.viewControllers = newHistory; とやっても同じ結果になりますか?
380 名前:デフォルトの名無しさん [2011/01/07(金) 15:31:12 ] >>379 null であることを確認したのは NSLog(@"%@", [self.navigationController viewControllers]); こんなコードで確認しました。 self.navigationController.viewControllers = newHistory; もやってみたんですが、同じ結果です。
381 名前:デフォルトの名無しさん mailto:sage [2011/01/08(土) 01:22:43 ] >>380 その確認ではself.navigationControllerがnullの場合も 考えられる。そしてself.navigationControllerがnullなら すべてのつじつまが合う。
382 名前:デフォルトの名無しさん mailto:sage [2011/01/10(月) 18:07:48 ] iPhoneアプリ作ってるんですが テーブルビューの行選択を行った後、アクションシートを開きたいんですが、どうすれば開けますか? 一応ボタン押下後に開くことは出来たんですが、行選択後に開く事ができません どなたか教えて下さい
383 名前:デフォルトの名無しさん mailto:sage [2011/01/10(月) 20:46:47 ] スレチ
384 名前:デフォルトの名無しさん mailto:sage [2011/01/14(金) 19:41:24 ] iPhoneでHTTPのGETメソッドでHTMLファイルを取得するプログラムを @ NSURLConnectionのconnectionWithRequestメソッドを使う方法 // 非同期にダウンロードを実行 NSURLConnection * con = [NSURLConnection connectionWithRequest:request delegate:self] ANSStreamオブジェクトのscheduleInRunLoop:forMode:メソッドを使う方法 // RunLoopに登録する [inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode]; [outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode]; // ストリームをオープン [inputStream open]; [outputStream open]; の2つを作成しました。 両党ともメインスレッドのランループ上で実行されると思うのですが、 @は問題なく動作するのにAの方は他のイベント処理の邪魔(DL中に画面にタッチすると固まったようになる)をしています。 Aは何が問題なのでしょう???
385 名前:デフォルトの名無しさん mailto:sage [2011/01/15(土) 08:39:00 ] 何って、[NSRunLoop currentRunLoop] がイベントを処理するランループと同じなんでしょ?
386 名前:デフォルトの名無しさん mailto:sage [2011/01/28(金) 22:36:52 ] 後はラムダ式を実装すればObj-Cに敵はない
387 名前:デフォルトの名無しさん mailto:sage [2011/01/29(土) 01:17:34 ] C+syntax sugarとruntime systemってのがいいのに、そんなんいらんよ。
388 名前:デフォルトの名無しさん mailto:sage [2011/01/29(土) 01:50:09 ] >>386 blocks があるじゃん
389 名前:デフォルトの名無しさん mailto:sage [2011/01/29(土) 05:39:46 ] inputStreamへの読み出し操作が、パケット受信待ちみたいな理由で ブロックされてるのではないかと思われ
390 名前:デフォルトの名無しさん mailto:sage [2011/02/01(火) 05:06:57 ] 教えてください。 文字列を作り、それをファイル入出力しましたが、同じはずの文字列と比べると否と出ます。 何が原因なのでしょうか? NSString* hoge = @"HOGE"; [NSKeyedArchiver archiveRootObject:hoge toFile:@"FILE"]; hoge = [NSKeyedUnarchiver unarchiveObjectWithFile:@"FILE"]; NSLog(@"文字列HOGEをファイル入出力したもの > %@",hoge); NSLog(@"それと文字列HOGEを比べた結果 > %d",(hoge == @"HOGE")); hoge = @"HOGE"; NSLog(@"文字列HOGEを作り直したものと文字列HOGEを比べた結果 > %d",(hoge == @"HOGE"));
391 名前:390 mailto:sage [2011/02/01(火) 05:08:47 ] すいません書き忘れました。上のソースの結果はいかのとおりです。 文字列HOGEをファイル入出力したもの > HOGE それと文字列HOGEを比べた結果 > 0 文字列HOGEを作り直したものと文字列HOGEを比べた結果 > 1
392 名前:デフォルトの名無しさん mailto:sage [2011/02/01(火) 05:19:28 ] ポインタ比べてどうする。 内容比較なら - (BOOL)isEqualToString; 使え。www.oomori.com/cocoafw/Foundation/NSString/isEqualToString.html あるいは www.oomori.com/cocoafw/Foundation/NSString/compare33702.html
393 名前:390 mailto:sage [2011/02/01(火) 12:19:21 ] >>392 ああっ、そう言えば前も引っかかった、、、。 ありがとうございました。
394 名前:デフォルトの名無しさん [2011/02/02(水) 02:22:40 ] すいません、教えてください。 画面の何処かをタッチして、指を離さずにズリズリ移動して、 UIButtonの上に来たらイベントを発生させたいのですが、うまくいきません。 どうやったら、できるんでしょうか。
395 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 12:08:20 ] スレチ
396 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 12:40:49 ] サーバサイドでObjective-C使うことってある?
397 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 13:55:06 ] そういえば昔 WebObjects があったな
398 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 14:10:08 ] libcgiをObjCでラッピングするとかって話は見たことある
399 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 14:10:42 ] WebObjectsってフレームワークで、言語はJavaじゃなかったっけ?
400 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 14:23:08 ] NSConnection使えばobjcオブジェクトを直接やり取りできるよ
401 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 14:32:27 ] 文字列、外部変数にしてstatic 付けてretainまでしても、 イベントループ終わったら解放されてしまうんですが、 残す何か良い方法はないでしょうか。
402 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 14:46:38 ] コード上げてみ。どうせお前が release してるんだろ
403 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 08:41:41 ] >>396 昔、うちのサーバ(特殊用途)がOPENSTEPだったことがあった。
404 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 09:45:50 ] iOS4プログラミングブックって本が人気あるみたいだけど、 これは初心者が手を出しても良い本?
405 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 10:59:19 ] >>399 Javaベースになったのは4からだよ WebObjects3には大変お世話になりました あれがなければ2000年問題乗り切れなかったよ
406 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 16:07:39 ] >>405 そうなんだ。 じゃそれまではObjCだったのかな。その頃からObjCを使ってる人達が今、本を書いたりしてるのかな。
407 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 16:07:50 ] >>399 Objective-C で書かれたものが発祥 今のは Java でリプレースされたもの
408 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 20:23:49 ] >>404 書いた人がわかってる人向けって言ってる。
409 名前:デフォルトの名無しさん mailto:sage [2011/02/04(金) 09:25:24 ] >>408 ありがとう。じゃあまだ俺には早すぎるな。
410 名前:デフォルトの名無しさん mailto:sage [2011/02/05(土) 22:19:56 ] グローバル変数ってフラッシュにそのまま保存するのどうやってするんでしょうか。 やっぱりインスタン変数にアドレス入れないとダメですか?
411 名前:デフォルトの名無しさん mailto:sage [2011/02/05(土) 22:43:56 ] >>410 こんな質問するやつの作るプログラムなんて危なっかしくて使えないな
412 名前:デフォルトの名無しさん mailto:sage [2011/02/06(日) 10:12:07 ] 世の中そんなプログラムで溢れてる
413 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 00:52:25 ] main.mで、 test* t = [[[testC alloc] init] autorelease]; NSLog(@"%@",t); test.mでは、 - (void)init { if (self = [super init]) { hoge = @"hoge"; } というプログラムを書くと、なぜかNSLogの出力に、なぜかtestであるはずのtはNSCFString、 値はhogeとでます。 なぜでしょうか?
414 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 01:08:23 ] >>413 testは、実はtestCだからじゃ?
415 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 01:48:56 ] -init の返り値が void のわけねえだろ
416 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 01:52:01 ] いろいろひどすぎて絶句した
417 名前:413 mailto:sage [2011/02/07(月) 02:10:23 ] すいません、、testはtestCで、-initの返り値はidです。 書き込む時になぜか間違えました。。。 もちろんそれらを正しく書いてもtestCはNSCFStringになってしまうのです。
418 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 03:30:55 ] @interface も不明なのに何を言えと
419 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 04:48:41 ] >>417 質問の段階でそのレベルの間違いをされると、 指摘してほしい「間違い」とコピペの「間違い」を回答側で区別つけるのは不可能だし。 ソースコードのコピペは修正しないこと。目でコピペしないこと。 原因の見当もつけられていない段階で、「この部分だけで十分」と判断しないこと。
420 名前:413 mailto:sage [2011/02/07(月) 10:01:11 ] ご迷惑をおかけして申し訳ありません。 試行錯誤した所、initでreturn self;を書くのを忘れていたせいの様です。 何故NSCFStringだったのかはまだ分かりません。 因みに@interfaceでは、インスタンス変数として、 NSString* hoge; としていただけでした。 何故なのでしょう。 ありがとうございました。
421 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 10:45:00 ] …何やらいろいろな意味ですごいなw
422 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 11:51:17 ] 予想通りだったわ
423 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 12:12:10 ] ヤフーか初心者スレできけばいいのにね。 2chの専門系スレは最低限の知識あること前提やん? タダでなんかするなら理解力と基礎知識は必要よ。 それ怠るんなら、きちんとカネだして講習とか勉強会行くべきだろ それか上司か先輩にしかられて覚えろ
424 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 14:53:23 ] おまいらやさしいな
425 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 17:56:43 ] 余暇グラマーだとしても、技術屋としちゃどうかと思うが
426 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 23:09:51 ] >>424 マカーはスルースキルが極端に低いだけ。
427 名前:デフォルトの名無しさん mailto:sage [2011/02/07(月) 23:18:07 ] スルースキルを使うのはアホにしつこく煽られた時だろ
428 名前:デフォルトの名無しさん mailto:sage [2011/02/09(水) 13:40:14 ] NSIndexSet コピーを、range の二分木(R木?)使ってCで作ってて、一通りの実装を終えた。(CFRangeSet と名付けた) そこで今は高速化に取り組んでるのだが、 -containsIndex: や -containsIndexesInRange:, -containsIndexes: が NSIndexSet(IMP使用)より最悪で2, 3倍遅い。 (ランダム挿入なら圧倒的に速い、順序挿入でも3, 4倍程度の遅さ。メモリは4倍必要) 木構造のバランスは取れてるのに、何故 range の配列を抱えただけのNSIndexSetより遅いのか疑問だったのだが、 NSIndexSet は検索の際、例えば -containsIndex:(NSUInteger)value において、value の値と集合の最大・最小値、偏差を元に 目的の range の位置を当て推量し、配列の検索の開始地点を変えてるんだな。 通りで、ある程度分布の整った indexSet だと、厳密に走査する CFRangeSet は遅れるわけだ。 実際に indexSet に偏りを与えてテストすると、CFRangeSet のタイムは殆ど一定、むしろ一部速くなるが、 NSIndexSet だと急激にタイムが悪化した。
429 名前:デフォルトの名無しさん mailto:sage [2011/02/09(水) 21:10:44 ] 徒労乙
430 名前:デフォルトの名無しさん mailto:sage [2011/02/09(水) 23:51:19 ] ヤッター
431 名前:デフォルトの名無しさん mailto:sage ネタ投下 [2011/02/19(土) 18:25:40 ] ttp://anlyznews.blogspot.com/2011/02/objective-c.html objc(笑)
432 名前:デフォルトの名無しさん mailto:sage [2011/02/19(土) 18:27:18 ] 137 名前: デフォルトの名無しさん Mail: sage 投稿日: 2011/02/16(水) 04:53:33 >>124 その記事だと ObjC が遅いって事にしたいみたいだけど、6 秒と 8 秒なら 大した差じゃないだろ。コンパイラのバージョンが違うだけでこれくらいの 揺らぎは発生するもんだぜ。ObjC の速度について言うなら Apple の GCC や clang でも測定するべきだろうし、ObjC はコードの中に C の関数も混ぜられる のだから、カリカリにチューニングしたければ、その部分だけ C で実装するのが 当たり前の世界な訳で、色々と話に無理がある様に感じる。 動的束縛が遅いのはまともなプログラマなら常識の話だし、ドキュメントにも 明確に記載されている話なのに、何故か隠されている真実みたいな扱いを しているのも何なんだろうな。 developer.apple.com/library/mac/#documentation/Performance/Conceptual/CodeSpeed/Articles/CriticalCode.html
433 名前:デフォルトの名無しさん mailto:sage [2011/02/19(土) 20:26:54.64 ] むしろ"Javaの方が生産性が高い"根拠が示されてないのが気になった
434 名前:objc(笑) mailto:sage [2011/02/19(土) 20:32:21.46 ] >>432 >Objective-C推進者は、速度が大事な部分だけCのように書けば高速だと主張しており、その遅さについては秘密にしたがる。 >チューニング・ポイントは明確ではあるが、場合によってはプログラマ負荷がC++よりも高くなる可能性がある言語だと言える。 >433 ttp://anlyznews.blogspot.com/2010/12/googlejavaappleobjective-c7.html
435 名前:デフォルトの名無しさん mailto:sage [2011/02/19(土) 20:35:48.27 ] まぁ結論ありきの自己満足ブログだからな
436 名前:デフォルトの名無しさん mailto:sage [2011/02/19(土) 22:05:56.16 ] >>431 OSX 10.6 + GCC4.2 + x86_64でやってみたら C++ (inline) 10.3秒 C++ (virtual) 12.5秒 Objective-C (IMP) 13.5秒 Objective-C 22.7秒 位だったよ。dynamic dispatchでこの差なら凄く速いと思う。 Objective-Cのdispatcherはキャッシュ使ってるから、複数のメッセージ混ぜると もっと遅いだろうね。 自分はほとんどC++使ってるけど、Objective-Cのメソッド呼び出し速度が問題に なる様な書き方は逆に相当難しいでしょ。
437 名前:デフォルトの名無しさん [2011/02/19(土) 23:14:42.46 ] CoreGraphicsを使って10000個位の矩形(塗りつぶした●や■) をiPhone上で高速にスクロールさせながら描画させる方法って何かないですかね? フリックやドラッグの時に大きさ変えるので、 オフスクリーンに描くこともできず毎回書き直してます^^;; が、これだとシミュレータでは問題なく動いても、iPhoneだとスクロールが重たくって 各矩形をCGContextDrawPathでパス作って描いてみたり、 CGContextAddRectで直接描いてみたり、 はたまたCGContextAddRectsにてまとめて描画させてみたりしたけど あまり描画には変化なし・・・ 小手先のテクニックでもいいんで知ってる人いたら教えてください^^; スレ違いだったら別スレ教えてください^^;
438 名前:デフォルトの名無しさん mailto:sage [2011/02/19(土) 23:43:27.37 ] >>434 だから秘密にしてねえだろ 何で君はそんなブログ記事に影響されてコピペまでしちゃってるの?
439 名前:デフォルトの名無しさん mailto:sage [2011/02/20(日) 01:31:48.12 ] >437 iPod touch/iPhone ネイティブアプリ製作 (新・mac板) hibari.2ch.net/test/read.cgi/mac/1292476397/ でもさすがにそれは難しそう。iOSに倣って綺麗に手抜きすべき部分だと思う
440 名前:デフォルトの名無しさん mailto:sage [2011/02/20(日) 03:15:14.43 ] >>439 どもです〜 スレ移ります^^ やっぱり難しいですかね 1000位に減らしても遅いんですよね^^; うーん 何かいい方法はないものか・・・
441 名前:デフォルトの名無しさん mailto:sage [2011/02/20(日) 04:35:18.87 ] OpenGL使え。
442 名前:デフォルトの名無しさん mailto:sage [2011/02/20(日) 04:38:38.17 ] 俺も OpenGL ES 使えって書こうとしたけど、2D でもそんなに影響があるのかな。 ~AddRects 使ってダメなら OpenGL ES でもあんまり変わらなそうな・・・
443 名前:デフォルトの名無しさん mailto:sage [2011/02/20(日) 06:17:05.50 ] >>434 ひでぇブログだな。合理的な反論がある場合、普通、論拠として見なさないんだが。
444 名前:デフォルトの名無しさん mailto:sage [2011/02/20(日) 20:43:54.56 ] >>441 そうしたいのは山々なんですが・・・ >>442 そうなのですか やっぱり厳しいですかねぇ・・・ ちょっとしたTipsでもいいので何か手はないかと
445 名前:objc(笑) mailto:sage [2011/02/21(月) 21:17:29.39 ] >>438 単なる暇つぶしだお。
446 名前:デフォルトの名無しさん mailto:sage [2011/02/21(月) 21:23:03.91 ] OpenGL 面白いと思うんだがな・・・
447 名前:デフォルトの名無しさん mailto:sage [2011/02/21(月) 22:08:06.88 ] ヘタレなんでもうちょっと高レベルなAPIだと…
448 名前:デフォルトの名無しさん mailto:sage [2011/02/21(月) 22:23:55.49 ] 言葉は意味明瞭に最後までハッキリと書け。あるいは消えろ。
449 名前:デフォルトの名無しさん mailto:sage [2011/02/22(火) 00:58:07.11 ] ごめんなさい
450 名前:デフォルトの名無しさん mailto:sage [2011/02/22(火) 01:02:03.27 ] あるいは気にすんなよ。
451 名前:デフォルトの名無しさん mailto:sage [2011/02/24(木) 10:31:32.02 ] (A > 0)みたいな式を作るためにNSPredicateがあると思うんですが NSPredicate *predicate = [NSPredicate predicateWithValue:YES] のようにpredicateWithValue:で作られたオブジェクトって何のために使われるんでしょう?? 常にYESになるオブジェクトって。。??
452 名前:428 mailto:sage [2011/02/24(木) 22:06:40.16 ] boost::icl::interval_set<int> よりは1.5~3倍は速かった。ヤッター
453 名前:デフォルトの名無しさん mailto:sage [2011/02/28(月) 00:44:59.73 ] >>452 オメ
454 名前:デフォルトの名無しさん mailto:sage [2011/02/28(月) 05:57:44.57 ] >>434 言語の特性だけで、実際の開発効率に関しては 数値根拠が無さ過ぎる。 JavaとObjective-Cは、対極にあって効率論はあまり意味が無い。 静的なプログラムを書くならJavaの効率がいいだろうが、 Objective-Cの動的特性は、スクラップ&ビルドを何度も繰り返す プログラムに向いている。 つまり、UIの設計に。 Javaで独自UIが簡単に作れるならいまごろJavaアプリが 氾濫してるよ。
455 名前:デフォルトの名無しさん mailto:sage [2011/02/28(月) 10:16:48.51 ] どうせ、Eclipse <<<<超えられない壁<<<Xcode、ゆえにJavaの方が…って理論でしょ。
456 名前:デフォルトの名無しさん mailto:sage [2011/02/28(月) 10:17:38.36 ] 不等号逆っておい
457 名前:デフォルトの名無しさん mailto:sage [2011/03/12(土) 16:49:55.23 ] 日付の文字列からNSDateオブジェクトの作成で困っています。 // 変換する日付文字列 NSString *timeString = @"2011-03-12 05:30:11.999888"; // NSDateFormatterのインスタンスを作成 NSDateFormatter *inputDateFormatter = [[NSDateFormatter alloc] init]; // 日付文字列の書式を設定する [inputDateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.S"]; // 日付文字列 → NSDateへ変換 NSLog(@"%@", [inputDateFormatter dateFromString:timeString]); この結果はnullになります。原因は日付文字列にあるようで @"2011-03-12 05:30:11.999888" だとnulになり、l @"2011-03-12 05:30:11.998888" だと正常にNSDateへ変換されます。 これはなぜでしょう???
458 名前:デフォルトの名無しさん mailto:sage [2011/03/12(土) 18:43:45.16 ] ゼロコンマ以下は .9995 未満までしか受け付けないのかな。
459 名前:デフォルトの名無しさん mailto:sage [2011/03/12(土) 19:31:06.65 ] >>458 なるほどー。そういう仕様っぽいですね。 それかバグか。。
460 名前:デフォルトの名無しさん mailto:sage [2011/03/13(日) 07:52:25.05 ] CFDateFormatter のソース見れば分かるかもしれんが、込み入ってて読めん。
461 名前:デフォルトの名無しさん mailto:sage [2011/03/13(日) 09:48:58.49 ] 込み入ってなくても読めん
462 名前:デフォルトの名無しさん mailto:sage [2011/03/13(日) 09:53:11.79 ] いやオープンソースだろ
463 名前:デフォルトの名無しさん mailto:sage [2011/03/13(日) 10:00:08.50 ] でソースどこにあんの?
464 名前:デフォルトの名無しさん mailto:sage [2011/03/13(日) 10:03:02.30 ] www.opensource.apple.com/
465 名前:デフォルトの名無しさん mailto:sage [2011/03/13(日) 19:00:34.48 ] そのあたりは ICU 使ってるから、そっちのソース見たほうがいいよ。 ざっと見た感じでは ・小数点以下の部分はミリ秒の精度で内部処理、つまり小数点以下3桁までが有効 ・小数点以下が4桁以上の値を与えられた場合、3桁にきりつめる ・この時に小数点以下4桁目を四捨五入するので .9995 以上だと範囲を超えてしまう →エラー という流れっぽい
466 名前:Perl忍者 ◆M5ZWRnXOj6 [2011/03/14(月) 19:23:03.84 ] 最強ハッカーチームPerlBlack「黒真珠」 hibari.2ch.net/test/read.cgi/linux/1300097049/
467 名前:デフォルトの名無しさん mailto:sage [2011/03/14(月) 19:34:10.62 ] エネルギーあまった子供たちが付けそうな名前だな 映画も話題作しか見ないような
468 名前:デフォルトの名無しさん mailto:sage [2011/03/14(月) 20:00:11.44 ] 黒真珠つーと、ちんぽに埋め込むもの
469 名前:デフォルトの名無しさん mailto:sage [2011/03/14(月) 20:32:18.30 ] 黒真珠なら Black Pearl だろう 大体Perl はスレ違い
470 名前:デフォルトの名無しさん mailto:sage [2011/03/16(水) 08:38:49.97 ] パールレッド!パールブルー!
471 名前:デフォルトの名無しさん mailto:sage [2011/03/16(水) 09:11:56.70 ] そこは金銀パールプレゼントだろ
472 名前:デフォルトの名無しさん [2011/03/16(水) 19:20:40.71 ] 質問ですが、親クラスのenumを子クラスで再定義(上書き)、みたいなことってできないんでしょうか。 一つ加えたいんですが。
473 名前:デフォルトの名無しさん mailto:sage [2011/03/16(水) 19:26:05.83 ] クラスのenum? お前はなにを言ってるんだ。 あとこれC or C++ 言語のスーパーセットだから。
474 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 14:03:57.23 ] Objective C ってサーバーサイドプログラムって書けないの?
475 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 14:21:13.84 ] プログラムは書けるだろ 動くかどうかはサーバーによるだろうけど
476 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 14:29:41.41 ] gccにあるから当然使える。
477 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 15:09:54.78 ] デフォのWindows ServerにはObj-Cランタイム入ってないと思うよ
478 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 16:27:08.86 ] >Windows Server プギャー
479 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 18:01:17.69 ] 俺エスパーじゃないから>474だけでサーバのOSを特定できないんだよ
480 名前:デフォルトの名無しさん [2011/03/26(土) 18:15:21.07 ] こんにちは。 最近Objective-Cを勉強し始めた者です。 いろいろなサンプルソースを眺めていると、ときどき インスタンス名とプロパティ名を変更している書き方を見かけます。 こんな風に。 UIWindow* _window; @property (…) IBOutlet UIWindow window; @synthesize window = _window; 上の例の場合、 名前を途中で変える書き方って、どんな利点があるんでしょう? 全部「window」で統一しててもいいように思えるのですが。 皆さんはどうされていますか?
481 名前:デフォルトの名無しさん mailto:sage [2011/03/26(土) 18:38:39.04 ] >480 それはGoogleのObjective-Cスタイルガイドに準じてるんだと思うよ
482 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 00:14:51.92 ] >>480 メソッド経由でアクセスしてるのか直接ポインタを触ってるのかが一目瞭然になる
483 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 02:34:21.28 ] カテゴリの名前には、コメントていどの意味しかないってまじで? 何の意味があんの?まぁ、大本のクラスとは区別つくけどさ。
484 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 02:43:55.26 ] clangのLLVM効果ってどうよ? メッセージのディスパッチもGCCなんかよりましになってる?
485 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 03:03:02.21 ] >>482 それは関係ないだろ
486 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 12:17:04.81 ] >>483 言ってる事がよくわからないけど、内部でカテゴリごとにまとめられる >>484 ディスパッチ部分はランタイムの中だからアプリを何でコンパイルしようがランタイムが一緒なら一緒 nilチェックしないようにする位しかこっちは手が出せないよ
487 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 12:58:42.03 ] >>485 それ以外に効果があるのか? >>480 俺は、windowで書いて必要になったら(自前でgetter,setter書く) _windowに書き換えることにした。
488 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 13:32:35.97 ] >>487 > それ以外に効果があるのか? そもそも this.hoge と hoge が違うのは一目瞭然だろ。
489 名前:デフォルトの名無しさん [2011/03/27(日) 14:08:03.60 ] >>474 サーバー自体を書いてしまったらどうだろう。
490 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 14:16:13.66 ] >>488 self だぞ
491 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 20:35:05.99 ] >>488 コードを全然書いてないのがバレバレだな。
492 名前:デフォルトの名無しさん mailto:sage [2011/03/28(月) 01:47:32.34 ] >>490-491 どっちにしろ そもそも self.hoge と hoge が違うのは一目瞭然だろ。
493 名前:デフォルトの名無しさん mailto:sage [2011/03/28(月) 01:56:06.34 ] その点については同意する
494 名前:デフォルトの名無しさん mailto:sage [2011/03/28(月) 15:27:42.54 ] >>492-493 ぼくもどういします。
495 名前:デフォルトの名無しさん mailto:sage [2011/03/28(月) 15:41:09.58 ] >>492-493 一目瞭然ですw
496 名前:デフォルトの名無しさん mailto:sage [2011/03/29(火) 10:19:37.13 ] お前さんたちアタマいいな
497 名前:デフォルトの名無しさん mailto:sage [2011/03/29(火) 10:53:53.29 ] ドット記法が使えるのはObjective-C2.0からですからー
498 名前:デフォルトの名無しさん mailto:sage [2011/03/29(火) 11:19:51.06 ] プロパティの話だから2.0であってるだろ
499 名前:objc(笑) mailto:sage [2011/03/29(火) 21:29:51.40 ] >>480 そもそもプロパティを使うならインスタンス変数の宣言はいらないのでは?
500 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 01:00:00.93 ] そうでもない
501 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 03:54:46.53 ] そうでもない
502 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 06:57:11.31 ] 32bit runtimeと64bit runtimeの違いだったけ? インスタンス変数の要不要。
503 名前:デフォルトの名無しさん mailto:sage 名前欄が残ってた笑 [2011/03/30(水) 12:22:34.24 ] >>502 Mac ではね。iOS だと最初から使えるとおもう。 新しい runtime だから。
504 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 12:40:49.13 ] いまはどうなってるか知らないけど、実機なら使えるけどシミュレータでは 使えないって状態だったせいで、iOSではインスタンス変数必須にするのが クセになってしまったよ
505 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 13:59:43.13 ] Debug->Releaseの構成で変わったけど
506 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 19:29:04.78 ] >>504 あー、シミュレータだと OS X のランタイム使うからかな? でも Xcode 4 入れた環境で試したらシミュレータでもちゃんとコンパイルできたよ。
507 名前:デフォルトの名無しさん mailto:sage [2011/03/30(水) 21:29:47.36 ] >>506 それは朗報だ 情報ありがとう
508 名前:デフォルトの名無しさん mailto:sage [2011/04/02(土) 19:14:40.82 ] xcode4使い方わかんねー
509 名前:デフォルトの名無しさん mailto:sage [2011/04/03(日) 13:55:51.13 ] >>474 httpdしだいだろ。
510 名前:デフォルトの名無しさん mailto:sage [2011/04/03(日) 22:27:23.27 ] GET/POST値って取れんの?
511 名前: 忍法帖【Lv=2,xxxP】 mailto:sage [2011/04/04(月) 02:32:13.00 ] CGIなら標準入出力と環境変数さえ扱えればいいだけだし。 WebObjectsも浮かばれんね。
512 名前:デフォルトの名無しさん mailto:sage [2011/04/04(月) 10:57:50.33 ] libcgiをObjective-Cでラッピングすればいいとかなんとか
513 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 00:24:26.58 ] ttp://s.ameblo.jp/iphoone/theme2-10023168483.html このブログに書いてあるコードって 持ってる本のコードにソックリなんだけど いぃのかなぁと
514 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 01:05:49.83 ] >>513 本持ってるなら、サンプルコードの使用についての記載は無いのかい? 例えばオライリーのJavaScript第5版には 「...本書や本書のサンプルコードを引用して質問などに答える場合、許可を求める必要はありません。ただし...」 となってるから、引用の量とかによるんじゃ。
515 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 03:23:10.52 ] 本書及びソフトウェアの一部または全部を出版元から文書による許諾を得ずに複製する事は禁じられています。 って書いてあったたわ
516 名前:デフォルトの名無しさん [2011/04/29(金) 00:56:03.63 ] >>508 まず自分で何が分からないのか 人に説明出来るくらい分からないと そう考えると不思議と分かる
517 名前:デフォルトの名無しさん mailto:sage [2011/04/29(金) 01:01:23.12 ] インスタンス変数は、 window_にしてとくと、 @synthesizeでxcodeが勝手に補完してくれて、 字余り
518 名前:デフォルトの名無しさん [2011/04/30(土) 18:26:36.63 ] コード書くんだったらxcodeよりもappCodeだろ
519 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 20:46:18.07 ] そのココロは?
520 名前:デフォルトの名無しさん [2011/04/30(土) 21:43:36.32 ] >>519 ずっとIDE作ってた会社だけあってエディタとしての機能はappCodeが確実に上
521 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 21:53:34.64 ] それ、PyCharm と同じ所の奴だよね Guido は Emacs を使い続けるらしいけど・・・ https://profiles.google.com/gvanrossum/posts/CGh9MoWU53V 自分も Vim を使い続けるけど・・・
522 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:06:36.37 ] vimとかemacsを無理に使い続ける人たちって滑稽だと思う
523 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:08:37.80 ] 無理に使い続ける人はそうかもね。何で無理に使い続けるの?
524 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:09:34.75 ] 無理に使い続けてるなら滑稽だけど ぶっちゃけ快適だから使い続けている
525 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:25:41.22 ] Code Warrior最凶
526 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:30:35.87 ] EmacsとかVim使ってて生産性高いなら良いけど そうじゃない人多いよな 正直迷惑だからやめてほしい
527 名前:戦士カンガイバー ◆DMLinuxPbA mailto:sage [2011/04/30(土) 22:32:46.27 ] どういう風に迷惑かけられたのか詳しく
528 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:32:56.79 ] emacsやvimを使ってる人は優れたプログラマが多い emacsやvimの生産性が高いのか、生産性の高いプログラマがそれらを好むのか おそらくは両方だろう
529 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:34:52.72 ] Emacs とか Vim の文字を見ただけで干渉してきたがる人がごくたまにいるよね 正直迷惑だからやめてほしい
530 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:39:22.02 ] >>527 とにかくとろいんだよ Emacsを相当使いこなしてる人を知ってるけど その人とのスピードは雲泥の差だし IDE使ってる俺とも比べるべくも無い そういう奴を何人も見てる
531 名前:戦士カンガイバー ◆DMLinuxPbA mailto:sage [2011/04/30(土) 22:41:30.65 ] >>530 だから何が迷惑なわけ?
532 名前:デフォルトの名無しさん [2011/04/30(土) 22:43:37.09 ] >>531 それが迷惑だと思わないなら終わってると思うよ
533 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:43:43.06 ] IDE のプラグインのインストールではまって時間を無駄にしている人と同じ感じかな。 あれはイライラするね。
534 名前:デフォルトの名無しさん [2011/04/30(土) 22:45:44.36 ] まぁ、コード補完まわりとかemacsとかvimは中途半端で微妙だよね
535 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:47:39.03 ] Emacs や Vim の話をするだけでイチャツイてくる人はもう少し空気を読んで欲しいな。 俺等が Emacs や Vim を使った所で、世界が崩壊する訳じゃないんだから。
536 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 22:50:30.57 ] たまに、Emacs に文句を付ける事が生き甲斐なんだー、って人いるよね 正直迷惑だからやめてほしい
537 名前:デフォルトの名無しさん [2011/04/30(土) 22:58:00.33 ] キャメルケース補完の出来ない環境は総じて糞
538 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 23:09:10.58 ] たまに、Vim に文句を付ける事に執念を燃やしているんだッ、って人いるよね 正直迷惑だからやめてほしい
539 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 23:40:38.41 ] >>520 appCodeちょっと気になる 日本語のコメントとか大丈夫?
540 名前:デフォルトの名無しさん mailto:sage [2011/05/01(日) 02:42:08.31 ] 勝手に使ってる分には構わんがこっち寄ってくんなってのemacs厨
541 名前:デフォルトの名無しさん mailto:sage [2011/05/01(日) 02:44:46.55 ] 他人が便利に使ってる物をとやかく言う人たちって滑稽だと思う
542 名前:デフォルトの名無しさん mailto:sage [2011/05/01(日) 02:47:11.68 ] >>520 日本語は使えるんでしょうか?
543 名前:デフォルトの名無しさん [2011/05/01(日) 09:27:01.01 ] >>539 >>542 英語のスペルチェック入るから、日本語のコメントには下にちょっと波線が入る スペルチェック切るか、option+returnで辞書にコメント登録しちゃえば波線は消える @""で日本語入れる分には特に何も表示は出ないし問題なく書けるよ
544 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 13:00:17.64 ] IDEで数秒もかからない作業を数分かけたり精度を下げたりして 会社とプロジェクトの時間を無駄にする素人はまじで消えろと思う。 せめて作業によって複数の環境を併用してくれればいいのに。 趣味で触るなら好きな環境を使えばいいと思うんだけどね。
545 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 13:09:10.42 ] IDE 使わないでコンマ数秒でやれば文句無いんだろ。 IDE に心酔しているみたいだけど、単なるツールにそこまで入れ込んで スレ違いの話題を延々続けるのは理解出来んわ。
546 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 14:13:55.74 ] >>544 転職すればおk
547 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 14:56:01.18 ] >>545 構文解析が必須のリファクタリングをemacsでもviでもコンマ数秒で行える人を見たことがない 実際できるものならそれを使って欲しい
548 名前:デフォルトの名無しさん [2011/05/02(月) 15:00:54.73 ] >>547 置換で代用しようとして失敗する奴は絶滅して欲しいよな…
549 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 15:01:50.82 ] >>547 Vim で refactoring する方法はググれば沢山載ってるから、好きにすれば良い。 それはここで話す内容じゃないし、君の個人的な不満を吐き出す場所でもない。
550 名前:デフォルトの名無しさん [2011/05/02(月) 15:05:59.65 ] そんなことよりCIDR使おうぜ
551 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 15:08:18.78 ] IDE 聖戦士様はこちらで戦いを挑んで来たら良いんじゃねーの emacsでeclipseと同等の開発環境は作れるのか? hibari.2ch.net/test/read.cgi/tech/1292073293/ ここで不満を垂れられてもスレ違いなだけなんだわ
552 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 15:09:52.65 ] >>549 ごめん、 >>551 見てくる
553 名前:デフォルトの名無しさん [2011/05/02(月) 15:17:00.79 ] もしかすると、CIDRって予想以上に使ってる人少ないのかな
554 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 17:40:45.02 ] >>553 もしかして ttp://www.infoq.com/jp/news/2011/04/jetbrains-appCode のこと? 普通に CIDR でググッてもネットワーク関連の用語しか引っかからなくて焦った。
555 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 17:52:35.22 ] 小さなツールで大きな仕事をするのが*nixと*nixプログラマ 大きなツールで小さな仕事しか出来ないのがNTとドザグラマ
556 名前:デフォルトの名無しさん [2011/05/02(月) 17:54:12.90 ] >>554 そうそう、それのこと appCodeの方が一般的なのかな?
557 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 17:56:00.79 ] エディタ戦争って本当に不毛だよな ツールを押し付け合っても誰からも感謝されない
558 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 18:05:52.73 ] IDEはエディタじゃない IDEにエディタが内蔵されてるだけ エディターとして語るのは言語道断
559 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 18:18:38.58 ] そういう言葉遊びはどうでもいいわ
560 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 18:20:31.27 ] 大きなことは出来ませんが、小さなことからコツコツと
561 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 18:21:59.39 ] Objective-CというかMac好きな輩と IDE/Editor論争が好きな輩は被ってそう
562 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 18:28:21.01 ] ツールを押し付け合っても誰からも感謝されない
563 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 21:51:16.87 ] Emacs, Vimはよく出るけど今じゃ肥大化してるからな。 そこでnanoとかjoeってどうよ? オリジナルViのようにシンプルだぜ
564 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 22:55:32.05 ] 普段は御本人こだわりのツール群使ってる奴が 他のメンバのマシンの前で手も足も出なくなってるの見ると なんだか可哀想になってくる
565 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 23:05:51.97 ] そういう事は堂々と本人の前で言えよ いつまでこのスレで愚痴ってるんだよ・・・
566 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 07:21:05.15 ] 影で他人のツール構成を小馬鹿にしてる奴が 仕事をしてる本人の前ではビビって何も言えなくなってるのを見ると なんだか可哀想になってくる
567 名前:デフォルトの名無しさん [2011/05/03(火) 10:26:45.35 ] 俺はviもemacsも一通りの操作はできるし IDEもメジャーどころは一通り抑えてるので大丈夫だけど 現場のルールでIDEを仕様する事って決まってるときに viやemacsしか使いこなせない人の生産性の低下は目も当てられないとは思う 本番環境とかで緊急のデバッグするときにIDEしか使えない人のカスっぷりも 同様に目も当てられないので、プロならどの道具も普通程度には使えた方が良いと思う その中から好きなの選んで使いこなすのは良いと思うけどね
568 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 11:03:19.73 ] まだ言ってるのかよ スレ違いを理解出来ない人間が何を言っても・・・
569 名前:デフォルトの名無しさん [2011/05/03(火) 11:06:56.68 ] スレ違い!スレ違い!って叫ぶだけじゃなくて話題提供しようぜ 出来ないなら黙ってりゃ良いだけだし appCode使ってみたけど、確かにXcodeでソース書く気は失せたな
570 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 11:37:51.33 ] 黙ってりゃ何が良いんだ? グダグダ愚痴を垂れてるのなんて誰も見たくないだろ
571 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 11:43:54.16 ] >>570 どうでも良い方の話題にだけ食いついてるお前も同罪
572 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 11:46:14.98 ] どうでも良くない話題ってどれ?
573 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 23:47:43.98 ] Objective-C
574 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 23:53:40.69 ] じゃあ Objective-C の話題に戻そうぜ
575 名前:デフォルトの名無しさん mailto:sage [2011/05/04(水) 10:36:46.45 ] 関数型関数型って、関数部分を純粋にしてみせておおはしゃぎだけど、 結局データはどうなるのよ。関数に渡すんだろ? OOPでインタフェースの下に隠れてる内部構造を、 結局外から渡そうってんだろ? トータルで見たら散らかってね? 関数部分に副作用ありません、でもいっぱいデータ散らかして、 注意深く渡しながら、見張りながらやりくりしていきます、って?
576 名前:575 mailto:sage [2011/05/04(水) 10:37:21.25 ] 誤爆ごめん。
577 名前:デフォルトの名無しさん mailto:sage [2011/05/04(水) 10:56:22.45 ] はしゃぎすぎだろw
578 名前:デフォルトの名無しさん mailto:sage [2011/05/04(水) 17:12:21.77 ] 馬鹿野郎 test get() {0123,s}; for IilO0 []<foo@example.org> アハン
579 名前:デフォルトの名無しさん mailto:sage [2011/05/04(水) 18:20:27.79 ] 言語混ざり過ぎだろ、ぼけなす
580 名前:デフォルトの名無しさん mailto:sage [2011/05/05(木) 16:08:44.81 ] 星来たんはぁはぁ(*´Д`*)