プログラミング言語Swift 3
レス数が1000を超えています。これ以上書き込みはできません。
0001名称未設定
2014/08/23(土) 11:54:39.75ID:vUov9+yQ0Welcome to Swift
https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/
書籍iBooks:
The Swift Programming Language
https://itunes.apple.com/jp/book/swift-programming-language/id881256329?mt=11
Using Swift with Cocoa and Objective-C
https://itunes.apple.com/jp/book/using-swift-cocoa-objective/id888894773?mt=11
書籍の形にはなってないけどドキュメント
The Swift Programming Language
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Using Swift with Cocoa and Objective-C
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Swift Standard Library Reference
https://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/
Swift Blog
https://developer.apple.com/swift/blog/
Resources (Xcode 6が無料でダウンロードできる)
https://developer.apple.com/swift/resources/
関連スレ
Swift part3
http://peace.2ch.net/test/read.cgi/tech/1406083608/
前スレ
プログラミング言語Swift (実質 2)
http://anago.2ch.net/test/read.cgi/mac/1401736921/
新言語Swiftを語るスレ
http://anago.2ch.net/mac/kako/1401/14017/1401736249.html
0002名称未設定
2014/08/23(土) 11:56:16.61ID:vUov9+yQ0https://developer.apple.com/swift/
Swift (プログラミング言語) - Wikipedia
https://ja.wikipedia.org/wiki/Swift_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)
0003名称未設定
2014/08/23(土) 12:07:29.24ID:vzTUT3bV0let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/
0004名称未設定
2014/08/23(土) 12:16:54.55ID:X079YDx+0仕切り直すかね?
0005名称未設定
2014/08/23(土) 12:31:33.39ID:2GnMHtKl00006名称未設定
2014/08/23(土) 13:16:40.28ID:vUov9+yQ0BB2Cでは普通に見えた スレッドアぼ〜んになる条件て何?
このスレは次スレとしてでもお使いください
0007名称未設定
2014/08/23(土) 19:09:46.73ID:IZZLOhbi00008名称未設定
2014/08/23(土) 23:05:17.22ID:TsNfi07A00009名称未設定
2014/08/24(日) 09:55:24.89ID:3g+5Seul00010名称未設定
2014/08/27(水) 12:28:53.37ID:16tGPY700let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/
を埋めてからここを次スレに使います。
その次のスレタイはSwift 4とかにして欲しい。
0011名称未設定
2014/08/28(木) 09:29:11.74ID:4HY1lT7r0http://www.amazon.co.jp/dp/B00L35LRPI/
なかなか面白そう
0012名称未設定
2014/08/29(金) 00:48:36.64ID:4yMf698m0これとは別に書籍でも1冊出てたよな
そのうち立ち読みして買うか決めんと
0013名称未設定
2014/08/29(金) 11:14:53.51ID:AZvN0UgD00014名称未設定
2014/08/29(金) 12:55:19.35ID:lb5Y55+Ji0015名称未設定
2014/09/13(土) 15:51:05.63ID:J/wZkOwe0http://d.hatena.ne.jp/yomoyomo/20140907/swift
0016名称未設定
2014/09/13(土) 16:12:25.54ID:uIuZipzG00017名称未設定
2014/09/13(土) 16:25:53.08ID:iXoYv/LG00018名称未設定
2014/09/13(土) 21:14:49.18ID:11y0do3300019名称未設定
2014/09/13(土) 21:18:23.94ID:jQfwXL2+0現行スレこっちな
let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/
0020名称未設定
2014/09/17(水) 15:37:30.86ID:AeQCx0vt0ttp://www.runswiftlang.com
記事だよー
ttp://www.lifehacker.jp/2014/09/140914runswift.html
0021名称未設定
2014/09/17(水) 18:23:56.48ID:BJkEHvUr0let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/
0022名称未設定
2014/09/17(水) 18:29:49.09ID:Sa3zWz3Vi0023名称未設定
2014/09/18(木) 10:38:21.20ID:9hQJ3eDV00024名称未設定
2014/09/29(月) 00:54:18.78ID:u7CFV/5D0http://developers.slashdot.jp/story/14/09/28/056234/
スラドで議論になってたが、OC派が多いのが意外。
0025名称未設定
2014/09/29(月) 01:23:42.39ID:jxgL9T4F0だって、それは質問者の特殊な事情が大前提にある事案なんだから、
全く一般論としての事案ではないんだから、意外も何もないと思う。
0026名称未設定
2014/09/29(月) 03:46:15.25ID:fXt8kFRs0Cを熟知してる、手早くやりたい、だったらObjC以外ないんじゃないの?
HTMLとか持ち出す奴の気が知れない。
0029名称未設定
2014/11/13(木) 18:53:42.52ID:SnV6RbNX0http://peace.2ch.net/test/read.cgi/tech/1415860741/
0031名称未設定
2014/12/11(木) 13:43:16.60ID:T+7a8TvQ0ObjCできっちり設計までできるようになってからJavaで書く、もしくは誰かに書かせる、が正解
0032名称未設定
2014/12/11(木) 21:43:33.42ID:r1aebbiJ00033名称未設定
2014/12/12(金) 22:17:15.87ID:hzkLC0Wz00034名称未設定
2014/12/12(金) 23:51:56.36ID:JD3SYEHM0とても人気とは思えないけど
0035名称未設定
2014/12/18(木) 00:29:39.00ID:Gkfsp3Xf0GoogleもJavaを捨ててgoに移行するっぽい。
時代はオレオレ言語やな。
http://www.publickey1.jp/blog/14/androidgo_14.html
0036名称未設定
2014/12/18(木) 02:21:27.97ID:hcy79lT20カスか
0037名称未設定
2014/12/18(木) 02:31:29.08ID:4nH+eSqV0自分がってことか。納得
0039名称未設定
2014/12/19(金) 11:22:32.18ID:b2rdUtv60似たようなアプリが複数ある、OSが複数ある(Linuxに至ってはディストリという...)、似たようなハードが複数あるとかどう思うの?
言語にってのはお前がそんなのに対応できないからだろう?だから自分がってことだろうとしか思えないってことなんだがな
0040名称未設定
2014/12/20(土) 06:20:38.03ID:EzTY5WaL00041名称未設定
2014/12/20(土) 07:54:13.80ID:OCDx+b7w0それと、なんで言語ばっかり1から作り直すんだろうな。
改善の余地が大きいのは言語じゃなくてIDEのように思えるけどね。
0042名称未設定
2014/12/20(土) 09:21:14.11ID:mpC4Jler0基本ソフトウェアはそうでもないだろうけど
0044名称未設定
2014/12/20(土) 10:54:01.81ID:ZMjQ1tT70だからその「全て」に対応するのが本当に必要なのかって疑問を投げかけてるのでは?
実際のところは知らんけどね
0045名称未設定
2014/12/20(土) 11:22:57.01ID:3vLN67tW0作る必要もない、それだけじゃない、気にかける必要もないとか、もろもろが「必要ないなら対応しない」だけど?
0046名称未設定
2014/12/20(土) 13:39:15.29ID:12K/N3tF0本スレはこっち
let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/
0049名称未設定
2014/12/20(土) 17:12:32.73ID:EzTY5WaL0よくわからないね
0051名称未設定
2014/12/20(土) 17:42:51.61ID:EzTY5WaL00052名称未設定
2014/12/20(土) 17:58:46.95ID:12K/N3tF00053名称未設定
2014/12/20(土) 18:17:38.18ID:gT5frPZT0そうだな、お前が手に負えないアホだ。
それぞれ別々の板なんだから重複スレもへったくれもない、
ってのも理解できないんだから。
0054名称未設定
2014/12/20(土) 18:41:02.52ID:12K/N3tF0などと意味不明な供述をしており犯行の動機は未だ不明。
0055名称未設定
2014/12/20(土) 19:28:25.30ID:gT5frPZT0妄想したかったらよそいけや。
http://qb5.2ch.net/saku2ch/index2.html
妄想だからこっちでも相手にしてもらえないだろうけどな。
0056名称未設定
2014/12/20(土) 19:35:07.35ID:QnurDpqy0お前キチガイ過ぎるだろ……
>>46のスレもこの板も共に新・mac板だぞ。
一体何が「それぞれ別々の板」なんですかねぇ。
0057名称未設定
2014/12/20(土) 20:04:07.54ID:EzTY5WaL0両方同じ板にあるスレなのに性懲りもなく一体何を言ってんだろうね…
0058名称未設定
2014/12/20(土) 21:51:29.64ID:12K/N3tF00059名称未設定
2014/12/21(日) 00:28:28.38ID:TXpbre4H0Swift part4 [転載禁止]2ch.net
http://peace.2ch.net/test/read.cgi/tech/1415860741/
のと間違えてたわ
0062名称未設定
2014/12/22(月) 20:07:23.85ID:hRVIEDNI00063名称未設定
2014/12/28(日) 10:20:56.69ID:JdWNeThS0どっちがいいんやろ?
0064名称未設定
2014/12/28(日) 20:49:46.41ID:3XdZc8/000065名称未設定
2014/12/28(日) 21:26:30.53ID:4GSFi00i0詳解UNIXプログラミング、詳解iOS SDK等等
0066名称未設定
2015/01/05(月) 16:09:32.62ID:zOYoNHcj00067名称未設定
2015/01/07(水) 21:50:02.18ID:OY+65kvN00068名称未設定
2015/01/07(水) 22:01:17.20ID:MwNpF1to00069名称未設定
2015/01/09(金) 00:53:05.11ID:yMuwMtKZ00070名称未設定
2015/01/09(金) 09:42:27.23ID:iG6npOq/00071名称未設定
2015/02/10(火) 01:18:48.90ID:YvPCVweP0http://elementscompiler.com/elements/silver/
0072名称未設定
2015/02/11(水) 06:53:50.43ID:cfm7wap600073名称未設定
2015/02/15(日) 23:20:29.57ID:fpS9rF+A0もしくは
NSArrayの二次元配列の値をswiftのArrayで作った一次元配列に代入する方法を…
as Int使っても入らないんで
0074名称未設定
2015/02/15(日) 23:38:36.81ID:pUoUMYGl0でどうぞ
0075名称未設定
2015/02/16(月) 08:45:55.44ID:UZIQr6nP00076名称未設定
2015/02/16(月) 08:51:58.59ID:UZIQr6nP0swiftは型推論してくれるのに、何で型の不一致は厳密にチェックされるんですかね?
AnyObject型だからって中身が数値なら普通にInt型に放り込ませてくれても良さそうなもんですけどね
as IntとかInt(とかNSNumberとかダラダラ付け足す羽目になってソースも汚くなるし
0077名称未設定
2015/02/16(月) 14:23:30.01ID:ombZ59We0他のスクリプト言語のようにその場その場でっていうことではなさそう
0078名称未設定
2015/02/19(木) 23:24:11.71ID:rmWob+Gy00079名称未設定
2015/03/21(土) 23:56:48.98ID:qoznlw6P0どこか参考になるサイトあれば教えてください。
0080名称未設定
2015/03/22(日) 00:19:25.92ID:fKL7E+EI00081名称未設定
2015/03/22(日) 00:38:54.58ID:p+ISbNR30プログラム未経験+これからmacのパソコンを購入する予定なので事前に他の言語を勉強するべきなのか余計なことは覚えない方がいいのかわからない状態です。
0082名称未設定
2015/03/22(日) 02:47:19.54ID:cRd7VwxZ0objective-cを少し齧って挫折して、swiftにしがみ付いてる初心者ですが
適切な入門書を選択すれば、必要ないと思います
決してobjective-cが余計な知識というわけでもないのですが、通過する必要もないと思います
適切な入門書と言うのは個人差があるので、英文の公式とか雨林のランクで高い順に試し読みして選んで下さい
0083名称未設定
2015/03/22(日) 02:55:32.75ID:cRd7VwxZ0swiftのバージョン違いによる差異はネットで自習で吸収するか
アップデートしてくれる電子書籍か、公式でページ補完してくれる書籍を買うのがいいと思います
0084名称未設定
2015/03/22(日) 05:40:49.78ID:9oKkBb0S00085名称未設定
2015/03/22(日) 11:06:42.23ID:p+ISbNR30>>83
>>84
ありがとうございます。
swiftの勉強のみでやっていこうと思います。
入門書についてのアドバイスもありがとうございます。
0086名称未設定
2015/04/12(日) 17:35:13.97ID:Foflz4fn0『関数型プログラミングに目覚めた! IQ145の女子高校生の先輩から受けた特訓5日間』
http://www.amazon.co.jp/dp/4798043761/
0087名称未設定
2015/04/14(火) 09:34:25.95ID:/7YTWDrQ00090名称未設定
2015/06/09(火) 11:49:42.17ID:b/5UO1fX00091名称未設定
2015/06/09(火) 17:02:16.47ID:aKumefeo00092名称未設定
2015/06/09(火) 17:18:56.54ID:qjP2WD5V0そのうちサーバ向けのSwiftライブラリでも出すんじゃないかな。
サーバとの連携はAndroid(というかJava)のほうが対応が楽だったりするからそこを埋めたいのかも、とは思った。
0093名称未設定
2015/06/09(火) 17:23:50.06ID:VFDbv0Dr00094名称未設定
2015/06/09(火) 17:27:35.56ID:3hMSS0BF00095名称未設定
2015/06/09(火) 19:37:37.64ID:lcdJiBCR0Objective-CとGNUstepのようなことにしかならん
0096名称未設定
2015/06/09(火) 19:43:25.60ID:Jsd9cbpk00097名称未設定
2015/06/09(火) 19:45:33.76ID:WMuTl6VK0ファイルとかネットワークの扱いぐらいは標準化しといてほしい
0098名称未設定
2015/06/09(火) 19:45:35.03ID:hgMTNYe200099名称未設定
2015/06/09(火) 21:30:25.26ID:tF2Hs5rZ0過疎りすぎだろ
0100名称未設定
2015/06/09(火) 22:42:08.72ID:WMuTl6VK0Mac板の現行本スレはこっち
let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/
ム板のスレはここ
Swift part5 [転載禁止]©2ch.net
http://peace.2ch.net/test/read.cgi/tech/1433746696/
0101名称未設定
2015/06/09(火) 22:50:27.05ID:qjP2WD5V00102名称未設定
2015/06/10(水) 00:18:23.37ID:eB1px8BT0そうか?
ArrayやStringやDictionaryがSwift独自であってのお、また、基底クラスが必須ではないから、言語の汎用性としてはObjective-Cとは明らかに違うと思うけど
まあ好き好んでSwift使って何かしたいってのがどれほどいるのかは未知数だが
0104名称未設定
2015/06/10(水) 12:48:03.79ID:hZpQS1bn0標準でArrayやStringが使えるけどiOSやMacのアプリは書けないよ!と言っても誰も食いつかんだろう
結局GNUstepのような互換ライブラリの実装を待たねばならずObjCと何も変わらない
0105名称未設定
2015/06/10(水) 12:54:17.43ID:i7Fzciyx0http://anago.2ch.net/test/read.cgi/mac/1408755325/
0106名称未設定
2015/06/10(水) 16:38:07.46ID:eB1px8BT0オープンソースにしてくれというリクエストはllvmコミュニティからあったのだよ。なんかニーズが無いわけでもないだろう
>>95はObjevtive-Cと同列に扱ってるから違うんじゃねという。それに>>104だったらSwiftでiOSやMacアプリは書けるやん。何を言っているの?(Swiftに限らず)新しい言語には誰も食いつかんだろうって言っているだけじゃん?
>>105
話題振って。そっちで書くからw
0107名称未設定
2015/06/11(木) 05:13:40.30ID:6RQYtR6H00108名称未設定
2015/06/11(木) 06:05:33.23ID:sXUW6j0H00109名称未設定
2015/06/11(木) 06:45:24.31ID:BF4FbntE0CoreFoundationはDarwinの一部だがら難しくないとは思うが
0110名称未設定
2015/06/11(木) 07:34:06.01ID:mHMqvofs0.dylibどこいった…
0111名称未設定
2015/06/11(木) 09:10:28.39ID:sXUW6j0H0ああ、Core FoundationじゃなくFoundation Kitか
諸々含めてはGNUstepだろうが、諸々いらんFoundation KitだけなのはCocotronとPureFoundationがオープンソースとしてあるようだけど
0112名称未設定
2015/06/11(木) 10:01:02.41ID:sXUW6j0H0tbdのを選らんどけばいいんじゃないの
dylibは実行時にだけありゃいいだけで、ビルド(リンク時)には含まれるシンボル名とかわかりゃいいだけなのでそれだけにしてみましたってのようだけど
0114名称未設定
2015/06/11(木) 17:25:30.73ID:sXUW6j0H0なるほど
tbdなんてunexpectedなのでskipとかたわけたこと抜かしているなw
まだ出来上がってないんだろう。とりあえずまだ7は使わないか、6から持ってきてなんとかするかかな
0115名称未設定
2015/06/11(木) 18:20:08.37ID:sXUW6j0H0Xcode 6 からのプロジェクトでどうなるんだろうと試したところ、Project Navigationではdylibがミッシングの赤だがそのままビルドできた
てことで、Project Navigationでtbdをdylibに変えりゃどうなるのか試したところ、ビルドができたが、SDK中のファイル名までが変わるというおそろしあ
(tbdのファイル内容に対して対応できているが、拡張子判断で未対応ってとこなのかな)
Xcode 6 でプロジェクトを開いてdylibを追加すればいいよ
0116名称未設定
2015/06/12(金) 10:47:56.85ID:U9O+C8U+0rubyのiconvみたいな。あるいはnkfコマンドみたいな。
開いたファイルのエンコードや、NSURLSession.sharedsession().dataTaskWithURLで受け取ったでーた
のエンコードタイプを知りたいのですけど。
0117名称未設定
2015/06/12(金) 14:05:12.78ID:Y6Stx3tw0func detectEncoding(data: NSData) -> NSStringEncoding {
return NSString.stringEncodingForData(data, encodingOptions: nil, convertedString: nil, usedLossyConversion: nil)
}
func encodingNameFromNSStringEncoding(encoding: NSStringEncoding) -> String {
return String(CFStringConvertEncodingToIANACharSetName(CFStringConvertNSStringEncodingToEncoding(encoding)))
}
let testSet = [
NSData(base64EncodedString: "44GT44KT44Gr44Gh44Gv", options: [])!,
NSData(base64EncodedString: "grGC8YLJgr+CzQ==", options: [])!,
NSData(base64EncodedString: "pLOk86TLpMGkzw==", options: [])!
]
for data in testSet {
let encoding = detectEncoding(data)
let name = encodingNameFromNSStringEncoding(encoding)
let decoded = NSString(data: data, encoding: encoding)!
print("¥(encoding):¥(name):¥(decoded)")
}
// 4:utf-8:こんにちは
// 8:cp932:こんにちは
// 3:euc-jp:こんにちは
0118名称未設定
2015/06/12(金) 15:20:19.47ID:U9O+C8U+0thx
iOS8, OSX10.10からNSStringにstringEncodingForDataってのが
追加されたのね!知らんかった。
後で試してみます。
0119名称未設定
2015/06/12(金) 15:57:44.88ID:U9O+C8U+0ふぅー、動いた。
options: []
の部分を
options: NSDataBase64DecodingOptions.IgnoreUnknownCharactors
と変更したら動いた。Xcode6.3.2 + Swift1.2
DashでstringEncodingForDataメソッドを検索しても出てこないんすけど。
0120名称未設定
2015/06/12(金) 16:17:37.67ID:U9O+C8U+0あんた、達人だなぁ。
すごいよ。
googleでguess encoding cocoa
って検索したらヒットするけど、stringEncodingForDataなんてメソッド
Dashにはないぞぉ。
昨年のWWDCのセッションで紹介されてるらしいけど、あんた行ったの?
0121名称未設定
2015/06/12(金) 16:21:08.62ID:Y6Stx3tw0ドキュメントにないけどcommand+クリックしたらコメントに説明書いてるよ
WWDC '14で紹介されてたから使って問題無いはず
0122名称未設定
2015/06/12(金) 16:34:01.11ID:Y6Stx3tw0興味あったから今ググっただけ
0123名称未設定
2015/06/19(金) 14:22:28.44ID:HWfmCJ4o0Appleのサイトにあるヤツです。
Type Annotationの和訳にどれが良いと思います?
型注釈、型指定子、型記述子、型記号
またA postfix self expression(for example x.self)の和訳ではどうでしょう?
後置self語法、後置self表現
僕としては、型記号、後置self語法がシックリ来るんですけど。
0124名称未設定
2015/06/21(日) 06:22:01.27ID:lZoPh2z00ストーリー by hylom 2015年06月18日 12時01分意外に普及は速い? 部門より
http://opensource.srad.jp/story/15/06/17/1935244/
0125名称未設定
2015/06/21(日) 11:50:11.08ID:jaNHQWe20使う奴は使うし使わない奴は使わないでしかない。そんなスラドのよりは元記事がちゃんとしているし、元データを元にのそんな記事が前からあるし
なにかSwift一択じゃなきゃ困るのだろうな、 ID: lZoPh2z00 がとしか読めないw
0126名称未設定
2015/06/21(日) 17:26:07.15ID:PqKdZO2500127名称未設定
2015/06/22(月) 09:40:00.11ID:OZaIh4Ia0そなの?
4択じゃぁないの?
Command Line Toolのプロジェクトテンプレートは、
4つの言語(C, C++を含む)が選択できる。
あと、CocoaアプリもC++で開発できるって、どっかで
読んだ気がするんだけど。
0128名称未設定
2015/06/22(月) 09:49:44.70ID:OZaIh4Ia0この記事には気づかんかった。
Swfit試してる人多いのね。
俺はやっぱりobj-C好きになれないなぁ。文字列リテラルを@"foo"とかって
書くのが嫌だなぁ。
0130名称未設定
2015/06/22(月) 10:34:19.27ID:GysZo2LX0言語仕様欠陥として悪い所多すぎるよな、一々挙げたらキリないわw
0131名称未設定
2015/06/22(月) 10:44:31.83ID:OZaIh4Ia0ARCは許せるなぁ。GCよりか数倍マシ。
Android機のバッテリー持ちの悪さの原因はGCじゃ
ないのか?
幾つもVMをforkするから、GCも起動したアプリの数だけ
走るようになる。
ARC採用のiOSデバイスがバッテリー持つのはGC採用しない
からなんじゃないのかなぁ。
0132名称未設定
2015/06/22(月) 11:11:06.40ID:SO7UtYfp00133名称未設定
2015/06/22(月) 16:59:57.47ID:ip7sMwpS0嫌だったら使わなきゃいいだけやん。嫌々言うて許されるのか可愛い女の子だけだぞ
男でなんてキモいだけやん。それもキモいヤツが言っているんだろうなと思われるしw
嫌だけど使わざる追えないんですっても、それも全く同じ。女々しい
0134名称未設定
2015/06/22(月) 17:02:10.94ID:ip7sMwpS00135名称未設定
2015/06/22(月) 17:27:11.39ID:UbvHxlqW0iOSは金になるからobj-cもswiftも使う、けど不満はどうしようもない
今はswift扱っておけば美味しいなw
obj-c同等にひどい言語仕様だけど
0136名称未設定
2015/06/22(月) 17:43:13.08ID:ip7sMwpS0お前以外の大多数がそんなこと思わずにまたはすでに慣れきっていて使っているとなぜ想像できない。批判めいているが自分が劣っている/なんらかの感覚が欠如しているとなぜ想像できないん?
そう深くw想像できないで感覚でまた表層でモノ言うのも女々しいというと思われるw
0137名称未設定
2015/06/22(月) 17:57:13.15ID:ip7sMwpS0嫌いなんて、開発に没頭したら忘れるもんだろう。忘れ没頭したら慣れきってしまうものだろうに
なんらかの能力として劣っているという表明でしかないのだが、なぜだかそこに気づいていない(というか自分は劣っていないという雰囲気を醸し出す)様子なのが不思議でならない
0138名称未設定
2015/06/22(月) 18:05:23.54ID:WbPtsVYA00139名称未設定
2015/06/22(月) 18:18:36.66ID:7Xgd0Ixz0な
雰囲気
0140名称未設定
2015/06/22(月) 18:23:49.43ID:ip7sMwpS0そんなのレスして何嬉しいの?わからん
1行で済むんだけどw ↑は>>138に向けてじゃないよ、たぶんw
0141名称未設定
2015/06/22(月) 18:34:14.23ID:zE4sF7uf00142名称未設定
2015/06/22(月) 19:34:45.31ID:+KDY+3B200143名称未設定
2015/06/22(月) 21:20:09.16ID:tlk/bU2D0ID変わってるけど>>135=>>138
金が第一でしか、の行の半分まで読んだけど
そこまでが言いたいことで、あとの長文はゴミだったんだろうな
言いたいことは分かったけど、金が目的でなきゃ、こんなマゾい言語つかわねーよw
0144名称未設定
2015/06/22(月) 21:37:25.02ID:ip7sMwpS0だから、金が目的なら目的に一生懸命になれよっていう
どうせぐだぐだ文句言いながらロクでもないコードを書いているのだろう。会社員?請負?個人アプリ開発?
まあ個人アプリ開発ならどうでもいい。レスの内容もだが。それ以外だったら俺の周りに何万分の一でもいそうだから辞めろw
やっぱり自分のは「ゴミ」ではないという無自覚かw
0145名称未設定
2015/06/22(月) 21:40:07.75ID:ip7sMwpS0×>>140
⚪︎>>143
低レベルのコードを書き散らすバカを思い出し冷静さを失っていたw
なんだ、>>138もお前か。つまらん。てかなんか第六感が働いた「たぶん」だったんだなあw
0146名称未設定
2015/06/22(月) 22:58:50.67ID:ajVuKbAw0ID真っ赤にしてなんか面白い子だなw
0148名称未設定
2015/06/23(火) 10:48:18.17ID:aen9cQzv00149名称未設定
2015/06/23(火) 15:32:39.32ID:opfnXdOe00150名称未設定
2015/06/23(火) 15:47:12.18ID:52BBz6gi0ってか、IDはどうやったら赤くなるんだ?
0151名称未設定
2015/06/23(火) 15:51:45.01ID:fH4X2/gO00152名称未設定
2015/06/28(日) 19:50:40.34ID:Ch8eMncC0func testEqualsfunc() {
var a:CallbakFunc = {}
var b:CallbakFunc = {}
var c:CallbakFunc = {}
var list:[CallbakFunc] = []
list.append(a)
list.append(b)
list.append(c)
for x in list {
if x == a { // Swift compile Error : Binary operator '==' cannot be applied to operands of type '() -> ()' and 'CallbakFunc'
println("a is hit")
}
}
}
上記Errorの解決方法をご教授下さい
0153名称未設定
2015/06/28(日) 20:11:58.36ID:Ch8eMncC0http://stackoverflow.com/questions/24111984/how-do-you-test-functions-and-closures-for-equality
0154名称未設定
2015/07/07(火) 12:03:59.41ID:xGKfAusl0└ViewContoroller
↓遷移
TabView
└CostomViewContoroller
と、storyboardで定義しています。
タブごとに、NavigationBarに独自のボタンを追加したいのですが、
CostomViewController の viewDidLoad() で、
self.navigationItem
self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: “test”, style: .Plain, target: self, action: nil)
としても、testボタンが追加されません。
ViewContorollerで定義するとtestボタンが追加されるのですが、
TabViewに移るとtestボタンが消えます。
どのようにしたら、CostomViewContoroller上でボタンを追加できますか?
0155名称未設定
2015/07/07(火) 12:27:33.80ID:NCbu5piy0typealias CallbakFunc = (fn:(Void) -> Void,uuid:String)
func createUUIDString() -> String {
let uuid = CFUUIDCreate(nil)
let uuidString = CFUUIDCreateString(nil, uuid)
return uuidString! as String
}
func testEqualsfunc() {
var a:CallbakFunc = (fn:{},uuid:createUUIDString())
var b:CallbakFunc = (fn:{},uuid:createUUIDString())
var c:CallbakFunc = (fn:{},uuid:createUUIDString())
var list:[CallbakFunc] = []
list.append(a)
list.append(b)
list.append(c)
for x in list {
if x.uuid == b.uuid { // Swift compile Error : Binary operator '==' cannot be applied to operands of type '() -> ()' and 'CallbakFunc'
println("b is hit")
}
}
}
0156名称未設定
2015/07/07(火) 13:05:36.84ID:EBKNUzWU0Swift というより iPhoneアプリ開発初心者 なレスだと思うけど、
NavigationContoroller
- ViewController
ViewControllerはNavigationContorollerの直接な管理下/相互関係なので、self.navigationItem.rightBarButtonItemの変更はNavigationContorollerにもわかる
NavigationContoroller
- TabBarController
-- ViewController(1)
-- ViewController(2)
ViewController(1,2)はTabBarControllerの直接な管理下/相互関係であり、NavigationContorollerの直接な管理下/相互関係なのはTabbarController
故に、TabbarControllerのを変えればいいんじゃね
ViewController(1,2)のviewWillApperなんぞで、
self.tabBarController.navigationItem.rightBarButtonItem =
ってするか、TabBarControllerのサブクラスでタブ切り替え検知して、
self.navigationItem.rightBarButtonItem = rightButtonInCurrentViewController
ってするとか
0157名称未設定
2015/07/07(火) 13:23:28.22ID:EBKNUzWU0>TabBarControllerのサブクラス
つうかUITabBarControllerDelegateでか。検知できるのは
0158名称未設定
2015/07/07(火) 14:04:28.20ID:xGKfAusl0レスありがとうございます。おっしゃる通りiPhone開発初心者です。
アドバイスいただいた通り、TabViewのカスタムクラスを用意して
UITabBarControllerDelegateでタブの切り替えを検知し、
タブごとにボタンの制御ができるようになりました。
ありがとうございました。
0159名称未設定
2015/07/07(火) 14:45:47.19ID:EBKNUzWU0そういう意味じゃなく、いや、意味なのかもしれないが、趣旨は、
[SDK]iPhoneアプリ開発初心者質問箱43[touch][iPad] [転載禁止]©2ch.net
http://anago.2ch.net/test/read.cgi/mac/1427294210/
こっちでのほうが適切だろうなという。ともあれ、なにより
0160名称未設定
2015/07/07(火) 15:40:33.13ID:pm4V6z940次に、swiftでなく、iPhoneアプリの構造に関わる質問があれば、
誘導いただいたスレにて質問させていただきます。
0161名称未設定
2015/07/08(水) 16:48:01.49ID:BrpX//mL0var str = NSString(format:"0x%08X",i)
これと同じこと(整数を16進表記の文字列にする)をIntとStringだけで出来る?
0162名称未設定
2015/07/08(水) 18:09:05.85ID:BrpX//mL0var str = "0x" + String(i, radix:16, uppercase:true)
あったー。けどなーんか微妙だな。
printfフォーマットも普通にサポートしてくれれば良いのに。
0163名称未設定
2015/07/08(水) 18:20:54.25ID:k+ymsI9b0??
0164名称未設定
2015/07/08(水) 18:46:14.33ID:AqMwIU/20と思ったけどOSS化(Cocoaのないランタイム)に向けてPure Swiftライブラリでも作ってんのかな
0165名称未設定
2015/07/08(水) 20:36:33.81ID:BrpX//mL0あれ、ある…
command-クリックしてもどこにも飛ばないんだけどどういうこった?
ここにも載ってないし
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Reference/Swift_String_Structure/index.html
>>164
いや別にNSStringでもいいんだけどね。気になっただけ。
0166名称未設定
2015/07/08(水) 23:12:01.65ID:k+ymsI9b0ググって探して見たのでは「俺がみつけたよーん」とかなんとか書いてあったような気がしないでもない
「ベータで」というのも目に入ったので、まあ今は正式なのだろうなと思ってたけど、まだ正式じゃないのかな??ドキュメントだけなのか実装にまだ問題があるのかその他なのかで
0168名称未設定
2015/07/08(水) 23:26:04.41ID:k+ymsI9b0で使ってるから、安心して使えるだろう。仮にUndocumented API縛り的な意味で危惧するとしたら
0169名称未設定
2015/07/12(日) 19:38:01.84ID:pO9MOfRV0出力入力どんな風に簡単にできるかっていうのは
どこ読めばいいの?
ドット絵とかベクトル絵とかマウス入力とかキーボード入力とか
0170名称未設定
2015/07/12(日) 19:44:46.47ID:UCG4B6Co00171名称未設定
2015/07/17(金) 13:06:10.58ID:+raBPvsS0Swiftの入門本を買って、一通り熟読し、なんとなーく「こうやんのか」くらいは
分かりました。
が、次のステップで何やればいいのか分かりません(´・ω・`)
サンプルプログラムはいっぱい見たんですが、これから何したらいいんでしょ?
簡易なデータベース的なものを作ってみたいのですが。
0172名称未設定
2015/07/17(金) 14:19:01.43ID:6svREoHG0道を知っていることと実際に歩くことは違う
0174名称未設定
2015/07/18(土) 11:00:15.99ID:pg6yA3mU0http://anago.2ch.net/test/read.cgi/mac/1408755325/
0175名称未設定
2015/07/27(月) 18:35:18.84ID:m4P9ukw700176名称未設定
2015/07/27(月) 19:16:58.35ID:GvR464r80sendDataで渡すときの処理で、
do {
try _session?.sendData(data, toPeers: peerID, withMode: MCsessionSendDataMode.Reliable)
} catch {
}
コレで
'_??' is not convertible to '()'
'<<error type>>?' is not convertible to '()'
の2つのエラー出て詰まってるんだけどどうしたら良いですか?
調べてもわからず、知恵をください('A`)
0177名称未設定
2015/07/27(月) 19:43:48.83ID:54LBs3Mr0let _session: MCSession? = nil
let peerID: [MCPeerID] = []
let data: NSData = NSData()
do{
try _session?.sendData(data, toPeers: peerID, withMode: MCSessionSendDataMode.Reliable)
}
catch{
}
でエラー出ないけど。って、peerIDは名前がクサいから、
let peerID: MCPeerID = MCPeerID()
にしたら、
'_??' is not convertible to '()'
がでたなw
0178名称未設定
2015/09/24(木) 22:45:28.22ID:8L3Ba62N00179名称未設定
2015/09/27(日) 09:04:18.98ID:/fA8PxsC00180名称未設定
2015/09/27(日) 12:53:23.23ID:jTYlqoA300181名称未設定
2015/09/27(日) 23:34:15.43ID:tbPXnC6600182名称未設定
2015/09/28(月) 00:04:17.01ID:MfYAyuYE00183名称未設定
2015/09/28(月) 08:14:43.03ID:Vfm5iSAr00184名称未設定
2015/11/02(月) 14:19:09.68ID:e8SwU/fA0名前変えただけで暴走スンナよ7
0185名称未設定
2015/11/13(金) 04:40:55.94ID:qYyLiqzz0test = "foo"
if let v = test && (v as! String = "foo") {
print("fooだよ")
}
ってできない?
0186名称未設定
2015/11/13(金) 09:05:22.26ID:ZYkJFHDc0if let v = test where v == "foo" {
print("fooだよ。")
}
0187名称未設定
2015/11/13(金) 09:08:20.21ID:ZYkJFHDc00188名称未設定
2015/11/14(土) 10:53:48.98ID:xIzOs88n00189名称未設定
2015/11/14(土) 22:45:26.13ID:arrLWbEd00190名称未設定
2015/11/14(土) 23:26:08.53ID:izfbI7W100191名称未設定
2015/11/15(日) 14:05:28.67ID:CEKeruGp00192名称未設定
2015/11/15(日) 14:46:24.24ID:v17oyqbm00193名称未設定
2015/11/15(日) 15:04:08.68ID:2u3KL2cn00194名称未設定
2015/11/18(水) 10:32:14.86ID:lwKOOTtK00195名称未設定
2015/11/18(水) 10:41:56.66ID:/xiOlcI90もっとクソだったobj-cよりは文法がマシだから使ってる
0197名称未設定
2015/11/18(水) 12:52:04.89ID:sl65X6gp00201名称未設定
2015/11/18(水) 13:23:31.68ID:sl65X6gp0https://github.com/jpsim/SourceKitten
0202名称未設定
2015/11/18(水) 18:37:16.33ID:fZyYL6sb0>>198は人間様向けのタブだの改行だののリファクタリングを言ってる
>>194はgoだのrustのエディタで使えてる後者を求めていると思う
しかし、簡単なテキスト整形はXcodeでやってくれる
0203名称未設定
2015/11/18(水) 20:09:44.17ID:lHmicp9c00204名称未設定
2015/11/18(水) 23:15:02.00ID:eYBViItJ00205名称未設定
2015/11/19(木) 04:26:28.81ID:v5Qlgdpz0http://anago.2ch.net/test/read.cgi/mac/1408755325/
0206名称未設定
2015/11/19(木) 10:29:09.87ID:36ElwdIi00207名称未設定
2015/11/19(木) 13:48:19.79ID:2W921Z6F00208名称未設定
2015/11/19(木) 15:50:25.59ID:0aqlOemc0whereのつか方判った。
おれ的今日の一番カキコ
0210名称未設定
2015/11/20(金) 18:24:24.57ID:IkinpZgs00211名称未設定
2015/11/20(金) 18:59:12.08ID:H/cWypsp0これでも内容が伝わるあたり、日本語ってすごいな
0212名称未設定
2015/11/20(金) 19:17:02.26ID:IkinpZgs00213名称未設定
2015/11/20(金) 19:22:04.92ID:IkinpZgs0http://feely.jp/3138/
まあ>>209には読めないんだろうけどw
0214名称未設定
2015/11/20(金) 21:07:46.13ID:vazx26Uw0>>213まで続いてマジもんだとおもたYO
>>206
それはswift関係なく重たい気がするよ
しかし、体感出来る重たさって何やってるんだ、、、
0215名称未設定
2015/11/20(金) 21:27:29.62ID:IkinpZgs0マジだよマジ、俺は
0216名称未設定
2015/11/20(金) 21:35:42.85ID:Ed9JxE7000217名称未設定
2015/11/25(水) 16:15:47.07ID:kOX1HaAG00220名称未設定
2015/11/26(木) 07:32:56.28ID:OtuW6aGF00221名称未設定
2015/11/26(木) 07:47:24.66ID:waE83/NN0そもそもそんなにたくさん変換が必要なのかい
もしかしてほんの数箇所でも嫌なのか
0222名称未設定
2015/11/26(木) 09:00:18.62ID:RjpEprbi00223名称未設定
2015/11/26(木) 09:42:44.43ID:RzSxtDSV0糞言語ですね
func a(i: Int) -> Int {
return i + 10
}
class B {
func a(s: String) -> String {
return s + "bbb"
}
func b() {
print(a(100)) // ←エラー
}
}
0228名称未設定
2015/11/26(木) 10:44:20.55ID:/Qso61h70>>224の時点でコード書いて確認済み
無能ほど自分の無能を棚に上げて言語やフレームワークに文句垂れる法則
0229名称未設定
2015/11/26(木) 10:48:11.36ID:RjpEprbi0モジュール名ってアプリ名のことかよ
プレイグラウンドで試せねーじゃねーか
最初からそう書けよハゲ
お前、説明下手くそだわ
時間無駄にしたわ
0230名称未設定
2015/11/26(木) 12:46:30.62ID:Ndq225Dz00231名称未設定
2015/11/26(木) 12:50:42.27ID:2IXxuB830「自分は悪くない、全て他人が悪い」
って、久しぶりに見たわ
0232名称未設定
2015/11/26(木) 12:56:15.32ID:uFA9acIW00233名称未設定
2015/11/27(金) 18:02:04.08ID:5KkZ171g00234名称未設定
2015/11/27(金) 18:03:25.45ID:5KkZ171g00235名称未設定
2015/12/04(金) 10:37:44.50ID:ugvMyHwh0https://github.com/apple/swift
0236名称未設定
2015/12/04(金) 13:24:29.61ID:IpKQTE7J00237名称未設定
2015/12/04(金) 15:33:03.82ID:TWswQjTO0Cocos2d-xをswiftで書いてマルチプラットホーム出力できるような未来にも期待
0238名称未設定
2015/12/05(土) 09:27:11.60ID:nRt9eie50この人すごいわぁ。
まあ、コマンドラインで実行するなら、
print(a(100)) // ←エラー
修正↓
print(main.a(100))
ソースファイルの名前によらず、モジュールはmainね。
0239名称未設定
2015/12/13(日) 00:09:53.83ID:34Cd2/r/00240名称未設定
2015/12/13(日) 00:16:22.96ID:33VnaplL0絶対あったほうが便利なんだけど
0241名称未設定
2015/12/13(日) 00:24:18.07ID:U56fmPkN0自己満足言語Swiftを作ったChris Lattnerのベジータ親父も億単位の高給もらって
ウハウハよ
http://nondot.org/sabre/
おまけに、Swift参考本を執筆した作者もおこぼれをいただけてる
本当お前ら乙だな
0242名称未設定
2015/12/13(日) 00:28:17.92ID:ZQXftx0w00243名称未設定
2015/12/13(日) 01:15:11.04ID:VfOfM0v90あるもん求められて使える状態にしとくだけすよ
なのでreplします…我々は研ぐとか言いますが、要するに戯れるだけなんですわ。
perl CGIの時からなにも変わらないんですよ。ただ、楽しいからやってる。
馬鹿らしい、って思うあなたがかわいそうに思いますよ。
それが楽しいかどうかっていう、よそんげの考えも及んでないんだよね、あんた。
まあ、これ鉄道模型にハマってる友人の受け売りなんですけどね。
0244名称未設定
2015/12/13(日) 01:34:40.49ID:XUnElO3w00245名称未設定
2015/12/13(日) 01:37:33.64ID:c6EPIywZ00246名称未設定
2015/12/13(日) 02:40:37.74ID:diXCWqzS0基本がCなのでそろそろC由来のポインタ*とか美しくないなとか
コンパイラディレクティブの@が多いよとかいろいろあったのと
そもそも、Objective-Cは言語自体はほとんどCで
ぜんぶObjective-C(またはObjective-C++)自身で定義した
クラス群で拡張してる部分があってそろそろ整理は必要だよなーとは
みんな思ってはいたのだけれども…
えーと、出てきた新言語swiftがあまりにも似ても似つかないというか
ぶっちゃけObjective-CがObjective-Cの特徴として好まれていた部分を
"ぜんぶ消してきた"ので、正直従来の開発者はObjective-Cでいいや。って感じです。
0247名称未設定
2015/12/13(日) 02:55:54.92ID:XNR0NrEa00248名称未設定
2015/12/13(日) 04:41:11.59ID:kH/caN6e00249名称未設定
2015/12/13(日) 09:01:17.73ID:XUnElO3w0なるほど
これほどCに純粋にオブジェクト指向を追加した言語はなく、
習得が簡単だったのになというのが自分の所感です
私もObjective-Cでいいやってのには同意です
0250名称未設定
2015/12/13(日) 10:21:20.48ID:2AX8YiIQ0Swiftは言語仕様がデカすぎる気がする。
Swift = Obj-C + Optional + Enum拡張 + protocol拡張 + ジェネリクス + clousure拡張(キャプチャ制限できる)
ってかんじで、Obj-Cのコンパクトさが、良さげに思える今日この頃。
0251名称未設定
2015/12/13(日) 10:43:46.59ID:AbrkiSeQ00252名称未設定
2015/12/13(日) 10:47:52.39ID:HZ0qTI7o00253名称未設定
2015/12/13(日) 16:29:38.06ID:FRi/VzkZ0馬鹿らしいも何も、今までそうしてきたし、これからもそうだろうというだけ。
プログラミング言語の宗教論争に血道をあげてるのって
教祖クラスの人とその種の評論で飯食ってる人と暇人だけじゃないの?
0254名称未設定
2015/12/13(日) 17:26:16.36ID:U5EUB/Xu00255名称未設定
2015/12/13(日) 17:52:55.22ID:WWUOJeL00Obj-Cは高速列挙とか言語機能じゃなくてコレクションクラスの方に
クロージャーで出力するメソッド追加したりとか
新しい考え方に言語の変更は最低限で使用してるフレームクラスの方を
最新の流行に更新してアップデートしてきたオブジェクト指向の鑑みたいな運用で
逆にObj-C側からみると外で起こってるいわゆる新言語の勃興ってのは
"言語仕様に流行りの機能を仕様で組み込んで、言語自身をぶっ壊さないと
それを変えられなくなって新言語"の繰り返しに見えるから
swiftの>>250っぷりに「それ、本当に言語の基礎機能に組み込んでいい奴?
ってかそれObj-Cが避けてきた道だよね?どっから来たの開発者?」感がすごいのよ。
0256名称未設定
2015/12/13(日) 18:24:39.62ID:I/L0+6H300257名称未設定
2015/12/13(日) 18:43:04.61ID:52MQowwP00258名称未設定
2015/12/13(日) 18:53:57.18ID:IC6bVtma0特にこれからマルチプラットフォームに使える言語を目指すのであれば。
まぁ俺が心配する事ではないけどな。
それより今は機能を付けたり無くしたりコロコロと仕様を変えてる事の方が新規ユーザーにとっては壁か。
十分普及して枯れた言語になるまでは何年ぐらいかかるんだろうな。
0259名称未設定
2015/12/13(日) 19:00:11.03ID:/vRa/ek700260名称未設定
2015/12/13(日) 19:12:35.83ID:6d+Ms7Ko00262名称未設定
2015/12/13(日) 19:58:26.11ID:DUjCbbFQ0言語レベルで実装されてた方が最適化も期待できるだろ
0263名称未設定
2015/12/13(日) 23:49:24.96ID:/vRa/ek700264名無しさん@そうだ選挙に行こう
2015/12/14(月) 14:31:56.21ID:hTkgX9ht0objc_msgSend地獄から解放されたいという感じなんじゃないの
まあ個人的にはCやC++で書いていたところをSwiftで書きたいという積極的な理由もないので
ObjCで全然問題ないな
ARCすら要らない
0265名無しさん@そうだ選挙に行こう
2015/12/14(月) 14:35:36.55ID:bM547LG60Swiftの強化されたEnumやSwitch、オプショナル型、例外処理は魅力。
0266名無しさん@そうだ選挙に行こう
2015/12/14(月) 14:53:41.55ID:bUw+kML30ってことは、retain, releaseを今でも書いてるんですか?
0267名無しさん@そうだ選挙に行こう
2015/12/14(月) 15:26:19.58ID:hTkgX9ht00268名無しさん@そうだ選挙に行こう
2015/12/14(月) 15:31:45.88ID:4YB2AkLn0SwiftはCoreFoundationすら自動でreleaseしてくれるから羨ましい。次のObjective-Cのアップデートで取り込まれるかな?
0269名称未設定
2015/12/15(火) 03:13:53.25ID:dMRQ8FCJ0スマートポインタの一部機能がARCだから機能過不足はないんじゃね
0270名称未設定
2015/12/15(火) 08:47:17.07ID:g3/DKTHb0MRC = Manual Reference Countingなんて初めて知りました。
retain, release, strong, weak, unownedとかよくわからんのですよねぇ。
特に、swiftのclousureの中でselfを参照する時に、
{ [unowned self] in
self.foo()
}
とかって、どういう事?って感じ。
0271名称未設定
2015/12/15(火) 16:32:40.28ID:BzJ17A+W0コントローラー側から新しく作ったセルとかは作って1外して0で消えるからいいんだけど
おんなじカウントをxibに存在してた奴にやると1→2、2→1で最後まで解放されなくなっちゃう。
だからイニシャル処理でコントローラーに手綱を受け渡すんだけどいきなりrelese書いたら
カウンタが1→0になって"消えちゃう"から受け渡しやって1→2にしてrelese(2→1)とかパズルかこれ?wって思ったよ。
とむかしどっかのスレで書いたら、本人は自分がベテランだと思い込んでるiPhoneプログラマーに
「そんなのは聞いたことがない!」って噛みつかれて驚愕した記憶。ARCバンザイだ。
0272名称未設定
2015/12/15(火) 17:06:13.57ID:g3/DKTHb0自己レスです。
clousureはキャプチャする変数をデフォルトで強参照するらしい。
だから、
class MyClass {
let clousure = {self.foo()}
func foo() {
}
}
というコードがあった時、clousure変数はselfを強参照し、MyClassのインスタンスselfはclousureを強参照するってことになる。
class MyClass {
let clousure = {[unowned self] in
self.foo()
}
func foo() {
}
}
とすれば、clousureはデフォルトの強参照をselfに関しのみ行わなくなる。
上記の事、Appleの公式文書の何処に書いてあるのか?知ってる人いる?
0273名称未設定
2015/12/15(火) 17:08:31.74ID:g3/DKTHb0The swift programing languageのclousureの章に書いてあるんだろなぁ。
0274名称未設定
2015/12/15(火) 17:13:51.82ID:z2iu9b5+00275名称未設定
2015/12/17(木) 15:12:49.58ID:AveGoHsc0let some: Any = 1
let i1 = some as! Int
これはコンパイルできます。
let i1 = some as Int
これがコンパイルできません。なんで?
repl.swift:8:15: error: 'Any' (aka 'protocol<>') is not convertible to 'Int'; did you mean to use 'as!' to force downcast?
let i1 = some as Int
~~~~~^~~~~~
as!
0276名称未設定
2015/12/17(木) 16:22:35.51ID:37UBK/Ij0自分の考えに論理の飛躍や矛盾があるよってコンパイラが指摘してくれてる
0277名称未設定
2015/12/17(木) 16:27:25.01ID:lu7joLms0Anyは、Intと互換性はないから、キャストする場合は、as! を使って安全であることを(コーディングミスではないと)明示する必要がある。
逆ならOk(IntはAnyと互換性がある)
let some: Int = 1
let i1 = some as Any
0278名称未設定
2015/12/22(火) 20:52:40.61ID:6lgUciZn0こんなの
↓
public init?(coder aDecoder: NSCoder)
0279名称未設定
2015/12/22(火) 21:16:24.16ID:NTlDwrJJ0失敗する可能性のある イニシャライザの意味。
ファイルパスからNSDataを作ろうとすると、失敗もありうる。
ファイルが無いと失敗なのだ。失敗をnilで返すならinit?となる。
もちろん、失敗をthrowしても良い。その場合は、initとなる。
失敗をnilで返すべきなのか?throwすべきなのか?(エラーを)どういう基準で
選択するかは?教えて、エロい人!!
0280名称未設定
2015/12/22(火) 21:33:47.20ID:NTlDwrJJ0型に互換性があるとは、どういうことでしょうか?
A型とB型に継承関係がある時に、互換性があるというのでしょうか?
class A {
}
class B: A {
}
の時、A型、B型に互換性があるト言うことでしょうか?
Cの場合には、cp, vpが互換性があるとは、例えば次の様な場合の様ですが。
int *const cp;
int *volatile vp;
0282名称未設定
2015/12/22(火) 21:58:22.24ID:NTlDwrJJ0自己レスです。
Type casting is 。。。to treat that instance as a different superclass or subclass from somewhere else in its own class hierarchy.
Swift Programing Language (swift2.1)より
convertibleに関する記述は見つけられなかったけど、Type Castingの章からは、継承関係にあるコトがconvertibleの意味みたい。
0283名称未設定
2015/12/22(火) 22:01:47.45ID:NTlDwrJJ0互換性の有無はtype check operator(is)で確かめられるってコトでOKなんでしょうか?
protocol P {
func a()
}
protocol Q {
func a()
}
class B {
}
class A: B, P {
func a() {
}
}
let a = A()
if A.self is P.Type {
print("OK")
}
if A.self is B.Type {
print("OK")
}
AはPと互換、AはBと互換ってコトになっちゃうんですけど。
0284名称未設定
2015/12/22(火) 23:09:29.48ID:0lDJvMDm0Objective-C使っとけばいいのに
いや、客先の要求でとかいいだすんだろうけど、仕事の話をこんなところでされたら、
おれが委託元の客だったら次は二度と頼まないわ
0285名称未設定
2015/12/22(火) 23:12:12.03ID:7i/xqu+E00286名称未設定
2015/12/23(水) 04:06:32.00ID:+gq1YhAq0日本語w
0288名称未設定
2015/12/23(水) 13:31:51.55ID:j7rRHjrA0俺が委託するなら、次は二度と。。。
俺なら、次は二度と受託を頼ま無いわ。
俺が委託側なら、。。。
が日本語として正しい。
0289名称未設定
2015/12/23(水) 15:18:34.67ID:Qd3aSsYB00290名称未設定
2015/12/23(水) 17:20:25.82ID:h08cuWkn0何がおかしいのか謎
0291名称未設定
2015/12/23(水) 17:32:21.30ID:QAXHQfcY00292名称未設定
2015/12/23(水) 17:35:17.79ID:MJeBRzQR00293名称未設定
2015/12/24(木) 08:26:58.02ID:Jh+e5Qrh0プログラミングが下手
例:
バツ:ラーメンが下手
マル:ラーメン作るのが下手
0294名称未設定
2015/12/24(木) 09:14:57.42ID:f8QtQ3+t00295名称未設定
2015/12/24(木) 09:20:39.24ID:Jh+e5Qrh0あんたよくわかるなぁ。
自分で作ったナポリタン、美味いんだよなぁ。
ケチャップって加熱すると甘みが増すんだよねぇ。
0296名称未設定
2015/12/24(木) 09:38:22.56ID:81XLpKaT00297名称未設定
2015/12/24(木) 09:51:05.54ID:9an9yoif00298名称未設定
2015/12/24(木) 09:53:16.58ID:Jh+e5Qrh0ストーブ就ければ。
0299名称未設定
2015/12/24(木) 10:07:04.71ID:DzGUi0Y60マル:ストーブ点ければ
0300名称未設定
2015/12/24(木) 10:49:25.06ID:9an9yoif00301名称未設定
2015/12/24(木) 13:40:49.55ID:Ipn33WCP00302名称未設定
2015/12/24(木) 15:55:50.55ID:4LUyq+5H0「が」の助詞省略を口語上等の2chで指摘してどうすんだ
「委託元の客」なんてそういうレベルじゃねーぞ
0303名称未設定
2015/12/24(木) 16:12:44.71ID:AvFhNd0e00304名称未設定
2015/12/24(木) 16:34:22.32ID:7ZDz38mO00306名称未設定
2015/12/24(木) 22:31:22.55ID:81hVld2y0愉快なスレタイ嫌いじゃなかったぜ
0310名称未設定
2015/12/25(金) 16:12:34.91ID:M8jkpK6f00311名称未設定
2015/12/25(金) 16:54:27.54ID:eU1PmqVu04LUyq+5H0 はじめ>>286 >>288はよっぽど悔しかったのかなwww
0312名称未設定
2015/12/25(金) 20:09:45.31ID:P1pqX1l40相互参照でループするからまとめてパージ
0313名称未設定
2015/12/25(金) 20:38:48.19ID:3MrKWnX+00314名称未設定
2015/12/25(金) 21:14:29.67ID:6NnnJdq60俺もこの本気になってる。
誰か、レポ頼むわぁ
0315名称未設定
2015/12/26(土) 01:21:02.32ID:jHnGzRtT0http://qiita.com/yusuke_tashiro/items/5de142441c6daef8b1c0
0316名称未設定
2015/12/26(土) 01:58:33.75ID:nbMHOE1M0どうせ追加程度でしょとか思ったら、古典的for削除とか大胆なRemove系Acceptあるなあw
枯れた言語になる気が全くなさそうなあたり、swiftらしいなとは思う
0317名称未設定
2015/12/26(土) 02:36:45.07ID:JQEQAGIg0海外の技術本はそれで商売してるのも最近は多い
0318名称未設定
2015/12/26(土) 07:41:26.93ID:D4kPAkq50まだ読んでないけど。
0319名称未設定
2015/12/26(土) 08:52:25.44ID:/PtRvg050Swiftになってそのアドバンテージはだいぶ減ったな、と初版を読んで思った。
解説が懇切丁寧なのは相変わらずなんで良い本だとは思ったけど。
0321名称未設定
2015/12/26(土) 09:15:00.27ID:Y02ZT1FX0来春の2.2の変更を解説しろと
0322名称未設定
2015/12/26(土) 10:49:27.03ID:EaeTuo8o0やっぱりただのオ○ニーじゃねぇか
0323名称未設定
2015/12/26(土) 11:00:05.42ID:AgZdXTl800324名称未設定
2015/12/26(土) 11:05:18.52ID:L7ew3UTX0AppleとSwift開発者はバカなの?
0325名称未設定
2015/12/26(土) 11:20:23.25ID:jHnGzRtT0perl6とかpython3見たく下位互換を言語仕様として破壊しちゃうと普及が大変ってことはないというのはいいことだと思う。
気に入らなきゃObjective-c使い続ければいいだけだし。
0326名称未設定
2015/12/26(土) 11:36:34.61ID:AA2ygCLU0ランタイム周りに詳しい。。。ってコトで詳解Obj-C、買ってみようかなぁ。中古でも良いから。
0327名称未設定
2015/12/26(土) 11:39:06.44ID:AA2ygCLU0Swift1.2, Swift2.1の互換性も壊れてるよ。特に自由関数(グローバル関数)まわり。自由関数の数が減って、同等なタイプメソッドへ変わったし。あと、Type casting周り、as as! as?とか。
0328名称未設定
2015/12/26(土) 11:42:27.96ID:AA2ygCLU0String, NSString間の変換がasでできるんだが、これって型の継承関係が無いのに出来ちゃって良いんだろうか?例外事項が多い言語って印象がして来て、だんだん、Obj-Cの方が良いかなぁと思い始めてるんだが。
let str = “String”
let nstr = str as NSString
こんなん出来てエエんかぁ?
下だけにしてくれぇ
let nstr = NSString(string: str)
0329名称未設定
2015/12/26(土) 11:45:23.80ID:OxyRTvwO0いってるとか、Appleへの信仰力はハンパねぇと再認識したわ
せいぜいこのベジータのおっさんのさらなる高額報酬に貢献すべくSwiftを妄信して使ってな
http://nondot.org/sabre/
0330名称未設定
2015/12/26(土) 11:49:49.92ID:EaeTuo8o0その感覚は正しいと思う
自分であえて分かりにくくしてるとしか思えない
今後必要な改善点はObjective-C 3.0として盛り込んでいけばいいんだけどな
0331名称未設定
2015/12/26(土) 12:01:16.55ID:CxB2VEvR0俺は違和感ねーけどな
CocoaAPIの呼び出しとかミックスランゲージする時も楽だし
0332名称未設定
2015/12/26(土) 12:30:52.98ID:l3ztaVyf0いずれFoundationのStringやArrayは廃止されてSwiftのものに一本化されるだろ
0333名称未設定
2015/12/26(土) 13:11:55.57ID:2O0+wGYi00334名称未設定
2015/12/26(土) 13:17:56.04ID:l3ztaVyf00335名称未設定
2015/12/26(土) 13:22:06.84ID:OxyRTvwO0使い続けられるならいいけど、Appleはそのつもりはないんでしょ?
0336名称未設定
2015/12/26(土) 14:03:19.75ID:nbMHOE1M0個人的には逃げ道としてのobj-cが充分枯れてるからこそ、Swiftが冒険してることが許されてるように感じるけどね
0337名称未設定
2015/12/26(土) 14:55:26.55ID:AA2ygCLU0だよねぇ。
0338名称未設定
2015/12/26(土) 14:59:16.22ID:krWCFmOb0って信仰者が言ってくるよ
オブジェクト間の特例キャストは何らかの文法で汎用化してくれればねぇ
変換元の型に func as -> NSString があったら as NSString が可能とか
最近、仕様を追ってないので既にあったらスマン
0339名称未設定
2015/12/26(土) 15:00:20.87ID:krWCFmOb00340名称未設定
2015/12/26(土) 15:24:14.35ID:jHnGzRtT0おかげでrxSwiftとか使おうとするとNSObjectのサブクラスにする必要に迫られたりする
この辺ってどうしようとしてるんだろうか?
NSFoundationがswiftで実装されたらKVO消えちゃうもしかして?
0341名称未設定
2015/12/26(土) 15:56:04.72ID:AA2ygCLU0swiftもaddObserverできんじゃないの?
すなわち、KVOはObj-Cだけじゃないよ。
ただ、NSKeyValueObservingのReferenceみてもinformal protocolだって
書いてあるんだよねぇ。
informal protocolってのはNSObjectの未実装メンバだってことだっけ?
ダイナミックObjective-C、ってコラムに書いてあったような、無かったような、忘れちゃったぁ。
0342名称未設定
2015/12/26(土) 15:56:39.18ID:AA2ygCLU0画像を投稿なんて、できるの?
0343名称未設定
2015/12/26(土) 16:04:08.97ID:3E2ectVS0できる
0344名称未設定
2015/12/26(土) 16:13:00.85ID:AA2ygCLU0すげぇー。俺もやりたーい。
0345名称未設定
2015/12/26(土) 16:19:58.10ID:AA2ygCLU0これは、面倒だ。
アップローダー使う方がまだマシ。
0346名称未設定
2015/12/26(土) 16:28:16.08ID:AA2ygCLU0
0347名称未設定
2015/12/26(土) 16:31:07.93ID:Y1MaLTNz0アプリのアイコンもダサいの作ってんだろうな
0348名称未設定
2015/12/26(土) 16:37:51.23ID:OxyRTvwO0
0350名称未設定
2015/12/26(土) 16:46:56.24ID:LzUgMZaQ0
0351名称未設定
2015/12/26(土) 16:50:12.27ID:OxyRTvwO0部屋にも貼って毎日崇めないと
0352名称未設定
2015/12/26(土) 16:50:18.67ID:AA2ygCLU0import Foundation
class A: NSObject {
let myClass = MyClass()
override init() {
super.init()
myClass.addObserver(self, forKeyPath: "value",
options: [.New, .Old], context: nil)
myClass.value = "NewValue"
}
override func observeValueForKeyPath(keyPath: String?,
ofObject object: AnyObject?, change: [String : AnyObject]?,
context: UnsafeMutablePointer<Void>) {
NSLog("Called")
}
}
class MyClass: NSObject {
dynamic var value = ""
}
let a = A()// 2015-12-26 16:45:48.892 swift[821:9549192] Called
0353名称未設定
2015/12/26(土) 16:56:17.60ID:AA2ygCLU0参りました。
どうやって画像貼り付けたのか?教えて頂戴。
0354名称未設定
2015/12/26(土) 16:58:56.75ID:bdHrTvoc0
0355名称未設定
2015/12/26(土) 17:00:49.22ID:1bsRcBPS0http://hissi.org/read.php/mac/20151226/QUEyeWdDTFUw.html
0356名称未設定
2015/12/26(土) 17:00:54.24ID:LzUgMZaQ0pngをbase64にしてbbs.cgiに投げるだけだよ
128,000Bまでだからサイズオーバーする場合はpngquantとかで減色するとよろし
0357名称未設定
2015/12/26(土) 17:08:08.48ID:AA2ygCLU0のサンプル、これが良さそう。
http://techlife.cookpad.com/entry/2014/12/02/105513
0358名称未設定
2015/12/26(土) 17:23:57.44ID:OxyRTvwO00359名称未設定
2015/12/26(土) 17:34:05.89ID:AA2ygCLU0http://potato.2ch.net/test/bbs.cgi?[base64 data]
ってブラウザのURLへ打ち込んだら
ERROR: Recieve GET METHOD: POST メソッドを使ってください。
って出ます。POSTするにはどうすれば?
ちなみにブラウザはsafari@Yosemiteです。
0360名称未設定
2015/12/26(土) 17:47:39.66ID:LzUgMZaQ00361名称未設定
2015/12/26(土) 17:49:40.87ID:L3fWOZ3T0必死ワロタ
>>359
swiftでコード書け
したらば、誰か採点してくれんだろ
ただコードは pastebin に書け、ここに書かれて邪魔
0362名称未設定
2015/12/26(土) 17:50:13.81ID:AA2ygCLU0うぇーん。ヒントだけでも。
0363名称未設定
2015/12/26(土) 17:53:38.06ID:OxyRTvwO00364名称未設定
2015/12/26(土) 18:21:43.41ID:AA2ygCLU0ブラウザのディベロッパーツール使うんですかねぇ?
0365名称未設定
2015/12/26(土) 19:34:20.21ID:l3ztaVyf0http://swiftlang.ng.bluemix.net/#/repl
0366名称未設定
2015/12/26(土) 19:49:54.95ID:AA2ygCLU0そこ、貼る場所じゃないっしょ!
0367名称未設定
2015/12/26(土) 20:02:49.33ID:jHnGzRtT0NSObjectが親であることが前提ならできるけど、
swiftの場合は必ずしもそうじゃないからKVOが使える時と使えない時がある。
0368名称未設定
2015/12/26(土) 21:05:47.04ID:pE8i2B+j0shareでコードが貼れて普通に便利だと思った
KVO使いたい時はNSObject継承して、不要なら継承しないってケースバイケースなんだろね
KVOのためのオーバーヘッドがなくなった分、Objective-Cよりオブジェクトの取り回し性能は良くなってる可能性が微レ存?
0369名称未設定
2015/12/27(日) 01:02:02.42ID:gMDZmgkd00370名称未設定
2015/12/27(日) 01:17:14.16ID:+TG6sdGI0そんな監視したいことってないべ?
0371名称未設定
2015/12/27(日) 11:02:17.53ID:XyYhjFKy00372名称未設定
2015/12/27(日) 12:00:12.61ID:iU/iWnXS00373名称未設定
2015/12/27(日) 12:40:21.58ID:FXu4+dlx00374名称未設定
2015/12/28(月) 14:49:35.02ID:iLRXQltY0出ない時の最後の手段かな。
まあ、swift自体リファクタリング機能はまだ実装されてないが。
0375名称未設定
2015/12/30(水) 21:59:47.74ID:3M+VMgmi00376名称未設定
2016/01/15(金) 13:47:51.72ID:G1YoBET401..<4
1..<4 これなんのために必要なの?
0377名称未設定
2016/01/17(日) 18:43:50.10ID:Qlhil0oI095以上XP未満 のほうが理解しやすいんじゃないかな。
0378名称未設定
2016/01/17(日) 20:16:52.84ID:uVAfNvcf0あろうがなかろうが美しいけど
0379名称未設定
2016/03/04(金) 08:20:32.69ID:FmzYZWFY0Swiftがこの世で最もエレガントな言語!!!!!
0380名称未設定
2016/04/01(金) 16:53:54.07ID:dJYfX9GR00381名称未設定
2016/04/01(金) 17:15:36.02ID:rPL0uPn90俺もプロトコル指向ってのが何なのか良くわからん。
protocol = Javaのinterface
とは違うのか?
Rubyのmoduleをmix-inするのとはかなり違うみたいだけど。
0382名称未設定
2016/04/01(金) 18:11:41.21ID:W/tALufR00383名称未設定
2016/04/01(金) 18:39:57.79ID:p89Bw/Bh0結果的には多重継承みたいなもんだよ
0385名称未設定
2016/04/02(土) 06:07:46.69ID:RrsmGHSM0* + うそです
n ∧_∧ n
+ (ヨ(* ´∀`)E)
Y Y *
0386名称未設定
2016/04/03(日) 18:49:43.51ID:PESzNWN20基底クラスに複数のクラスを使用(コンポジット)するのだ」言ってたが
それが別の名称で蘇ってきてるようなデジャヴ
0387名称未設定
2016/04/05(火) 10:57:33.33ID:dvkJXCiR0わからなかったな。
0388名称未設定
2016/04/05(火) 11:16:11.53ID:ka6+TOae00389名称未設定
2016/04/05(火) 11:35:58.82ID:JeMiE4QJ0オブジェクト指向としては時代の流れと共に流行りが変わってる
0390名称未設定
2016/04/05(火) 15:15:57.20ID:z5JtED5U0オブジェクト指向共通というかまだ当時の空気覚えてるけど
C++こそがオブジェクト指向!の90年代前半を通して
「継承こそがオブジェクト指向!」だったけどな。
いろいろできるJAVAの浸透で他のパターンが浸透していった結果
Objective-Cの持つスタイルも含め"オブジェクト指向共通の考え方"という
ものが錬成されていったけども。
0391名称未設定
2016/04/05(火) 20:29:29.74ID:dj3TbShw00392名称未設定
2016/04/05(火) 20:33:49.22ID:JeMiE4QJ00393名称未設定
2016/04/05(火) 20:35:34.87ID:pTfgE9Xo0その方が綺麗に実装分けられて便利なのに。
できると何がマズいんだろ。
0394名称未設定
2016/04/05(火) 21:00:09.23ID:AkkAY9eQ0初耳なんだけど
0395名称未設定
2016/04/05(火) 21:09:11.95ID:pTfgE9Xo0書き方が曖昧だったね
Obj-CのカテゴリメソッドでもSwiftのextensionでも作れないのが理解に苦しむ。
0396名称未設定
2016/04/05(火) 21:13:40.13ID:SQhsSWLI0「Smalltalkは古い言語」⇒「処理系も古い」⇒「LLVMに対応できるわきゃない」という流れ?
↑ここが間違い
0397名称未設定
2016/04/05(火) 21:27:43.61ID:AkkAY9eQ0インスタンス変数を追加するんなら、それは継承を使うべきでしょ
エクステンションでそれできちゃうと、両者の境界も曖昧になってしまうし、そのクラスの本来の用途とあまりにもずれてしまう可能性があるし、もともともってる本質的な機能と追加された機能がごっちゃになりかねない。エクステンションは影響範囲が広いし
0398名称未設定
2016/04/05(火) 21:37:15.63ID:JeMiE4QJ0いや、単純にLLVMだとまだクロスコンパイル対応しやすいだろ?
そこでメリットを出せるならLLVM使ってるけどクロスコンパイル出来ないSwiftに勝てるんじゃね
他の方法でSwiftにないメリットが出せるならどうぞ
0399名称未設定
2016/04/09(土) 11:40:44.85ID:Zk0jAwHQ0http://www.itmedia.co.jp/news/articles/1604/09/news026.html
swift勝ち組
0400名称未設定
2016/04/09(土) 12:15:42.15ID:MbWYNkW300401名称未設定
2016/04/09(土) 12:38:03.29ID:IemUEeNp00402名称未設定
2016/04/09(土) 13:20:03.12ID:C6HXwGFk0アメリカじゃswiftは最高の言語という評価だから検討されているってだけだろう
上手くいってもせいぜいmonoみたいな程度だろ
javaの圧倒的な第一言語の地位を譲る要素があんまり無い
0403名称未設定
2016/04/09(土) 13:35:16.36ID:Ka/K8G8c00404名称未設定
2016/04/09(土) 16:12:32.08ID:a92nO+1n0つうかGo言語どうなってんのよ。普及してへんの?
0405名称未設定
2016/04/09(土) 20:18:07.35ID:wN/Mfpdl0今Mobile.Go開発中です。NDK アプリは、Mobile.Goっていうframeworkで作る事になるけど、まだ完成度が低いっす。だから、JavaでAndroid SDKアプリを作らざるを得ないってのが現状です。
Go言語のキラーアプリは、Mobile.Goなんだけど、こいつが使い物になればGoは普及言語になります。
0406名称未設定
2016/04/09(土) 20:22:57.07ID:wN/Mfpdl0GoのキラーアプリがMobile.Go
RubyのキラーアプリがRails
JavaのキラーアプリがStrutsやAndroid SDK
SwiftのキラーアプリがAppkit, UIKit(OSX, iOS SDK)
0407名称未設定
2016/04/09(土) 20:27:52.69ID:wN/Mfpdl0オブジェクト指向ねぇ。それが意味する事が判ったのは、俺なんかつい最近ですわ。
俺的定義は、
1. 差分プログラミング
2. 型多重性
3. 構造体拡張
これが、オブジェクト指向。
0408名称未設定
2016/04/09(土) 22:33:21.22ID:NhzRn1xG0にも関わらず、「モバイルで動かしてみた」程度の意義しかない Go Mobile がキラーとか何を寝ぼけてんだ
まだ小さな()ランタイム込みのSwiftの方がモバイル向けだわ
0409名称未設定
2016/04/10(日) 10:45:56.95ID:G0sg5aeU0って事は、Go言語の真価はマルチコアを容易に生かす、コードが書けるって事?
0410名称未設定
2016/04/10(日) 11:18:33.39ID:UUf1XMzZ00411名称未設定
2016/04/10(日) 13:19:54.57ID:3fZ0dShg0逆にシングルスレッドの単純処理は他言語に比べて基本的に性能同等ないしそれ以下って言われてるから
クラスのない関数型や末尾;省略のイマドキの文法はオマケじゃないかね
なお、イマドキの文法しかメリットがないSwiftは、、、何が特性なんだろうね、、、
0412名称未設定
2016/04/10(日) 14:59:17.19ID:qcQSRRW000413名称未設定
2016/04/10(日) 17:30:31.39ID:G0sg5aeU0特性=特徴、はNullAbilityを扱える。
Optional型、ImplicitlyUnwrappedOptional型はNullAbilityを表現する型。
型って言っちゃったけど、これ定義みたら列挙なんだよねぇ。
UIKit内のオブジェクトが持ってるメソッドはOptionalを返すのが多いので、使わざるを得ない。
これが、一番の特徴だろうねぇ。Swift出現後、Obj-Cもこの特徴を備える様に変更されたしね。
closureを扱えるとか、Genericsが使えるとか、これらは他言語にもある特徴だし。
Go言語がマルチコアを容易に活かせるというのであれば、Fortran、とくにベクトルコンパイラ版のFortranなんか一番マルチコアを活かせるのじゃないのかなぁ?
Fortranにとって配列は、デフォルトで並列化配列だし。
0414名称未設定
2016/04/10(日) 20:50:10.32ID:3fZ0dShg0ClosureやGeneticsと同様にオリジナルじゃないけどな
0415名称未設定
2016/04/10(日) 21:36:35.81ID:9ImU3gwv0Optionalの元ネタはHaskellのMaybeモナドやぞ
0416名称未設定
2016/04/10(日) 22:22:21.30ID:tMQKaVy70>>413
データセーフであることと、処理性能が十分に考慮されることは別だけどな
データセーフにするだけならC/C++のmutexでも良いし
0417名称未設定
2016/04/11(月) 02:47:06.67ID:mtQQHN5y00418名称未設定
2016/04/11(月) 10:47:07.16ID:EqRUtHJq0SwiftがLLVMだからどこでも動くようになるってのと同じくらいのガセっぷり
所詮アポー専用言語なんだよなぁ
0419名称未設定
2016/04/11(月) 11:52:16.24ID:eGslulQk00420名称未設定
2016/04/26(火) 20:14:25.52ID:bQ0SFQ/B00421名称未設定
2016/04/26(火) 20:32:05.03ID:DhI35iUR00422名称未設定
2016/04/27(水) 00:40:34.41ID:CMZR7Ppw00423名称未設定
2016/04/27(水) 08:36:16.19ID:LQiho/XH00424名称未設定
2016/04/27(水) 12:25:43.65ID:9vBPXvAm00425名称未設定
2016/04/27(水) 17:14:53.26ID:Q/ROaKyx00426名称未設定
2016/04/27(水) 19:08:25.16ID:xOAyM4L900427名称未設定
2016/04/27(水) 19:31:30.37ID:n1HMGVu10灰になるまで
0430名称未設定
2016/05/01(日) 19:24:56.96ID:i9vCo75+0ナムナム
0431名称未設定
2016/05/01(日) 19:41:14.88ID:z82Sprw/00432名称未設定
2016/05/01(日) 22:39:34.75ID:1egMUnAE00433名称未設定
2016/05/01(日) 22:41:15.41ID:e3MI39bp00434名称未設定
2016/05/01(日) 23:29:37.29ID:u//rDZkB0新しいものを理解出来ない、使いこなせない以外のレスは出せない老人たち
0436名称未設定
2016/05/01(日) 23:51:30.65ID:5uLJjFTY0訳わかんなくて幻滅してるナウなヤングも結構いるんじゃないかな。
0437名称未設定
2016/05/02(月) 00:01:15.52ID:NlFYSjn10モダン()指向言語も行きすぎるとただの自己満言語になるからね
Swiftもその気が強い
オープンソース化でどこまでそれが緩和されるかが今後の命運を握る
0438名称未設定
2016/05/02(月) 00:27:49.70ID:vDMUaziV0SwiftだろうがObjective-Cだろうが結局どの言語も馬鹿には使いこなせないよ
0439名称未設定
2016/05/02(月) 08:03:39.19ID:2eT01fff0今までもライトな文法はJSやTSがいたけど、そこまで本気で領域侵食してたわけじゃないけど
Swiftは真っ向から対向しうるから理解できない人はSwiftディスらないと自分を保てない
0440名称未設定
2016/05/02(月) 08:18:36.91ID:NlFYSjn10>特殊な文法のobjcに陶酔して、CやJavaはクソ、Swiftなんてもっての外って人たちは多いよなぁ
いやいやわかってると思うけどObjective-Cは純粋にC+オブジェクト指向だから
Objective-C使いがCをクソなんていわないだろ
特殊って言っても、オブジェクト指向で拡張したメッセージ式と
コンパイラディレクティブ、メソッド表記くらいだし
0441名称未設定
2016/05/02(月) 09:09:00.42ID:2eT01fff0そのObjC拡張を至高と疑わず、それが出来ない言語を見下すのがObjC信者の信者たる所以
最近のにわかはそんなことも分からずObjCを守ろうとしてるのか
Swiftをディスる立場ならなんだっていいってバカなんだなぁ
0442名称未設定
2016/05/02(月) 09:12:09.31ID:sSDnuwoU00443名称未設定
2016/05/02(月) 10:35:09.02ID:LT8+zYqf0>そもそもObjective-C 3.0としての正常進化じゃダメな理由がわからない
ブロック構文の無理矢理さを見て察しろよ
CともC++ともバッティングしないようにしながらこれ以上スマートに拡張するのはもう限界なんだよ
0444名称未設定
2016/05/02(月) 10:55:22.86ID:szCC33vy00445名称未設定
2016/05/02(月) 11:16:32.90ID:2eT01fff0それでいいじゃん、なんでAppleの出すものはすべて素晴らしいと信じられないのか
0447名称未設定
2016/05/02(月) 14:10:07.02ID:Tprf5Ebh00448名称未設定
2016/05/02(月) 16:00:34.91ID:2hME0Ucp00449名称未設定
2016/05/02(月) 16:01:30.20ID:ep9jEBLO0なぁーるほどぉ。
0450名称未設定
2016/05/02(月) 16:12:06.41ID:Ue1/hAtU00451名称未設定
2016/05/02(月) 16:30:48.76ID:Tprf5Ebh0記法の話。宣言も引数も*を^に変えただけ。
不思議なのは、この指摘を日本語では今まで見たことが無いんだよな。
0452名称未設定
2016/05/02(月) 16:46:50.78ID:ep9jEBLO0あんたが正解
0453名称未設定
2016/05/02(月) 17:11:22.37ID:2eT01fff0Swiftのクロージャーも同じだろうけど、直接連携出来ないから実証してない
0454名称未設定
2016/05/02(月) 17:27:09.54ID:Udix/N4m00455名称未設定
2016/05/02(月) 17:30:11.85ID:hPoGxQIB090年代と2005年以降のOOPってもはや別物だよねぇ。
自分は40代後半の不勉強者なんだけど、30くらいの奴にレビューで色々怒られて次の4冊を渡されたよw
HeadFirstオブジェクト指向分析設計
HeadFirstデザインパターン
オブジェクト指向のこころ
Effective Java
学生の頃に教授が言ってた言葉を思い出した。
「ソフトウェア工学は完成していません。勉強を続けてください。」
0456名称未設定
2016/05/02(月) 21:16:07.49ID:ep9jEBLO0ピアソンの三番目の本は今でも入手できるのかな?
集約とコンポジションの違いが、そいつで漸く理解できた。
訳者はNZ在住とか、書いてあったな。
俺にとっては、「Java流オブジェクト指向入門」って本もエエ本やったな。
0457名称未設定
2016/05/03(火) 03:39:21.23ID:iaZVuUCX0Fn keyに慣れてきた
0459名称未設定
2016/05/06(金) 00:12:07.76ID:WL0rfaGA0その疑問に答えられる人はいない
0460名称未設定
2016/05/06(金) 00:13:19.91ID:WL0rfaGA00461名称未設定
2016/05/06(金) 00:13:31.79ID:4eiLvvzx00462名称未設定
2016/05/06(金) 00:14:33.93ID:WL0rfaGA0現実は違う
0463名称未設定
2016/05/06(金) 00:15:57.43ID:WL0rfaGA0アンチはアンチスレへ
ゴミはゴミ箱へ
定期
0464名称未設定
2016/05/06(金) 00:18:41.10ID:A6Y74bcW00465名称未設定
2016/05/06(金) 00:25:57.85ID:TynE/3hu00466名称未設定
2016/05/06(金) 00:27:11.75ID:WL0rfaGA00467名称未設定
2016/05/06(金) 00:44:04.91ID:vE5HrrjZ00468名称未設定
2016/05/06(金) 00:49:42.24ID:4eiLvvzx00469名称未設定
2016/05/17(火) 21:28:31.70ID:wmTW8yRV0退散!
0471名称未設定
2016/05/18(水) 08:52:58.69ID:plqz+CXp00472名称未設定
2016/05/18(水) 21:38:27.80ID:8hemFSfh0テクノロジーはもの凄いスピードで変化している。
ほんの数年前まで私はObjective-Cを使っていた。
しかし、今では私が書いたほとんどのプログラムはSwiftで書かれたものだ。
iOSディベロッパーへの応募者のなかには、
これまでにObjective-Cによるコードを一行も書いたことがないものもいる。
Swiftは習得しやすく、安全で、モダンな開発パラダイムをもち、
Objective-Cにはないエレガントさを持ち合わせている。
新しいディベロッパーが、Objective-C独自の不完全さに対処する必要がないのは良いことだ。
ありゃりゃ
0473名称未設定
2016/05/18(水) 23:13:32.68ID:fD5EdCC20そんな手のひら返してObj-Cを悪者にしなくてもいいじゃねーかと思うけどなあ。
ここ数時間、ソースのコンパイル順かえるだけで起きる変なエラーに悩まされてた。
バグ報告メンドクセ。
0474名称未設定
2016/05/19(木) 02:51:06.60ID:ArhskZZW00475名称未設定
2016/05/19(木) 03:14:54.68ID:dPuo0e3o0なんだこの微妙にエアー臭い論旨フラフラした2ちゃんの書き込みみたいなのは。
Objective-Cからswiftに乗り換えるのはおおごとなのか簡単なのかからもうフラフラしてんぞ?
あれか論旨は「プログラミング教育なんて意味ないね
Objective-C教えてもすぐswift出るし!あ、知的ボヘミアンの僕は簡単に覚えたけどね!」かw
0476名称未設定
2016/05/19(木) 10:49:09.26ID:Z4nwndKH0リハビリが必要だわ
しかしこんな面倒臭い言語だったっけ
0477名称未設定
2016/05/19(木) 13:22:49.18ID:5bAUH2q90読み応えあったなぁ。
あっちの世界(USの世界)も厳しそうだなぁ。
0478名称未設定
2016/05/19(木) 13:30:17.48ID:5bAUH2q90Visual BasicでFormにlineToメソッドでグラフを書いていた程度の俺には、長い時間をSwiftに費やしてしまったわぁ。当初の3ヶ月で攻略してやる、との目論見は
外れてしまったが、後悔はしていない。
0479名称未設定
2016/05/21(土) 17:29:28.51ID:1niGc19R0https://ja.wikipedia.org/wiki/参照カウント
逆にスタック配置や参照カウント方式でない.NETやjavaでは
RAII(deinit)が効かないからusingやtry-with-resourcesが必要になる
CopyGC/MarkSweepGCはメモリリークに強くなるけど
逆にリソースリークに弱くなる
言語機能は、それが用意された経緯から辿るとより理解し易い
0480名称未設定
2016/05/21(土) 17:45:43.85ID:1niGc19R0class Guy {
init(){ print("オレが止めているうちに逃げろ!") }
deinit { print("ここまでか・・・") }
}
func antiWarning(a:Any){}
func case1() {
let g = Guy()
antiWarning(g)
print(" ε=ヘ( `Д´)ノ(EXIT")
}
func case2() {
let _ = Guy()
print("____ (EXIT")
}
print("--case1")
case1()
print("")
print("--case2")
case2()
0481名称未設定
2016/05/21(土) 17:50:03.84ID:zuKQNcJG00482名称未設定
2016/05/21(土) 18:04:59.74ID:T655dIhH0--case1
オレが止めているうちに逃げろ!
ε=ヘ( `Д´)ノ(EXIT
ここまでか・・・
--case2
オレが止めているうちに逃げろ!
ここまでか・・・
____ (EXIT
ってなった。
case2でdeinitがprintより先なのがバグって言いたいのかもしれないけど、
「_」変数の役割を考えると仕様通りな気もする。
何ならバグレポート出して反応あったら教えて欲しい。
0483名称未設定
2016/05/21(土) 18:10:23.61ID:1niGc19R0バグなのはコンパイル警告の方
antiWarningを外してみて
変数名付ける意味無いから"_"に変えようぜって言ってくるんだよ
動作変わるのに
0484名称未設定
2016/05/21(土) 18:15:38.56ID:T655dIhH0なるほど。
それもまあ「使ってないなら書くなよ」って意味では適切な気もするなあ。
antiWarning(g)の代わりにgとだけ書いても警告の回避はできるし。(テクニックとしての良し悪しはともかく)
何ならバグレポート出して(r
0485名称未設定
2016/05/21(土) 18:22:22.07ID:1niGc19R0その通り俺自身は回避方法知ってるからわざわざバグレポート出す気は無いよ
上でRAIIの話したから既知の地雷についても書いただけ
>gとだけ書いても
これは良いね、知らなかったよ
0486名称未設定
2016/05/21(土) 18:46:12.89ID:XZmi7dSD0そのレスはびっくりするわ
swift界隈ならそういうコードもありなのかねぇ
0487名称未設定
2016/05/21(土) 19:37:42.96ID:1niGc19R0コーディング規約に意図書いて周知しとけばいいし
「_ =」とかも人によってはアウト判定だろうけど
enum Err : ErrorType { case A }
class CriticalSection{
init(){print("lock")}
deinit{print("unlock")}
}
func get(a:Int) throws -> Int {
if a == 1 { throw Err.A }
print("get")
return 10
}
func proc(v:Int) {
print("proc \(v)")
}
func test(a:Int) throws {
let v:Int
do {
let c = CriticalSection(); c
v = try get(a)
}
proc(v)
}
_ = try? test(0)
print("--")
_ = try? test(1)
0488名称未設定
2016/05/21(土) 19:46:29.04ID:M9ebEtl60だから電子本にしろと言ったのに
0489名称未設定
2016/05/21(土) 19:57:03.13ID:J4T1Ffs100490名称未設定
2016/05/21(土) 22:42:18.89ID:T655dIhH0さらに言うと、gがメソッドを抜けるまで開放されないのもコンパイラの最適化が変わればprintより先に開放されるようになるかもしれない。
それ考えると、メソッドを抜けるまでインスタンスを保持したいなら、そうと明示的に分かるような別の実装を用意しておいたほうがいいかなーとは思った。
var guy:Guy?
func createGuy() { guy = Guy() }
func releaseGuy() { guy = nil }
みたいな。
>>488
詳解 Swift 改訂版 の事ならKindle版出てるよ。
結局両方買っちゃったよ俺。同時に出してくれよ〜とは思った。
0491名称未設定
2016/05/21(土) 23:04:13.98ID:CsgeeBqp0このwarningに対応すると、こんなに冗長なコードになっちゃうヨォ⁉️
1)warningが出るコード
return someValue == i++ ? next : nil
2)出ない様に修正したコード
if someValue == i {
i += 1
return next
} else {
i += 1
return nil
}
i += 1が2箇所に現れるんだけど、これはしょうがないのか?
0492名称未設定
2016/05/21(土) 23:14:59.33ID:T655dIhH0i += 1
return result
または
let oldi = i
i += 1
return someValue == oldi ? next : nil
0493名称未設定
2016/05/22(日) 00:01:38.83ID:DCw47CTI0return someValue == i ? next : nil
しかしなんで、インクリメント、デクリメント演算子を無くしちまうのかね
0494名称未設定
2016/05/22(日) 12:11:53.29ID:AZDl/GvG0でも++i, i++の混同以上に危ない気がする
deferを離れた所に書いたらあるぇ?ってなりそう
0496名称未設定
2016/05/22(日) 12:33:22.33ID:2zJCD7B000497名称未設定
2016/05/22(日) 12:35:20.73ID:dp0R1Htc00498名称未設定
2016/05/22(日) 12:38:52.97ID:4DfuHbGz00499名称未設定
2016/05/22(日) 16:07:25.29ID:8ZdNXHnB0>defer
超参考になりました
0500名称未設定
2016/05/22(日) 19:16:54.32ID:8ef0SVog0詳解 Swift 改訂版
俺もこれのKindle版がリフロー対応にっているのを知って、買おうかと思うんだけど、Kindle2012で読めるかなぁ。手持ちのIPad Proでは快適でも、Kindleみたいな6inchデバイスではNGだったらがっかりだなぁ。
Kindle PaperWhite2015のクーポン四千円があるから、Paperwhiteなら新規に買っても良いんだけど、6inchデバイスでは読めないっていのなら、がっかりだなぁ。
どなんすか?諸先輩方?
0501名称未設定
2016/05/22(日) 19:34:51.80ID:pN3ykA8m0無料(タダ)だし
早い、安い、正確の三拍子揃ってる
0502名称未設定
2016/05/22(日) 21:09:20.48ID:0I82FcB80遅レスだけど
//共通関数
func inc<T:_Incrementable>(inout a:T)->T {
let b = a
a = a.successor()
return b
}
//使用例
var i=0
func f(someValue:Int) -> Int? {
let next = 10
return someValue == inc(&i) ? next : nil
}
print(i, f(0), i)
print(i, f(0), i)
print(i, f(2), i)
0503名称未設定
2016/05/22(日) 21:20:43.96ID:r239TSr200504名称未設定
2016/05/22(日) 21:20:49.18ID:EdTIZpKH0そういうことだ
0505名称未設定
2016/05/22(日) 21:33:25.16ID:AZDl/GvG0それに何の意味があるのか分からないけど
0506名称未設定
2016/05/22(日) 22:25:20.18ID:0I82FcB80>わかりやすくするつもり
まずその認識から間違っている
わざわざコメントで共通と使用箇所を分けたというのに
実際にインクリメントを行っている箇所への修正量を小さくしたものだ
0507名称未設定
2016/05/23(月) 00:30:36.60ID:lCuIbp4t0出来上がった関数も、結局コード読まなきゃ何する関数か判断のつきようもない
Incって名前からして一見インクメントした値を返しそうな気がするが、返ってくるのは引数で渡した値だし、まぁそれは元々の処理はそれで正しいんだが、名前にそぐわないから、処理内容を知らない人からすれば勘違いを招きかねない
まだ元々の>>491の内容のままの方が5秒で読める
そもそもこんなくだらん処理をいちいち共通化されたらコード読む方も大変だわ
0508名称未設定
2016/05/23(月) 08:14:40.37ID:GDUlTz950まあそうだな。
俺、expressionって何だって?理解するのに、エレー時間かかったわぁ。
expressionって式なんだね。expressionを文と意味とってたので、iBookすげー、イミフだったんだわぁ。
0509名称未設定
2016/05/23(月) 08:58:52.96ID:Vb4PWYe40関数化して複雑に修正量多くなってるようにしか見えない
0510名称未設定
2016/05/23(月) 09:16:36.72ID:GDUlTz950_Incrementableは直接使っちゃダメってDocsetになるんだけど?
ForwardIndexTypeを代わりに使えって!書いてある。
使ってもええの?
0511名称未設定
2016/05/23(月) 11:31:44.15ID:a9wlS8Ux00512名称未設定
2016/05/30(月) 09:40:28.30ID:LLW1zWtG00513名称未設定
2016/06/14(火) 10:34:53.98ID:m7Ejmz3j00514名称未設定
2016/06/14(火) 10:37:13.78ID:gvdndBKe0メソッドの呼び出しIFの方が影響でかいと思ってる
0515名称未設定
2016/06/15(水) 04:13:18.20ID:0XoChnKI00516名称未設定
2016/06/15(水) 19:59:07.01ID:Lts/vHZ900517名称未設定
2016/06/18(土) 14:20:53.91ID:lKUlj9yk0SSDに160GBあるからSierra入れてみっかなぁ?
そんでもってXcode8も入れてみっかなぁ。
Xcode7.3と共存させるのは、なんか怖いんだなぁ。
0518名称未設定
2016/06/18(土) 15:18:47.91ID:TJy9P5d60Xcodeが落ちるのは構わんけど、OSは結構困る
0519名称未設定
2016/06/27(月) 08:16:37.59ID:sfW5gYWW00520名称未設定
2016/06/27(月) 09:50:34.38ID:AQZ6YMHx0情報thx
OSを道連れにXcodeが落ちるのね。
試す時には、別パテに10.11.4を放り込んでから、Xcode8を入れるわぁ!
0521名称未設定
2016/06/27(月) 10:59:34.64ID:EA2r6jQF0Xcode(swiftビルドツール)が不安定なのはいつもの事で
ソレとは別にOS自体が不安定でsafariやchrome、office使ってると OSが落ちる
毎日OSが落ちるのが気にならないなら別におk
0522名称未設定
2016/06/27(月) 11:57:20.93ID:AQZ6YMHx010.11が落ちるのか?それとも10.12が落ちるのか?どちらなんでしょうか?
safari + chrome + 10.11.4では落ちる事は無いんですけど。
officeは持って無いので、試せ無いっす。
0523名称未設定
2016/06/27(月) 12:10:35.37ID:EA2r6jQF0swift自体はbeta(1.0以前)よりは落ちないので、その頃から使ってたら気にならない
変更規模も beta => 1.0 に比べたらかわいいもの
0525名称未設定
2016/07/01(金) 20:12:16.97ID:RcOr/lZ80俺は、OとCが同じように見えるから困ってた。
だから、Cbjective-Cも、Cbjective-Oも、Objective-Cも、Objective-Oも同じに見える。
けどSwiftだと、Swiftにしか見えないから助かってる。
0526名称未設定
2016/07/01(金) 20:29:49.16ID:KukoEwpj0眼科へ行った方が良い
0527名称未設定
2016/07/01(金) 21:48:05.62ID:37oxuuDF00528名称未設定
2016/07/01(金) 22:10:40.41ID:cL3PTwp600529名称未設定
2016/07/02(土) 01:37:06.51ID:BK5nGms300530名称未設定
2016/07/02(土) 09:19:37.40ID:Wn8FO3Ea0確かに、ぱっと見、同じかもしれん
0532名称未設定
2016/07/02(土) 14:15:06.75ID:1yNKK0S600533名称未設定
2016/07/02(土) 14:28:06.80ID:y7Py1+1800535名称未設定
2016/07/02(土) 14:58:57.79ID:y7Py1+180そのうちちゃんと判別できるようになるから
0536名称未設定
2016/07/03(日) 10:53:25.06ID:FAB09qVU00537名称未設定
2016/07/03(日) 21:18:10.62ID:4sL3R96x00538名称未設定
2016/07/03(日) 22:55:13.14ID:uG3298em00539名称未設定
2016/07/03(日) 23:35:39.77ID:PVmKd0ih0<---------->
上のほうが長く見えるかもしれません。
しかし、これが錯覚というものなのです。
そう、SwiftもJavaも同じです。
0540名称未設定
2016/07/04(月) 00:30:34.29ID:6HVE0pe90公式本の2.2版より3版β版から読み始めた方がいいですかね?
てかiBooksではβ版となりつつもswiftサイトで配布のは
3と言いつつβ版とは書いていなかったりで迷ってます
0541名称未設定
2016/07/04(月) 00:49:33.69ID:Nu8mYhxn0初心者なんだし、どうせ何十回も読むことになると思うよ
0542名称未設定
2016/07/04(月) 01:37:37.12ID:1cnb1+HL00543名称未設定
2016/07/04(月) 10:29:37.92ID:JEMh6kZ900544名称未設定
2016/07/05(火) 07:30:38.30ID:geR57kgI00545名称未設定
2016/07/05(火) 13:38:33.86ID:wCd9270o00546名称未設定
2016/07/05(火) 16:39:56.20ID:ttXTTl8c00547名称未設定
2016/07/05(火) 18:14:36.02ID:BM3cxFSw0なんか、すべてのソースコードをときどき直してる感じだもの。
好きなのとかで良いんじゃないのw
0548名称未設定
2016/07/05(火) 20:49:22.24ID:HYD6UuAD0落ちますねえ iBooks、Safariと行き来してる間にいつの間にか落ちてますw
>>545
まさに、まだプロジェクト開くまで行かずplaygroundでキャッキャしてる感じなんで問題なしです
0549名称未設定
2016/07/05(火) 21:03:58.14ID:jHxzTU5x0swiftc叩いた方が幸せだと思ってる
0550名称未設定
2016/07/05(火) 23:06:07.93ID:f5SLJK9H00552名称未設定
2016/07/06(水) 14:55:27.66ID:qqGF61F90うぅー、どういう事でしょう?
続きをどうぞ!
0553名称未設定
2016/07/06(水) 15:10:33.63ID:694qglEn00554名称未設定
2016/07/06(水) 15:28:09.44ID:9jYFY4vB00555名称未設定
2016/07/07(木) 10:29:46.53ID:ueiy4olw00556名称未設定
2016/07/08(金) 14:59:03.04ID:sqi3rW2y00557名称未設定
2016/07/09(土) 13:14:03.30ID:b1+t/Q1K0すぐ真似される。デザイナー案件でもデザイナーが目を覚まし似たアプリをデザイナーが海外に発注してしまう。
似たアプリがたくさん出てきてしまう。デザイナーを刺激してはいけない。直接デザイナーに発注しよう。公開案件は危険すぎる
公開案件は危険すぎる
0558名称未設定
2016/07/09(土) 13:26:41.41ID:PTcNZw8k0公開案件は危険...
公開案件は...
公開...
こ..
0559名称未設定
2016/07/12(火) 11:19:28.14ID:FVWuY1aA00560名称未設定
2016/07/16(土) 08:17:50.57ID:5UaAvylR00561名称未設定
2016/08/05(金) 13:36:39.12ID:qHcMh+iL0var i:Int? {get}
}
class MyClass : MyProtocol {
var i:Int? {return nil}
}
func testFunc(myProtocols:[MyProtocol]) {
print("myProtocols = ¥(myProtocols)")
}
let arr:[MyClass] = [MyClass(),MyClass(),MyClass()]
testFunc(arr)
これで「fatal error: array cannot be bridged from Objective-C」で落ちるのなんとかならないですかねえ。
@obj protocol MyProtocol
てやると落ちなくはなるけどプロパティにoptional使えなくなるし、
[MyProtocol]の配列を作り直すのも避けたい。
0562名称未設定
2016/08/05(金) 13:46:16.60ID:qHcMh+iL0func testFunc<T:MyProtocol>(myProtocols:[T])
これでいけそう
0563名称未設定
2016/08/05(金) 14:40:07.59ID:IkyX4tyT00564名称未設定
2016/08/05(金) 19:12:47.48ID:qHcMh+iL0都合により今は2.2使わざるを得ない。
0565名称未設定
2016/08/06(土) 22:06:53.47ID:zAXw4hI10でかいの作るとビルド遅いのと、バージョンアップする度にお直しで工数食うのがいやで腰が重い
0566名称未設定
2016/08/07(日) 00:09:04.03ID:OnSAQ+ce00567名称未設定
2016/08/08(月) 03:03:19.34ID:3zLfTKGR0失敗は成功の元。
いいね!
0568名称未設定
2016/08/08(月) 14:23:25.45ID:/9xXnvrN00569名称未設定
2016/08/08(月) 15:37:07.21ID:44MlYOa800570名称未設定
2016/08/08(月) 19:23:43.26ID:uTPIFJEy0いったいどうしたいんだ。。。
OSのベータ対応でいっぱいなのに、言語のベータ対応もやらせるか
0571名称未設定
2016/08/08(月) 19:25:44.69ID:Tm00WPcv00572名称未設定
2016/08/08(月) 19:27:00.61ID:mT1V28Wy00573名称未設定
2016/08/09(火) 01:24:12.03ID:V3TV1XaZ0まじで。ベータとは言えNSついたり消したりってのは迷走してるなぁ
deprecatedの他にappleNowConfusedあたりの明示が欲しくなるな
0574名称未設定
2016/08/09(火) 06:41:59.37ID:MAMfkniP0いくつかはFoundationにしておくのか、全てSwift Standard Libraryにしてしまうのか、とか
0575名称未設定
2016/08/09(火) 17:26:55.33ID:458BLFTu00577名称未設定
2016/08/10(水) 17:57:04.23ID:5HhYr14v00578名称未設定
2016/08/12(金) 17:17:00.03ID:snRw9MkP0所詮、開発に関わってるAppleの人間の私利私欲のドロドロしたものの結果として、
Swiftが生まれSwiftの仕様が右往左往しながら妥協の産物として決まってきてるんだよ
そんなのにいちいち付き合ってる奴隷開発者さんも大変だな
0579名称未設定
2016/08/12(金) 17:19:30.11ID:snRw9MkP0中身は一生ガキのままなんだよ
ほんとどうしようもねぇよな
人類おつおつ
0580名称未設定
2016/08/12(金) 17:49:24.05ID:li4kJFO00自分が考える理想の大人像と違うからといって、盗んだバイクで走り出すのは、どうかと思うよ
0581名称未設定
2016/08/15(月) 23:11:56.40ID:47EOUjpm00582名称未設定
2016/08/15(月) 23:17:12.95ID:47EOUjpm0重くてなんにもできなくなる
0583名称未設定
2016/08/15(月) 23:33:05.54ID:/YqW/riN0焦らない焦らない
うふっ♥
0584名称未設定
2016/08/16(火) 15:49:36.58ID:DU8JsiU80京急北品川駅裏の小さい駐車場の隅にある小屋の裏に熟女モノdvdが落ちてるよ あの日焼けっぷりから随分長いことある
0585名称未設定
2016/08/16(火) 21:23:16.31ID:EA1MDMA+0ジョブズが生きていたら絶対命名しない名前だ。
0586名称未設定
2016/08/16(火) 21:57:33.61ID:pkjhUdP000587名称未設定
2016/08/16(火) 23:40:27.59ID:0B/b68Vn0そもそもSwiftとかいうクソ言語なんかにてを出さず、
Objective-C 3.0としての正常進化を進めてただろ…
0588名称未設定
2016/08/16(火) 23:49:28.49ID:S3lT50cg00589名称未設定
2016/08/17(水) 00:32:02.79ID:VUPQ5pL20>>588
この文法は swift 3 で変わったよな?
やり直し
0590名称未設定
2016/08/17(水) 05:35:28.57ID:wEaTHwWe00591名称未設定
2016/08/17(水) 09:09:28.92ID:KvwTRZS100592名称未設定
2016/08/22(月) 07:09:18.70ID:wsydExXQ0出演女優も日焼けしてたりして
0593名称未設定
2016/08/22(月) 13:39:17.16ID:ugrwrPlX0あっという間だな。どんだけ速いの。
ところでswiftでサーバサイドやるメリットってなんかあるの?
0594名称未設定
2016/08/22(月) 13:57:28.48ID:CT5Dd6GO0ネイティブコンパイルされたコードが走るWebアプリが作れる。
これがメリットではないスカねぇ。これまでスクリプト言語で作られてきた
Webアプリが高速実行できるWebアプリに取って替わり、多数のサーバーに
ロードバランサーを使ってスケールアップされたサイトが、少数のサーバーを
動かすだけでサービス提供できる様になるって事が、メリットでは!
結果的に、サーバーの台数低減、電気代削減、固定資産削減ができる。
0595名称未設定
2016/08/22(月) 14:05:10.52ID:YBCOvB9h00596名称未設定
2016/08/22(月) 14:22:09.04ID:CT5Dd6GO0?
0597名称未設定
2016/08/22(月) 14:28:50.93ID:YBCOvB9h00598名称未設定
2016/08/22(月) 15:24:16.59ID:tDx6576n0なお、swiftがC言語相当速度出ないのは知ってる
0599名称未設定
2016/08/22(月) 15:37:08.26ID:CT5Dd6GO0Goji, Gorillaとかあるらしいけど、まだまだじゃないかなぁ。
他に選択肢あるの?Webアプリを作れるネイティブコンパイラ言語?
0600名称未設定
2016/08/22(月) 15:51:11.47ID:1X0uo5Qh00601名称未設定
2016/08/22(月) 15:55:58.49ID:tDx6576n0どれも微妙だからnodejsで後数年粘った方が良いわな
0602名称未設定
2016/08/22(月) 16:13:04.69ID:CT5Dd6GO0C10K = クライアント1万台接続問題
Node.jsってJavaScriptなんだろぉ!
そんなに、高速実行できるのは、なんでだぁ?
0603名称未設定
2016/08/22(月) 16:17:22.90ID:ugrwrPlX0Goはジェネリクスがないからbetter cという書き心地
正直メタプログラミング系は得意じゃないから抽象化を進めてできるだけDRYな実装というのがやりづらい。
だからswiftはいい選択肢になる可能性はあるのかもしれないけど
いかんせん言語仕様の変化がきつい。趣味にはいいけど実際に運用として使ってる人はいるのかな。
0604名称未設定
2016/08/22(月) 16:21:32.59ID:ugrwrPlX0すべてのAPIを基本非同期実行にして一つのスレッドで複数のリクエストを並行処理できるようにしてるから。
非同期実行のデメリットとしてコールバックヘルに陥ることだけど
PromiseとかGeneratorとかasync-awaitとか技術革新で改善しつつある。
0605名称未設定
2016/08/22(月) 19:51:06.09ID:ne6mD+/10言語がネイティブかインタプリタかってさほど問題ではないわな
0606名称未設定
2016/08/22(月) 20:04:08.31ID:tDx6576n0冗談はさておき、実際ホビーユースなら言語/ランタイムは誤差よな
その上で、iOSと同じ言語でサーバサイドも実装できるのはメリットかねぇ
0607名称未設定
2016/08/22(月) 21:52:37.14ID:ugrwrPlX0そのうちandroidもswiftでってなったら
サーバサイドとクライアントで、コード共有するメリットが出てくる
うーん。無いかな
0608名称未設定
2016/08/23(火) 10:43:43.05ID:as+tK6zP0言語仕様は、俺にはSwift2で落ち着いてる様に見える。Swift3での修正は大騒ぎするほどでは無い。
StringとNSString、ArrayとNSArrayをシームレスに使えるってのは、ただ単に便利になるだけの話。
実際に運用として使ってる人ってのは、聞いた事無いなぁ。
居ても、判んないしねぇ。
たとえば、GithubがRails製だとかって、最近流布される様になった情報だし。Swift製のWebアプリがあっても、それがサービスとして軌道に乗った後に明かされるんだろうねぇ。
Railsだって安定しているか?って言われれば、2->3->4と相当修正が入ってるし。
Prototype.jsの採用->jQuery.jsの採用とかね。
0609名称未設定
2016/08/23(火) 13:17:29.55ID:/10l3MhQ0swiftはここ数年の新興言語
仕変のスパンが段違いだけどな
Swiftの仕様変更は大騒ぎするものじゃなく、大笑いするもの
Swift 4へのロードマップとか、4ですら見送られる言語仕様とかマジウケル
0611名称未設定
2016/08/25(木) 02:29:34.69ID:tn6dhRl100612名称未設定
2016/08/25(木) 13:59:47.93ID:xFcs1nxV0Int, String, ArrayなどがNSInteger, NSString, NSArrayと統合されるらしいんですが、その通りでしょうか?
統合されるとすれば、Int, String, Arrayなどは構造体からクラスへ変更されるのでしょうか?
関数やメソッドへは値渡しから参照渡しへ変更されるのでしょうか?
教えて下さい、エロい人。
0613名称未設定
2016/08/25(木) 14:17:56.32ID:u1NsYMCd0失礼な!
0614名称未設定
2016/08/25(木) 15:40:20.79ID:xFcs1nxV0Swift3.0では
FoundationにあるNSDataに対応する、Dataって型が導入されるらしいっす。
同様にNSURLに対しURL、NSNotificationに対しNotificationとか。
って事は、StringがNSStringと統合されるのではなく、逆に分化している現状が、さらに推し進められる、って事なんすかねぇ?
0615名称未設定
2016/08/26(金) 15:58:00.54ID:mGs1m8pj0DerivedData削除しても変わんね
ウザすぎてイライラする
0616名称未設定
2016/08/26(金) 17:12:30.82ID:R8M6+LrY00617名称未設定
2016/08/26(金) 19:05:01.75ID:0la7QmYo00618名称未設定
2016/08/26(金) 19:14:58.24ID:ZdyDEpIb00619名称未設定
2016/08/26(金) 20:41:08.85ID:GWIGY8fR0see man swift
0620名称未設定
2016/08/26(金) 20:46:02.55ID:GWIGY8fR0.section __TEXT,__text,regular,pure_instructions
.macosx_version_min 10, 9
.globl _main
.align 4, 0x90
_main:
.cfi_startproc
pushq %rbp
Ltmp0:
.cfi_def_cfa_offset 16
Ltmp1:
.cfi_offset %rbp, -16
以下略
0621名称未設定
2016/08/30(火) 01:26:30.92ID:LfSeQI3s00622名称未設定
2016/08/30(火) 04:08:50.85ID:Rk6Fzd440ビルド終わる頃には禿げ上がってる
0623名称未設定
2016/08/30(火) 08:38:18.75ID:ykcQjqTj00624名称未設定
2016/08/30(火) 09:14:41.88ID:frqsOwa400625名称未設定
2016/08/30(火) 09:33:07.36ID:vbk7Ijpe00626名称未設定
2016/08/30(火) 09:50:58.75ID:3Y7oYo6W0そんな事は無いなぁ。
Xcode7.3.1の場合。
Xcode6で落ちる事あったなぁ。あと、Docsetsを認識してくれなかったり。
どのバージョンのXcode使ってるの?
0627名称未設定
2016/08/30(火) 10:44:37.62ID:lqinzWJL0コード補完は非常に遅い。ObjectiveCではコード補完にかなり頼ってたので、
Swiftにすると、補完候補が出るまで待たされる。知ってるコードなら自分でタイプしたほうが速いわ。
LLDBで命令を書くと(po objectとか)、
ObjectiveCだと一瞬で答えが出るのに、Swiftだと何秒か待たされる。
時々SourceKitServiceが落ちることがある。
以前のXcodeでは、extensionの中に日本語を書くとXcodeごと落ちたりした。
最近はXcodeごと落ちるのはあまりない(たまにある)
Xcode自体重いから、ObjectiveCのみであってもSSDに変えると体感速度は非常に速くなる。
0628名称未設定
2016/08/30(火) 11:06:40.96ID:3Y7oYo6W0SourceKitServiceが落ちる事あるのね。
昔、XcodeでSyntax Highlightが効かずに、エディタがモノトーンになるトラブルで
悩んだけど、きっとSourceKitServiceが落ちてたのね。
0629名称未設定
2016/08/30(火) 16:58:10.93ID:LfSeQI3s00630名称未設定
2016/08/30(火) 17:02:38.18ID:+Cv1eQlc00631名称未設定
2016/08/31(水) 10:57:47.95ID:jzNJSw930バナー広告を張るとファンが上位アプリにお持ち帰りされる。張るべきでない
アフィリエイトは詐欺だ。そう思ったほうが巻き込まれずに済む。
広告を貼っても客が増えるはずなかった。お持ち帰りされているから増えるはずない
100万人 × 1円(広告相場) = 100万円
1万人 × 100円 = 100万円
ファンから100円以上課金してもらうことを考える。
常時10万人なんて集められるはずがない。バケツに穴が開いているのだから増えるはずない
アフィリエイとは詐欺だ。穴の開いたバケツで砂金を集めるようなことをさせられている
今もはてぶでアフィリエイトで儲かっている釣り記事見たけどあんなの
うそだ。見ると洗脳されるから見ない。はてぶはステマ記事ばかりでやばいね
嘘のアフィリエイトとの記事ばかり、あそこを見ると洗脳される見ない
0632名称未設定
2016/08/31(水) 11:26:51.38ID:d0rUlgwy0swiftで書きなおしたりとかしてるんかね
0633名称未設定
2016/09/08(木) 09:06:52.43ID:po6KL+PV0ふたたび大量の文法変更があるんだけど(;´Д`)
もう大幅な文法変更ないだろうと思って、ひとつ前のベータはダウンロードしてなかったよ
0634名称未設定
2016/09/26(月) 16:21:46.47ID:AtZdricp0}
とは書けるけど
extension Array where Element : String {
}
だと怒られるんだけど、無理なんですかね?
where以降の文法がよく分かんね。
0635名称未設定
2016/09/26(月) 16:37:17.47ID:ibtYxwIa0コロン:の後にはprotocol名が来ないといけないんじゃぁ?
AnyObjectプロトコル制約のあるElementはOKだけど、
Stringプロトコルってのはあるのか?
どんなコンパイルエラーが出るんだぁ?
0636名称未設定
2016/09/26(月) 16:45:26.81ID:ibtYxwIa00637名称未設定
2016/09/26(月) 16:53:52.81ID:ibtYxwIa0protocol OnlyStrings {}
extension String: OnlyStrings{}
extension Array where Element : OnlyStrings {
}
こうすりゃ、ええんちゃう?
0638名称未設定
2016/09/26(月) 16:59:03.19ID:ibtYxwIa0}
これがすっきりかも!
0639名称未設定
2016/09/26(月) 21:29:46.72ID:xrE0Nptb0Int型まとめて全部!
が定義できなくて困ったよ
0640名称未設定
2016/09/26(月) 21:40:44.72ID:gFcVKvzu0extension Array where T : IntegerArithmeticType
0641634
2016/09/27(火) 00:19:42.66ID:r2QSlGML0ありがとうございます。
ちなみに、Swift LibraryのInterface見てると
extension SequenceType where Generator.Element == String {
}
なんてのがありました。しかし、
extension Array where Generator.Element == String {
}
はダメ。なんかコンパイラの気まぐれな気もしなくもないような…
0642名称未設定
2016/09/27(火) 09:20:34.30ID:GKKp+QyD0associatedtype T
}
struct S<U> : P {
typealias T = U
}
extension P where T : CustomStringConvertible { } // おk
extension P where T == String { } // おk
extension S where U : CustomStringConvertible { } // おk
extension S where U == String { } //error: same-type requirement makes generic parameter 'U' non-generic
ジェネリクスのextensionは3.0でやりたいって話もあったけど
間に合わんから結局4.0以降に持ち越しになったんじゃなかったっけ
0643名称未設定
2016/09/27(火) 11:49:34.42ID:OqxXEd8G0https://swiftlang.ng.bluemix.net/
ideoneみたいに簡単に貼れないのが惜しい
0645名称未設定
2016/09/28(水) 22:31:41.85ID:VapBiOyQ00646名称未設定
2016/09/28(水) 22:37:52.56ID:YioqmNHH0おすすめ
http://swiftdoc.org/v3.0/protocol/Equatable/hierarchy/
http://swiftdoc.org/v3.0/type/Int/hierarchy/
0647名称未設定
2016/09/28(水) 23:41:09.87ID:o6ijh8O50Appleのリファレンスよりええやんけ
0648名称未設定
2016/09/29(木) 10:38:21.85ID:Iu6ZWrOZ0Appleのリファレンスにある、Adopted Byが無い。
Appleのリファレンスには、SignedIntergerType準拠クラスがInt16, Int32…だと書いてあるが、swiftdocには書いてないんだよねぇ。
0649名称未設定
2016/09/29(木) 10:41:03.83ID:Iu6ZWrOZ0IntegerTypeを引いたらAdopted Byの欄がNot Applicableって出るけど、
そんなわけ無いはずなんだけど。
おまけに、IntegerTypeにはほとんど記述がなくて、意味不明。
0651名称未設定
2016/09/29(木) 12:02:11.60ID:xFj4h8Ks00652名称未設定
2016/09/29(木) 12:08:41.48ID:iADEmXSg0グラフ見ればいいんでない?
http://swiftdoc.org/v2.2/protocol/SignedIntegerType/hierarchy/
>>650
XcodeでIntって書いてIntの文字を⌘+クリックするとIntの定義にジャンプする
Opt+クリックで簡易ドキュメント、Opt+ダブルクリックでドキュメントに飛ぶ
0654名称未設定
2016/09/30(金) 09:10:00.67ID:sxr1wgF00let number: String
let street: String
let unit: String?
init(_ number: String, _ street: String, unit: String? = nil) {
self.number = number
self.street = street
self.unit = unit
}
}
extension StreetAddress: Equatable {
static func == (lhs: StreetAddress, rhs: StreetAddress) -> Bool {
return
lhs.number == rhs.number &&
lhs.street == rhs.street &&
lhs.unit == rhs.unit
}
}
// Apple Inc. Swift Standard Library > Equatable
プロトコルEquatableを試しに使ってみました。Appleのサイトにあるコードが
error: operators are only allowed at global scope
static func == (lhs: StreetAddress, rhs: StreetAddress) -> Bool
とコンパイルエラーを吐きます。
0655名称未設定
2016/09/30(金) 09:10:15.56ID:sxr1wgF00コンパイルできます。
func == (lhs: StreetAddress, rhs: StreetAddress) -> Bool {
return
lhs.number == rhs.number &&
lhs.street == rhs.street &&
lhs.unit == rhs.unit
}
swiftの仕様が変わったのでしょうか?
0656名称未設定
2016/09/30(金) 09:15:43.27ID:vJpeVs8F0Swift 2.xまではグローバル関数で書く
Swift 3.0からはクラスのstatic関数で書く
0657名称未設定
2016/09/30(金) 10:21:48.34ID:sxr1wgF00THX
まだ、Swift2.2なんすよぉ。
Swift3の破壊的変更ってのに、恐れをなして、まだXcode7.3使ってます。
0658名称未設定
2016/09/30(金) 12:31:54.44ID:djL2RsPl00659名称未設定
2016/10/01(土) 00:58:50.40ID:4rcAOWW500660名称未設定
2016/10/01(土) 08:49:27.90ID:OpyQhN080ビルド設定でレガシーSwiftのところyesにしたら2.3でビルドされる
ただしPlaygroundは3.0しか使えない
てかXcode.appを別名にリネームすれば複数バージョンのXcodeが共存できる
0661名称未設定
2016/10/01(土) 09:11:22.47ID:RlXOGqb90Xcode.appリネームで対応してるが、面倒だ。
Terminal.Appでswift2.2使いたいんだけどなぁ。
Xcode8に2.3, 3.0環境、両方搭載の影響かな?
0662名称未設定
2016/10/01(土) 09:56:32.10ID:OpyQhN0800663名称未設定
2016/10/01(土) 10:11:57.77ID:OpyQhN080$ export TOOLCHAINS=com.apple.dt.toolchain.Swift_2_3
で切り替えられる
俺はXcode7はもう捨てたからSwift2.2のtoolchainどうなってるかは知らん
Xcode7からSwift 2.2の.xctoolchainだけひっこぬいて適当にリネームして/Library/Developer/Toolchainsに入れとけばXcode7消しても使えるかもしれんし無理かもしれん
てかなんで今さら2.3でなく2.2を使いたいんだ
0664名称未設定
2016/10/01(土) 12:34:05.29ID:RlXOGqb90>export TOOLCHAINS=com.apple.dt.toolchain.Swift_2_3
本当だ!
こんな事!どこに書いてあるんだぁ?
とにかく、ありがとう。
0665名称未設定
2016/10/01(土) 12:49:37.56ID:RlXOGqb902.2を使いたいというより、Xcode7.3を使いたかったんです。
Xcode8 +XVimへ移行しようとしたら、XVimが上手く動かず、
怖くなってXcode8見たくなくなったんですよ。
でも、Xcode8を見ない振りするのは、まずいっすよねぇ。
そこで、今、自宅で落ち着いてSwift2.2 -> 3.0へ移行しようとしてます。
おっと、
ViewController.swift:78:38: Type 'Any' has no subscript members
Converterが変換したコードがエラーを吐いたぁ!ふぅー。
0667名称未設定
2016/10/03(月) 10:05:10.57ID:dzKgtryT0レスあんがと!
ソフトウェア分野におけるツールチェーン(英: toolchain)は、製品(典型的には他のコンピュータ用のプログラム、またはシステムプログラム)を製作するのに使われるプログラム(ツール)の集合体である。
こんな言葉初めて知ったわぁ。
0668名称未設定
2016/10/03(月) 10:05:49.54ID:dzKgtryT00669名称未設定
2016/10/03(月) 17:52:34.32ID:nMKR0tbN0MacProだと劇的に早かったりするんだろうか
0670名称未設定
2016/10/03(月) 20:31:27.76ID:aMCfc3kR0すごいプロジェクトですね。
メモリ消費量はどの程度なんですか?コンパイル中の消費量。
0671名称未設定
2016/10/03(月) 20:32:45.62ID:v76v+8gn0ファイルなのか行数なのかサイズなのか
0672名称未設定
2016/10/03(月) 22:32:23.95ID:nMKR0tbN00673名称未設定
2016/10/03(月) 22:59:57.31ID:nMKR0tbN0ビルド中にアクティビティモニタ見てみたけど「メモリ」も「実メモリ」も最大でも200MBぐらい上がるだけだった
ただ、CPU負荷はかなり上がるしファンの回転はだいぶうるさくなる
0674名称未設定
2016/10/03(月) 23:08:08.41ID:nvbELr7d00675名称未設定
2016/10/04(火) 19:14:11.37ID:Oj6Jne0c0Learn to Code
は子供向けのパズルだからいいとして、
Brick Breaker
とか
Drawing Soundsとかは
起動したはいいけど、どんなコードを書いたらいいのかさっぱりわからない。
教えて偉い人。
0676名称未設定
2016/10/09(日) 12:03:18.29ID:jgIMPo4V0SR-1009:
Constrained extensions allow same-type constraints between generic parameters and concrete types.
extension Array where Element == Int { }
おほー
0677名称未設定
2016/10/09(日) 12:26:31.87ID:fLIwp8rK0swift3で変えたばかりじゃないのか
0678名称未設定
2016/10/09(日) 12:27:18.21ID:zbwqdWMc0SRってなんなんでしょうねぇ?
What does SR stand for?
SE = Swift Evolutionだったど。
0679名称未設定
2016/10/09(日) 12:30:56.33ID:DeIT2F2J00680名称未設定
2016/10/09(日) 12:33:20.87ID:zbwqdWMc0Swiftの変化に嫌気をさしてObj-C回帰が始まっているのか?
0681名称未設定
2016/10/09(日) 13:04:07.98ID:jgIMPo4V0https://bugs.swift.org/browse/SR-1009
Swift Radarちゃうん
0682名称未設定
2016/10/09(日) 13:20:00.67ID:zbwqdWMc0Swift (Bug) Reportかぁ
0683名称未設定
2016/10/10(月) 01:46:39.80ID:QGfdRKJe00684名称未設定
2016/10/10(月) 14:00:27.25ID:UjJ88Ftb00685名称未設定
2016/10/13(木) 16:41:12.53ID:09GM7ulB00686名称未設定
2016/10/14(金) 00:53:30.28ID:rMAPosU400687名称未設定
2016/10/14(金) 00:56:24.54ID:kdfWCyOD0早めに頼むよ荻原くん
0688名称未設定
2016/10/14(金) 01:05:50.57ID:rMAPosU40お疲れ様でした
0689名称未設定
2016/10/14(金) 06:58:12.09ID:DXbI5Qmo00690名称未設定
2016/10/14(金) 08:35:00.09ID:l5eei6bi0荻原氏のSwift2本は、2月に出ているから、Swift3本もその頃だろうな。
荻原氏も年を取るから、もっと遅いかも。
Swift3.1, Swift4は、変化が少なそうなので、そろそろ、荻原本を買おうと思う。
0691名称未設定
2016/10/14(金) 09:17:30.49ID:SuiZIUWQ0クソだなラットナー
0692名称未設定
2016/10/14(金) 09:35:32.10ID:l5eei6bi0Swift3を一から習得するのと、Swift2を知っていて、Swift3との差分だけを吸収してSwift3を習得するのとでは、後者の方が楽なはず。
あんたの持ってるSwift2本も役に立ったんじゃない?
0693名称未設定
2016/10/15(土) 03:54:37.55ID:UXF0ih4D0phpみたいに雑な管理されると逃げ場も無いし超困るんだけど。
0694名称未設定
2016/10/15(土) 08:40:47.46ID:JivFYyAH0オブシーの方が勉強してて面白い
Swiftなんていらん!
学生もシーを勉強してるから、オブシーの方がとっつきやすい
0695名称未設定
2016/10/15(土) 10:42:15.74ID:nf/X3RMg00698名称未設定
2016/10/15(土) 16:11:01.96ID:8RwQ0ojO0なるほどぉ。
そういう可能性もあるね。
0699名称未設定
2016/10/16(日) 03:05:27.08ID:GRJdoj3K00700名称未設定
2016/11/06(日) 09:52:58.17ID:p3yo2z8h0これ覚えたら仕事あるの?
0701名称未設定
2016/11/06(日) 10:04:24.23ID:+elrrtv90正直趣味以外の仕事で使うのはオススメしない
0702名称未設定
2016/11/06(日) 10:27:34.51ID:qYphPCtp00703名称未設定
2016/11/06(日) 11:11:08.79ID:p7YnDzqq0安定する気なさそうだから仕事はなさそう、ただ遊びには良い
0704名称未設定
2016/11/06(日) 12:01:17.88ID:OTEe7Bb000705名称未設定
2016/11/06(日) 12:21:57.62ID:FEVrYFxn0Swift3で安定感出て来た、感じがするんだけど。
C言語の言語仕様から決別したし、
Obj-Cのセレクタの冗長さからも、逃れつつあるし。
これから、ABI(application binary interface)の安定化を目指すらしいけど、
これはコンパイル技術の話で、言語仕様の話ではないから、Swift3が決定版じゃないかなぁ?
今、Swift3.0.1だから、来年春のSwift3.1が本当の決定版で、
2017年夏WWDC2017で発表のSwift4 betaでは言語的には変化なしじゃないか?
0706名称未設定
2016/11/06(日) 12:25:20.40ID:FEVrYFxn0Developerが増えている。
Web Application Frameworkの決定版が出れば、それがKiller Applicaton
になってグッと更にDeveloperが増えるとおもう。
Linuxでも動くようになってきたし。
0707名称未設定
2016/11/06(日) 12:41:15.42ID:qYphPCtp0メジャーバージョンアップがあるということは大きな機能が追加されるか
大きな変更があるということだよ。
0709名称未設定
2016/11/08(火) 14:49:06.51ID:Tu0w9Vw000710名称未設定
2016/11/08(火) 15:38:46.45ID:YTBSvSuW0プロッピ-1枚だって
これソースコードないかな?
0711名称未設定
2016/11/08(火) 16:18:34.98ID:+2BbIpCT0Nosyなどのツールがあれば解析は可能だろう。
0712名称未設定
2016/11/08(火) 16:23:06.00ID:lopt8Lr400713名称未設定
2016/11/08(火) 16:27:14.28ID:VO0zyxOV00714名称未設定
2016/11/08(火) 17:14:30.08ID:+2BbIpCT00715名称未設定
2016/11/08(火) 17:41:42.96ID:vaKiDJ5z0http://www.techhive.com/article/201463/macpaint_quickdraw_source_code_woot.html
0716名称未設定
2016/11/08(火) 18:32:56.99ID:U8n61Tp+00717名称未設定
2016/11/09(水) 07:01:56.83ID:EvcQFJV/0うおお、伝説のQuickDrawがソース公開されてるのか!!
天才ビル・アトキンソンがゼロックスのAltoを見て
あいつらすげえもん作るなって勘違いして
ソフトウェアだけでグラフィックライブラリー作っちゃったとかいう
Alto自体のグラフィックはバリバリハードウェアアシストされてたってさ
世紀の勘違い伝説
0718名称未設定
2016/11/09(水) 11:25:48.31ID:yjtfvuVh0面白い話だな。
そんな、勘違いを乗り越えてQuickDrawが出来たのね。
0719名称未設定
2016/11/09(水) 12:09:46.89ID:+DGuW+Pl0Alto が、後年の Amiga 等と同様に、ハードウェアでウィンドウ合成を行うことのできるビットマップディスプレイシステムを備えていたのは確かだけれども、
ジョブズ来訪の1979年時点でデモや研究に使われていた Smalltalk-80 はそれを使用せず完全に自力でグラフィック処理を行うように書かれていたから。
推測だけどもちょっと前のバージョンの Smalltalk や LOGO の頃は多分このハードウェア支援ウィンドウシステムを使ってたんだと思う。使わない物は作らないだろうから。
0720名称未設定
2016/11/09(水) 15:28:29.68ID:lfLDzNMp0> ハードウェアでウィンドウ合成を行うことのできるビットマップディスプレイシステムを備えていた
不定形クリッピング処理のことを言っているなら、前に調べたけどAltoにはそんな機能は無かったよ
http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/alto/Alto_Hardware_Manual_Aug76.pdf
当時の動画で確認すると、他の処理に比べて矩形の再描画処理が比較的高速に行なわれていたため
おそらく隠れた部分を再描画している(つまり不定形クリッピング)処理に見えたという勘違いしたというのがおそらくは事の真相
https://www.youtube.com/watch?v=aqW6Sp279Z0&t=20m10s (20分10秒付近のウインドウ切り替え操作など参考まで)
なお、Altoのこの矩形描画処理については、関連する処理がBitBltというひとつの関数に集約されていて
それをマイクロコード化してAlto等では1命令で呼び出せるようになっていた(BitBlt自体も優秀だったけどこちらも無視できない)
このことを記述者がハードウエア支援だと誤解・誇張して書いている歴史的文書が目立つように思う
そんなわけで、QuickDrawの不定形処理にはAlto関係者も「え?Altoにはそんな機能無かったよ?」って驚いたのは本当の話
> 1979年時点でデモや研究に使われていた Smalltalk-80
細かいことだけど、1979年時点の Smalltalk は Smaltalk-80 の前身の Smalltalk-76
Smalltalk-80 と違って、メタクラスや無名関数がまだ無いのが特徴。if-then-else があったり、文法もちょっと違う
http://worrydream.com/refs/Ingalls%20-%20The%20Smalltalk-76%20Programming%20System.pdf
> ハードウェア支援ウィンドウシステムを使ってたんだと思う
ハードウエア支援なんてものはなかったので、これは間違いだけど、
BitBltルーチンの話なら、これはもともともSmalltalk専用の描画ルーチンだったのだけれども
上述のようにAltoのCPU(のようなもの)に組み込み(のようなもの)になったので
他のGUIシステムで使われるようになったという経緯はあっている
0721名称未設定
2016/11/09(水) 15:51:21.46ID:f54QhrbB0なんでこのスレでやってるのか知らんけども
0722名称未設定
2016/11/09(水) 22:12:19.87ID:EvcQFJV/0>それをマイクロコード化してAlto等では1命令で呼び出せるようになっていた(BitBlt自体も優秀だったけどこちらも無視できない)
>このことを記述者がハードウエア支援だと誤解・誇張して書いている歴史的文書が目立つように思う
ここで言うマイクロコードが、ワイヤードロジックCPUに対するマイクロコードCPUのマイクロコードであるなら
それはもうハードウェア描画だと言っていいと思う
CPUそのものを改造して描画専用命令を作ったわけだから
なんでこんなところで話しているのか意味不明ではあるが
0723名称未設定
2016/11/10(木) 01:25:11.37ID:yhi8pj+500724名称未設定
2016/11/10(木) 09:41:46.39ID:FVyHPyGe0描画ルーチンをワイヤードロジックで実現するならともかく
マイクロプログラムで書いたところでロジックが変わって劇的に速くなるってわけでもなし
それを(「(比較的)高速であった」という文脈で)ハードウエア描画だという理屈はおかしいだろ
なんでこんなところで話しているのか意味不明ではあるが
0725名称未設定
2016/11/10(木) 10:10:46.24ID:2yZPfKzf00726名称未設定
2016/11/10(木) 10:19:33.82ID:2yZPfKzf0iphine7にはFPGAチップが乗ってるらしい。
これ使ってどんなことできるんだろうか
0727名称未設定
2016/11/10(木) 10:36:18.15ID:vj2M/BfG00728名称未設定
2016/11/11(金) 19:17:29.75ID:43ivgS7c0Altoのハードウェアは、ビットスライスプロセッサ(CPUを作る部品のようなチップ)を使って実現してた。
実行時間を5つの単位に分割して、その単位を繰り返す形で実行サイクルが続く。
5つの分割時間のそれぞれで、何の処理を実行するのかは、サイクル毎に違っている。
アプリの実行だけでなく、イーサネットの処理、狭い意味でのOS処理など、
分割した時間ごとに別々な処理を動かしていた。
ゼロックスの中の人に詳しく説明してもらったけど、詳しい話の多くは忘れたよ。
0729名称未設定
2016/11/16(水) 07:24:38.72ID:MHFxBRjR0可愛らしい女の子がAltoと書かれたTシャツを着ているのを不思議に思ったのを覚えている
後に有名なコンピュータの名前だと知ったのだが
0730名称未設定
2016/11/18(金) 10:23:12.79ID:OyjojGFQ0http://iup.2ch-library.com/i/i1741362-1479432068.png
0732名称未設定
2016/11/18(金) 21:56:02.29ID:q5hTZVf20そうそうこれ
これを見た頃は車のaltoしか知らなかった
今見るとちゃんとAlto the personal computerって書いてあるね
Personal ComputerもDynabookもアラン・ケイの論文に出てくる理想のコンピュータの名前で
Altoは暫定版Dynabookを目指して作られたという話は
コンピュータのaltoを知ったそのまた何年も後のこと
このイラスト上の方に書いてあるのはコンピュータの名前らしいが
Lisaくらいしかわからないや
0733名称未設定
2016/11/19(土) 04:24:15.68ID:5SUsFQtj00734名称未設定
2016/11/19(土) 07:39:37.37ID:Dm6vw6Us00735名称未設定
2016/11/20(日) 12:45:05.17ID:aL6C4GPa0需要ないなら次スレ不要じゃない?
0736名称未設定
2016/11/21(月) 09:45:49.49ID:o3X/FDlw0しばらく来なくて済んだなら、スレがあってもなくても君には関係なくない?
0737名称未設定
2016/11/27(日) 19:58:49.36ID:ygjN09Fr0詳解Swift 第3版
https://www.amazon.co.jp/dp/4797390530/
0738名称未設定
2016/11/27(日) 20:31:52.13ID:4CjFzrLg0あぁ、これね。
どうしよう。
買おうかなぁ?
俺は、イランかも。
0739名称未設定
2016/11/27(日) 21:22:19.84ID:Z42c1Y900いまは、必要な情報はNETで入手できるからな
SWIFTのバージョンが上がって半年もたってからだしてもね
すぐ出てれば買うかもしれないけどね
0740名称未設定
2016/11/28(月) 03:29:42.83ID:id6j5g+F0つーかiBooksで出してくれや
0741名称未設定
2016/11/28(月) 08:33:33.04ID:wTUDz4+y0クリスマス間に合ってねえ
0743名称未設定
2016/11/30(水) 09:06:14.52ID:sTqa3T040著者は採算度外視の売名で書いてるんだろうけど、付き合わされる出版社は何を考えてるんだか
0744名称未設定
2016/11/30(水) 09:35:47.39ID:IGXODeCf0それ誰?
俺、本よく読むけど
0745名称未設定
2016/11/30(水) 10:24:03.59ID:sTqa3T040そうか、最近の意識高い系は本を読むのか
俺も流行りに乗って本を読まねばならんな
0746名称未設定
2016/11/30(水) 10:34:59.52ID:kR/ebQxz00747名称未設定
2016/11/30(水) 11:13:11.45ID:bvn2UALs0お前も分かってないのかもしらんが
0748名称未設定
2016/11/30(水) 12:48:20.96ID:kR/ebQxz0意識高い系に心奪われてる彼は「俺は意識高い系だけど〜」と読解したのか…
シャドーボクサーはいつも敵がつきまとってきてて大変だな。覚醒剤は止めろよ?)
0749名称未設定
2016/12/01(木) 19:33:55.99ID:D8VwwhJ300751名称未設定
2016/12/06(火) 10:22:29.42ID:N7jfWrrJ00752名称未設定
2016/12/07(水) 15:48:08.83ID:jirV3wzK0そもそも、文字列を扱う構造体とクラスが共存しているのは何故なのでしょう?
0753名称未設定
2016/12/07(水) 21:47:13.55ID:+uR6aTFH0StringはSwiftの標準ライブラリで
NSStringはOSのライブラリというかAPIだから
0754名称未設定
2016/12/08(木) 08:47:43.85ID:sM0yDOoz0なるほどぉ。
標準ライブラリとしてStringを用意しておかないと、SwiftをOSSにする際に、
FoundationまでOSSにしないといけなくなるので、別途標準ライブラリを
用意したって事ですね。
でも何故、Stringは構造体で、NSStringはクラスなんでしょう?
そもそもSwiftの構造体が値型(即値)であって参照値でないのは何故でしょう?
値型と参照値の違いは次の通りだと理解してます。
Pros
値型:アクセスコスト低い
参照型:代入コスト低い
Cons
参照型:循環参照問題を引き起こす
値型:メモリイータ
0755名称未設定
2016/12/08(木) 10:34:43.82ID:GPX+bx070Cocoaフレームワークの前身であるCarbonが、C/C++のインターフェース持ってるし
Obj-Cはそもそも構造体を持ってないしね C言語の構造体は使えるけど
参照型の場合、同一の文字列を複数の変数で保持する場合に、どちらかで意図せず変更
してしまうケースがあるから、Obj-Cの場合は、使用目的に応じて、不変文字列(NSString)と
可変文字列(NSMutableString)とで使い分けるようになってるけど、Swiftの場合は
設計上、不変文字列しか用意してないから、最初から値型の方が効率的なんじゃないかなぁ
Copy on writeの仕組みによって、代入コストも抑えてあるし
知らんけど
0756名称未設定
2016/12/08(木) 10:54:47.81ID:sM0yDOoz0iPod touch 4thは256MBしかメモリ積んでませんでした。
今やiPhone7は2GBメモリ積んでます。
Stringはメモリを食うけど、それを許容できるハード環境が整ったということなのかな?
例:
let strA = “OK”
let strB = strA
strA, strBには各々別々のオブジェクトが割り当てられ代入時にコピーされる。
従って、オブジェクト2個分のメモリが消費されるが、昨今のハードは
大容量メモリ搭載だから、昔よりケチケチする必要が無くなっている。
0757名称未設定
2016/12/08(木) 11:17:09.93ID:GPX+bx070一般的なプログラムで使う文字列のメモリ消費量なんてたかがしれてる
画像処理と比べたら大したことない
その例の場合だと、実際は代入時にコピーはされず、strBにはstrAが差してるものと同じ参照が保持されてるはず
デバッガでstrAとstrBのアドレスを表示させてみるとわかる
だからSwiftでも文字列の代入コストが問題になることはほとんどない
0758名称未設定
2016/12/08(木) 11:59:23.62ID:sM0yDOoz0アドレスが欲しくてunsafeなんちゃらって関数を使おうとしたら、
swift3で仕様が変わってんだよねぇ。
0759名称未設定
2016/12/08(木) 12:16:05.44ID:HQoJbsrX0>標準ライブラリとしてStringを用意しておかないと、SwiftをOSSにする際に、
>FoundationまでOSSにしないといけなくなるので、別途標準ライブラリを
>用意したって事ですね。
半分正解ってとこかな?
みんなが使う機能のうち実行環境の影響を受けない部分が言語側の標準ライブラリ化される
って感じ
OSS化は直接は関係ないと思う
ファイルアクセとか、スレッド制御とかは通常環境依存だから、OS側の機能として提供される
(言語に盛り込んでくれと思うけどまだ難しいようだ)
NSStringに限ればOS側のAPIがまだNSStringしか受け付けないものがあるので残っている
Visual C++とか使ってると、文字列地獄を味わえるよ!
いったい何種類文字列があるんだ?!
0760名称未設定
2016/12/08(木) 12:35:38.30ID:HQoJbsrX0>でも何故、Stringは構造体で、NSStringはクラスなんでしょう?
流行り、、、、かな?
NextStepが設計されたのは80年代後半
GUIの普及期で、オブジェクト志向プログラミングの黎明期あたり
Objective-Cはその頃流行りのクラスベースオブジェクト志向とメッセージパッシングを中心とした
プログラミングを実現するために設計された
GUIとオブジェクト志向の相性も良く
その頃は将来オブジェクトベースの分散処理になると考えられていて
クラスベースの考え方とは非常にマッチしていた
Swiftは10年代の設計
旧来のオブジェクト志向プログラミングの欠点が認識されて来ており
分散処理と言うよりはマルチコアCPU、GPGPUなどによるローカルな並列処理が主流になっている
そこでSwiftはプロトコルベースプログラミングを標榜している
これで親戚一同みんなの顔色を伺わないといけないオブジェクト志向の欠点からも解放されるし
並列処理にも対応しやすくなる
プロトコルベースプログラミングは構造体とプロトコルを組み合わせる事が
発想の根本なんだ
なのでNextStepとObjective-CをベースとしたiOS/macOSのAPIはクラスベースの考え方が中心で作られており(過去形)
Swiftの標準ライブラリは構造体+プロトコルの考え方で作ろうとしている(現在進行形)
0761名称未設定
2016/12/08(木) 12:40:52.83ID:sM0yDOoz0var b: String = a
let p = withUnsafePointer(&a) {
UnsafePointer<Int>($0)
}
let q = withUnsafePointer(&b) {
UnsafePointer<Int>($0)
}
print(p)
print(q)
Swift2.3で上記を実行したら、こんな感じだった。
0x000000010a915058
0x000000010a915070
a, bはアドレス違うわぁ。
上記コードをSwift3ではどう書くのか?だれか教えて下さい。
0762名称未設定
2016/12/08(木) 12:44:41.04ID:HQoJbsrX0>そもそもSwiftの構造体が値型(即値)であって参照値でないのは何故でしょう?
>値型と参照値の違いは次の通りだと理解してます。
>Pros
>Cons
えと、不正解ではないんですが、現代のアプリケーションプログラマなら、一旦忘れておきましょう
コピーと参照に関しては、CPUと、OSと、コンパイラが
全力でユーザー(今の場合はプログラマ)を騙しにくる所です
変数値を代入して、アドレスも違うぞ!って確認したつもりでも
実は物理メモリ上には1つしかデータないもんね
何てことが平気でありえます
ちなみにSwiftのStringは構造体だから値型、、、かと思いきや中身はNSStringへの参照だったりします
素直に騙されておきましょう
0763名称未設定
2016/12/08(木) 12:56:22.73ID:sM0yDOoz0char * text = "文字列";
とか
WCHAR * text = L"文字列";
TCHAR * text = _T("文字列");
ちょいとググっただけで、3種類出てきました。
この他にもCStringとかあるんですよねぇ、VC++。
0764名称未設定
2016/12/08(木) 13:20:24.48ID:sM0yDOoz0>ちなみにSwiftのStringは構造体だから値型、、、かと思いきや中身はNSStringへの参照だったりします
>素直に騙されておきましょう
うぅーん。どうなんでしょう?
String, NSStringどもども、Core Foundation(C言語の関数群)で実装されており、そもそも別のモノでは無いでしょうか?NSStringはutf-16が入ってるし、
An NSString object encodes a Unicode-compliant text string, represented as a sequence of UTF–16 code units.
Stringはutf-8が入っているし。
A Unicode string value.
NSStringにはCFStringへの参照が入っているというのなら、納得ですが!
NSString is “toll-free bridged” with its Core Foundation counterpart, CFString.
0765名称未設定
2016/12/08(木) 16:25:19.24ID:nbqAIty90そんな面倒くさいことしなくてもアドレスを表示したいなら
var a: String = "OK"
print(a._core._baseAddress!)
var b: String = a
print(b._core._baseAddress!)
ってやればいい。デバッガで止めれば、変数表示ビューでも確認できる
UnsafePointerは使った時点でCopy on Writeが働き、値がコピーされてる可能性がある
0766名称未設定
2016/12/08(木) 16:47:04.01ID:sM0yDOoz0確かに、見えますね。アドレスが。
Debug Areaの見方がよくわからなかったので、気がつきませんでした。
おまけに、Addressってところに、出てきた0x10fd155a9を放り込むと、
メモリダンプ画面がでてきて、しかもそれをASCIIコードも同時表示されて
OKって書いてありました。
どうやら見ているのは、Stackに積まれている変数を見てる感じです。
var c: NSString = NSString(string: a)
ってした変数cのアドレスが見えないのですが?
こいつはHeapに確保されるはずなのですが、アドレスはどうやってみる事ができるのでしょう?
0768名称未設定
2016/12/08(木) 17:04:12.34ID:sM0yDOoz0Show Raw Values
ってしたら。
けど、メモリダンプしてみたら、OKって書いてない?
utf16だからかな?
0769名称未設定
2016/12/08(木) 17:14:54.15ID:sM0yDOoz0print c
で出てくるヘキサの値は、なんなんでしょう?アドレスなのかな?
(NSString) $R0 = 0x0000600000241650
"OK"
こんな感じ!
0x0000600000241650番地に行っても、OKって文字は無いなぁ。
この値はOKって文字をutf-16表現した値では?
0770名称未設定
2016/12/08(木) 17:19:05.05ID:sM0yDOoz0var strC: NSString
は(NSString *)では無いってことですね。
0771名称未設定
2016/12/08(木) 17:28:21.26ID:nbqAIty900772名称未設定
2016/12/08(木) 18:26:57.99ID:HQoJbsrX0実行出来るスキルに乖離があるよ
もう少し落ち着いて勉強しよう
0773名称未設定
2016/12/08(木) 18:51:40.03ID:BtZYrXCD0copy on writeのはずがコピーしてることが気になるんだろ
> ID:sM0yDOoz0
レス追ってないからしらんけど、各変数のポインタはポインタのポインタであって実態はコピーされてない
と夢見て納得しておくと幸せなんじゃないかな
swiftcとかllvm-swiftとか、そっちを追わないと真実は分からなそう
Swift言語を扱っているくらいのこのスレじゃ分かる人居ないよ
0774名称未設定
2016/12/08(木) 19:54:56.43ID:mPgc/zOq0Copy on Write=最適化戦略の一種
こんなの初めてしった。
最近のコンパイラ技術ってどんな本読むと、概観できますでしょうねぇ?
0775名称未設定
2016/12/08(木) 19:55:44.86ID:mPgc/zOq00776名称未設定
2016/12/08(木) 20:23:25.69ID:dwwzPRWT0ヘネシー先生ブチ切れやぞ
0777名称未設定
2016/12/08(木) 20:48:33.05ID:mPgc/zOq0この時間は疲れがでるんだよ
0778名称未設定
2016/12/09(金) 08:16:38.94ID:XgunbCfx0的確なご指摘ありがとう
0779名称未設定
2016/12/09(金) 08:17:30.23ID:XgunbCfx0だよね。
swiftcのソースを見ないとね。
0780名称未設定
2016/12/09(金) 09:43:28.91ID:an7RQTgk00781名称未設定
2016/12/09(金) 15:39:22.27ID:XgunbCfx0のWorkspaceをGithubから持ってきて、付属のplaygroundを動かしてみた。
ActivitiyMonitorのCPUが天井に張り付いてXcodeの反応が鈍い。
なんて重いFrameworkなんだ。
0782名称未設定
2016/12/11(日) 14:59:33.76ID:a0hEDZpH0Swift3みたいに、frameworkの見直しをして欲しい。
冗長なメソッド名(selector)を洗練させれば、まだまだ人気出る様に
思うんだけどなぁ。
コンパイル速度早くて、Macbook Airでも使えるところがGoodなのに。
0783名称未設定
2016/12/11(日) 19:33:05.09ID:ypsbSHja0Lightweight Genericsとかnullable/nonnullが2.2とか4.0みたいなもんじゃないの
2.0って番号自体が完全にマーケティング意図でつけられた番号だからObjCに関しては番号気にするだけ無駄感ある
0784名称未設定
2016/12/11(日) 22:22:09.28ID:BxB5bDgD0そういえば最近触ってないからちゃんと新仕様理解してない
何か読んどこうかな
0785名称未設定
2016/12/12(月) 20:58:05.87ID:L498IohY0C++11の移植は両言語共に大体終わった気がする
0786名称未設定
2016/12/13(火) 10:20:34.34ID:HR3LjYf+0C++14, C++11の差分ってどっかに書いてないかなぁ?
0787名称未設定
2016/12/13(火) 13:23:14.86ID:mfsfcF7w00788名称未設定
2016/12/13(火) 15:26:11.31ID:HR3LjYf+0自作のSingle View Applicationに組み込んで動作確認するのに今日まで掛かってしまった。
ボタンを押したら、ラベルのテキストが変更されるってのを実装するだけで、今日は疲れた。
0789名称未設定
2016/12/13(火) 16:14:19.98ID:PymmWvYH00790名称未設定
2016/12/13(火) 16:17:55.26ID:ZtIjz3Tc00791名称未設定
2016/12/13(火) 17:53:44.35ID:x12PLY4f00792名称未設定
2016/12/13(火) 17:54:28.25ID:ZtIjz3Tc00793名称未設定
2016/12/13(火) 18:05:34.89ID:x12PLY4f00794名称未設定
2016/12/13(火) 20:11:24.72ID:Mprjau+G00795名称未設定
2016/12/13(火) 21:16:19.83ID:GYR7elRN00796名称未設定
2016/12/13(火) 21:21:02.35ID:L5lC+OCX0良い参考書はありませんか?
ただし、日本語に限る。
0797名称未設定
2016/12/13(火) 21:24:57.87ID:xkHCHXNt00798名称未設定
2016/12/13(火) 22:04:00.67ID:2qF2eqGs00799名称未設定
2016/12/13(火) 22:15:00.20ID:xkHCHXNt0クリスマスで気がついた
Rxの流れだったからNotification的なやつを想像してた
0801名称未設定
2016/12/13(火) 22:56:58.31ID:ET6NuSVm0やっぱりKVOで十分なんすかねぇ。
for文よりfor in loopやobj.forEachで使えるSequenceが便利な様に、
Reactive Extensionsって便利に思える様になるんじゃないのかなぁ。
俺は、Rxに振り回されてるけど。
0802名称未設定
2016/12/14(水) 08:23:53.63ID:uewcGPzk0Embedded Binariesってなんなんでしょう?
RxSwiftはLinked Framework and Librariesに加えるだけでは、コンパイルは
できても実行時にエラーを吐くんです。
Embedded Binariesに放り込むと動くんです。
アプリにBundleさせるFrameworkがEmbedded Binariesって事なんですが、
アプリ間で共通に使うFrameworkってのは作れないのでしょうかねぇ?
macOSで言うところの、/Library/Frameworksに放り込んで、アプリ間で
共通に使うって感じのヤツは、iOSではセキュリティ上、出来ないってこと
なんでしょうか?
0803名称未設定
2016/12/14(水) 12:18:55.18ID:JkmYGpOy0Embedはアプリのバンドルに入れる形になる
macOSの共有ライブラリはiOSでは出来ないよ
0804名称未設定
2016/12/14(水) 12:35:27.97ID:uewcGPzk0レスTHX
すっきりしました。
0805名称未設定
2016/12/15(木) 12:00:17.71ID:WMhiKIrR0Swiftの色んなEnumを定義してそのインスタンスを生成してprintで表示させてたら、
(function)
って表示されたので、ようやく、C言語のEnumとは全く違うと気が付いた。
0806名称未設定
2016/12/15(木) 13:08:41.77ID:myVkVgIt0EventKitの使い方を日本語で解説した資料を知りませんか?
0807名称未設定
2016/12/15(木) 13:34:46.02ID:WMhiKIrR0RxSwiftってframwworkをdownloadした。
重量級のframeworkだったので、ReactiveKit/Swift Bondてのに乗り換え
ようとしてるんだけど、この選択は正しいのだろうか?
0809名称未設定
2016/12/15(木) 16:57:24.79ID:sxdfFbOF0AppleがWWBCだか何かのプレゼンで動画作ってた気がするから探してみれば?
0810名称未設定
2016/12/15(木) 17:00:55.60ID:jRZTZzTY0Rxの良さは他言語でも同じ考え方でほぼ同じAPIでコードを書けることなんじゃない?
無理にSwiftからやらなくてもRxJSみたいに資料の多いやつで基本的なことを学んでから
Swfitのフレームワークを選択したら? 中身わからなければそれぞれの良し悪しも分からないよ
0811名称未設定
2016/12/15(木) 17:06:02.30ID:jRZTZzTY0http://reactivex.io/learnrx/ <― JavaScriptのFunctional ProgrammingのチュートリアルだけどRx理解するのにいいよ
0812名称未設定
2016/12/15(木) 20:33:11.38ID:WjaKtb5B0ぅーん、良さげだ。
thx
0813名称未設定
2016/12/17(土) 12:51:24.70ID:x/ZrsHl900814名称未設定
2016/12/17(土) 13:53:59.60ID:x/ZrsHl900815名称未設定
2016/12/17(土) 15:25:12.10ID:d5/MOR9o0JavaScript苦手なんだよねぇ。
FRP=Functional Reactive Programmingやりたくて、
今頃C#の解説ページを読み漁ってます。
C#のdelegateってSwiftのClosureを格納する変数の事だってようやく理解した。
0816名称未設定
2016/12/17(土) 15:39:58.22ID:SkPS5DG10あらゆるものをStreamとして扱うってことなんだけど
いざ実装してみると利用する関数の種類の多さとか
最初のStreamSourceを作るところの難しさとかで苦しむことになる。
宣言的実装って言っても結局コードはシーケンシャルな記述しか出来ないし
書いてみると一箇所に固まって汚いコードになりがち。
Rxを利用する上でのフレームワークがもう一段欲しい。
0817名称未設定
2016/12/17(土) 16:38:06.81ID:EVcYaZLe0うーんdelegateの理解からはじめなきゃいけない状態なら
JavaScriptのほうが余計な要素が少なくてReactive Programmingのコンセプトを把握しやすいと思うんだけど…
人それぞれかな
>C#のdelegateってSwiftのClosureを格納する変数の事だってようやく理解した
C#のdelegateは特定のシグニチャを持つメソッドを参照する型
C#ではメソッドをそのまま引数として渡したり戻したりはできないのでデリゲート型を使う(ラムダ式や匿名関数でも)
SwiftのFunction Types
0818名称未設定
2016/12/17(土) 16:55:23.28ID:EVcYaZLe0クロージャを関数として外に出してもすっきりしない?
外に出すとコードがバラけて嫌って人もいるだろうけど
nestしたblockに比べると読みやすいと思うんだけどね
0819名称未設定
2016/12/28(水) 17:19:38.92ID:GVJq3+HU0昨日発行されたので、本屋に見に行ったけど、無かった。
地方都市だからか?
0820名称未設定
2016/12/28(水) 17:21:27.37ID:IqaNKoP100821名称未設定
2016/12/28(水) 17:21:45.23ID:Mgzicx7Z00822名称未設定
2016/12/28(水) 19:12:25.12ID:GVJq3+HU0大きな仕様変更は、しばらく無いはず。
俺、一回も買ったことないので、詳解Swiftを買いたいのだ。
0823名称未設定
2016/12/28(水) 21:50:19.25ID:xDMv2HCO00824名称未設定
2016/12/28(水) 22:58:00.62ID:oTMUirTR0英語苦手だ。
toeic 740だし。
0825名称未設定
2016/12/28(水) 22:59:13.43ID:oTMUirTR0もちろん、Swift programming languageも読むよ。Swift Blogも。
けど、和文の方が、スピードが出るし。
0826名称未設定
2016/12/29(木) 00:14:18.42ID:iBF0wGt30詳解Objective-Cは無駄に分厚くて文章も読みにくくて時間の無駄だったけどな
Amazonの評価は異常に高いがあれはサクラ的なやつも混じってると思ってる
0827名称未設定
2016/12/29(木) 00:24:32.23ID:iBF0wGt30http://www.studiogalago.com/the-swift-programming-language/
0828名称未設定
2016/12/29(木) 00:25:28.33ID:OA2copiH0第2版持ってるけどSwift3版も買うつもり
Appleの公式ドキュメントは分かりやすいんだけど
英語の速読ができないからどこを読めばいいのか探し出すのがたいへん
0829名称未設定
2016/12/29(木) 00:31:06.02ID:twRd0p440言語の「詳解」本に「無駄に分厚くて時間の無駄」ってレビューしてみれば
だいたい君自身に対する世間の評価が出ると思うよ。
0830名称未設定
2016/12/29(木) 00:59:16.63ID:iBF0wGt30>>826
ははそうかもね
詳解とついてる本はこのシリーズ以外では読んだことないが
詳説正規表現みたいなのを期待するからいけないのかもね
暇があれば今度読んでみるわ
0831名称未設定
2016/12/29(木) 01:22:29.00ID:yT17B4nx00832名称未設定
2016/12/29(木) 01:30:47.66ID:fuGYJmU30詳説だからというエクスキューズはあるけど、かといってプロットがしっかりしてるわけでもなく場当たり的だったりするし
オライリーの翻訳本なんかの方がまだ読みやすい
アマゾンのレビューは、生徒や盲目的な信者による無条件の高評価が多いんだと思う
0833名称未設定
2016/12/29(木) 01:43:24.32ID:iBF0wGt30そんなムキにならなくてもいいって
俺が読んだのはObjective-C第2版だし
それから改善されてるかもしれないから今度読んでみるよ
0834名称未設定
2016/12/29(木) 01:55:20.89ID:twRd0p4400835名称未設定
2016/12/29(木) 04:05:52.72ID:CWXLcdSS0萩原本はほぼ前者で、英語スラスラ読めない俺にはありがたいね。
0836名称未設定
2016/12/29(木) 04:18:29.18ID:16VFOnSa00838名称未設定
2016/12/29(木) 18:19:14.70ID:OA2copiH0OSやフレームワークとかの周辺技術も含めてiOSアプリの作り方を知りたい人と
周辺は置いといてSwiftと言うプログラミング言語を知りたい人
がいると思うんだ
詳解Swiftは前者の人には向かない
0839名称未設定
2016/12/29(木) 18:24:02.83ID:IphSWs9000841名称未設定
2016/12/29(木) 20:20:28.34ID:IphSWs9000842名称未設定
2016/12/30(金) 02:01:30.28ID:1e3Hui/e00843名称未設定
2016/12/30(金) 02:04:04.52ID:eiAQE0ju0オブジェクティブCで作ったアプリを
SWIFT3に変換する方法を書いた本はない?
0844名称未設定
2016/12/30(金) 02:49:48.13ID:76dVPFLk0ttps://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/Migration.html
とはいえあんまり簡潔かな。
同じくweb情報だけどざっと読んだ感じ、これとか丁寧に書いてあってかなり参考になりそう。
ttp://codevoyagers.com/2016/03/23/how-we-migrated-our-objective-c-projects-to-swift-step-by-step/
あとは日本語だと Qiita にいくつか実際のプロジェクトを ObjC から Swift に移行した記録があった気がする。
本のことは知らん。
0845842
2016/12/30(金) 03:00:33.25ID:1e3Hui/e0さっそくありがとう。
公式だとiBooks Storeにある電子書籍はざっと読んだんだけど、結局Swiftで書き始めるとあちこち細かく躓いて手が止まっちゃうんだよね
通し読みはもちろんとして、そんな時に辞書的に開ける本があったらいいなあと
codevoyagers.com は知らなかったので、正月のタイミングでひと通り読んでみる
0846名称未設定
2016/12/30(金) 04:18:19.40ID:TirWfAzv0それ本にもなってるやつだよ
https://itunes.apple.com/us/book/using-swift-cocoa-objective/id888894773
公式2冊読むのが最短だと思う
言語仕様が変わっても一番最初にアップデートされるから追いかけやすい
0847名称未設定
2016/12/30(金) 12:31:30.29ID:4f4KMzzG0何かをやりたい時にどのフレーミワークやライブラリを使ったらいいのかのガイド資料が欲しい
何かいいものあったら紹介してもらえませんか?
画面描画とかやりたいと
UIKit使うのか?SpritKit使うのか?CoreAnimation使うのか?Metal使うのがいいのかの?
初心者なもので
どの部分にどの技術を使ったらいいのかのさっぱりわかりません
0848名称未設定
2016/12/30(金) 12:42:00.04ID:esuE1jQ30ああ……俺も便乗で知りたい(´・ω・`)
入門本で基礎的なことは分かったつもりなんだけど、いざやりたいときに
どのライブラリを使えばいいのか、どんなライブラリがあるのかが分からない(´・ω・`)
0849名称未設定
2016/12/30(金) 12:49:15.23ID:DxzeHVUe00850名称未設定
2016/12/30(金) 14:27:51.82ID:eiAQE0ju0イベントキットの使い方がわからない。
日本語で優しく説明してる資料はないですかね。
0851名称未設定
2016/12/30(金) 14:52:02.16ID:DIEY9/Qh0イベントキットまでたどり着いたなら、グーグルでswift、カレンダーで検索すればいくつかサンプルあるよ
古いのは、xcodeで変換かければいい
0852名称未設定
2016/12/30(金) 14:53:51.36ID:TirWfAzv0フレーミワークはiOS Technology Overviewを読むといいと思う
Appendixに一覧もあるよ
https://developer.apple.com/library/content/documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/MediaLayer/MediaLayer.html
0853名称未設定
2016/12/30(金) 15:06:08.10ID:9Th3YZPs00854名称未設定
2016/12/30(金) 15:19:30.20ID:4f4KMzzG0サンキュー
この資料はすでに読んでるんだけどこれだけだと理解できない
APIの階層関係とか、
どれとどれなら混ぜて使っていいのか悪いのかとか、
似たような機能が複数のフレームワークで提供されている時にどういう基準で選べばいいのかとか
こっちは古いAPIだから新規で作るならこっちを使う方がいいとか
そう言った基本的な所がまだ分かってないんだ
0855名称未設定
2016/12/30(金) 15:23:03.90ID:DIEY9/Qh00856名称未設定
2016/12/30(金) 15:23:57.97ID:TirWfAzv0コレ読めば?
http://developer.apple.com/jp/documentation/EventKitProgGuide.pdf
「XXX プログラミングガイド」で公式の日本語訳になってるやつがあれば見つかるよ
どうしても本がよければ古いけどこの辺
Matt Neuburgのやつは原著読んだけどいい本だと思うよ
https://www.amazon.co.jp/dp/4844329766/
https://www.amazon.co.jp/dp/4873116759/
0857名称未設定
2016/12/30(金) 15:26:00.08ID:9N/LBSLi00858名称未設定
2016/12/30(金) 15:31:27.60ID:4f4KMzzG0詳解iOS SDKって今でも買う価値のある本ですか?
気になりつつも古いなと思って手に取った事が無かったです
そして、紹介記事の「開運・魔除けの効果もある」にちょっと惹かれてしまった
0859名称未設定
2016/12/30(金) 15:32:58.90ID:4f4KMzzG00860名称未設定
2016/12/30(金) 15:57:12.44ID:eiAQE0ju0>>856
ありがとう。
そのアップルの資料はみたことあるけど、
アクセス方法がイマイチ理解できなくて。
0861名称未設定
2016/12/30(金) 18:14:42.94ID:dw2kUpw40とりあえずApple公式の日本語ドキュメントはこのあたり
初期(2008-2012あたり)はよく更新されてたけれど
文章の更新が追いつかなかったりするので
「最新は英語の方みてね」になってる
https://developer.apple.com/jp/documentation/
0862名称未設定
2016/12/30(金) 20:02:53.21ID:eiAQE0ju0アクセス方法と言ったのは、資料のことではなくて、
カレンダーなどのイベントデータにアクセスするプログラムの作成方法がよくわからないという意味です。
配列を作って読みだすのだけれど、
日本時間でしか扱えなかったり、
配列に不要なデータまで読み込むので
一〜二週間のデータを扱うだけでもやけに重くなったり。
0863名称未設定
2016/12/30(金) 20:50:43.84ID:Muvi9oGI00864名称未設定
2016/12/30(金) 21:55:42.56ID:TirWfAzv0とりあえずガイドに書いてる通りに一通りやってみたら?
こういうチュートリアルでもいいと思うけど
https://www.raywenderlich.com/64513/cookbook-making-calendar-reminder
イベントデータをフェッチするメソッドは3種類しかないんだしその中でやりくりするしかないと思うよ
重いとか異なるTimezoneで扱いたいとかそういうのはガイドに書いてる基本を把握した上で
一つ一つ調べていけばいいんでないの?
例えばeventsMatchingPredicateやenumerateEventsMatchingPredicateは
メインスレッドで実行するなって書いてると思うけどそういうのちゃんと守ってる?
0865名称未設定
2016/12/30(金) 22:23:07.89ID:TirWfAzv0http://i.imgur.com/Io10bCJ.png
http://i.imgur.com/CbQOG1Z.png (第4版:日本語訳の元)
0866名称未設定
2016/12/30(金) 22:37:29.47ID:TirWfAzv0基本を押さえておきたくてObjective-Cを毛嫌いしてなくて
多少古くてもどうしても日本語じゃなきゃだめって人には十分買う価値があると思う
原著の最新版と目次を比較して立ち読みでもしてから決めれば?
0867名称未設定
2016/12/30(金) 22:42:12.45ID:eiAQE0ju0>メインスレッドで実行するなって書いてると思うけどそういうのちゃんと守ってる?
えぇ?そんなことになってたんですか、
英語は大の苦手なもので。
とりあえずこれを頼りに頑張ってみます。
どうもありがとうございます。
そしてもう少し具体的にきけるようにしたいと思います。
0868名称未設定
2016/12/31(土) 01:54:04.64ID://mr8o5w0日本語でもちゃんと書いてーるよ
「eventsMatchingPredicate:メソッドは同期的であるため、アプリケーションのメインスレッドで実 行しないでください。非同期動作の場合は、dispatch_async関数、またはNSOperationオブジェク トを使用して、ほかのスレッドでメソッドを実行します。」
0869名称未設定
2016/12/31(土) 03:23:04.29ID:lqCjovX70著者はアニメ好き
0870名称未設定
2016/12/31(土) 05:09:15.09ID:nPeL62sr00871名称未設定
2016/12/31(土) 09:49:56.78ID:x26O9WUN00872名称未設定
2016/12/31(土) 10:38:20.92ID:/VpjB8CO0もう一週間音沙汰ないぞ…
0873名称未設定
2016/12/31(土) 10:41:51.09ID:0pXODzYs0そういう話題はこっちで
iOSアプリ 開発者の雑談スレ39 [無断転載禁止]©2ch.net
http://potato.2ch.net/test/read.cgi/mac/1477828638/
またはこちら
iOSアプリ 底辺開発者の雑談スレ36 [無断転載禁止]©2ch.net
http://potato.2ch.net/test/read.cgi/mac/1452509784/
0875名称未設定
2016/12/31(土) 13:41:39.49ID://mr8o5w0John Resigはアニメ好きではないらしいぞ
0876名称未設定
2017/01/05(木) 11:55:18.36ID:8HgFBeKb0localtime_rってのを初めて見たのでググってみるとlocaltimeと違ってスレッドセーフであり、rはrestartableの事だとIBMのサイトでヒットしました。restartableってどういう事なんでしょう?restartableな関数とはどういう関数の事を指すのでしょうか?
0877名称未設定
2017/01/05(木) 12:38:33.47ID:8HgFBeKb0システムコールの中でSleepからのリスタートに対応できている関数には_rがついている。
すなわち、localtime_rはlocaltimeのsleep’n’wake up対応版ってことだ。
0878名称未設定
2017/01/05(木) 16:05:20.39ID:800jNKoL0違うよ
そのrestartはUnix Programmingの話
Interrupted System Callとかsignal/sigactionとかのキーワードでググるといい
でもよほど特殊なケースじゃない限りSwiftでtime関数やlocaltime_r関数を使うことはまずないから
そういうサンプルコードに付き合うのは時間の無駄かもね
0879名称未設定
2017/01/05(木) 16:17:17.85ID:gmzoiCy00ただの計算だからシステムコール中のsleepとかは関係ないよ。
localtimeは結果をstruct tmという構造体に格納してそのポインタを返すんだけど、その構造体の領域が固定だった。
スレッドのない昔はそれでよかったんだが、マルチスレッド環境だと複数のスレッドがほぼ同時に使うと、最初のスレッドが
結果を使う前に次のスレッドが呼び出して同じ領域に上書きしてしまうため変な値になってしまうことがあるという問題が発生する。
そこで、結果を書き込む構造体の領域を呼び出し側が確保してそのポインタを渡すようにパラメタを追加したのがlocaltime_r。
ちゃんと自分だけの領域を用意すれば上書きされる心配は無い。
でもlocaltime_rのrはlinuxのマニュアルだとreentrantのrだと説明されていてrestartのrというのははじめて見た。IBM用語?
0880名称未設定
2017/01/05(木) 16:40:55.36ID:8HgFBeKb0IBM i Series(AS/4000の後継)のマニュアルではrestartableと説明されてました。
関数の戻り値(返り値)はスタックに置かれるのだと思ってたら、そうじゃ無いのですね。
関数呼び出し時と戻る時の動作(call/ret)の動作がよく判らなくなってきました。
callの時には、retのために呼び出し元のアドレスをまずスタックに積むのですよねぇ?
それから、引数をスタックに積んで、関数を実行中はローカル変数もスタックに積まれるとの理解したました。
では、戻り値(返り値)はヒープ領域に書き込まれるのしょうか?
0881名称未設定
2017/01/05(木) 19:17:12.49ID:G7DEf5Gx0説明するけどSwiftの勉強の邪魔になると思うから深入りするな
まず、戻り値がスタックとかヒープとかは無関係
現状Swiftが動くのはmacOSとLinuxのみ
どちらもPOSIX準拠だからPOSIXのマニュアルを読むべし
AS/4000系とかではなく
POSIXでの_r付きの関数はre-entrant、再入可能と言って、
関数内部で状態を保持するための変数を外出ししてマルチスレッド対応にしたものだ
マルチスレッドだけじゃなくシグナルハンドリング環境でも使える
例えばiso2022系の文字列処理ではシフト状態、
つまり今シングルバイト処理中なのか、マルチバイト処理中なのか
を覚えておく必要がある
元々は関数内で保持して居たがマルチスレッドだと壊れてしまうので
呼び出し時に保持用変数を与えるようにしてマルチスレッド対応にした
これらの関数を元の関数と区別するために_rを付けたんだ
元々はPOSIX4、POSIXリアルタイム拡張として規格策定されたが
規格化完了後はPOSIX1にまとめられた
規格としてはPOSIX4は存在しないが、考え方とかを知りたければこっちで検索した方が良いかも
あ、いや、検索なんてするな
Swiftを勉強しろ
0882名称未設定
2017/01/05(木) 21:22:52.98ID:800jNKoL00883名称未設定
2017/01/05(木) 21:27:19.39ID:qEJxveAE02.8 コンピュータ・ハードウェア内での手続きのサポート
では、関数の戻り値はレジスタへ戻すコードがコンパイルの結果、吐き出されている。
スタックがクリアされてから呼び出し元へ戻るので、呼び出し元からアクセスできる所へ戻り値が置かれるってことなんだな。
置かれる場所が、一定なのが、非re-entrantな関数ってことなんだな。
0884名称未設定
2017/01/05(木) 22:25:58.40ID:800jNKoL0>スタックがクリアされてから呼び出し元へ戻るので、呼び出し元からアクセスできる所へ戻り値が置かれるってことなんだな。
その場所ってのが呼び出し元のスタックフレームでは?
2回呼び出せば異なるフレームに戻り値が置かれるよ
>>880
>関数を実行中はローカル変数もスタックに積まれるとの理解したました。
内部でstatic使ってるやつもいるってこと
0885名称未設定
2017/01/06(金) 01:28:50.20ID:UPscsqta00886名称未設定
2017/01/06(金) 07:24:08.42ID:HegmlX3L0ちなみに俺は>>881だ
とにかくスタックとかヒープとかレジスタとかは全部的外れ
それが的外れだということが分からないならそれ以上考察するな
どうしても気になるなら次の本を読め
・Linkers & Loaders
・適当なpthreadの入門書
ヒントをやるなら
・ソースコードで言えば内部で静的変数を使う関数は再入できない
・古典的なUNIXバイナリモデルでいうなら
スタックでもヒープでもなく.dataセクションとか.bssセクションにデータが置かれるから
ただしバイナリモデルの話は今時はコンパイラやOSが好き勝手に最適化するから概念的な話だと思っとけ
とにかく的外れな考察をするより適切な教科書を探す能力を身につけよう
そしてSwiftとは完全に無関係な話だから
これ以上続きをしたければUnixプログラミングのスレにでも行ってくれ
俺は今後この話にはレスを付けない事にする
0887名称未設定
2017/01/06(金) 08:53:43.69ID:YbSkH5Uj0元質問者876です。
超参考になりました。
0888名称未設定
2017/01/06(金) 08:58:36.55ID:6uQN6uvm0C言語じゃなくアセンブラかLLVMバイトコード
C言語もSwift言語も、ヒープ/スタックのレイヤーから見たら変わりないよw
0889名称未設定
2017/01/06(金) 13:17:29.11ID:DshpgclK0Swiftの一般的な使い方ではその辺はうまく隠蔽されててるし
0890名称未設定
2017/01/06(金) 14:05:41.87ID:YbSkH5Uj0アセンブリ言語が敷居が高いというのは誤解だと思う。
パタヘネ本の上巻は、MIPS CPUのアセンブリ言語の話だけど、とても判りやすい。
パタヘネ本はお薦めですヨォ。
パタヘネ本で、Intel CPUが何で消費電力がデカイのかよく分かる。micro Op Codeへの変換部分の発熱がデカイんだよねぇ。
0891名称未設定
2017/01/06(金) 15:01:11.24ID:DshpgclK0読んだ本の知識をひけらかしたかったわけか
0892名称未設定
2017/01/06(金) 17:32:47.69ID:AwfXVwh700894名称未設定
2017/01/06(金) 21:31:20.16ID:j8RYTCdz0883です。
イジメられたので泣いてやる。
エェーン。
0895名称未設定
2017/01/07(土) 09:51:50.34ID:KBdedqU70俺的今日の5行
let array = (0..<100).map { (_) in Float(arc4random() % 10) }
let pairs = stride(from: 0, to: array.count, by: 2)
.map { (i:Int) -> (Float, Float) in
(array[i], array[i+1])
}
0896名称未設定
2017/01/07(土) 10:37:55.05ID:JNt45snu0うぅーん、イイねぇ。
なぜ100個の乱数が必要になったの?
あるいは、あれば便利だと、考えたキッカケは?
0897名称未設定
2017/01/07(土) 10:53:55.09ID:KBdedqU70この先どうなるか誰にもわからない
人の数だけ出会いもある
そういう思いをこのコードに込めてみた次第でございます。
0898名称未設定
2017/01/07(土) 12:16:46.80ID:69NSPLAc0遅延リスト実装するほうがSwiftらしい
0899名称未設定
2017/01/07(土) 12:46:22.76ID:CCG2PHo700900名称未設定
2017/01/07(土) 14:03:09.58ID:IJl+Tq+70var src = AnyIterator{Float(arc4random() % 10)} //.prefix(6).makeIterator()
let pairs = AnyIterator{src.next().flatMap{($0,src.next()!)}}
print( Array(pairs.prefix(5)) )
0901名称未設定
2017/01/07(土) 14:09:17.59ID:XWbwkmHI0こねこね〜、こねこね
よ〜くまぜあわせてくださいね
おねんどおねえさんより
0902名称未設定
2017/01/07(土) 16:20:59.30ID:3kSBCBtu0お!いいね
ところで、隣同士の要素じゃなくて、配列の両端から中心に順にペア作ってって仕様変更の要求きても、スマートに対応できますか?
let array = (0..<100).map { (_) in Float(arc4random() % 10) }
let pairs = stride(from: 0, to: array.count, by: 2)
.map { (i:Int) -> (Float, Float) in
(array[i], array[array.count-(i+1)])
}
0904名称未設定
2017/01/07(土) 17:02:38.96ID:3kSBCBtu0そうは言われましても、人生は波乱万丈でございまして、お客様から突然
同じ乱数のサンプリングデータから様々なペアの組み合わせを抽出して欲しい
と言われましたもので...
0905名称未設定
2017/01/07(土) 17:04:21.14ID:XWbwkmHI00906名称未設定
2017/01/07(土) 17:06:36.60ID:69NSPLAc00908名称未設定
2017/01/07(土) 17:27:06.76ID:69NSPLAc0あとそういう仕様なら値自体を別配列に入れ直すよりピックアップするインデックスのペアを持っておいたほうが普通によさそう
0909名称未設定
2017/01/07(土) 17:39:42.87ID:3kSBCBtu0AnyIteratorにはもちろんランダムアクセスの機能なんてないしね
確かにしつこかったね
意地悪してすみません
0910名称未設定
2017/01/07(土) 17:46:42.45ID:nVMP5AcZ00911名称未設定
2017/01/08(日) 01:24:57.17ID:L5inoI9u0数年経っても、未だにiosでしか使えない言語出し、他に進展もないしね。
swiftやるよりJavaのほうが仕事あるし
0912名称未設定
2017/01/08(日) 02:30:18.95ID:0L8GFKK+0JavaのAndroid以外の仕事も珍しいが、iOSという同じパイをObjCとSwiftで食い争うよりはマシだから頭痛い
アポー信者がAppleを盲信しないのホントやめてくれよ、、、
0913名称未設定
2017/01/08(日) 08:53:12.56ID:NeqRqnfn00914名称未設定
2017/01/08(日) 09:48:03.76ID:0L8GFKK+0それも海外アウトソーシングで国内PGは絶滅しそう
軽い案件ならGo, PHP, Node.jsだろうなぁ
Node.jsの代わりにサーバサイドSwiftが来るのか!?
とSwift betaの頃は思ってた
0915名称未設定
2017/01/08(日) 10:03:25.88ID:+cAg+XlN0Railsとかも人気なんじゃないの?
それともブームは去っちゃったんかな?
Perlってのは、元々無いのかな?
サーバーサイドの案件。
0916名称未設定
2017/01/08(日) 18:02:24.88ID:bPrv3feV0ただ昔のCOBOLみたいな扱いに近づいてきてると思うけど
RubyやPythonと違ってサーバーサイドでPerl使うところは内製が多いから
外注案件として外に出てくるのは少ない気がするよ
0917名称未設定
2017/01/08(日) 18:14:15.23ID:bPrv3feV0>Node.jsの代わりにサーバサイドSwiftが来るのか!?
JavaScriptだけでビジネスロジックなんかも含めてサーバーサイドを全部作るってのは
品質と生産性の観点から今でも結構非現実的な選択だと思うけど
Swiftは使いやすいWeb/DB周りのフレームワークが出てくれば有力な選択肢になり得ると思うよ
0918名称未設定
2017/01/08(日) 18:23:17.76ID:caZI2i3e00919名称未設定
2017/01/08(日) 18:40:47.32ID:bPrv3feV0型システムの違いね
0920名称未設定
2017/01/08(日) 19:27:21.97ID:NeqRqnfn0JavaScriptより有利という指摘は前提がおかしくね?
0921名称未設定
2017/01/08(日) 20:05:46.68ID:+cAg+XlN0Swiftは言語仕様がC++並みにデカくなってるから、容易にエンジニアを集められない。
Clientアプリと同じ言語で、Webアプリを作れるという魅力があるが、普及しないんじゃないかなぁ?
俺がSwift普及しないと考える理由2つ。
1. C++並みに学習コストが必要というのと、
2. ARCっていうメモリ管理は、GCによる自動メモリ管理に慣らされたJava, LL言語プログラマが移行してこない。
0922名称未設定
2017/01/08(日) 21:07:37.02ID:bPrv3feV0Bjarne Stroustrupのあの凶器になりうる本とAppleのSwift本の厚さを比べてたら一目瞭然
ReflectionみたいにSwift本には書かれてない部分もあるけどそれは知らなくても大抵のことはできる
0923名称未設定
2017/01/08(日) 21:13:30.32ID:d/k3nbWu0自動メモリ管理じゃないってどういう理解だ
0924名称未設定
2017/01/08(日) 21:21:08.64ID:NeqRqnfn0ただ、自動化とはいえ気をつけないと循環参照を招く
クラス間の相互参照はコーディング規約で制限するにしても、クロージャ絡みでやらかすことはありそう
あと、デリゲートにweakつけてなくてクラッシュするとか
この辺りのバグは慣れてないと表面化してから原因探るのに時間かかったりするし
0925名称未設定
2017/01/08(日) 21:21:39.68ID:bcsCqIN200926名称未設定
2017/01/08(日) 21:24:08.28ID:bPrv3feV0言いたいことはわかるけど最初にNode.jsと比較してるからそれに対するレスだから
ただまあ一般的によく使われてる静的型付け言語(JavaやC#)と比較してらSwiftのほうが書きやすいと俺は思ってるよ
新しい言語だから当たり前かもしれないけどね
0927名称未設定
2017/01/08(日) 21:43:15.57ID:bPrv3feV0コードを書く時にARCとGCで違いを意識することって特に思い当たらない
0929名称未設定
2017/01/08(日) 22:01:47.61ID:jydK5kBd0それならRAIIで統一出来る方が結局は楽だったりする
0930名称未設定
2017/01/08(日) 22:02:30.25ID:bPrv3feV0あごめん、循環参照に対応したGCならメモリリークはおきない
そういう意味ではC#やRubyは循環参照でメモリリークはおきないね
0931名称未設定
2017/01/08(日) 22:20:38.97ID:03xDY8+u00932名称未設定
2017/01/08(日) 23:22:03.00ID:+cAg+XlN0selfをキャプチャするclosureを書いた事無いのか?
0933名称未設定
2017/01/08(日) 23:48:00.22ID:bGD9u40D00934名称未設定
2017/01/08(日) 23:55:34.53ID:g+ckBbcd00936名称未設定
2017/01/09(月) 04:48:57.59ID:eHOpnkVv0ないだろうねぇ。
参照されなくなった -> retain count = 0 -> インスタンス解放
0937名称未設定
2017/01/09(月) 04:50:24.24ID:eHOpnkVv0別の処理系と、App kit, UIKit処理系と混同している。
0938名称未設定
2017/01/09(月) 10:05:15.43ID:RaCs0No00ずっとガベコレの話してたんで唐突だったけど
0939nemoto
2017/01/09(月) 12:45:33.83ID:7KYzQZh+0スティーブ・ジョブスのデザインが採用に!?
http://applelabos.com/
0940名称未設定
2017/01/09(月) 14:01:27.74ID:K418Q8uG0このサイトすごくね!iPhoneの傾きに反応して要素が動くよ!WebKitに加速度センサにアクセス出来るAPIでもあるの?
0941名称未設定
2017/01/09(月) 14:22:55.20ID:86Wmwv6K00942名称未設定
2017/01/09(月) 17:53:33.23ID:Ix2IbTHN0グロウイルス
0943名称未設定
2017/01/11(水) 14:19:35.11ID:1v9Zr2aD0古い話へのレスでもうしわけないがたまたま見かけたので
Swift Standard LibraryドキュメントのStringの項にこう書いてある(相当意訳)
Stringデータの内部表現は気にするな、
出来るだけ他のStringデータと共用するように作ってあるからな
中身気にするだけ無駄だぞ
Objective-CのNSStringデータから作られたStringデータは内部表現としてNSStringを使う事もあるぜ
だからと言ってStringデータから元のNSStringが取り出せるとは思うなよ
だってさ
つまり
Stringの内部表現は状況によって変わる
Stringの内部表現の一つとしてNSStringが使われる事もある
高度に抽象化されたデータはある意味厄介だねぇ
0944名称未設定
2017/01/11(水) 14:32:17.57ID:KZEWsoaM00945名称未設定
2017/01/11(水) 14:40:35.02ID:xxlaB63S0本当らしいねぇ。
Swiftに暗雲が垂れて来たのか?
Appleの「Swift」開発者でプロジェクトリーダーのクリス・ラトナー氏が退社
http://www.itmedia.co.jp/news/articles/1701/11/news057.html
0946名称未設定
2017/01/11(水) 20:00:57.80ID:RNRI32J/0やはり表面的な部分を含むモダンさを単に追求してるような違和感は本当だったのか
0947名称未設定
2017/01/11(水) 20:58:30.75ID:TXy/E4P900948名称未設定
2017/01/11(水) 21:08:48.44ID:ruamP5O400949名称未設定
2017/01/11(水) 21:25:15.44ID:UUo7sBjZ00950名称未設定
2017/01/11(水) 21:58:56.03ID:TXy/E4P900952名称未設定
2017/01/12(木) 12:23:30.13ID:eiyMFEnu0スズキが採用する
0953名称未設定
2017/01/13(金) 11:23:08.78ID:zfBz2nEb00954名称未設定
2017/01/13(金) 12:39:39.04ID:ePCfu3Nn0それってTeslaの金でAppleのために働くことにならないか?
Appleが自動運転車断念しない限り敵対してる相手だよね。
イーロン・マスクが許すとは思えんけどなぁ。
0955名称未設定
2017/01/13(金) 12:54:11.70ID:MG+nXcvl0Apple Carの開発はストップしたって、新聞に出てた。
0956名称未設定
2017/01/13(金) 12:56:00.15ID:RgzVe+EX00957名称未設定
2017/01/13(金) 12:59:54.46ID:MG+nXcvl0会社に所属しながら、OSS開発してる人は一杯いるけど。
会社公認で。
Jenkins開発したなんとか?っていう日本人は、Oracle追い出されて、いまは別会社だけど。
DeNAのなんとかさんは、H2Oっていうhttp2デーモン開発してたけど、結局Flaslyへ移動したなぁ。追い出された訳では無いという話だ。
OSSの開発は、エコシステムを維持するのが大変なので、誰がどこの会社に居ようが、文句を言う人は居ないと思う。
Objective-Cのサポートをストップさせたgccからは新しいObjective-Cが生まれない様に、エコシステムがストップしてしまえば、OSSは死んでしまう。
だから、TeslaはSwift開発するのをラトナーに許す事を条件に引き抜いたと予想。
0958名称未設定
2017/01/13(金) 19:05:20.13ID:JnXb3/EG0うだつの上がらないままダラダラ続けるのは日本以外ではあり得ない。
コンパイルがすごく遅いのが致命的
0959名称未設定
2017/01/14(土) 14:53:02.48ID:lnubwy5R00960名称未設定
2017/01/14(土) 14:58:21.38ID:Y/67CghY0型推論を切る事ができる、コンパイルオプションがあっても良いかも。
0961名称未設定
2017/01/14(土) 18:22:36.35ID:FDsE2kO20一息ついてコーヒーを啜るもよし、頭を整理するもよし、2chを覘くもよし
そんぐらいの余裕が欲しい
0962名称未設定
2017/01/14(土) 20:00:27.71ID:yh4hduDz00963名称未設定
2017/01/14(土) 20:04:03.75ID:Y/67CghY0へぇ?
継承できないstruct使えるなんて、Swiftだけなのに。
protocol準拠できるし、Copy-on-Write対応の便利なヤツだし、
structに首ったけ。
Array, Float, Intも全部struct。
こんなSwift、ほっとかれる訳ない。
0964名称未設定
2017/01/14(土) 20:06:45.91ID:yh4hduDz00965名称未設定
2017/01/14(土) 20:07:04.47ID:PNA4PWuw0こんなの選ぶような所は流行らない言語と理解出来ずに死ぬほど無駄な工数をかけて格好いいことしてる気分でいいんじゃない
0966名称未設定
2017/01/14(土) 20:16:20.93ID:n7ZA5J++0トライ&エラーはPlaygroyndでやればいいだろ?
0967名称未設定
2017/01/14(土) 20:18:17.32ID:yh4hduDz00968名称未設定
2017/01/14(土) 20:24:19.67ID:JlpyaNgy00969名称未設定
2017/01/14(土) 20:27:01.40ID:yh4hduDz00970名称未設定
2017/01/14(土) 20:49:46.83ID:SQDft30g0Objective-Cも対応しようと思えば出来るような気がするんだけどSwift推しのためにサポートされてないの?それとも何か技術的な理由?
0971名称未設定
2017/01/14(土) 21:04:13.74ID:n7ZA5J++0せめてSwiftがヘッダと実装を別のファイルに分けて書くような前提ならもう少しビルド時間を短縮できたかもしれないけど、それによって犠牲にするものも大きいしな
0972名称未設定
2017/01/14(土) 21:41:11.75ID:tQY+2kCp0>>970
SwiftはLL言語REPLと同じこと出来る、スゴイ!!
という客寄せパンダでObjCでやる意味なす
日曜プログラミング以外での実用性ないし、、、
なお自分は日曜にはそこそこ使ってる
0974名称未設定
2017/01/14(土) 22:22:48.05ID:+dMG2vZK0LL言語には存在価値がないってこと?
0975名称未設定
2017/01/15(日) 23:26:01.50ID:lvIYi3s/0Thanks, Swift!
0976名称未設定
2017/01/15(日) 23:40:38.40ID:3jhVu/Ou0君のことは忘れないよ
0977名称未設定
2017/01/16(月) 00:01:32.92ID:n/8Ff8Io00978名称未設定
2017/01/16(月) 02:14:38.22ID:2fCWFUH100979名称未設定
2017/01/16(月) 06:07:55.35ID:576n9MyD00980名称未設定
2017/01/16(月) 07:19:52.96ID:ORr2fsyA0スニペットレベルのものを試すのに便利だから使いたいんだよね。
Objective-Cだといちいちテストプロジェクトを作ってコード書いてビルドしないといけないので。
0981名称未設定
2017/01/16(月) 08:07:40.41ID:S9LSvenM0playgroundって名前のテストプロジェクトを作っておいて使い回せばいい
0982名称未設定
2017/01/16(月) 09:00:39.27ID:0JUExnJ90Welcome to Swift
↓
Swift
https://developer.apple.com/swift/resources/
関連スレ
Swift part9
http://echo.2ch.net/test/read.cgi/tech/1476758084/
0983名称未設定
2017/01/16(月) 09:52:55.94ID:cHyXIJIY0Swift 8位
怒りのコメントが多いプログラミング言語ランキング
Objective-C 1位
0984名称未設定
2017/01/16(月) 16:46:06.41ID:CXQ9HIgB0国とか調査日対象人数や年齢なんかで変わるから
0985名称未設定
2017/01/16(月) 17:34:31.11ID:qI0FK1Oo0var rank = 8
print(幸せなコメントが多いプログラミング言語ランキング[rank-1])
Swift
rank = 1
print(怒りのコメントが多いプログラミング言語ランキング[rank-1])
Objective-C
0986名称未設定
2017/01/16(月) 18:11:40.36ID:zlA4Y9T600987名称未設定
2017/01/16(月) 18:28:17.96ID:pADm9Td/00988名称未設定
2017/01/16(月) 19:29:52.11ID:4XlqjEDc00989名称未設定
2017/01/17(火) 10:56:07.47ID:Vf0JoU6v0// String.descriptionを置き換えたかったけど、extensionで置き替わらなかったから諦めた
func print(_ text: String) {
Swift.print(
0990名称未設定
2017/01/17(火) 10:59:40.32ID:Vf0JoU6v0バックスラッシュと円マークを区別して入力できないMac Safariはクソだな
func print(_ text: String) {
Swift.print("(text) with white tail")
}
0991名称未設定
2017/01/17(火) 13:16:43.58ID:32eUtzle0class ServerDataLoader { // ―Code(1)
private let resultSubject = PublishSubject<NSData>()
// 省略
var result: Observable<NSData> { return resultSubject } //get-only property
// 省略
どういう意図があるのでしょう?
Observable<T>を継承しているのがPublishSubject<T>クラスなんですが、
class ServerDataLoader { // -Code(2)
let result = PublishSubject<NSData>()
// 省略
と書くのと同じだと思うのですが?
上記Code(1), Code(2)の違いを説明して頂けないでしょうか?
なお、上記コードは
http://qiita.com/k5n/items/98aaf84fc164f7a5502c
から抜粋しました。
0992名称未設定
2017/01/17(火) 13:59:50.07ID:+B/KzWeO0詳細クラスで公開すると後で変更しづらくなる
let result:Observable = とすると内部で使いづらい
0993名称未設定
2017/01/17(火) 14:33:02.37ID:32eUtzle0ちょいと判ってきました。
内部的にPublishSubjectから別のクラスへ、例えばBehaviorSubjectへ、変更が生じても、このクラスServerDataLoaderを使うコードの変更を最小限に済ませたい場合、Code(1)がCode(2)より、影響が少ないかもしれません。
0995名称未設定
2017/01/18(水) 10:37:03.21ID:A0OcxpeX00996名称未設定
2017/01/18(水) 19:27:06.57ID:b7wkapDW00997名称未設定
2017/01/18(水) 19:54:09.59ID:IMAwHlB600998名称未設定
2017/01/18(水) 23:17:12.61ID:a8h1sO0A00999名称未設定
2017/01/18(水) 23:17:31.12ID:a8h1sO0A010011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
life time: 879日 11時間 23分 10秒
10021002
Over 1000Thread運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/
▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。