Swift part3
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2014/07/23(水) 11:46:48.42ID:x29J8vdYApple Developer
https://developer.apple.com/swift/
Welcome 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
書籍の形にはなってないけどドキュメント
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/
関連スレ
TypeScript(MS) VS Swift(Apple)
http://peace.2ch.net/test/read.cgi/tech/1401758403/
帰ってきた動的言語 VS 静的言語(代表Swift)
http://peace.2ch.net/test/read.cgi/tech/1401809550/
前スレ
Swiftスレ
http://peace.2ch.net/test/read.cgi/tech/1401736341/
Swift part2
http://peace.2ch.net/test/read.cgi/tech/1402465335/
0623デフォルトの名無しさん
2014/10/05(日) 15:45:34.60ID:8YLPCOSQ?
最初から会社としてのコストですが?
0624デフォルトの名無しさん
2014/10/06(月) 14:40:25.32ID:mnethBK5C++ support
This is another obviously desirable feature, it is just a lot of work and didn't make it in 1.0 either.
? Chris Lattner
Source: https://devforums.apple.com/thread/228324?start=50&tstart=0
0625デフォルトの名無しさん
2014/10/06(月) 18:15:33.52ID:pOS/04qw会社としてのコストで話が通じているのならテストやレビューなど他の人手も作業も発生するんだから、自分だけコード直してはい修正完了、Xcodeの警告通りに修正したからオッケーですよでは済まなくて、そこでコストが発生するのは分かるでしょ?
0626デフォルトの名無しさん
2014/10/06(月) 19:03:00.41ID:8JYygkjt最初からそのコストと比較してますが?
言語の機能向上によるメリットに比べれば、警告の修正で必要なテストやレビューなんてたかが知れてるって主張なんですが
ただコストあるよね?とか言われても、費用対効果考えられないアホなんですねとしか言えないです
0627デフォルトの名無しさん
2014/10/06(月) 20:42:24.04ID:wNc45BQ2Apple製品なんて最高に客を騙しやすいモノなんだから
そうでなくても、いい加減スレ違いだから、新しい環境におけるコスト意識として別所で議論してくれ
0628デフォルトの名無しさん
2014/10/08(水) 19:27:41.78ID:nG4ErnKB0629デフォルトの名無しさん
2014/10/08(水) 20:18:41.66ID:nG4ErnKB0630デフォルトの名無しさん
2014/10/08(水) 20:26:14.76ID:UJx9zVSCM$とは大違いだぜ!!(死んだ魚の目
stableの6.0系も更新したかな
こちとら製品開発だからdev版は使えんぞ
0631デフォルトの名無しさん
2014/10/09(木) 09:22:43.34ID:9D8V5W1a0632デフォルトの名無しさん
2014/10/09(木) 09:32:17.64ID:0aKnCpCg0633デフォルトの名無しさん
2014/10/09(木) 09:35:10.37ID:O8gj2Oze0634デフォルトの名無しさん
2014/10/09(木) 10:59:41.94ID:3tS9WfPv0635デフォルトの名無しさん
2014/10/10(金) 12:56:18.08ID:HrDP8ET00636デフォルトの名無しさん
2014/10/10(金) 18:59:49.43ID:3n2DZYHj???
駅に行く途中の公園ではけっこう盛り上がってたよ。
0637デフォルトの名無しさん
2014/10/10(金) 19:43:14.52ID:6Es5cgDH0638デフォルトの名無しさん
2014/10/11(土) 10:28:45.37ID:FJ/mX1hb0639デフォルトの名無しさん
2014/10/11(土) 10:51:52.06ID:OVmPDf/7ただ色々不便なので普通にobj-cで組んだ方が良かったと絶賛後悔中
0640デフォルトの名無しさん
2014/10/11(土) 13:55:19.47ID:QCqlqyAj0641デフォルトの名無しさん
2014/10/12(日) 04:09:13.09ID:mZ74PQyT0642デフォルトの名無しさん
2014/10/12(日) 17:13:43.05ID:aHOISqv90643デフォルトの名無しさん
2014/10/12(日) 17:15:57.28ID:BJjNa9tt0644デフォルトの名無しさん
2014/10/13(月) 11:14:31.41ID:6Hjou/afリリース前のほうが伸びてた気がするんだが。
0645デフォルトの名無しさん
2014/10/13(月) 12:06:04.72ID:7Jte/2bO0646デフォルトの名無しさん
2014/10/13(月) 13:02:35.10ID:7qtR51qnえ?正式版のXcode VI来たの?
0647デフォルトの名無しさん
2014/10/13(月) 15:41:54.59ID:2IfdctYmSwiftは、AppleがYosemite/iOS8を出すにあたって新しい感を出すための
飛び道具の一つでしかなかったという事実
Appleすら顧客に要らないものを押し付け始めたこの事実は、Appleでさえ
アイデアが枯渇し始めてきた証拠と言える
0648デフォルトの名無しさん
2014/10/13(月) 15:52:30.49ID:b77sW2OU0649デフォルトの名無しさん
2014/10/13(月) 16:48:32.70ID:2IfdctYm誰に言ってる?
一応>>647はおれのオリジナルだけど
0650デフォルトの名無しさん
2014/10/13(月) 17:15:26.09ID:1wQkSfLmお客様気分でいて梯子外された気分になってるヤツはいそう
そして、要らない物を出すのも珍しくない
0651デフォルトの名無しさん
2014/10/13(月) 17:33:10.40ID:b77sW2OUオリジナルww
http://anago.2ch.net/test/read.cgi/mac/1408755325/320
すまなかったコピペではなかったな。推考し直したのか、偉いなw
0652デフォルトの名無しさん
2014/10/13(月) 18:11:08.17ID:2IfdctYmあ、そうそう
少し手直ししたよw
0653デフォルトの名無しさん
2014/10/13(月) 18:11:54.34ID:2IfdctYmちなみに、そっちもおれのオリジナルねw
0654デフォルトの名無しさん
2014/10/13(月) 18:14:55.53ID:b77sW2OU0655デフォルトの名無しさん
2014/10/16(木) 14:27:15.58ID:Cxp8u8hyswiftやっぱりダメだからobj-cに戻るってレスが先見性があるようなないような
0656デフォルトの名無しさん
2014/10/16(木) 15:55:26.70ID:Gih70ftK0657デフォルトの名無しさん
2014/10/16(木) 19:41:02.51ID:N7sRWO9E速度的なメリットもObjC互換モードで動いてる限りあまりないしね
0658デフォルトの名無しさん
2014/10/16(木) 21:22:16.69ID:7/bqySU3ただでさえObjCよりも遅いといわれているSwiftが更に遅くなるてこと?
0659デフォルトの名無しさん
2014/10/16(木) 21:47:36.52ID:bnusg6ll0660デフォルトの名無しさん
2014/10/16(木) 23:32:04.07ID:4w9dr10Mswiftバイナリ自体の最適化が甘い & VMのオーバーヘッドが存在する、複数の要因だよね
前者は頑張ってるんだろうけど、互換モード外して(VMをなくして) swiftバイナリのまま実行出来るプラットフォームはいつになるやら
0661デフォルトの名無しさん
2014/10/17(金) 00:03:53.88ID:j5u0ESS9>要はobj-c上で動くSwift VMだから、
"Swift VM" のソースはどこよ?
一般に知られているのは、フロントエンドの Swift 処理系が LLVM コードを生成し、
バックエンドの LLVM がネイティブ(Intel CPU)コードに変換して実行する、というもの
現在の Obj-C 処理系も Swift と同様にバックエンドに LLVM を利用する
Swif が Obj-C 上の(LLVM とは別の) VM 上で動くなんて驚きだわw
0662デフォルトの名無しさん
2014/10/17(金) 00:55:14.86ID:N6B/oMwy小さなランタイムでググレ
0663デフォルトの名無しさん
2014/10/17(金) 00:55:44.77ID:G2VicKrt0664デフォルトの名無しさん
2014/10/17(金) 01:12:59.37ID:fAn6QzItSwift自体はObjCより束縛を静的にして、C++のvirtual相当でメソッド呼び出しをできるようになってる
ただObjC互換でクラスを設計する限りはObjCと同様objc_msgSendのオーバーヘッドが消えないから
その点でメリットは得られない
0665デフォルトの名無しさん
2014/10/17(金) 01:25:24.74ID:VeyUCNCW0666デフォルトの名無しさん
2014/10/17(金) 01:50:42.54ID:2wTmJIFL0667デフォルトの名無しさん
2014/10/17(金) 01:57:14.31ID:2wTmJIFLhttp://en.wikipedia.org/wiki/Objective-C#Apple_development_and_Swift
> At WWDC 2014, Apple announced plans to replace Objective-C for Cocoa development
> with its new Swift language, which it characterized as "Objective-C without the C".
って書いてあったわ。
0668デフォルトの名無しさん
2014/10/17(金) 02:13:34.48ID:q6NXwDy0LLVMはコンパイラ時だけの話だろ。オブジェクトコードはネイティブコードだぞ
実行ファイルをみてみなさいな
Objective-CではってPlaygroundの話でもなさそうだし、元ののもそうだがなんでVMなんて発想になるのかさっぱりわからんな、あるとしてもブリッジだろに
0669デフォルトの名無しさん
2014/10/17(金) 02:14:54.62ID:2wTmJIFL小さなランタイムって、Swift非対応の古いOSでの話じゃないの?
iOS8とかYosemiteでもわざわざ互換ライブラリを噛ませて実行するの?
0670デフォルトの名無しさん
2014/10/17(金) 02:15:36.06ID:q6NXwDy00671デフォルトの名無しさん
2014/10/17(金) 02:25:42.71ID:fAn6QzIt互換ライブラリというかランタイム自体が.appパッケージに同梱されてる
別にだから遅いとかいうことはないけどね
サイズが増える程度
0672デフォルトの名無しさん
2014/10/17(金) 08:17:46.66ID:0vD84hESランタイム自体を解析したという記事を見たことがないので
詳しいことはラトナーはじめアップルの開発者ぐらいしか知らんのでは。
ラトナーの書簡をみるかぎり,確かに旧OSで走らせるために
ランタイムをくっつけたように読めるが,iOS8やYosemiteで
ランタイムが利用されていないかどうかまでは分からんね。
サードパーティの開発者にとっては,アプリの目的に照らして十分なスピードが出てりゃ
特に気にすることでもないし。
0673デフォルトの名無しさん
2014/10/17(金) 08:54:19.69ID:Lmpe/lkWSwiftのバージョンが今後もちょくちょく変わるからアプリをビルドする際にそのバージョンのランタイムがアプリ内に同梱される
Swiftでビルド時にアプリの容量が膨らむのはそのせい
0674デフォルトの名無しさん
2014/10/17(金) 10:45:35.24ID:Pb74/m4Nランタイムのロードのためにアプリ起動の時間は確実に obj-c < swift なわけで
マジで obj-c で組んでよけば良かったと若干後悔してる
0675デフォルトの名無しさん
2014/10/17(金) 10:57:37.78ID:Lmpe/lkWまだSwiftは遊びレベルでちゃんとしたものは作ってないんだけど、そんなに分かるぐらい起動に時間かかるの?
0676デフォルトの名無しさん
2014/10/17(金) 11:53:10.76ID:TZNb7SnYVM使ってるわけじゃないんだろ?
ライブラリってのはオーバーヘッドじゃないと思うぞ。
0677デフォルトの名無しさん
2014/10/17(金) 12:26:32.43ID:vy93goZR純粋にロードの時間なら共有ライブラリになってれば気にするほどのもんじゃない
ランタイム部分の初期化の時間も、GCすらも無い言語だしやることそんなにないよね
0678デフォルトの名無しさん
2014/10/17(金) 13:37:02.30ID:UwibYckoランタイムロードしかりブリッジ処理しかり同じ機能の実現に対して速度遅延要因ばかり
アップルプラットフォームでは開発者のメリットなんぞどうでもいいわ
今どのくらいのサイズになったか見てないけど8MBの小さなランタイムは笑えぬ
0679デフォルトの名無しさん
2014/10/17(金) 13:39:32.46ID:gZX2SDbpメガデモ制作者か
0680デフォルトの名無しさん
2014/10/17(金) 13:59:34.22ID:q6NXwDy08Mっていったら結構大きいと思わなくもなくもなく
0681デフォルトの名無しさん
2014/10/17(金) 15:02:56.12ID:5kDo/Q7Pzip圧縮したら2.5MB弱にはなる様子だけど、それでもIPAの容量の半分がランタイムじゃねーかよw
obj-cで書いたら半分の容量で動作も早いと思うと、Swiftで作ってます(キリッ なんて言えねー。。。orz
0682デフォルトの名無しさん
2014/10/18(土) 05:55:50.96ID:tA+rY70l0683デフォルトの名無しさん
2014/10/18(土) 07:55:12.92ID:kvayFhIZ0684デフォルトの名無しさん
2014/10/18(土) 08:40:57.68ID:Vkda+ET90685デフォルトの名無しさん
2014/10/18(土) 13:58:36.95ID:ZA6xCqgZ何がBuild Failedだよ。謝罪しろ
0686デフォルトの名無しさん
2014/10/18(土) 14:36:10.77ID:ZA6xCqgZコンパイル通ってない関数テンプレートのコードを使っている関数のIR生成を決行しようとしてセグフォになっていたっぽい・・・
0687デフォルトの名無しさん
2014/10/18(土) 16:39:33.69ID:LYpFNA7oXcode6.1で文法って変わったかな
そろそろstableも更新来るだろうから怖いぜ
0688デフォルトの名無しさん
2014/10/18(土) 17:19:47.00ID:tVVqhJ930689デフォルトの名無しさん
2014/10/19(日) 10:45:10.15ID:mHbXct8X・Xcode 6.1 Oct 17, 2014
0690デフォルトの名無しさん
2014/10/19(日) 12:06:06.34ID:m+/mjmwX0691デフォルトの名無しさん
2014/10/19(日) 23:23:36.40ID:fIIE0Vfi0692デフォルトの名無しさん
2014/10/20(月) 00:25:09.22ID:TLBoQMKO0693デフォルトの名無しさん
2014/10/20(月) 22:44:05.69ID:j16eCxP/変数をクラス文の外に出してグローバル変数にし、ViewControllerからアクセスしているのですが、表示がものすごく遅くなってしまいました。(本当にこれが原因かは分からない)
クラス外部(ViewController)からインスタンス指定無しでプロパティを変化させる方法は無いでしょうか?
0694デフォルトの名無しさん
2014/10/20(月) 23:18:27.54ID:j16eCxP/クラスメソッドとかクラス変数とかあったんかぁぁぁぁい!!
全部インスタンスにコピーしてたから無駄にメモリ食ってたのか。
超書き直しの予感、、
0695デフォルトの名無しさん
2014/10/21(火) 00:15:52.38ID:kcqU4m6Gてかあまり関係無いような。まあ、なんでもグローバルよりいいかもしれないが
0696デフォルトの名無しさん
2014/10/21(火) 08:10:16.18ID:FfE943pZObjective-Cではファイルスコープのstatic変数で代用してたけど、Swiftにはそもそもファイルスコープなんてあったっけ?
0697デフォルトの名無しさん
2014/10/21(火) 08:54:24.52ID:3Czsh1Y9ランタイムがいつか対応するんじゃねーの?
0698デフォルトの名無しさん
2014/10/21(火) 09:08:58.78ID:KtwB32hV// stored variable のクラス変数は未サポート
// class var a = 1 // Class variables not yet supported
// class let b = 2 // Class variables not yet supported
// computed variable ならクラス変数使える
class var c: Int { return 3 }
private struct StaticVal {
// 構造体なら stored variable でも static variable が使える
static var val = 4
}
// computed クラス変数からプライベートなインナー構造体の static 変数にアクセスすることで
// 擬似的に stored クラス変数を実現できる
class var d: Int {
get { return StaticVal.val }
set { StaticVal.val = newValue }
}
}
println(A.c) // 3
println(A.d) // 4
A.d = 99
println(A.d) // 99
0699デフォルトの名無しさん
2014/10/21(火) 09:49:02.79ID:XloY8IdLそれにしても、publicやprivateの意味とか、他の言語と微妙に違うのが気になる。
0700デフォルトの名無しさん
2014/10/21(火) 10:30:56.38ID:edTsuMEA時間ないもん。
0701デフォルトの名無しさん
2014/10/21(火) 11:07:32.18ID:PiNv6KYl一部の.storyboardが開けなくなってたバグも治ってる
0702デフォルトの名無しさん
2014/10/21(火) 12:26:37.43ID:3Czsh1Y9もう嫌になっちゃうネ!
0703デフォルトの名無しさん
2014/10/21(火) 14:27:08.90ID:KtwB32hV仕様変更に喜びを感じられるぐらいじゃないと、いまSwiftを使うべきじゃないだろ
0704デフォルトの名無しさん
2014/10/21(火) 17:05:12.94ID:0UW3NQgiそれを回避する(バッド)ノウハウを Apple が指定してなかったっけ?
0705デフォルトの名無しさん
2014/10/21(火) 17:08:03.70ID:PHCekvw0それは8.0のシミュレーター入ってる?
betaの8.1のシミュ全然使えなかったけどどう?
0706デフォルトの名無しさん
2014/10/21(火) 21:15:42.74ID:PiNv6KYl基本実機で動かしてるから、シミュレーターはそんなに使っていないけど
ロジックテストは8.1のシュミレーターで普通に通ってますわ。アプリの基本機能もとりあえず問題ないっぽい
0707デフォルトの名無しさん
2014/10/21(火) 22:44:09.89ID:xrLiD/wR0708デフォルトの名無しさん
2014/10/21(火) 23:01:43.61ID:7WAeJlTS0709デフォルトの名無しさん
2014/10/21(火) 23:19:43.11ID:XEHUXI0FSwift初心者で、画像処理系を学ぶ延長線上でPhotoExtensionを勉強しているのですが、画像保存が出来ずに困っています。
参考として顔写真にジェントルな髭を生やすこのサンプルを使ってるのですが、エラーが出てしまいます。
http://blog.elpassion.com/el-mustache/
調べた所、IImageJPEGRepresentationに画像データが入ってないためnilエラーが返ってきてたようなのですが、以下のコードのどのあたりを直すといいのでしょうか?
・製作中のExtension.swiftのfunc finish内
let output = PHContentEditingOutput(contentEditingInput: self.input) // 編集済画像参照
let saveImgData = UIImageJPEGRepresentation(self.image, 0.1) //JPEGとして保存
var error: NSErrorPointer = nil
NSLog("%@", output.renderedContentURL) //参照した画像のアドレスをログに出す
saveImgData?.writeToURL(output.renderedContentURL, atomically: true) //画像を保存する ←ここでoutputに入るはずのデータが入ってない
・SwiftMustaches PhotoEditorViewController.swift -> func finish-内
let output = PHContentEditingOutput(contentEditingInput: self.input)
output.adjustmentData = self.adjustment!.adjustmentData()
let fullSizeAnnotatedImageData = UIImageJPEGRepresentation(self.image, 0.9)
var error: NSError?
et success = fullSizeAnnotatedImageData.writeToURL(output.renderedContentURL, options: .AtomicWrite, error: &error)
if success {
NSLog("Saved successfully")
completionHandler?(output)
}
else {
NSLog("Error when writing file: \(error)")
completionHandler?(nil)
}
0710デフォルトの名無しさん
2014/10/21(火) 23:33:30.21ID:3SWr2ruD0711デフォルトの名無しさん
2014/10/21(火) 23:40:06.82ID:7WAeJlTSただの文字の羅列に見えてしまう
0712デフォルトの名無しさん
2014/10/22(水) 00:27:40.92ID:YmpQT9+3self.imageには画像入れてます。
色々と弄った所、Doneで確定は出来るんドSが、ログに
Content editing output is missing adjustment data.
が出て保存されない状態になってます。
髭サンプルにあるsuccess分岐を入れると、image savedと出たのでUIImageJPEGの部分は上手く動いてるようには見えるのですが、さっぱりわからないです・・・
0713デフォルトの名無しさん
2014/10/22(水) 00:28:47.17ID:YmpQT9+3image saved -> Saved successfully ですね。
この部分です。
let success = fullSizeAnnotatedImageData.writeToURL(output.renderedContentURL, options: .AtomicWrite, error: &error)
if success {
NSLog("Saved successfully")
completionHandler?(output)
}
else {
NSLog("Error when writing file: \(error)")
completionHandler?(nil)
}
0714デフォルトの名無しさん
2014/10/22(水) 17:35:15.46ID:09vRtLa/Objective-C最高
0715デフォルトの名無しさん
2014/10/22(水) 20:23:53.18ID:tMZHUzNJswiftのグローバル変数の遅さ早くなんとかしてもらいたい。
0716デフォルトの名無しさん
2014/10/22(水) 21:21:40.50ID:bv0+gz6+作りが悪いのをグローバル変数のせいにしてない?
0717デフォルトの名無しさん
2014/10/23(木) 03:59:06.36ID:dXJn7cDs0718デフォルトの名無しさん
2014/10/23(木) 06:58:22.43ID:QsQhyUlJ0719デフォルトの名無しさん
2014/10/23(木) 08:04:11.54ID:g5BlEiEq0720デフォルトの名無しさん
2014/10/23(木) 08:16:01.95ID:KBq+arCaドSの問題がよく分からんな
swiftとは関係ない所でこけてるんだろうが Extension の試験がてら組んでみるか
0721デフォルトの名無しさん
2014/10/23(木) 11:46:39.83ID:N4gIq5WpあとEquatableとかComparableとか、フィールド型から自動導出してくれないかなあ(Haskellのderivingみたいな)
型安全のためにStringとかナマで使いたくないからラッパー型作るけど、その度に大量のboilerplate書くはめに
0722デフォルトの名無しさん
2014/10/23(木) 14:12:37.11ID:V4+/NqZk10個のボタンで処理に1秒かかる。
■ このスレッドは過去ログ倉庫に格納されています