let s: プログラミング言語? = Swift[2]
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名称未設定
2014/08/23(土) 09:55:25.03ID:vQdcSMFciApple Developer
ttps://developer.apple.com/swift/
Welcome to Swift
ttps://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/
書籍iBooks:
The Swift Programming Language
ttps://itunes.apple.com/jp/book/swift-programming-language/id881256329?mt=11
Using Swift with Cocoa and Objective-C
ttps://itunes.apple.com/jp/book/using-swift-cocoa-objective/id888894773?mt=11
書籍の形にはなってないけどドキュメント
The Swift Programming Language
ttps://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
ttps://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Swift Standard Library Reference
ttps://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/
Swift Blog
ttps://developer.apple.com/swift/blog/
Resources (Xcode 6が無料でダウンロードできる)
ttps://developer.apple.com/swift/resources/
関連スレ
Swift part3
http://peace.2ch.net/test/read.cgi/tech/1406083608/
前スレ
プログラミング言語Swift
http://anago.2ch.net/test/read.cgi/mac/1401736921/
0003名称未設定
2014/08/23(土) 10:42:05.43ID:21bn9bpW00004名称未設定
2014/08/23(土) 11:19:27.77ID:vQdcSMFcilet s: プログラミング言語? = Swift(part: 2)
ってすりゃよかった
0005名称未設定
2014/08/23(土) 11:53:26.46ID:i/ODvkXe00006名称未設定
2014/08/23(土) 11:54:34.97ID:i/ODvkXe00007名称未設定
2014/08/23(土) 11:57:52.16ID:i/ODvkXe0プログラミング言語Swift 3
http://anago.2ch.net/test/read.cgi/mac/1408762479/
0008名称未設定
2014/08/23(土) 12:10:41.23ID:i/ODvkXe00009名称未設定
2014/08/23(土) 12:42:54.78ID:Ua4LMA5ui0010名称未設定
2014/08/23(土) 12:47:04.78ID:i/ODvkXe00011名称未設定
2014/08/23(土) 13:19:35.93ID:vUov9+yQ0こっちが先に立ってるからこっちで進めてください あっちは次のスレとしてでも使ってください
0012名称未設定
2014/08/23(土) 14:17:51.81ID:vUov9+yQ0どうしてだろ 別にNGThread 何かに登録してる訳でもないのに
0014名称未設定
2014/08/23(土) 14:45:11.03ID:vUov9+yQ0他に JaneDoe Viewを使ってる人は見えてるのかな?
この板でスレッドあぼ〜んとなってるのはこのスレの他には
【新登場】2ちゃんねる快適ツール「浪人」。
http://anago.2ch.net/test/read.cgi/mac/9248888888/
これだけ
0015名称未設定
2014/08/23(土) 14:57:56.83ID:Mwm8lB4700016名称未設定
2014/08/23(土) 14:59:21.36ID:i/ODvkXe00017名称未設定
2014/08/23(土) 15:01:20.42ID:vUov9+yQ0(でも 【新登場】2ちゃんねる快適ツール「浪人」。 と言うスレは全く姿を消した)
0018名称未設定
2014/08/23(土) 15:31:25.77ID:vUov9+yQ0板一覧が古くてiOS が見えない, iOSゲームの板名がiPhoneのまま 板一覧更新がない?
スレ違いだからこの辺で終わりにします
0019名称未設定
2014/08/23(土) 16:16:41.46ID:5EQZjBV800020名称未設定
2014/08/23(土) 16:46:06.23ID:xODCpz4Ji未来では全てのプログラミング言語が1つになる?
http://www.gizmodo.jp/2014/08/1_189.html
C++ では限界が見えたからこそ新しい言語が生まれてきてるんだよ
C++ で満足出来るならSwiftなんか生まれないし誰も賛同しないよ
コンピュータ言語は黎明期の言語体系から殆ど進化していない
記号、ツールから抜け出せていない
もっと人間の言葉、学問の専門用語などを理解するようになって行くだろう
ロボットもヒューマノイドロボットがやっと立ち上がりかけているし、人間とコミュニケーションを取ろうと努力している
コンピュータ言語の進化系は幼児から専門家まで隔たりなく利用出来るようになることだろう
0022名称未設定
2014/08/23(土) 17:46:56.17ID:Mwm8lB4700023名称未設定
2014/08/23(土) 18:34:07.78ID:Ua4LMA5ui自然言語を模したプログラミング言語が多数存在しているんだけどな、LiveCodeとかひまわりとか
それを使うのかというと、メリットもユースケースがなさすぎてユーザもプログラマも使わないけど
0024名称未設定
2014/08/23(土) 18:55:10.30ID:0thnJkjh0情報取得元が変更していないだけ。
0025名称未設定
2014/08/23(土) 19:05:47.71ID:j6VbooA7i例えば古くはCOBOL
拡張性や曖昧さを理解する懐の深さが無いと
0026名称未設定
2014/08/23(土) 19:09:35.13ID:Ua4LMA5uiなでしこはいい感じだったぞ、LiveCodeはイマイチすぎたが
そして今更だが>>20が求めているのは自然言語入力インターフェースで
ロジックを組む言語は気にしてない気がしてきた
0027名称未設定
2014/08/23(土) 19:29:04.23ID:5EQZjBV80限界の意味が分からん
限界ってようするに長ったらしい構文のことだろ?
それはC++が限界なのではなく、.hに限界があるんだろ?
結局の所、この手の統一という話というのは.hをWikipedia形式にすることが最良だと思うんだよね
0028名称未設定
2014/08/23(土) 19:41:20.39ID:5EQZjBV80結局こちら側は読みとりのみ許可状態で、かゆいところをなおしたいと思っても権限がないわけだ
だからどの言語もいきづまる
これを回避するためには進化を続けるしかないわけだが、XMLのように厳格な基礎のみをおいて、残りは好きに編集させるのがよい。
たとえ違うネームの同じ処理があったとして、それはさしたる問題ではない。
そのように著作権を有しない、真の処理ライブラリが求められていると思うんだよね
わかりやすい形式としてWikipediaのようなやつね
0029名称未設定
2014/08/23(土) 19:55:05.29ID:Ua4LMA5uiライブラリなら pip, gem, maven などと自由に楽になってるよ
0030名称未設定
2014/08/23(土) 20:23:31.94ID:5EQZjBV80ただ統一するとしたら共通なライブラリとそれを元に分解する機能が必要で、それがあれば統一できると考えただけ
たとえば、varというものがわかりづらいとしてヴォーカルという名前にしたいとする。
var = ヴォーカルというものを作れば使えますとする。
で、さらにサバイブというものを作りたいとする、それはヴォーカルに387をかけた値だとする
そしたらサバイブ=ヴォーカル*387と登録すれば使えるとする
しかしこれでは他人はわからないので、サバイブを分解することができるとする。たとえば(ダブルクリックで)そうするとそこはヴォーカル*387に置き換わる
こういうものが世のみなから求められていると思う。
まあただの独りよがりな独り言です
スレ汚しすまそ
0031名称未設定
2014/08/23(土) 21:34:23.80ID:Ua4LMA5ui0032名称未設定
2014/08/23(土) 22:47:16.03ID:2+ebs+2/0しかもメンバーに対して仕様に関する文句を言われても困るんだよな
開発元にメールするかチームから去れって思うんだけど
0033名称未設定
2014/08/24(日) 07:38:45.35ID:4eBufhpn0if 1...10 ~= 5 { println( "範囲内" ) }
オーバラップしてパターンマッチを拡張出来るとも書かれてるが、標準で色々入れておいて欲しいな
文字列パターンマッチ
"the Swift" ~= "wi" // true など
0034名称未設定
2014/08/24(日) 07:58:10.48ID:PiUHakg90これなぁ
初見では「おお!」って思ったんだけどJavaみたいになったらアウトだし、モジュール的に複数の言語を使うのは(マークアップ言語やJS、PHPも視野に入れてるから)効率が逆にいいと思ってんですよぼかぁ
0035名称未設定
2014/08/24(日) 10:32:21.39ID:dRwlKBNY0>"the Swift" ~= "wi" // true など
~=はオーバロードしなければ標準で==と同じ動きするから、~=(String, String)でオーバーロードすると文字列でのswitchなど標準の動きを破壊するぞ
やるなら~=(NSRegularExpression, String)とかにしとけ
0036名称未設定
2014/08/24(日) 11:20:10.41ID:eJluoFGX0簡便さより単純さを重視した言語の時代になるやろな
0037名称未設定
2014/08/24(日) 11:28:25.28ID:OmhNnqPf00038名称未設定
2014/08/24(日) 12:47:22.59ID:4eBufhpn0もう一つ解らないのが Switch 文で
switch (1 , 2 ) {
case ( -2...2 , -2...2 ) :
この場合はOK(true)なのに
( -2...2 , -2...2 ) ~= ( 1 , 2 )
がエラーになる理由 コンパイラのバグかな?
Swift Standard Library に比較演算子として == と < の説明しかないのは手抜きだろうな
0039名称未設定
2014/08/24(日) 12:55:31.80ID:2XPcoL6di書いたらドキュメント更新が大変だ
0040名称未設定
2014/08/24(日) 12:57:37.31ID:OmhNnqPf00041名称未設定
2014/08/24(日) 13:22:13.76ID:UOksP5VViExpression Pattern の説明
0042名称未設定
2014/08/24(日) 14:35:01.39ID:OmhNnqPf0タプル自体に~=演算を使ってるのではないのでは?
Tuples
You can use tuples to test multiple values in the same switch statement. Each element of the tuple can be tested against a different value or range of values. Alternatively, use the underscore (_) identifier to match any possible value.
0043名称未設定
2014/08/24(日) 15:08:24.78ID:UOksP5VViThe expression represented by the expression pattern is compared with the value of an input expression using the Swift standard library ~= operator. The matches succeeds if the ~= operator returns true.”
0044名称未設定
2014/08/24(日) 15:21:32.53ID:UOksP5VViしかし何が標準文法で何がライブラリーなのか区別がつかないね
ライブラリーの文法を標準文法の中で使うのなら最低限ライブラリー説明書には入れておいて欲しい
自然に拡張出来るのは素晴らしいことだと思うけど
皆さんにお聞きしたいんですけど、どうして
== や < がライブラリーなんですか?
比較は標準文法外のライブラリーの守備範囲? それはそれで素晴らしいとも思えますがどこまでが標準文法なんでしょう?
0045名称未設定
2014/08/24(日) 15:33:52.86ID:dRwlKBNY00046名称未設定
2014/08/24(日) 15:35:23.57ID:OmhNnqPf0配列と違ってcompound typeだから、要素数が不定なタプルの統一的な演算子って書けないような...書けるのか?
~=は以下の型で使える
func ~=<T : Equatable>(a: T, b: T) -> Bool
func ~=<T>(lhs: _OptionalNilComparisonType, rhs: T?) -> Bool
func ~=<I : IntervalType>(pattern: I, value: I.Bound) -> Bool
0047名称未設定
2014/08/24(日) 16:06:12.42ID:2XPcoL6didefineでやりたい放題な環境になるし
swiftもしかりで真面目に切り分けようとするのは愚行
API referenceはあるし、それで切り抜けろ
0049名称未設定
2014/08/24(日) 16:40:26.15ID:OmhNnqPf0Playgroundで、IntとかprintlnとかをCommand + クリックすると、その定義が見れるでしょ
そのソースの一番下に定義されてる
0050名称未設定
2014/08/25(月) 14:59:37.96ID:DDCLfr9J00051名称未設定
2014/08/25(月) 15:10:31.78ID:F9KUcJJc0Swift Techniques: Strings
http://www.chrismontrois.net/2014/08/02/swift-techniques-strings/
ベースはiOS Developer Library のNSString で有る事は言うまでもないが
NSStringのネーミングは長すぎるからもう少し簡潔にしないんだろうか
このページの =~ で RegExをサーチするようなのを標準で入れるとか
(RegEX自体は古臭くて好きじゃないけど)
0052名称未設定
2014/08/25(月) 15:16:12.85ID:Q6/R9Z+g0Not()とかRange()とかAny()とか
0053名称未設定
2014/08/25(月) 16:26:53.14ID:c4zKJWTe00055名称未設定
2014/08/25(月) 23:00:34.64ID:zsA7o60A00056名称未設定
2014/08/25(月) 23:36:02.72ID:QqLylDvWi0057名称未設定
2014/08/26(火) 00:26:45.76ID:2UMJDwPt0https://github.com/VerbalExpressions/SwiftVerbalExpressions
// 例 Create an example of how to test for correctly formed URLs (注:全角空白使用)
let tester = VerEx()
.startOfLine()
.then("http")
.maybe("s")
.then("://")
.maybe("www")
.anythingBut(" ")
.endOfLine()
// Create an example URL
let testMe = "https://www.google.com"
// Use =~ operator
if testMe =~ tester {
println("We have a correct URL") // This output will fire
}
else {
println("The URL is incorrect")
}
println(tester) // Outputs the actual expression used: "^(?:http)(?:s)?(?::\/\/)(?:www)?(?:[^
//Shorthand for string replace:
let result2 = VerEx().find("red").replace("We have a red house", with: "blue")
0058名称未設定
2014/08/26(火) 08:14:44.32ID:k7xJfbWJ00059名称未設定
2014/08/26(火) 09:21:09.66ID:2UMJDwPt0Identical to (===)
Not identical to (!==)
Use these operators to check whether two constants or variables refer to the same single instance:
0060名称未設定
2014/08/26(火) 10:15:20.71ID:KxpwCchCiis Type check
as Type cast
class Animal {
}
class Cat: Animal {
}
let mike: Animal = Cat()
mike is Cat
0061名称未設定
2014/08/26(火) 15:55:22.87ID:+d5Roq1z0po object
とかしても中身が表示されないし
無限ループにはまってしまったから一時停止してもループのところに止まってくれないし
エディタが正しく動作しなくて編集不能になったり無関係な位置に
スクロールが飛んだりするし
ObjCよりビルド時間が長いような気がする
Xcode6の正式リリースには使い物になるんだろうか。
0062名称未設定
2014/08/26(火) 16:35:30.31ID:gctiERkfihttp://d.hatena.ne.jp/KishikawaKatsumi/touch/20130812/1376310484
面白いのは、Objective-Cでは
この方法の課題としてはオーバーロードができないので、
例えばオリジナルの JS ライブラリでは `startOfLine()` と `startOfLine(bool)` という 2 つのメソッドがあるのですが、Blocks のプロパティだとどちらも同じ名前になってしまうので、引数付きのものだけ用意されています。
とあり、Swiftでは苦もなく解決出来てて
Swiftの存在ありと言う所
-------
このgithubのObjective-C バージョンに対する攻撃を見ると面白いよ。
https://github.com/VerbalExpressions/ObjectiveCVerbalExpressions/pull/3#issuecomment-33791698
JS likeにせずに [[[[[が続くObjCスタイルにしろとか、両方のスタイルをサポートしろとか勝手な事を言ってる
0063名称未設定
2014/08/26(火) 20:54:18.28ID:FYP2uErM0本格安定は8.1になるんだろうか・・・
0065名称未設定
2014/08/26(火) 22:21:01.61ID:FYP2uErM0もう新しくベータを出す時間無いですやん
0066名称未設定
2014/08/26(火) 22:26:17.24ID:baeJT5kI0Swiftの仕様確定宣言ぐらいはあるんじゃね
0067名称未設定
2014/08/26(火) 22:30:48.71ID:2UMJDwPt00068名称未設定
2014/08/27(水) 01:27:42.78ID:ZIOV5u9Y0Swiftの超加速間近で勃起が治まらないっすわ^^
0070名称未設定
2014/08/27(水) 10:45:28.00ID:4EKTwo0Y0var suffixes = "ABCD"
suffixes.substringToIndex(2) // これがエラーになる
"ABCD".substringToIndex(2) // これだとOK "AB"
0071名称未設定
2014/08/27(水) 11:24:52.42ID:SBZWoHoj0suffixes.substringToIndex(advance(suffixes.startIndex, 2))
エラー内容や補完の型情報ちゃんと読めよ
IntじゃなくてString.Indexが要求されてる
ちなみにこれでもいい
(suffixes as NSString).substringToIndex(2)
"ABCD".substringToIndex(2)
こっちがOKなのはsubstringToIndex(Int)を読んでるからリテラルをNSStringと型推論してるから
0072名称未設定
2014/08/27(水) 11:30:50.18ID:4EKTwo0Y0In beta 4, Swift's String.Index handling changed yet again -- you now can't supply an Int when a String.Index is expected.
The way to handle it is by creating the String.Index you need using the advance method:
var suffixes ="ABCDEFGHI"
var ix = advance(suffixes.startIndex, 2)
suffixes.substringToIndex( ix ) // こうしないといけないらしい "AB"
suffixes[2] // これも使えなくなって
suffixes[ix] // advance を使わないといけないらしい "C"
//rangeもそう
let startIndex = advance(suffixes.startIndex, 3)
let endIndex = advance(startIndex, 4) //startIndex+4 > 7
let range = startIndex..<endIndex // same as let range = Range(start: startIndex, end: endIndex) 3..<7
suffixes[range] // "DEFG"
こんなの変更履歴に書いていないよ 何処に書いてある?
めんどくさ過ぎる。 早くすっきりした仕様で整理してほしいよ
0073名称未設定
2014/08/27(水) 11:32:29.76ID:Le72VMEU0let s = "ABCD".substringToIndex(2)
s.substringToIndex(1) ← エラー
気が利くというか利かないというか...
0074名称未設定
2014/08/27(水) 11:34:08.77ID:Nfqu/a7Wi仕様変更があるベータを使うのは初めてか?力抜けよ
0075名称未設定
2014/08/27(水) 11:42:33.55ID:Le72VMEU00076名称未設定
2014/08/27(水) 11:47:38.68ID:4EKTwo0Y0Swiftマニュアルに何も書いていないからね StringはSwiftの型なのに
表面ではStringからNSStringをシームレスに使えると言ってて細かな所で2つに分かれていたりすると訳が解らなくなる
0079名称未設定
2014/08/27(水) 13:34:14.23ID:16tGPY7001 * 0.99 //0 (beta5バグ) 0.99 (beta6修正)
0.99 * 1 //0.99
1 + 0.99 //1 (beta5バグ) 1.99 (beta6修正)
0.99 + 1 //1.99
ところで、現時点beta6での仕様だが、
リテラル(1.0とか、"abc"とか文字で表現された定数値)の扱いが
NSNumberクラス型(正確にはクラスクラスタ)やNSString型になっていて、
一方で変数の扱い var s = "abc"や var i = 1 では、
String型やInt型に型付けされるので慣れないと混乱がある。
上のi = 1を使った
var j = i * 0.99 // jは0となり、こちらは「バグじゃなく仕様です。Xcode6 beta6時点。」となっている。
まず 変数iで左辺がInt型に型推論され、
それに従って0.99のNSNumber型のIntValueである0が適用され、1 * 0が0になるため。
Swiftの強力な型推論は、スクリプト言語のような(見た目も)易しい記述と
ネイティブコードの高速実行(実行中に変数の型チェックをしないで済む)を両立させている。
十数種類もあるメジャーなプログラミング言語候補の中では、
これを両立しているのが今のところSwiftしかない、たぶん。
ただ、上のように、Objective-Cとの連携も絡めた文法の調整などで、まだ流動的な部分はありそう。
0080名称未設定
2014/08/27(水) 13:37:46.56ID:16tGPY700x まず 変数iで左辺がInt型に型推論され
o まず 変数iで右辺がInt型に型推論され
0081名称未設定
2014/08/27(水) 16:33:11.57ID:IL0SVQG+0iOS8リリースと同時にストアに出すような計画してるところは、大変だろうな。
Xcode6正式リリース+仕様変更+大急ぎでコードの手直し
なんて事がありそう
0082名称未設定
2014/08/27(水) 18:34:22.50ID:s//PLoRT0まあ、それでもSwiftで薦め続けたところが無いと言えないだろうが、自業自得/無計画と言わざるを得ない。ベータの初期であーだったんだから
0084名称未設定
2014/08/27(水) 19:06:23.12ID:s//PLoRT0社会に出たらわかると思うけど、俺でもなに言っているのかちょっとわからない文を書く社会人はいっぱいいる。もちろん生粋の日本人でw
0085名称未設定
2014/08/27(水) 19:11:34.57ID:s//PLoRT0>>82
×薦め
○進め
誤字ったなと思ったが、まあわかるだろうとほっといた。すまん
まあ、まさかそれだけではないだろうけど
0086名称未設定
2014/08/27(水) 19:14:12.09ID:lwI3W8wFiとりあえず、Shimejiがどうなるか楽しみだな
あの作者、 swiftでiOS IME作るって息巻いてたろ
0087名称未設定
2014/08/27(水) 19:15:01.31ID:lwI3W8wFi0088名称未設定
2014/08/27(水) 19:22:26.82ID:s//PLoRT0まさか Swift GM (Xcode 6 GM?iOS 8 GM?) が出た後でも、まだころころ実行に影響するようなとこを変えたりしないだろうし。ちょっとした産みの苦しみみたいなもの?Swiftがとんでも好きなら苦しみも微々たるものなんじゃね
0089名称未設定
2014/08/28(木) 01:02:01.28ID:mW3D6gIp0固定するより便利で分かりやすくする方が大事やろ
0090名称未設定
2014/08/28(木) 07:07:24.11ID:AA+1eZoo00091名称未設定
2014/08/28(木) 07:46:21.66ID:cNGtrjCE0ライブラリだからと言う理由でなんでも変更可能
NSString用のメソッドは全てString 用に作り直す必要が有るのでは?
この辺りがGMまでに整備されるとは思えない
NSStringを全てStringにするとなると全てのライブラリが書き直されるまで長い期間がかかりそう
Stringで1バイト文字から4バイト文字まで統一して扱えるのは素晴らしい事だがそれに伴う影響は甚大なものがある
実行時にチェックする必要もありパフォーマンスにも影響するね
そろそろ文字列操作専用エンジンを持つCPUが必要な時期では? OpenCL ?
0092名称未設定
2014/08/28(木) 09:42:11.13ID:E9kIrrxp00093名称未設定
2014/08/28(木) 11:02:36.54ID:iohyzG5R0俺のコーディング力が糞なせいもあるけど
0094名称未設定
2014/08/28(木) 11:53:33.96ID:3X/G85AU00095名称未設定
2014/08/28(木) 12:25:53.93ID:HedrfL4e00096名称未設定
2014/08/28(木) 12:26:49.16ID:cNGtrjCE00097名称未設定
2014/08/28(木) 12:30:31.17ID:HedrfL4e0年内には出るだろ
0098名称未設定
2014/08/28(木) 12:55:34.40ID:3X/G85AU0Appleの中の人もあまり期待できないかもね
ttp://msdn.microsoft.com/ja-jp/library/vstudio/x0c54csc(v=vs.110).aspx
0099名称未設定
2014/08/28(木) 13:03:46.86ID:oruOVbax00100名称未設定
2014/08/28(木) 15:06:11.31ID:cNGtrjCE0メンバをすべて引数に受けとるイニシャライザ(memberwise initializer)
0101名称未設定
2014/08/28(木) 15:29:38.90ID:cNGtrjCE0http://vperi.com/2014/06/05/function-composition-pipelining-in-swift/
0102名称未設定
2014/08/28(木) 21:04:07.00ID:cNGtrjCE0どうやればできるんだろう
func plusOne (x:Int) -> Int { return x + 1 }
infix operator |> { associativity left }
func |><T,U> (left: T, right:( T ) ->U ) -> U { //<<-- ここ?
return right(left) // <<-- ここ?
}
例 10 |> plusOne |> plusOne //11
これらを 次のようにするには?
// func plus (x:Int , y:Int) -> Int { return x + y } //?
例 10 |> plus(9) |> plus(1) //20
0104名称未設定
2014/08/28(木) 22:13:58.72ID:TZcfoxvhi0105名称未設定
2014/08/28(木) 22:19:57.68ID:cNGtrjCE010 |> plusOne |> plusOne //12
>>103 お手本をお願いできませんでしょうか?
0106名称未設定
2014/08/28(木) 22:29:34.74ID:HedrfL4e0func plus (x:Int , y:Int) -> Int { return x + y }
// plus をカリー化した関数
func curriedPlus(x: Int) -> (Int -> Int) {
return {(y: Int) -> Int in
return plus(x, y)
}
}
10 |> curriedPlus(9) |> curriedPlus(1) //20
拡張して
// 任意の2引数の関数をカリー化する関数
func curry<T1, T2, U>(f: (T1, T2) -> U) -> T1 -> T2 -> U {
return {(a: T1) -> (T2 -> U) in
return {(b: T2) -> U in
return f(a,b)
}
}
}
10 |> curry(plus)(9) |> curry(plus)(1) //20
0108名称未設定
2014/08/29(金) 09:48:57.01ID:oGzfMTTC00109名称未設定
2014/08/29(金) 09:56:55.04ID:GoVEuopWi0110名称未設定
2014/08/29(金) 10:43:25.70ID:il9/LOo/i0111名称未設定
2014/08/29(金) 11:51:00.69ID:ZHZYbKWZ00112名称未設定
2014/08/29(金) 13:31:32.45ID:Ojvt7SYW00113名称未設定
2014/08/29(金) 14:31:24.72ID:5zUL9CHC00114名称未設定
2014/08/29(金) 14:39:57.82ID:oGzfMTTC0Swift 8.1MB(バイナリ201KB)
ObjC 178KB(バイナリ144KB)
0115名称未設定
2014/08/29(金) 15:14:16.75ID:6D4rJBQxi何にせよバイナリロード(起動)に時間かかりそうだなw
0116名称未設定
2014/08/29(金) 15:31:42.23ID:4uhqaFyf0メモリ効率はスマフォにおいて重要なものの一つだろ
β版だけの問題だと信じるしかないな
0117名称未設定
2014/08/29(金) 15:33:13.03ID:oCBeAgnN00118名称未設定
2014/08/29(金) 15:41:03.70ID:oGzfMTTC0Xcodeがサイズの小さな()Swiftのランタイムをアプリに埋め込むので、OSの
バージョンにかかわらずアプリを実行できます。
Swift自体もOSに関係なく今後ガンガン変わるかもしれないよ!ということですね。
0121名称未設定
2014/08/29(金) 16:41:25.70ID:SdNeS3cviラッパーではなく一種のランタイムをバイナリのケツにくっつけてるんではないかと想像。
想像が当たっていれば、各OSのバージョンが上がって行くに連れて解消していく問題と思われるが、さて。
0123名称未設定
2014/08/29(金) 21:14:08.58ID:acSUXh6Y0gobjdump -dするとARC絡みっぽいシンボルが大量にあってランタイム部分なのも見て取れる
そうなるとiOSアプリでの8MBってのはなんなんだろか
0124名称未設定
2014/08/30(土) 06:58:58.93ID:Arr9XNky0Moduleを見れば良いんでしょ?
.swiftmoduleだけだと小さいよ
0125名称未設定
2014/08/30(土) 12:30:43.34ID:OXD+cSPB0そうじゃないとXcodeが入ったマシン以外で起動しなくなる
0127名称未設定
2014/08/30(土) 12:47:39.87ID:rSjISQH50仕事で使う場合はXcode7からでいいと思う。
0128名称未設定
2014/08/30(土) 23:42:16.73ID:9tS8oI9500129名称未設定
2014/08/30(土) 23:55:18.86ID:Arr9XNky00131名称未設定
2014/08/31(日) 00:41:20.96ID:ltyjB3vT0>>129 Swift Blogを見たら Objective-C API のSwift 版を作成中だと書いてるからそう遠くなく整備されるのかな?
0133名称未設定
2014/08/31(日) 01:28:30.16ID:mtB0941q0>Swift Blogを見たら Objective-C API のSwift 版を作成中だと書いてる
そんなことどこに書いてる?
0134名称未設定
2014/08/31(日) 02:27:04.11ID:T5gKmGpP0>We're going to create a Swift version of an Objective-C API.
を見て勝手に妄想したんだろうね
相変わらずこの痛い子は英語がろくに理解できないようだけど
これは単にoptionalの説明をするためにObj-CのvaluesForKeys相当のものを
Swiftで実装してみよう、というcase studyの話をしてるだけだね
0135名称未設定
2014/08/31(日) 02:28:46.18ID:ltyjB3vT0Aug 26, 2014
Optionals Case Study: valuesForKeys
We’re going to create a Swift version of an Objective-C API.
ごめん、感違いしたみたい。an になってるから
単にvaluesForKeysだけの事だった。
0136名称未設定
2014/08/31(日) 10:13:11.90ID:fasEsd+Ki0138名称未設定
2014/08/31(日) 10:58:28.83ID:D6QxKOFCi0139名称未設定
2014/08/31(日) 13:35:15.11ID:/8D0MJ5r0OSのバージョンにかかわらず起動できるようにするというので。
で、インストール時にiOS8が不要なランタイムを削除する…ってことはあるのかな。
多分無いだろうな。バンドルされたランタイムのサイズは小さい()から
0141名称未設定
2014/09/01(月) 04:00:05.18ID:vol+Lhb300142名称未設定
2014/09/01(月) 10:28:45.20ID:gEqrnRvai逆に英語の方が得意なんじゃね?
0143名称未設定
2014/09/02(火) 15:36:30.49ID:8BHe5OCy0特に、コンビニエンスイニシャライザからはスーパークラスのイニシャライザを呼べないところとか、再定義していもオーバーライドにならないところとか
0144名称未設定
2014/09/02(火) 16:01:11.31ID:1/y4mnPl0肝心のXcode6の機能がぜんぜんだめ。
extensionを書くとシンタックスカラーリングが使えないバグ。
シンタックスカラーリングをオフにすると自動補完使えない。
特定のコードを書くと場合にコンパイル不能になるバグ
デバッガで途中で止めても変数の中身が表示されない(仕様?)
ビルドに異様に時間がかかる
完成したアプリケーションが大きい
StringとNSStringがいまいち違うからObjCから移植しようとすると大変
!と?の書き分けはいいんだけどデバッガが適切に教えてくれない。
Tupleで変数を返せる、クロージャを渡せるのがブロックとくらべてちょっと
簡単になった
こんなのを仕事で使わされている人が居たらかわいそう。
0145名称未設定
2014/09/02(火) 16:16:45.71ID:8BHe5OCy0それまで辛抱だな
0146名称未設定
2014/09/02(火) 16:39:09.90ID:8BHe5OCy0使いどころで今一わからない
0147名称未設定
2014/09/02(火) 17:04:24.66ID:GFyun9xmiunicode 文字コードは適切に変換されて行くんだろうか?
as って便利な様で怖そうな機能に思う。 その時点でチェックや適切な変換が行われれば良いけど
0148名称未設定
2014/09/02(火) 17:20:25.04ID:8BHe5OCy0文字列の長さは違ってくるだろうけど
0149名称未設定
2014/09/02(火) 17:26:24.91ID:zb/r1ME5iそれは過信だと思うが
Xcodeのへっぽこさは今に始まったことじゃないし慣れだよな
使い勝手が悪くても他に選択肢ないし、我慢して使うものだ
0150名称未設定
2014/09/02(火) 22:47:44.74ID:cdkAfg1g0iOS 8もバグが残ったままでマイナーアップでなんとか改善していくだろう。
0151名称未設定
2014/09/03(水) 00:58:40.12ID:HJtv0c2R0ObjCはUTF16だろ? 混在の恐れは無い?
0152名称未設定
2014/09/03(水) 01:25:56.94ID:F8lBussB00154名称未設定
2014/09/03(水) 07:57:32.52ID:1Gp4nk9Jiswiftコードをビルドしたらobj-cヘッダを作るくらいに親和性()あるし気にするべくもなし
0155名称未設定
2014/09/03(水) 09:52:58.75ID:I0IIaP4Gi0156名称未設定
2014/09/03(水) 11:06:08.58ID:Z7GU/3ue00157名称未設定
2014/09/03(水) 11:46:14.91ID:ASEWNvs40ObjCにSwiftオブジェクトを渡してやれば?
ObjCでも、デバッグ以外の目的で参照カウントに頼るのは良くないけど。
0158名称未設定
2014/09/03(水) 17:01:07.24ID:Z7GU/3ue0ARC環境だからNSObjectを継承してもretainCount()は呼び出せないんですね
ありがとうございました。
0159名称未設定
2014/09/03(水) 17:12:07.68ID:I0IIaP4Gi0160名称未設定
2014/09/03(水) 17:38:34.59ID:tmORLOhj0ObjCならファイルごとにARC On/Offを切り替えられるよ。一つのアプリに両方混在できるし。
0161名称未設定
2014/09/03(水) 17:40:34.25ID:DYIlNI6700162名称未設定
2014/09/03(水) 17:41:24.45ID:llKrbsv60という手もあるが、暗黙的に1個(?)余計にretain(&autorelease?)されているっぽい?
0163名称未設定
2014/09/03(水) 17:41:59.22ID:llKrbsv600164名称未設定
2014/09/03(水) 18:24:26.90ID:9uD60Vdo0すごい、この発想はなかった。背景と絵柄を逆転して見るとそう見えなくもない。
チャレンジングな視点が新しいソフトウェア開発を切り開いていくに違いない、けどそうでないかも知れない、どっちだ?
>>156
>>157
>>158
できる。
NSObject無しのSwift単体でオブジェクトの参照カウントチェックは可能。
まず、SwiftのファイルMySwift.swiftに、NSObjectでないクラスを作る。
@objc class MySwiftNonNSObject {
class func myNewMethod() -> MySwiftNonNSObject
{
return MySwiftNonNSObject()
}
init() { NSLog("I'm Swift.") }
}
(続く)
0165名称未設定
2014/09/03(水) 18:27:57.96ID:1Gp4nk9Ji0166名称未設定
2014/09/03(水) 18:28:15.23ID:9uD60Vdo0次に、Objective-CファイルMyObjC.mを一つ足して、その中に(仮想的な?)ヘッダとコードを書いて、testメソッドを動かす。
#import "プロジェクトの名前-Swift.h"
- (void)test
{
MySwiftNonNSObject *obj =
[MySwiftNonNSObject myNewMethod];
uintptr_t _objc_rootRetainCount(id obj);
NSLog(@"Swift retain count = %lu \n",
(unsigned long)_objc_rootRetainCount(obj) );
}
動作確認済み。
0167名称未設定
2014/09/04(木) 09:39:57.32ID:p7bZOX6pi追随....してんのか?
0168名称未設定
2014/09/04(木) 10:11:10.94ID:33CV5hZ+0Swift離陸ガイドは正式版までは追随すると言ってるし、実際b6までは対応済み。
他は知らないけど、紙の本とかは無理じゃないかな。
0169名称未設定
2014/09/04(木) 10:16:54.57ID:CI5Oq+czi単発の swift本 にそこまで金かける理由もないだろうがw
0170名称未設定
2014/09/04(木) 12:35:11.44ID:N5VCKixf0バイナリ埋め込みのランタイムで互換性確保してるから、この1、2年はSDKのバージョンアップサイクル無視してSwiftだけ変更入りまくる気がしないでもない
0171名称未設定
2014/09/04(木) 13:59:53.21ID:WnF1utAC0紙の本でもう第2版が出てるのも有る
でもなんでこんな時期に紙の本を出すかな。 かなり高い金額でも買う人間が多いからかもしれないけど
0172名称未設定
2014/09/04(木) 17:57:13.16ID:18NULd310ランタイム同梱のSwiftでどういう措置をとるのかは興味深い
0173名称未設定
2014/09/04(木) 20:33:11.18ID:WnF1utAC00174名称未設定
2014/09/04(木) 20:55:35.63ID:p7bZOX6pi0175名称未設定
2014/09/04(木) 23:00:51.90ID:hoOiHEaH0アップルのオレオレ路線ともオサラバwwww
0176名称未設定
2014/09/04(木) 23:11:39.43ID:dLu09CnA00177名称未設定
2014/09/04(木) 23:38:58.83ID:xamwygYX0Mac以外にもゲームが出せる、
ええことやろ
0178名称未設定
2014/09/04(木) 23:43:39.81ID:p7bZOX6pi俺だけかね?
0180178
2014/09/04(木) 23:53:52.55ID:p7bZOX6piスマソ
0181名称未設定
2014/09/05(金) 01:30:09.61ID:s0smc+xM0Cocoaとかフレームワークとの連携はまだ前者の方がしっくり行く。
でも後者Swiftの自由さと言うか柔軟性も魅力的。早くフレームワークとの歴史が深まる事が肝要か。つまり、ある程度出来たら、実験的でも正式扱いで世に出すのが良いかも、ね。
0182名称未設定
2014/09/05(金) 01:51:03.78ID:NUi7DK0j00183名称未設定
2014/09/05(金) 02:04:32.88ID:NgC06ey400184名称未設定
2014/09/05(金) 06:35:26.28ID:VoKULWiU0いい加減仕様を確定させて・・・
0186名称未設定
2014/09/05(金) 18:00:14.35ID:dso9Gzoz0もうみんな飽きたのか?
0187名称未設定
2014/09/05(金) 18:13:37.17ID:CNu17Wmwi0188名称未設定
2014/09/05(金) 18:15:01.39ID:i7/oiyon00189名称未設定
2014/09/05(金) 19:05:34.37ID:exGL6IQuiそう言えば子飼はダウンロード中に暇つぶしの発言をするくせが有るみたいだが、今回は何か発言あったかな
と見たらしっかり発言してた
0190名称未設定
2014/09/05(金) 19:10:54.12ID:exGL6IQuiOptional型に関するさらなる改良
http://qiita.com/dankogai/items/0e8bdf6a32cca2ed2b7d
今回ははじめて更新してからこれを書いたのですが、私がgithubに上げている主なswiftプロジェクトはほとんど無変更で動きました。一月前ぐらいが嘘のようです…
Xcode 6 Beta 7での変更点への対応
http://qiita.com/waytoa/items/f5692327dbca832f40e4
0191名称未設定
2014/09/05(金) 19:18:51.70ID:bD9cERru0alpha以前だろこれ
0192名称未設定
2014/09/05(金) 20:32:21.72ID:yybHeIEq0betaにしては仕様変更おおすぎというのは大きくうなずく
0193名称未設定
2014/09/05(金) 23:32:46.35ID:nDRwZXJ900194名称未設定
2014/09/05(金) 23:40:20.18ID:0YxLFe9800195名称未設定
2014/09/06(土) 00:34:11.58ID:xDPvY3/10やっと突っ込み入れてくれる人がいた
retainとalloc一緒に書くことなんて普通ないからなw
Objective-Cなくなってほしくないというメッセージのつもりっすw
普通書くとしたら、
[[[Obj alloc] init] autorelease];
とかだな
0196名称未設定
2014/09/06(土) 00:35:10.68ID:JXSZ4ik/i0198名称未設定
2014/09/06(土) 00:37:57.30ID:k9uJ3Ll/0一度は仕様を固めないとおちおち使ってらんねえってとこだな。betaだから後方互換なにそれだろうが、一度固めた仕様のは後方互換をちゃんとするだろう。たぶんw
0199名称未設定
2014/09/06(土) 00:41:10.17ID:SMLEvxfR0String 、Array 、+ などのオペレータまでライブラリ扱いだからな。なんでもありな気がする。 拡張の方向での変化なら歓迎だけど
0202名称未設定
2014/09/06(土) 01:09:51.52ID:rtTvcgT30新しく作るならARCなしは嫌だけど
0203名称未設定
2014/09/06(土) 01:43:31.59ID:gq1fEixt00204名称未設定
2014/09/06(土) 01:49:21.31ID:xDPvY3/10これでどうだw
[[[Class alloc] init] autorelease];
適当にノリで書いてるだけです、すみませんでした
こまかなところは勘弁してください。。
0205名称未設定
2014/09/06(土) 08:35:39.26ID:JXSZ4ik/i0206名称未設定
2014/09/06(土) 10:17:00.77ID:JXSZ4ik/ifriendsプロパティをlet にすると、1と2 もできなくなります。
class Hunter {
let name: String
var friends = [Hunter]()
init(_ name: String) {
self.name = name
}
}
let gon = Hunter("ゴン")
// 1
gon.friends.append(Hunter("キルア"))
// 2
gon.friends += [Hunter("クラピカ"), Hunter("レオリオ")]
// 3
gon.friends = [Hunter("ヒソカ"), Hunter("イルミ")]
0209名称未設定
2014/09/06(土) 13:08:59.76ID:pfGf3PlO0class ArrayProxy<T> {
private var array = [T]()
func append(newElement: T) {
array.append(newElement)
}
}
func +=<T>(lhs: ArrayProxy<T>, rhs: [T]) {
lhs.array += rhs
}
class Hunter {
let name: String
private(set) var friends = ArrayProxy<Hunter>()
init(_ name: String) {
self.name = name
}
}
let gon = Hunter("ゴン")
// 1
gon.friends.append(Hunter("キルア"))
// 2
gon.friends += [Hunter("クラピカ"), Hunter("レオリオ")]
// 3
gon.friends = [Hunter("ヒソカ"), Hunter("イルミ")]
0211名称未設定
2014/09/06(土) 13:33:10.25ID:JXSZ4ik/i0212名称未設定
2014/09/06(土) 14:02:11.22ID:JwtUDp9Zi既に要素が入ってたら上書きを許したく無いと言うだけ?
だったら friends の定義にsetでチェックを入れるだけで済むのでは?
0213名称未設定
2014/09/06(土) 14:17:28.44ID:qN6Xn1WA0いや、たんにObjective-CでのNSMutableArrayのReadOnlyなプロパティと同じようにしたかっただけなんですが、
@interface Hunter : NSObject
@property (readonly) NSMutableArray *friends;
:
@end
よく考えたらSwiftの配列は値型なので意味無かったですね
0214名称未設定
2014/09/06(土) 14:20:14.18ID:k9uJ3Ll/0@property (readonly) NSMutableArray *friends;
がおかしいんじゃねっていう、本論とは無関係な話
0216名称未設定
2014/09/06(土) 15:00:47.64ID:k9uJ3Ll/0そんなの想定外であってもおかしくないな
0218名称未設定
2014/09/08(月) 21:11:04.32ID:f8V+lJ8Tiたぶん実行速度に対した影響は出ないんだろうけど…
0220名称未設定
2014/09/08(月) 22:15:08.50ID:xEndwuJFi0222名称未設定
2014/09/08(月) 23:36:37.85ID:vPBF+kQ40C構造体のポインタは宣言できるし
メンバへのアクセスはptr.memory.memberとすればできるでしょ?
0223名称未設定
2014/09/09(火) 03:40:08.37ID:I47KakLviこれは他の有名な言語にはあまりない珍しい性質で、
オブジェクティブCでもNSArrayやNSDictionaryは当然参照型である。
なので、慣れ親しんだ感覚と少し違う手順を踏む必要があるかも知れない、とは言ってもInt値のように値渡しを意識、というだけだが。
例えば、構造体内の各メンバの書き換えには、構造体の中にmutating funcを書かないといけない。
あと、構造体のコピーは値渡しなので、もちろん元データは書き変わらない。
しかし一方で、この値型という性質によりスレッドセーフに扱え、しかもGCDとの合わせ技を使うことで、極めて強力に機能するはず。
プログラマは、スレッドの管理をできるだけGCDに任せて直接タッチせず、
しかも重要で多用されるデータ型式が値型で安全に並列処理できるのであれば、
現状で、主要な実用言語においてほぼ唯一の大きなアドバンテージをSwiftが持っていることになる。
マルチCPU(スレッド)プログラムを神経質にならずにサクッと楽に書けて、
しかもARMやX86のネイティブコードが走るような並列・超高速言語は今、Swiftしかない。
比較的文法が易しくてしかも強力なSwift、いまから勉強しておく価値は絶対にある。
0224名称未設定
2014/09/09(火) 04:55:45.74ID:uQDHlG3G0○○には好きな言語名を入れてね
0225名称未設定
2014/09/09(火) 07:25:16.37ID:WiX0nJNmiオチは悪くなかった
0226名称未設定
2014/09/09(火) 07:41:23.60ID:vQ4GqDXy0ベンチマーク有る?
0227名称未設定
2014/09/09(火) 08:09:13.79ID:Ri7kLzFdi0228名称未設定
2014/09/09(火) 08:34:30.24ID:Ri7kLzFdi0229名称未設定
2014/09/09(火) 09:26:47.32ID:WFbqoro6i0230名称未設定
2014/09/09(火) 11:40:30.67ID:Ri7kLzFdi0232名称未設定
2014/09/09(火) 16:23:46.14ID:q5IGML2ZiObjective-Cとのスピードテストはオブジェクトのソートと言う特殊条件だったらしい
Swiftのスピードがわかる様になるのは並列処理対策が済んだ頃じゃ無いかな。
並列処理はかなりのウエートで考えてる気がする
今後のプログラムは並列処理抜きには語れ無い
0233名称未設定
2014/09/09(火) 16:43:18.74ID:QZucVuTJiMac OSは死に体だから知らん、 Widgetなくしやがって折角作ったアプリがパーだ
0234名称未設定
2014/09/09(火) 16:49:36.54ID:AG01uHj50○iOSで処理効率処理スピードを上げるための並列処理?
0235名称未設定
2014/09/09(火) 16:58:18.75ID:q5IGML2Zi来年辺りは4コアは確実だろう。数年以内にその倍以上にはなるはず
iOSではなく、デスクドップやサーバでは既にその時代に入ってる
最近出て来た言語が並列処理を掲げているのは当然の事。
Swiftが考えていないわけが無い。
0236名称未設定
2014/09/09(火) 17:20:03.43ID:R593ZGV400237名称未設定
2014/09/09(火) 17:26:58.02ID:x5qNCWPFi来年辺りの4コアはもう確実だろうが、
日本時間で今日深夜2時発表のiPhone6で4コア搭載の可能性もある。
Swiftの完成度や仕様に多少揺らぎがあったとしても、
発表を来年の6月まで延ばさずに、今年のWWDC2014にしたのはいい判断だと思う。
0238名称未設定
2014/09/09(火) 17:42:07.81ID:q5IGML2Ziその可能性を持たせた言語仕様と言うことだろ
0240名称未設定
2014/09/09(火) 19:16:40.23ID:/tuTJ5uzi未来のプログラムのありかたとして実行時に動的にロードパージする前提で
それを管理するオブジェクトコントローラが必須で。
Appleのハードはずーっとその前提を基にマルチプロセッサ/マルチコアと
OSの処理分散を進めて来てるのに
なんで2014年にもなって自称プログラマが
「マルチコアと並列処理なんてどこで使うんだよwww」とか言うか。
0241名称未設定
2014/09/09(火) 19:48:05.07ID:aX3Oyhvr0コンパイラーがいい感じにやってくれればいいよ
0242名称未設定
2014/09/09(火) 19:53:52.52ID:O2ld25kP0(ア〜ンド GCDとSwiftの値型コレクション、近日中にコンパイラによる配列の自動並列化も。)
http://www.apple.com/live/
もし来なかったら来年の9月まで待ちましょう、ということで。
0243名称未設定
2014/09/10(水) 00:15:28.74ID:y5D4LXb400244名称未設定
2014/09/10(水) 06:57:58.97ID:LICHcFle0具体的なコア数の発表はなかったのでたぶん前と同じはず。
64bitに移行した直後でもあり、たぶんTSMCでの生産も初回なので、
アーキテクチャはあまりいじらずに、堅く低消費電力版、といったところか。
Xcode6はいよいよゴールデンマスターがリリースされたので、一応は安定してSwiftで開発ができる。
17日のiOS8リリースで正式版だろう。
0245名称未設定
2014/09/10(水) 08:32:39.35ID:FgR584A0iPS3でも大笑いしたが、またもヘソで茶を沸かせてくれるなww
0246名称未設定
2014/09/10(水) 10:56:25.50ID:RLSY7tn500247名称未設定
2014/09/10(水) 11:24:38.48ID:OrpPD8CL06.1b1 fixed many bugs that are not listed in the release notes (individual bugs are not generally listed there).
だってよー
0248名称未設定
2014/09/10(水) 15:14:00.39ID:COG8Egt20This pre-release version of the Xcode 6.1 developer tools is required
when developing for OS X Yosemite, and includes the Swift programming language.
Xcode 6.1 beta runs on OS X Mavericks and OS X Yosemite Developer Preview.
Mac用アプリ開発の場合には6.1ベータで。
https://developer.apple.com/xcode/downloads/
Apple WatchのWatchKitの開発もやるなら、またベータでの開発に戻りそう。
シミュレーター上でいいから、Apple Watchの開発環境が待ち遠しい。
0249名称未設定
2014/09/13(土) 11:10:41.79ID:9OJRV0Qh00250名称未設定
2014/09/24(水) 18:35:16.68ID:NEuJZZpk0beta版じゃないとダメみたい。beta版入れたくないからyosemite待つしかない。
0251名称未設定
2014/09/24(水) 19:07:17.97ID:vad2PJzN00252名称未設定
2014/09/24(水) 19:22:52.67ID:InDQSPsci0254名称未設定
2014/09/25(木) 13:06:25.24ID:Gqvz9+h8idispatch_async(dispatch_get_main_queue(), {
println("Hello, GCD")
})
そういうもんなんですか?
0255名称未設定
2014/09/25(木) 16:32:56.44ID:3nP5WROY0表示メニューあたりにあったと思う
0256名称未設定
2014/09/26(金) 07:45:25.97ID:ILeRhFjs0http://www.runswiftlang.com
アクセスして、左上のRunSwiftボタンをクリックしてから、サイトのサンプルを以下のコードで置き換えて、下にある青いCompileボタンを押す。
for i in 0..<10 {
println( " i = \(i) " )
}
たとえアンドロイドのスマホ使ってて電車の中に居たとしても、たった10秒でSwiftのプログラムが書ける。
Swift触ったことがなくても、まずは試してみ。 本格的に取り組むかどうかは後で決めればいい。
0257名称未設定
2014/09/26(金) 08:38:29.51ID:4bTM3g6J0Assistant Editorのことですか?
表示しててもダメですよ
0258名称未設定
2014/09/26(金) 09:16:57.82ID:ILeRhFjs0NSObjectの継承を外していることや、小さいランタイムで独立して動作することなど、
例の値渡し/参照渡しに絡む話題も含めて、こうした先を見据えた言語の方針が何となく透けて見えているように思える。
対応の形態として、
AppleのWebKitのようにオープンソースにして丸ごとコミュニティに提供するのか、
MSの.NETのように仕様だけを標準化して公開し実装はMonoのようにオープンソース含め各々に任せるのか、
あるいはオラクルのJavaVMのようにランタイムの開発も含め完全に自社のコントロール下に置いてWindows版やLinux版を開発するのか
についてはまだ見えてこない。
それぞれメリットデメリットがあるのでタイミングも含め熟慮していると思うが、
言語仕様と実装品質の維持のために、当初はAppleによるランタイム配布のような気もする。
普及のカギは、サーバー側の各種サービスが、オープンソースコミュニティでSwiftにより書かれ始めることだろう。
IBMとAppleの提携も微妙に気になる。IBMは現状でJava推しだが、今後Swiftが絡むようなことがあるのだろうか?
Swiftの特徴として高速性があり、つまりはC++の役割の置き換えが、明言せずとも遠くを見据えたSwiftの視界内に入っているように思える。
0259名称未設定
2014/09/26(金) 10:40:50.02ID:hnH0ABUYi0260名称未設定
2014/09/26(金) 15:08:40.61ID:nm1eJodB0ならねえだろ。
Appleがそういう方針を持ちあわせてる会社だったら、とっくにiOS開発環境をMac買わずに出来るようにしてるわ。
0261名称未設定
2014/09/26(金) 15:41:37.69ID:SHmbmfaU00262名称未設定
2014/09/26(金) 16:52:57.42ID:gxaLdF4d0clangはFreeBSDで採用されているんですが。Linuxでも使えるんですが
無知ですか?
0263名称未設定
2014/09/26(金) 17:02:01.85ID:XPzbqTDs0var d = ["key1": "value1"]
var v = d["key1"]
"key1 is \(v)" // key1 is Optional("value1")"
"key1 is \(d["key1"])" // "マークがかぶるのでコンパイルエラー
↑これをエスケープとかする書き方ってあるんでしょうか?
0264名称未設定
2014/09/26(金) 17:27:13.34ID:hnH0ABUYiiOSアプリも昔は Linux でも気合いで開発出来たんですが。そして、出来なくなったんですが
無知ですか?
0265名称未設定
2014/09/26(金) 17:49:17.59ID:gxaLdF4d0気合い=Appleが正式に提供しているわけではない。まあ、そこは無知であったのは確か
だが、お前の無知さにはかなわないとは思うぞw
ちなみに
http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-June/073698.html
だって。はてさて
0266名称未設定
2014/09/26(金) 17:53:30.86ID:gxaLdF4d0ちなみに、それができたのってサンプル教えてくださいな
チラっとググってみたが見当たらないんだが。clangがLinuxでもというのからの嘘か?もしかしてと思い始めているんで、おねがいねw
0267名称未設定
2014/09/26(金) 17:58:26.84ID:gxaLdF4d0バックスラッシュでのエスケープも効かないし、Swiftのドキュメントみても一時変数に入れてというのがだねえ
0268名称未設定
2014/09/26(金) 18:41:53.14ID:daTj1051i「WindowsのアプリをMacで開発できるようにしないMSは糞
VisualStudioは使いずらいし囲い込みだ!」
とか言ってる奴がいたら自分でもあきらかに頭おかしいと思うだろうに
なんでああいう人はそういうことを自分が言ってると自覚できないのかねぇ…
他社のOSなんて知らんよ
0269名称未設定
2014/09/26(金) 19:09:15.64ID:cZqRE2DC0別にPCプラットフォームの開発の話じゃないんだし。
0270名称未設定
2014/09/26(金) 19:23:29.21ID:gxaLdF4d0>>266 Android(Linux)中心なら、すぐに出るんじゃないの!?お願いだから出してください
それもまた、ああいえばこういうのだけの嘘と思っちゃうよw
0271名称未設定
2014/09/26(金) 19:29:41.04ID:gxaLdF4d0あ、あんたは、ID:hnH0ABUYiではないのか。それはそれは失礼をしました
>>260なのか!?なんだかなあ。なんだかなあw
0272名称未設定
2014/09/26(金) 19:45:26.44ID:yGy5p90E0「本物のプログラマー」にはなれないな、俺。
囲い込みもくそもないんじゃないかなぁ?
オルタナティブな開発環境でアプリ作ってもトラブルシュートの時に困るし、直してもソースがぐちゃぐちゃになるだけのような気が。
開発環境が共通だとそういう情報がナレッジベースに載ってみなと共有できる。
AppStoreで売るとなると基本はXcodeで記述しないとアウトだし。
0273名称未設定
2014/09/26(金) 21:41:27.46ID:6Jj+U9qy00275名称未設定
2014/09/27(土) 03:25:34.64ID:aEMsRY7niバイナリに互換性あれば良いからコンパイラはどうでもいい
0276名称未設定
2014/09/27(土) 10:59:38.20ID:oO1nPnq+0簡単に見つかるぞ, ggr「ios linux クロスコンパイル」
Xamarinがランタイムを同梱型ならそれでも良い気がするな
Swiftも高々8M byteくらいの小さいサイズ()だし, KVMと比べりゃ余裕だべ
0277名称未設定
2014/09/27(土) 11:31:17.49ID:U1Wfjpk200278名称未設定
2014/09/27(土) 13:09:15.44ID:0VFO8DTH0254 :名称未設定:2014/09/25(木) 13:06:25.24 ID:Gqvz9+h8i
質問なんですけど、Playgroundに下のコードを入力しても何も表示されないんですが
dispatch_async(dispatch_get_main_queue(), {
println("Hello, GCD")
})
ー>
残念ながら、Playground上と、iOSなどのターゲット向けコンパイルの挙動は別で、ちゃんと動かないようだ。
ていうか、Playgroundを使ってて分かると思うけど、スレッドのタスクが生成され起動するタイミングはキーボードの打鍵の瞬間。改行の瞬間ですらない。コードをタイプする最中に始まって勝手なタイミングで消滅する。
なので、PlaygroundでGCD書いたとしても殆どコントロールが効かず確認の意味もあまりない。(ブレークも何もできない)
それでも一応ちゃんとGCDがマルチスレッドで動いていること自体の確認ならPlaygroundでもできる。
例を挙げると、GCD自体はC言語にも対応する低レイヤの基幹技術だが、GCDを利用した上位ラッパーでNSOperationQueueというのがある。
運営からのお知らせ代わりに、魔法石としてNSOperationQueueを使った次のコードを差し上げるから、コピって試してみて。
let mahouIshi = NSOperationQueue()
for i in 0..<10 //10は適当
{
mahouIshi.addOperationWithBlock(
{
var loop:Int32 = 0
for j in 0..<rand()/(INT32_MAX/30) {loop = j} //30は適当
println("taskNo=\(i) , loop=\(loop)")
}
)
}
for i in 0..<3000 { //3000は適当。このforが無いと終わる前にplaygroundを抜けてしまう。
}
println("おしまい")
0279名称未設定
2014/09/27(土) 13:14:31.97ID:0VFO8DTH0>>263
263 :名称未設定:2014/09/26(金) 17:02:01.85 ID:XPzbqTDs0
初心者の質問なんですが
var d = ["key1": "value1"]
ー>
こんな感じでどうかな? "key1"に対応する値があるとは限らないので、!で剥がすのを忘れずに。
let myStr = "dict[\"key1\"]! の結果は" + String( dict["key1"]! ) + " です。"
0280名称未設定
2014/09/27(土) 13:41:40.11ID:0VFO8DTH0で、Swiftが将来WindowsやLinuxに対応するかどうかについての続き。
実際にコード書くプログラマなら知ってる人も多いと思うけど、今日では有名な汎用言語のうちで、逆にマルチプラットフォームに対応していないほうが少ない。
C、C++、Java、C#、Python、Perl、Ruby、PHP、JavaScript、これらは全部Mac/Win/Linuxに対応している。他にも沢山。
ちなみに上の言語を見て気付く人もいるだろうが、対応させる方法はいくつかあり、例えばAppleやMSが直接Javaを開発しているのではなく、JavaVMをオラクルが作ってMSやAppleに提供している。
つまり、Java製アプリは実は、JavaVMというアプリ上の書類に相当する。
同じように、C#製アプリもMono(MSの.NET全体の部分オープンソース版)というアプリの上の書類に相当し、C#を使ってMac上でもiOS上でも動くアプリが作れる。
重要なことは、企業にとってプログラム言語そのものは広まったほうが有利だ、ということ。 むしろ普及させるのに苦心する。
例えて言えば、MSにとってWordの書類.doc形式が広まったほうが嬉しいのと同じ。
Appleにとって、どのような形であれSwift言語単体に関しては、広まったほうが嬉しいからそっちの方向に行くはず。
理由に関して他の読みもあるんだが、今ここでは省略する。
逆に広まると困るケースは、仕様がばらばらに発散して収拾つかなくなった挙げ句に保守を維持しなければならなくなること。
その辺りのメリット/デメリットのトレードオフで、>>258 で言った3つのパターンのうちのどれかになると思うな。
0281名称未設定
2014/09/27(土) 14:29:35.57ID:DSEpkWQv00282名称未設定
2014/09/27(土) 14:34:18.14ID:U1Wfjpk20唯我独尊だからやろ
0283名称未設定
2014/09/27(土) 14:40:23.37ID:DSEpkWQv0なんだよ
0284名称未設定
2014/09/27(土) 15:06:50.44ID:Nb2hUu1I0型推論、#import 不要、オブジェクト型のポインタの * 省略可、isKindOfClass とかの簡略化 (is演算子的な)
他まだあるかも
0285名称未設定
2014/09/27(土) 15:13:08.20ID:lw7UfFWV00287名称未設定
2014/09/27(土) 15:42:41.19ID:piXVjFMB0コンパイラだけでなくクラスライブラリごと公開しないとダメというだけの話で
これはSwiftについても同じだろう
String, Array, Dictionaryが標準型になったけどどうなのか...
そもそもこれらがObjCのFoundationの実装を前提としてるのかどうかもよくわからんし
0288名称未設定
2014/09/27(土) 16:11:01.27ID:aEMsRY7niVBランタイムじゃあるまいし
0289名称未設定
2014/09/27(土) 16:28:13.94ID:5jXXTJBl00291名称未設定
2014/09/27(土) 17:19:44.23ID:TAuYwC9+0WindowsでのQuickTimeの嫌われ具合もそうだし、そもそもApple自体がJavaやFlashをどう扱ってるか見たら判るだろ
0292名称未設定
2014/09/27(土) 17:42:50.11ID:piXVjFMB0互換性のためだと思うのだけれど
AppleってCocoaではそういう配慮をしたことが全くないよね
0293名称未設定
2014/09/27(土) 22:52:46.58ID:NEkL3+q/00294名称未設定
2014/09/28(日) 06:30:38.51ID:J7KC7Cc9Ihttp://yukan-news.ameba.jp/20140925-22339/
書くだけじゃなくて、どこで使われるか、も重要。
それもSwiftの強みだな。
0295名称未設定
2014/09/28(日) 07:32:07.66ID:czYTRwCJiRuby, PHP 「どこで使われるか、も重要。(Web派)」
Java 「どこで使われるか、も重要。(ランタイム派)」
C# 「どこで使われるか、も重要。(MS派)」
swift 「どこで使われるか、も重要。(Apple派)」
0296名称未設定
2014/09/28(日) 07:37:59.09ID:J7KC7Cc9I0297名称未設定
2014/09/28(日) 07:43:54.73ID:mo4OA5dl0Obj-Cのメソッドはライブラリのシンボルにならないので、関数呼び出しのようにバイナリにべったりくっつかなくても構わないと説明してた。
0298名称未設定
2014/09/28(日) 10:49:04.60ID:SjRQ4qJU0Objective-Cにしろ、Swiftにしろ、Xcodeにしろオレオレの方が自社の戦略に合わせ
易いからな。他の言語や開発環境を採用するとAndroidみたいにいろいろ足引っ張られるし。
0299名称未設定
2014/09/28(日) 10:53:05.32ID:SjRQ4qJU0ずっと前からアップルはカーネルやコンパイラのような基盤部分とプラットホームと呼ばれている所は別の方針を取っている。
Swiftコンパイラーやランタイムの公開はあり得るけど、フレームワークや開発環境の公開はあり得ないな。
0300名称未設定
2014/09/28(日) 11:05:27.41ID:Rg+X4sN400302名称未設定
2014/09/28(日) 11:09:33.17ID:fK5o/6v40http://darwinsource.sourceforge.net/about/
In some cases, however, there are differences. The version of CoreFoundation included in Darwin is known as “CoreFoundation Lite” (or simply “CFLite”), because it doesn't contain everything that the Mac OS X release of CoreFoundation includes.
かな??だとしたら、やむを得ずって感じ?w
0303名称未設定
2014/09/28(日) 11:37:17.41ID:czYTRwCJiswiftランタイムもLLVM,clangコンパイラも
オープンソースにならなきゃ何も出来ない温室育ちは待ってろ
0304名称未設定
2014/09/28(日) 11:47:45.30ID:sVhvKQer00305名称未設定
2014/09/28(日) 11:50:46.03ID:LZgcGIJVi0306名称未設定
2014/09/28(日) 12:00:55.24ID:XM3gKMVF00307名称未設定
2014/09/28(日) 12:21:32.79ID:LZgcGIJViハックできる人は、コード書いてプログラムもできるんでしょうか?
0308名称未設定
2014/09/28(日) 15:45:36.07ID:7mWdq1VO00310名称未設定
2014/09/29(月) 14:26:41.15ID:GwRS0u+S00311名称未設定
2014/09/30(火) 13:18:04.20ID:qslMW37I00312名称未設定
2014/09/30(火) 14:42:28.84ID:pyASzUUT00315名称未設定
2014/10/06(月) 22:19:42.21ID:qGmgGFXV00316名称未設定
2014/10/10(金) 18:39:53.93ID:GaSBwaI300317名称未設定
2014/10/10(金) 20:54:31.82ID:gVuTfBt400318名称未設定
2014/10/12(日) 12:50:30.08ID:vn/TWrkJ0にしてもSwift全然話題になってないな。
ネット住人が勝手に騒いでるだけの言語って感じがする。
0319名称未設定
2014/10/12(日) 13:16:15.14ID:tlxgNI560そら当然なのでは
仕事で使うには言語仕様が落ち着くのを待つしかないし
遊びで弄ってもネットで話題にするしかないし
0320名称未設定
2014/10/12(日) 15:20:00.68ID:MKhNZg0J0結局iOS8/Yosemiteを出すにあたって新しい感を出したかっただけなんだよ
Appleもアイデアが飽和してきたな
もうおなかいっぱいでStay hungryできなくなってきてる
0323名称未設定
2014/10/12(日) 20:33:13.54ID:xcuUvN+c0善戦してんな、くらいの感想しか無いです
0324名称未設定
2014/10/13(月) 16:16:18.92ID:2vdmqpCB00325名称未設定
2014/10/13(月) 16:17:01.74ID:2vdmqpCB00326名称未設定
2014/10/14(火) 08:56:58.62ID:x6NLomU10TIOBEプログラミング言語ランキング - DartとSwiftがトップ20入り
http://news.mynavi.jp/news/2014/10/06/064/
0327名称未設定
2014/10/14(火) 22:30:09.00ID:NUpCXCtb0https://developer.apple.com/library/ios/documentation/General/Reference/SwiftStandardLibraryReference/Array.html
の append() ですが、サンプル
var array = [0, 1]
array.append(2)
playgroundで試すと、() is not convertible to ‘[int]’ と言われて、[0, 1, 2] にならんのですが
なんででしょうか?
0328名称未設定
2014/10/14(火) 22:33:07.21ID:XYqEdDtF0コピペしたけど普通に動いちゃった
0329名称未設定
2014/10/15(水) 09:28:10.35ID:0ScJs9GJivar b = 20
let c: () = a += b
0330名称未設定
2014/10/16(木) 21:00:08.17ID:TOU+2Rhy0char buf[1024];
// buf にデータを代入して末尾に0
[NSString stringWithCString:buf encoding:NSUTF8StringEncoding]
とやって正常に文字列が得られていたものを swift では
var buf = UnsafeMutablePointer<Int>.alloc(1024)
// buf にデータを代入して末尾に0
NSString(CString: buf, encoding: NSUTF8StringEncoding)
とやればいいのかと思ったらコンパイルエラー
Extra argument 'encoding' in call
となります
どこを修正したらいいでしょうか?Xcode 6.1 GM2 です
0331名称未設定
2014/10/16(木) 21:45:34.20ID:j9ctCrGx00332名称未設定
2014/10/16(木) 21:50:43.61ID:TOU+2Rhy0ありがとうございました
0333名称未設定
2014/10/17(金) 00:22:54.21ID:25WKLVxf00334名称未設定
2014/10/18(土) 01:14:04.98ID:ioCLnEuk0`
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer/
xcrun swift
<unknown>:0: error: the SDK 'MacOSX10.9.sdk' does not support Swift
`
って出る
xcode6.1じゃないと無理なのか。
0336名称未設定
2014/10/18(土) 14:49:30.92ID:ioCLnEuk0インストールしてみたけどやはり同じ
xcodeは6.0.1のバージョンのまま。
xcode入れなおしてもできるかどうかはやっていない。
6.1の正規を待つことにする。
0337名称未設定
2014/10/18(土) 15:01:32.62ID:tPf9MHS70https://developer.apple.com/downloads/index.action
・Xcode 6.1 Oct 17, 2014
The is the release version of the complete Xcode developer toolset for Mac, iPhone, iPod touch, and iPad.
It includes the iOS 8.1 SDK, OS X 10.10 SDK and OS X 10.9 SDK. Xcode 6.1 requires OS X Yosemite or OS X Mavericks.
$ xcrun swift
Welcome to Swift! Type :help for assistance.
1>
うちの Mavericks環境でもいけた。
0338名称未設定
2014/10/18(土) 15:46:43.47ID:LO6shSTQ0xcrun --sdk iphoneos swift
とかで行けんじゃないの?
0339名称未設定
2014/10/18(土) 17:13:25.75ID:0mGQyqAD0カス型つくんじゃねー
0340名称未設定
2014/10/18(土) 17:35:02.19ID:ioCLnEuk0へー、iOS環境で使えるんだ。
情報ありがとう使えたわ。
>337
もう使えるみたいだね。情報ありがとう。
0341名称未設定
2014/10/19(日) 03:23:48.50ID:VzO7UItd0思い出せんわ
0342名称未設定
2014/10/19(日) 11:06:10.31ID:Ljh9zTj300343名称未設定
2014/10/20(月) 00:31:37.39ID:2SBKcxQt0アーキにJava採用しても結局ミドルウェアやフレームワークは高価なプロプラ使うじゃん、OracleとかOracleとかWebLogicとか
コスト云々は100%嘘だよ、JavaでできることはC#でできる、そして言語仕様含めてC#のが完成されてて使いやすいんだけどな
怠惰なPGが多いってのは日本だけじゃないってことか
0344名称未設定
2014/10/20(月) 00:54:09.12ID:agGKdN9w00345名称未設定
2014/10/20(月) 03:05:15.39ID:Rh2zFOKriどちらも特に違和感なかった
0346名称未設定
2014/10/20(月) 16:40:49.89ID:Rl2NwfmA00347名称未設定
2014/10/20(月) 17:52:24.67ID:03wKYPy9iswiftもこういうライブラリが出てくるのかねぇ
0348名称未設定
2014/10/20(月) 20:35:34.84ID:g+rjTxqF00349名称未設定
2014/10/20(月) 21:21:36.31ID:CJlP1pYWi無宗教の日本人だけど他宗教との付き合い辛さを身に染みて感じるわw
0350名称未設定
2014/10/20(月) 21:48:43.59ID:g+rjTxqF0終わらない聖杯戦争みたいなもんだ。
0351名称未設定
2014/10/20(月) 21:51:28.13ID:OpVc5BX600352名称未設定
2014/10/21(火) 09:17:59.50ID:o+3/+cDM00353名称未設定
2014/10/21(火) 13:53:13.11ID:2fVFOwaj00354名称未設定
2014/10/24(金) 14:23:50.15ID:O56Wq/DH0ps4は情弱が買う鉄屑
0355名称未設定
2014/10/24(金) 20:15:08.09ID:dQjkBNdG00356名称未設定
2014/10/27(月) 17:54:37.78ID:qU8GnSj50var imageListArray : Array<UIImage> = []
for index in 1...4 {
imageListArray.append( <ーこの行でエラー
//現在のindexに対応するメディア名を生成して対応するUIImageを作成
UIImage(named:String(index) + ".gif"))
}
Missing argument for parameter 'inBundle' in callってエラーが出て実行できないのは何故なんでしょう?
やろうとしていることは画像の配列を作って、動的に配列の中身(4ヶ)を入れようとしています。
環境はxcode6.1です。
よろしくお願いします。
0357名称未設定
2014/10/27(月) 18:08:35.95ID:STB2TWBA0UIImage(named: String) が返すのは UIImage? だから [UIImage] には入れられない
append する前に都度 nil チェックしてアンラップするか、[UIImage?] に入れるかどっちか
0358名称未設定
2014/10/28(火) 22:03:30.13ID:UGA2w31Y0ありがとうございました。
imageListArray.append(
//現在のindexに対応するメディア名を生成して対応するUIImageを作成
UIImage(named:String(index) + ".gif")!)
で、いけました。
0359名称未設定
2014/10/30(木) 21:04:18.47ID:NdBcpSmo00360名称未設定
2014/10/31(金) 08:19:53.67ID:0fcWzUG+0こんどは独自言語に走るかね
アップルも頭が悪くなってきたか
0361名称未設定
2014/10/31(金) 12:25:36.04ID:1Te/DnKI00362名称未設定
2014/10/31(金) 12:33:57.49ID:G8Lm0LcU00363名称未設定
2014/10/31(金) 14:00:46.30ID:gQoDFxw90だけど混乱の元じゃないの?
本には func drawRect(hoge: hogehoge) とかオーバーライドも無しに独自処理が書いてあるんだけど。
0364名称未設定
2014/10/31(金) 16:32:40.01ID:pcFmv4T400365名称未設定
2014/10/31(金) 17:44:29.68ID:or2w48jq0iPhoneアプリ開発の教科書のSwift版が発売されたぞ。
これで勉強してバリバリとあを作るんだ!
0366名称未設定
2014/10/31(金) 17:57:03.67ID:5WWjMpSd00367名称未設定
2014/10/31(金) 17:59:15.88ID:nlILfeYH0待ち中
0368名称未設定
2014/10/31(金) 18:01:31.41ID:5WWjMpSd0Swift part3
http://peace.2ch.net/test/read.cgi/tech/1406083608/
0369名称未設定
2014/10/31(金) 18:21:32.79ID:50HVbjgC0swift勉強しながらゲームを作っているものです
ゲームのマップで使う配列を作ろうとしているのですがうまくいきません
var mapdata[2][3] = [
[0,0,0],
[0,1,0]
]
次のやり方だと配列の長さがわからないのでどうしたらいいか悩んでいます
var mapdata:[[Int]] = [
[0,0,0],
[0,1,0]
]
よろしくお願いします!
0370名称未設定
2014/10/31(金) 18:49:44.06ID:fagw2mq30ステマ ステマ ゴッドステマ
がーったーいだー
0371名称未設定
2014/10/31(金) 19:39:23.55ID:/zbxO1ya0mapData.count ->mapData中の要素の個数で2
mapData[1].count ->一個目の配列の個数で3
でおk
>>369の上の書き方の[2][3]って配列の大きさ指定してるつもりだろうけど、varで固定長の配列作れないんじゃないの?まだ詳しくないけど。
公式リファレンス読むといいんじゃないの?
0372名称未設定
2014/10/31(金) 20:11:04.32ID:50HVbjgC0ありがとうございます!なるほどです!
0373名称未設定
2014/11/01(土) 08:56:35.75ID:0sEeAKHG0Appleがずっとサポートするつもりなら全く文句はない
でもそうじゃないんでしょ?
0374名称未設定
2014/11/01(土) 09:35:08.71ID:AaYe30E000375名称未設定
2014/11/01(土) 10:02:04.35ID:0sEeAKHG0えっ?将来的にSwiftに移行するって言ってなかったっけ?
0377名称未設定
2014/11/01(土) 12:05:04.18ID:q8oVjd3l0(まだ)言ってない。Swiftで喜んでいたヤツの妄想だろ
現にまだObjective-Cベースだろ、Cocoa Touchのを作るためには
0378名称未設定
2014/11/02(日) 01:27:29.99ID:ajw7gDm900379名称未設定
2014/11/02(日) 22:44:28.03ID:rLbUc2JH0828 :デフォルトの名無しさん:2014/11/02(日) 17:35:40.34 ID:1g7aEKYI
AppleはObjective-Cを、MicrosoftはC++をそれぞれ除去して、
低レベルレイヤーはCオンリー、
アプリケーションはSwift、C#という流れに。
いずれも、AndroidがC(Linux) / Java体制であることの追従。
0380名称未設定
2014/11/02(日) 22:53:34.07ID:A6QBdZ0100381名称未設定
2014/11/02(日) 23:52:46.85ID:lNJAF1110理屈がさっぱりわからん
0382名称未設定
2014/11/03(月) 00:17:29.73ID:nVRB0/+60下位はパフォーマンスがいいがハンドリングしにくい言語で書くことぐらい、
高級言語が出来た時から当たり前の話で、いまさらドヤ顔して書くことじゃない。
0383名称未設定
2014/11/03(月) 00:45:57.35ID:DtIwyech00384名称未設定
2014/11/03(月) 01:13:58.19ID:b0ozgTCy00385名称未設定
2014/11/03(月) 08:36:14.59ID:ywpDM3jx0どちらかをオーバーライドしたい時にはどう書けばいいのでしょうか?
func makeButton(Frame: CGRect, text: NSString, tag: Int) -> UIButton
func makeButton(Frame: CGRect, text: NSString, tag: Int, hoge: Int) -> UIButton
hogeを追加した同名の関数でもエラーにはならないです。
0386名称未設定
2014/11/03(月) 15:02:02.76ID:DtIwyech00387385
2014/11/03(月) 15:47:34.76ID:ywpDM3jx0れす、ありがとう
調べたらswiftのオーバーライドはクラスのみってことみたいね。
間違えてたらご指摘ください。
0388名称未設定
2014/11/03(月) 16:32:54.44ID:DtIwyech0(てかできたら、意図せずのエラーの原因にしかならないような)
0389名称未設定
2014/11/03(月) 17:26:11.61ID:GpE0pxN600390名称未設定
2014/11/03(月) 19:15:13.93ID:ZYuyf78m00391名称未設定
2014/11/03(月) 19:41:18.66ID:XMG1x0Ol0func toURL() -> NSURL {
...........
return NSURL.URLWithString(self);
}
........
}
0392385
2014/11/04(火) 09:28:38.52ID:EdEvWWna0なんか勘違いしてましたというか、オーバーライドやデリゲートをググってたら頭が混乱してきました。
継承してオーバーライドすれば継承元のメソッドや関数が利用できるので、デリゲートはいらないような気がするのですが。
スレ違いとは思いますがデリゲートと継承の違いってなんでしょうか?
よろしくお願いします。
0393名称未設定
2014/11/04(火) 10:09:42.87ID:dR9eMPYH0ある車をコピーしてコピーした車を改造すると
「元の車」と「改造した車」ができる。
いちいち車を毎回一から作らなくていいので楽!使い回し万歳!
と、この「継承」というアイデアは良かったのだが
元から派生Aと派生B、派生Cと作ってゆくうちに
派生A改と派生C改改とで互換性がなかったりと
改造で枝分かれしちゃう継承ツリーの問題点が顕に。
そうじゃないだろ、元の車の改造ポイントを明示して
パーツを丸ごと付け外しできるハードポイントを決めておけば
派生A改の改を外して派生Cにハメたりできんだろ
というのが「デリゲート」に限らず旧来の継承に頼らない
オブジェクト指向のトレンドです。
0394名称未設定
2014/11/04(火) 10:16:44.60ID:oFOlJQYh00395名称未設定
2014/11/04(火) 10:26:49.84ID:pFw6fKxx00396名称未設定
2014/11/04(火) 10:29:55.90ID:oFOlJQYh0ブロックは手段
0397名称未設定
2014/11/04(火) 11:27:12.08ID:UXGHplGb0デリゲート:古典的なCallbackの変形
0398名称未設定
2014/11/04(火) 11:48:43.34ID:UXGHplGb0ということで>>392が言っていることはあながち間違いでもないが、Delegateにしたほうが目的がはっきりするとかカッコイイとかいろいろな理由からたとても賢い人たちがそうしてんだから素直に受け入れろw
0399名称未設定
2014/11/04(火) 12:31:34.79ID:sF88Ve+K0格好いいとか阿呆か。
0400名称未設定
2014/11/04(火) 12:34:20.82ID:4hBd4oOv00401名称未設定
2014/11/04(火) 12:39:37.33ID:UXGHplGb0それだけじゃないだろってことだよ
NSApplicationDelegate実装したクラスをいちいち自分で作ってんの?または、NSApplicationDelegateにいろいろ機能てんこもりしてんの?iOSしかやってないんだったら、UIApplicationDelegateでもいいけど
0402名称未設定
2014/11/04(火) 12:42:32.91ID:UXGHplGb0×NSApplicationDelegateにいろいろ
○AppliationDelegateクラスにいろいろ
0403名称未設定
2014/11/04(火) 13:03:36.56ID:BjiqQyEm0訓練されてるから大問題にならない
0404385
2014/11/04(火) 16:07:05.11ID:EdEvWWna0デリゲートと継承の違いがわかりました。
別にデリゲートに文句言ってるわけじゃないですよ。
今まで小さなアプリしか作ったことがないので、デリゲートの有用性がいまいち分かりませんでしたが
ある程度複雑なものになるとデリゲートがあったほうが色々都合がいいと。
ただ、XCODEで部品をドラッグ&ドロップで設置できるなら、部品を接続した時にデリゲートがある部品はデリゲートの
宣言(設定?)までして欲しいなぁ。
0406名称未設定
2014/11/04(火) 22:32:10.54ID:9bi06fAq0敵が画面から出たら消去という処理をしたいのですが
エラーが出て解決できないでいます...
どなたかアドバイスを頂けませんでしょうか?
for i in 0...敵.children.count {
if( 画面外_x > 敵.children[i].position.x){//fatal error: Array index out of range
node.children[i].removeFromParent()
}
}
0407名称未設定
2014/11/04(火) 22:37:52.54ID:whRwhC0E0「...(ピリオド3つ)」は末尾の数字を"含む"範囲だから
インデックスに使うなら末尾を含まない範囲の「..<」を使って
for idx in 0..<array.count { }
ってしないといけない
0408名称未設定
2014/11/04(火) 22:38:33.88ID:sF88Ve+K0敵.children[敵.children.count] がアカンのは分かる?
よって 0...count じゃなくて、0..<count にすべき
0409名称未設定
2014/11/04(火) 22:39:02.56ID:sF88Ve+K00410名称未設定
2014/11/04(火) 22:39:04.32ID:9bi06fAq0間違えました!
. for i in 0..<敵.children.count {
. if( 画面外_x > 敵.children[i].position.x){ //fatal error: Array index out of range
. 敵.children[i].removeFromParent()
. }
. }
0411名称未設定
2014/11/04(火) 22:42:28.34ID:sF88Ve+K0配列の要素を減らしてるのに、i が元の配列数で動いてるのが問題。
そういう時は配列のケツから参照して削っていく。
0412名称未設定
2014/11/04(火) 22:46:45.27ID:whRwhC0E00413名称未設定
2014/11/04(火) 22:49:41.77ID:9bi06fAq0>>408
ありがとうございます!
>>411
なるほど!イメージできました!
ありがとうございます!!!!!!
0414名称未設定
2014/11/04(火) 23:09:35.80ID:9bi06fAq0for( var i = 敵children.count - 1; i > 0; i-- ){
敵.children[i].removeFromParent()
}
0415名称未設定
2014/11/05(水) 08:59:41.22ID:RbzhyyOd0i >= 0; じゃないと要素を全部舐めないような
0416名称未設定
2014/11/06(木) 10:20:42.42ID:oiN7eH8M0No signing identity found
というアラートが出てきて実行できません。
本の中のサンプルを幾つも実行してきて初めて出てきました。
雰囲気的にはデベロッパー登録をする感じなんですが、なぜ急にそんなアラートが出てくるのか
わかりません。
別のアカウントを作って追加で登録とかしなくてはいけないのでしょうか?
0419名称未設定
2014/11/07(金) 00:47:12.35ID:wnh25IBH00420名称未設定
2014/11/09(日) 00:24:39.42ID:pubKJJ0f00421名称未設定
2014/11/11(火) 18:37:37.12ID:mDIgCX5J00422名称未設定
2014/11/11(火) 18:49:57.19ID:cNy9W+Sf00424名称未設定
2014/11/12(水) 09:40:01.46ID:vbBd0SfX00425名称未設定
2014/11/12(水) 09:57:07.71ID:9BduefUX0swift - the amazingly new programming language
amazingly で new ですか、そうですか・・・wwww
この man いつまでメンテするんだろうな
0426名称未設定
2014/11/13(木) 07:47:43.11ID:5Yz9vtpY010.10以降じゃないと動かない。
0427名称未設定
2014/11/13(木) 08:25:18.97ID:eduPkLSs00428名称未設定
2014/11/13(木) 18:52:51.87ID:SnV6RbNX0http://peace.2ch.net/test/read.cgi/tech/1415860741/
0429名称未設定
2014/11/14(金) 13:49:50.15ID:QVSW8QeS0fileNameで指定されたファイルはどこに保存されるのでしょうか?
実機で実行しないとファイルは作られないのでしょうか?
//バイト配列の書き込み
func data2file(data: NSData, fileName: NSString) -> Bool {
var path = NSHomeDirectory().stringByAppendingPathComponent("Documents")
path = path.stringByAppendingPathComponent(fileName)
return data.writeToFile(path, atomically: true)
}
0430名称未設定
2014/11/14(金) 14:47:54.62ID:Ag7DdgVy00431名称未設定
2014/11/14(金) 18:19:00.19ID:QVSW8QeS0予めフォルダーを作っておく必要がありますか?
0432名称未設定
2014/11/14(金) 18:33:45.46ID:2zYQvtWp0NSFileManager
URLForDirectory(_:inDomain:appropriateForURL:create:error:)
を普通使うと思う
NSHomeDirectoryもHomeがじゃなくDocumentsとか特定のはそうやってくっつけじゃなく、
NSSearchPathForDirectoriesInDomainsの方が。で、そこでNSFileManager
URLForDirectoryを使えと言っているし
0433431
2014/11/14(金) 22:47:48.73ID:QVSW8QeS0試してみます。
0434431
2014/11/15(土) 15:23:08.07ID:FHR5Miqq0>>429で書いたコードを実行するとpathには
/Users/hogehoge/Library/Developer/CoreSimulator/Devices/881C18B1-2932-4AC1-BF4F-ED2752DDC7D2/data/Containers/Data
/Application/C37EC247-534A-459D-9B19-2F9530DC6904/Documents/test.txt
と、入っていました。
但し、Finderでこのパスを見ようとしてもLibrayまでは見つけられるのですがその先が見当たりません。
swiftとは関係無い質問になってしまいますが、このパスが存在するか調べるにはどうしたらいいでしょうか?
ちなみに、プログラムの実行状況から見てtest.txtというファイルでの読み書きはしているみたいです。
シミュレーションだからmac側からは見られないようになっているのでしょうか?
よろしくお願いします。
0437名称未設定
2014/11/15(土) 21:43:46.08ID:gI/Dw34H00438名称未設定
2014/11/16(日) 03:00:50.52ID:7s+0cGMd00439431
2014/11/16(日) 23:40:26.40ID:3Tm/jNmf0ファイルが確認できたからすっきりしたわ。
0440名称未設定
2014/11/18(火) 07:20:49.62ID:KdKKU0bM0半年前の和訳騒動が懐かしい・・・
0441名称未設定
2014/11/19(水) 01:21:37.39ID:gaqfKe240http://fox.2ch.net/test/read.cgi/poverty/1416286592/
0442名称未設定
2014/11/19(水) 10:21:58.11ID:4Cn0QVB60こういう時って、本の名前とか出して質問してもok?
0443名称未設定
2014/11/19(水) 12:22:55.20ID:mLZAJ04400444名称未設定
2014/11/19(水) 12:35:26.73ID:5FgilvgW00445名称未設定
2014/11/19(水) 13:09:19.97ID:+zemmV5p0特定の商品の名前を出しただけで「ステマダー!」って大騒ぎするやつ。
0446名称未設定
2014/11/19(水) 13:15:13.03ID:GtQucwsa0ステマ言われた時は、もうじゃあ何話せばステマじゃねーんだよ思った。
0447名称未設定
2014/11/19(水) 15:12:29.31ID:c7VPDuDK00448442
2014/11/19(水) 22:29:30.00ID:4Cn0QVB60どこか貼れるとこありますか?
ここに貼ってもいい?
0449名称未設定
2014/11/19(水) 22:37:52.25ID:0g5KPr260gists的なものはgitstsそのものもだと思うけど。gistsは単発でも貼れるみたいだけど。なんか他に規約があるの?
他にはcodepadとか。SwiftはサポートしていないからPlain Textでだけど
(ここに貼ってもいいと思うけどw)
0450名称未設定
2014/11/19(水) 23:52:25.24ID:pChXj3UZ00451名称未設定
2014/11/19(水) 23:54:00.14ID:wffMPLeW00452442
2014/11/20(木) 07:52:29.66ID:vkUBSD0m0下記URLに貼り付けました。
ttp://pastebin.com/BYB66K4u#
送信ボタンを押すとsample.pngと言う名の添付ファイルを送るプログラムになっています。
症状としては送信ボタンを押すとメールソフトの画面に切り替わるのですが、アドレス等の入力には反応せず
数秒すると予期せぬ原因で停止となります。
当方の環境はOSX10.10.1です。
プログラムが悪いのか、当方の環境のせいなのかがわからないので試していただけるとありがたいです。
よろしくお願いします。
0453名称未設定
2014/11/20(木) 12:24:57.32ID:cc7BvaUo00454名称未設定
2014/11/20(木) 17:03:04.28ID:N17ARoMx0http://stackoverflow.com/questions/25895634/email-composure-ios-8
実機だとマシな程度には動いたぞ
0455名称未設定
2014/11/20(木) 20:17:33.31ID:Hs5fYpgm0http://gihyo.jp/magazine/SD/archive/2014/201412#toc
【新連載】書いて覚えるSwift入門
【1】One More Thing for Developers……小飼 弾
日本最高レベルのハッカーである小飼さんがこういう記事だしてきたってことは
Swiftブームくるな
絶対買って読むべき
0456名称未設定
2014/11/20(木) 20:19:23.24ID:stGPeuAx0笑うとこ?
0458名称未設定
2014/11/20(木) 20:41:56.62ID:vNKoyvbq0本が読める奴か
0460名称未設定
2014/11/20(木) 20:48:08.91ID:kmaTJhLm00461名称未設定
2014/11/20(木) 20:49:06.65ID:kmaTJhLm0もう猫も杓子もDockerでSwiftどころじゃない
0462名称未設定
2014/11/20(木) 21:05:00.86ID:N17ARoMx00463名称未設定
2014/11/20(木) 21:16:38.20ID:Hs5fYpgm0https://www.youtube.com/watch?v=s7wEesGmQQ4
元オンザエッヂCTOの小飼弾さん。 Perlエンジニアとして有名。 ちなみに
六本木の某マンションの最上階に住んでいて、映画バベルにその部屋がセット
として使われてます。 アルファブロガーとしても有名だから小飼弾と検索
したらブログがすぐに見れるはず。 以上説明終わり しかしすげぇー速読だ。
0464名称未設定
2014/11/21(金) 00:10:36.23ID:yi9CS3fQ0http://software.techassistbox.com/swift-dynamic-cast-failed-with-http-get-request_5930387.html
これの通りやってるんだけどdatが取れないんだけどなんで?
0466名称未設定
2014/11/21(金) 01:02:19.00ID:rPU3dXIH00467名称未設定
2014/11/21(金) 01:12:37.31ID:3rQW48d400468名称未設定
2014/11/21(金) 01:14:35.09ID:9aAT+q3d00469名称未設定
2014/11/21(金) 15:53:05.93ID:/QSuxn8y0練習で簡単なストップウォッチアプリを作っています。
タイマーが動いていない時(タイマー=false)のときにスタートを押したらカウント開始して(タイマー=true)になり、ストップボタンを押したら再びタイマーが止まり(タイマー=false)になるコードを書いています。
普通に使うと問題なくアプリは動作するのですが、タイマーが動いてないとき、つまり(タイマー=false)のときにストップボタンを押すとアプリが落ちてしまいます。
if文でタイマーが動いているときのストップボタンの動作しか書いていないからだと思いますが、if文でタイマー=falseのときは何もしないでくれと命令がしたいです。
どのようなコードを書けばいいのでしょうか?
0470名無しさんの野望
2014/11/21(金) 17:11:55.09ID:u9WVe2ng00471名称未設定
2014/11/21(金) 21:40:49.75ID:LNLxsYGv0[SDK]iPhoneアプリ開発初心者質問箱41[touch][iPad]
http://anago.2ch.net/test/read.cgi/mac/1413893867/
0475名称未設定
2014/11/24(月) 19:31:10.68ID:oZ+B9TLu0どうやってやるのかわからん…
0476名称未設定
2014/11/24(月) 20:42:03.79ID:Bb6WTke800477名称未設定
2014/11/24(月) 21:45:55.64ID:L1e1B8Iu00478名称未設定
2014/11/24(月) 22:20:50.66ID:LoesYD0q0C関数が直接叩けるんじゃなくてご丁寧にマッピング関数が用意されてんのか
ホント笑える言語だなw
0479名称未設定
2014/11/24(月) 22:51:14.35ID:1xj9TAZb00480名称未設定
2014/11/25(火) 07:54:00.19ID:g6rpS0Bx0手作業で作ってないってわざわざ指摘してくれるのか、親切な住人のいるスレだw
0481名称未設定
2014/11/25(火) 08:23:33.81ID:udVPcH2u00482名称未設定
2014/11/25(火) 17:05:52.61ID:bwxphInT00483名称未設定
2014/11/26(水) 00:20:22.90ID:b8gJXimn0libcの関数の扱いはなんか別なんだよね
0484名称未設定
2014/11/26(水) 01:03:00.26ID:BoyVGBvJ0自動でブリッジできるって素敵な事ちゃうのん
0485名称未設定
2014/11/26(水) 01:47:23.78ID:SKJy8D0j0ありがたや
しかし、取ってきた Int32 を Character に変換する方法がわからなかった…
CChar [] を String にする方法はみつかったんだけど
いちいち 1バイトずつ CChar 配列にして String にするのもアホらしいしね
0486名称未設定
2014/11/26(水) 03:12:44.69ID:b8gJXimn0String経由でしか無理なのでは
無理やりSwiftの世界に持ち込まずにCもしくはObjCで書いてブリッジさせたほうがいいと思うけど...
0487名称未設定
2014/11/26(水) 09:15:50.68ID:li+5D5f80swiftcってホントやること多いコンパイラだわ
0488名称未設定
2014/11/26(水) 11:00:57.53ID:9rbCCTux00489名称未設定
2014/11/29(土) 08:13:05.23ID:7ftsAm6l00493名称未設定
2014/11/30(日) 15:40:51.15ID:soQIVOjf00494名称未設定
2014/11/30(日) 16:29:59.86ID:2lsAdbqa0初心者方面でもSwiftに興味を持つ人が増えそうだな
日経ソフトウエア 2015年 01月号
http://www.amazon.co.jp/dp/B00PCOGH1U/
【特集1】
6ステップで完全理解Appleの新言語
『Swiftスーパーガイド』
0495名称未設定
2014/12/01(月) 00:10:56.17ID:3GhkgERs0Xcodeからビルドするとゴミだらけになるし、 swiftcでiphoneosをターゲットにするとセグる
考えるのやめてアポー様が適当にやってると思い込むのがいいな
0496名称未設定
2014/12/01(月) 02:41:15.25ID:mR+Oetwi0発表してからもう半年ぐらい経ってねえ?
0497名称未設定
2014/12/01(月) 04:15:54.41ID:L98uawV200498名称未設定
2014/12/02(火) 07:53:19.96ID:5EV9sp/k00499名称未設定
2014/12/02(火) 16:01:59.30ID:41yQ9liR00500名称未設定
2014/12/03(水) 02:47:35.14ID:4pkpmo3h00501名称未設定
2014/12/04(木) 07:46:36.75ID:rl7dFRX900504名称未設定
2014/12/04(木) 17:22:29.40ID:b/OM5C6N00505名称未設定
2014/12/04(木) 23:56:53.27ID:veq+nPuM0やるともやらないとも明言してくれてないから逆に期待してしまう
この際NSとかのプロプライエタリなライブラリ抜きで構わんのだけど
Dockerあたりに仕込んで使ってみたいお
cと連携できるあたり、手間もそこそこに何でもできそうだし
0506名称未設定
2014/12/05(金) 10:10:23.70ID:RJrtwZXY0http://www.apple.com/retail/code/
0507名称未設定
2014/12/05(金) 21:30:19.98ID:XjcTqNH80ラトナーがオープンソース化については前向きに考えているけど今は忙しくてとても手が回らないみたいなこと書いてなかったっけ?
0508名称未設定
2014/12/06(土) 02:22:50.79ID:Hq0WhUNH0XamarinでVSから直接コンパイル・デプロイできれば開発はかどるんに
0509名称未設定
2014/12/06(土) 03:57:09.39ID:w3JhPxk300510名称未設定
2014/12/06(土) 05:37:09.85ID:3G6uysVq00511名称未設定
2014/12/06(土) 11:00:33.52ID:r/tHpCC70はぎわら
おぎやはぎわら
0512名称未設定
2014/12/06(土) 14:17:35.95ID:h4gIbs1600513名称未設定
2014/12/07(日) 04:08:03.06ID:QYGQ7UZX00514名称未設定
2014/12/07(日) 09:29:27.11ID:PbEBTP4/00515名称未設定
2014/12/07(日) 12:11:20.88ID:HrxWz2rS0でもまあトータルではVSかなあ。
まあ同じものを作るのに使い分けできるわけじゃないのでどっちも使いこなすしか無いが。
0516名称未設定
2014/12/07(日) 12:32:21.62ID:9mShSLGH00517名称未設定
2014/12/07(日) 12:34:16.82ID:9mShSLGH00518名称未設定
2014/12/07(日) 20:49:31.16ID:nxheSC5V0おれには、これしかないんだ! だから、これがいちばんいいんだ!!」
松本零士「ザ・コクピット/パイロットハンター」
というのはわかるがなぜ他の環境のスレ来てやるかなぁ…と
プログラム関係ではいっつも思う。
0519名称未設定
2014/12/08(月) 14:39:18.05ID:m2gW8rYf0プログラムに限らずどの業界でも自分のツールが至上と信じて疑わない人はいると思う
Apple(iOS)好きなんかもそうだし
0520名称未設定
2014/12/08(月) 17:13:26.20ID:XHrFe8m20併せても16,000円弱。昔はADCも糞みたいに高かったけど、その代わり
開発機材がほぼ半額で買えた。
0521名称未設定
2014/12/08(月) 18:12:16.97ID:w7mavQjN00522名称未設定
2014/12/08(月) 23:37:05.93ID:ZFvEZIW400523名称未設定
2014/12/09(火) 07:32:41.32ID:+A39vJEv0appleはリファクタリング機能より先に source kitの不安定さを直すべき
開発環境の優劣でプログラマは流れる時代だけど、そもそも開発が出来ないんだよ!
0524名称未設定
2014/12/09(火) 10:18:49.29ID:Wo9xuXgk00525名称未設定
2014/12/10(水) 09:27:40.31ID:SjfjD99V0それは旧ADCの末期の頃。90年代はApple Partner'sは45%引きで買えた。
最初の頃は購入出来る数にも制限がなかったから、開発機材を揃えるのが
楽だった。
0526名称未設定
2014/12/10(水) 13:12:09.42ID:ZiQHFuwu0自分vi使いなんで、、、
優れてる訳もないけど手に馴染んで離せない
手離せないけど優れてないから色んな開発環境渡り歩きだ
言語も同じくpython好きだけど swift に浮気も悪くない
0527名称未設定
2014/12/11(木) 13:10:24.01ID:g+c/FneA00528名称未設定
2014/12/11(木) 16:14:18.67ID:qR/oY0zz0別に swift が特別じゃないよ
0530名称未設定
2014/12/13(土) 00:19:53.12ID:PIDrRWPU0Java系には分が悪いだろうけど、それでもc系ライブラリが繋げやすすぎて変なテンションになる
おもしろおかしい
0531名称未設定
2014/12/13(土) 00:43:28.16ID:z/BYS7/I0なんでLinux?
0532名称未設定
2014/12/13(土) 01:32:44.75ID:PIDrRWPU0板違いな内容をなるたけ割愛して説明したいところですが、逆にややこしくなったんで消して直な説明で失礼します
1.要は手元のvirturlboxやAWSで汎用できるdocker環境で動作させたいんですね。
2.「Docker上のCentOS上でswiftなアプリ起動させて複数鯖に大量デプロイしまくりとか素敵やん?(じゅるり」みたいなイメージですw
0533名無しさん@そうだ選挙に行こう
2014/12/13(土) 13:34:20.13ID:oyt+PllY00534名無しさん@そうだ選挙に行こう
2014/12/13(土) 14:12:12.56ID:k7GajJ7r0と思ったところでswift使う理由なんて自分だってソレ以外ないわと思い直した
0535名無しさん@そうだ選挙に行こう
2014/12/13(土) 19:57:02.03ID:B0F5zIQH00536名無しさん@そうだ選挙に行こう
2014/12/13(土) 19:58:41.17ID:7zZREgIV00537名無しさん@そうだ選挙に行こう
2014/12/13(土) 21:53:52.48ID:Cv7xZ0nM0キモい
0538名無しさん@そうだ選挙に行こう
2014/12/13(土) 23:29:40.34ID:BgBGR4wT00539名無しさん@そうだ選挙に行こう
2014/12/14(日) 02:37:41.10ID:XRQcqT9g00540名無しさん@そうだ選挙に行こう
2014/12/14(日) 14:06:05.59ID:I7vpOhfj00541名称未設定
2014/12/15(月) 16:21:27.70ID:oZxMAp9d0optional Intだと順番が逆になるので「Intかも」にすればいいかと思うけど。
0542名称未設定
2014/12/15(月) 17:34:12.38ID:LnjCZsrD0「いんと」で良いのかな?
0543名称未設定
2014/12/15(月) 17:47:36.11ID:nMtQvAbY0Int? 「いん⤵︎とぉ⤴︎」
Int! 「いんとっっ」
0544名称未設定
2014/12/15(月) 18:44:03.00ID:zMoFM+Se0いんとビックリ
0545名称未設定
2014/12/15(月) 19:48:23.95ID:ZUlImZLF0Int! いんとだろ
0546名称未設定
2014/12/15(月) 20:15:51.06ID:GsyIHyaU0ぜったいいんと
0547名称未設定
2014/12/15(月) 23:22:42.79ID:k7xF8mmG00548名称未設定
2014/12/16(火) 04:54:41.07ID:9gdiwWwo00549名称未設定
2014/12/16(火) 07:38:35.09ID:xZ4coo5N00550名称未設定
2014/12/28(日) 22:50:22.86ID:XVefSsVm00551名称未設定
2014/12/28(日) 22:52:38.30ID:7IoU33gP0なんだか怪しい
0552名称未設定
2014/12/31(水) 15:52:39.69ID:ojPpZAsI00553名称未設定
2014/12/31(水) 20:33:03.03ID:OOQcxs5H00554名称未設定
2015/01/01(木) 00:50:21.38ID:2bX9icqS00555名称未設定
2015/01/01(木) 09:53:21.61ID:WBfEaJoC0これに倣ってる
http://nshipster.com/swift-documentation/
0556名称未設定
2015/01/01(木) 22:53:09.21ID:YwS5u7iZ0汎用フレームワークやライブラリ、UIコントロールを作って公開するわけじゃないし、書かないな。
クラスやメソッドのネーミング、それ以前に設計を頑張った方が、後々のメンテに聞いてくるし。
0558名称未設定
2015/01/03(土) 14:36:13.07ID:dbhLJ7B100559名称未設定
2015/01/08(木) 18:45:27.87ID:DYjanp0701.0 <= Double.NaN // true
1.0 >= Double.NaN // true
というバグがあるので注意。
0560名称未設定
2015/01/08(木) 18:49:02.92ID:fGQ55iDh00562名称未設定
2015/01/08(木) 18:53:38.24ID:fGQ55iDh0NaNチェックしてNaNだったら演算も比較もしない処理に移るしかないだろ?
どういうプログラム書いているの?
0563名称未設定
2015/01/08(木) 19:07:38.70ID:fGQ55iDh0let value
…
if value.isNaN {
NaNになっちゃったよー例外処理
終了
}
if value < 1.0 {
1よりちっさいぞ処理
}
いかづづく…
そもそもNaNになるような演算はしないようにする/その時点でエラーとするけどな。後でNaNチェックだけだと何が問題でNaNになったか限定しづらいので
0564名称未設定
2015/01/08(木) 19:37:32.62ID:DYjanp070if x <= 0.0 {
// Swift ならここで x < 0.0 || x == 0.0 であることが保障されない。
}
0565名称未設定
2015/01/08(木) 20:00:32.54ID:fGQ55iDh0xがNaNだったらということで書いているのか?だったらそれこそ>>561は自分に向けて書いたとしか思えないw
0566名称未設定
2015/01/08(木) 20:02:25.02ID:fGQ55iDh0NaN関係ないし、0.0くらいは信用できるし
0567名称未設定
2015/01/08(木) 23:43:10.84ID:piRRdtf60そんなコード書くなよって話は別だろ
言いたい内容自体は合ってるんだろうけど論点が違う
0568名称未設定
2015/01/08(木) 23:50:32.95ID:fGQ55iDh0雑学の部類としてだな
0569名称未設定
2015/01/15(木) 20:47:20.98ID:UnEtASCD0写真を撮って別のViewに渡したいのですがエラーがでます
protocol ViewControllerDelegate{
func setImg(photo:UIImage!)
}
let myImage:UIImage = UIImage(data: myImageData)!
self.delegate.setImg(myImage)
fatal error: unexpectedly found nil while unwrapping an Optional value
となるんですが、解決できません。
いつもなら!か?を付けたり外したりすると解決するんですが...
助けてください!
0570名称未設定
2015/01/16(金) 00:13:13.66ID:1RvkTHka0>いつもなら!か?を付けたり外したりすると解決するんですが...
そんな曖昧な理解でOptional使うなよ…
self.delegate がOptionalなんじゃないの?
だとしたらOptionalチェーンで
self.delegate?.setImg(myImage)
0571名称未設定
2015/01/16(金) 03:37:46.07ID:4hWYpOMR0ありがとうございます!解決ができました!
がdelegateの書き方が間違っていたのか値を渡せなかったので別な方法を取ることにしました...涙
ちなみにこちらのサイトを参考にしました
ttp://tech.eversense.co.jp/153
Optionalはnilを許容するかしないかって感じだと思ってます!
0572名称未設定
2015/01/16(金) 14:08:51.93ID:3evB3Xot0セキュアに保たれるから深い理解は不要と思ってます!
(思ってるけど、まったく信用していない)
0573名称未設定
2015/01/16(金) 14:15:29.35ID:zsh3op6Z00574名称未設定
2015/01/16(金) 16:55:50.14ID:hsHNAKVV00575名称未設定
2015/01/16(金) 19:50:36.94ID:shfV7gS000576名称未設定
2015/01/16(金) 20:11:22.94ID:tP4ffPho00になったら解放。これの何が難しいんだ?」だったんだろうけど
インターフェイスビルダで作ったインターフェイスは起動時に1で〜って
自分でカウントスタートしてないクラスを渡されると混乱が加速。
0577名称未設定
2015/01/16(金) 22:53:21.92ID:uusesROg0C ほどブレークしなくとも、RubyやPythonくらいには
定着してくれるといいな。と願ってます。
objcのライブラリからがんがん nil が返ってくるんで、
仕方なく追加した仕様に見えなくもない>Optional
0578名称未設定
2015/01/16(金) 23:03:21.05ID:0ZtDKRwo0フレームワークnilだらけなんだよね
だからコードは!と?だらけになる
0579名称未設定
2015/01/17(土) 13:46:34.61ID:II85MCI30そうなの?
他人が+1したやつは基本ノーケアでおkがポリシーでしょ
自分がallocかretainしたやつだけautorelease, releaseしておけばいいだけじゃないの?
0580名称未設定
2015/01/17(土) 14:00:15.93ID:LnnM01Z30俺もあのレス見たとき、「インターフェイスビルダで作ったインターフェイス(インスタンス)」も同じだろ「これの何が難しいんだ?」と思った
0581名称未設定
2015/01/17(土) 14:06:30.82ID:adJB8y+j00582名称未設定
2015/01/17(土) 14:14:53.58ID:9lxAgApI00583名称未設定
2015/01/17(土) 14:54:44.48ID:THQLnkHa0浮動小数点数の標準規格にそぐわぬ挙動をすることに注意するのは当然だろう。
お前滅茶苦茶言ってるぞ。
0584名称未設定
2015/01/17(土) 15:03:48.93ID:qTgEqHXw00585名称未設定
2015/01/17(土) 15:23:16.17ID:LnnM01Z30NaNなんて後生大事に持っていても邪魔なだけってのが経験則だなあ
0586名称未設定
2015/01/17(土) 15:29:31.10ID:X80wmssQ00587名称未設定
2015/01/17(土) 16:56:54.10ID:95nsqBos00589名称未設定
2015/01/18(日) 11:22:58.21ID:cTSHC1HP0言語に文句言うバカは賢いな、言語仕様への盲信者とは違うわ
0590名称未設定
2015/01/18(日) 11:35:42.34ID:pKE+BHai0という違いがわからずに、また、ただ文句言うだけなのになにかしらやっているのと重ねて同じ扱いにするのは馬鹿すぎる
0591名称未設定
2015/01/18(日) 11:56:40.79ID:8zAQncWX0C言語からの脱却を図った馬鹿は文句言う奴がいてこそだけどな
0592名称未設定
2015/01/18(日) 12:17:45.92ID:pKE+BHai0与えられた環境を疑わない馬鹿?
0593名称未設定
2015/01/18(日) 12:24:38.21ID:pKE+BHai0>>590の最初はある意味普遍的wなことだよ
小中、中高、高大でそれぞれのステップを最低限でも理解するはずなんだけどなあ
まあ、精神的に小学生が2chに多いのだからしょうがないか。しかも、なにかしら成し遂げたのと(全然違うのに)自分を重ねてでしか自我を保てないのも多いしな
0595名称未設定
2015/01/18(日) 20:02:56.01ID:kL3eDrGb0自分のクラスで生成(+1)解放(-1)ってやってるのと混ざった時に
IBに出来合いインスタンスは最初が1だから解放されない。
だから生成解放を繰り返すコントローラはIBから受け取ったデフォルトにだけ
リリースを打つ…と打った瞬間にカウンタ0になるから消え去っちゃのでw
まず自分でリテインしてからリリースするという
ハンドシェイクのおまじないが必要で…云々
0596名称未設定
2015/01/18(日) 20:19:48.74ID:pKE+BHai0リソースによりのインスタンスも同じ。自分でオーナーシップを獲得していなければ、自分の制御外で解放される
それが嫌であればオーナーシップを獲得し、不必要になれば放棄する
リソースによりのインスタンスが解放されないのであれば、そのインスタンスがシステム/フレームワーク内の都合で、そこでオーナーシップを獲得しているにすぎない
それを解放させるのはシステム/フレームワークで準備されているからそれを使う/呼べばいいだけ
0597名称未設定
2015/01/18(日) 22:04:55.17ID:kL3eDrGb0で、なんの話してんの?おまえ。
0598名称未設定
2015/01/18(日) 22:06:33.96ID:pKE+BHai0いや、お前に言われたくないってw
0599名称未設定
2015/01/18(日) 22:16:09.40ID:pKE+BHai0>IBに出来合いインスタンスは最初が1だから解放されない
っていうサンプルコード出してみ
0600名称未設定
2015/01/18(日) 23:06:29.16ID:kL3eDrGb00601名称未設定
2015/01/19(月) 01:06:08.25ID:RSXvtGdv0>IBに出来合いインスタンスは最初が1だから解放されない
お前がだろっ!ww
なんなんだこいつは、病気かっ!
0602名称未設定
2015/01/19(月) 02:19:44.77ID:An8jqXXa00603名称未設定
2015/01/19(月) 10:41:12.91ID:pr7GXL7Z0let a=配列1
let b=配列2
let c=[配列1,配列2]
なんかエラーでるや
0605名称未設定
2015/01/19(月) 12:08:10.37ID:ZN6ma7nV0普通に出来たけども
0606名称未設定
2015/01/19(月) 23:02:00.66ID:pr7GXL7Z0もしかしてこんなとこに書いたらダメなのか???
0607名称未設定
2015/01/20(火) 02:22:30.91ID:D4eBBNhZ0class A {
let a = [1,2,3]
let b = [4,5,6]
let c = [a,b] // error: 'A.Type' does not have a member named 'a'
}
だとしたら、普通にこれでいいやんという気がするが…
class A {
let a = [1,2,3]
let b = [4,5,6]
let c: [[Int]]
init() {
c = [a, b]
}
}
0608名称未設定
2015/01/20(火) 08:49:08.84ID:sHAb7P7C00609名称未設定
2015/01/23(金) 12:22:56.64ID:oNjyujiu011,800円になってる
0610名称未設定
2015/01/23(金) 19:14:05.88ID:h9YFTwRi00611名称未設定
2015/01/24(土) 01:21:24.66ID:8HpXrTiw00612名称未設定
2015/01/24(土) 02:10:03.13ID:aSu/tSCh00613名称未設定
2015/01/24(土) 09:26:33.75ID:U8APQblH0Macの値上げもくるな
0614名称未設定
2015/01/25(日) 02:49:29.86ID:UCji5rAJ00615名称未設定
2015/01/25(日) 13:35:51.67ID:7EaTzocp00616名称未設定
2015/01/25(日) 14:01:26.64ID:9n2WnBJU0まさかMSDNの値段のこと言ってるの?
0617名称未設定
2015/01/25(日) 16:13:21.77ID:7EaTzocp00618名称未設定
2015/01/25(日) 16:50:26.25ID:0WkDSBgM00619名称未設定
2015/01/26(月) 00:52:09.58ID:VyPrf84r0その代わり開発機材を半額で購入出来るメリットがあった。最初の頃は購入機材も
無制限だった。
0620名称未設定
2015/01/26(月) 08:23:07.66ID:j8UqybXu00621名称未設定
2015/01/27(火) 05:20:08.82ID:ckxUTOX700622名称未設定
2015/01/29(木) 03:56:53.07ID:pRhwMSmj00623名称未設定
2015/01/29(木) 08:08:53.16ID:zKtOCuQv0バイナリ巨大だわ
コード補完動かないわ
カラーリングうまくいかないわ
リフラクター動かないわ
caller/calleeの参照できないわ
仕様が頻繁に変わってビルドできないわ
0624名称未設定
2015/01/29(木) 18:32:58.90ID:8dm0mUPk0https://itunes.apple.com/jp/course/developing-ios-8-apps-swift/id961180099
0625名称未設定
2015/02/01(日) 03:13:32.70ID:hU3ATMp80可読性という意味で決してよくない。
→objcでよくね。
Xcode確かに酷いな、まだプロジェクトで採用する気になれん。
0626名称未設定
2015/02/01(日) 05:10:34.00ID:fB1F7Q950どうやら、いつでもnilを意識するという癖が無いプログラマが一定数いるみたい
ここはnilでも大丈夫だからnilチェック省略はもちろんnilを意識してることで、その緩さがいいのになあ。どこかのプログだったかでこれがObjective-Cの悪癖だってw
0627名称未設定
2015/02/01(日) 09:40:11.06ID:nQJdd3d000628名称未設定
2015/02/01(日) 10:13:12.55ID:zARynkJK0値自体と値の存在性は直行する概念であって、Optional型がある世界の方がそもそもあるべき自然な姿だった
0629名称未設定
2015/02/01(日) 10:52:20.73ID:7EcOvUPB0CocoaではNSNullなんてものが別にあるけど、これこそ妥協
0630名称未設定
2015/02/01(日) 12:30:02.97ID:5eOmp0iD00631名称未設定
2015/02/01(日) 12:46:23.09ID:ID6TJWwF0まあそうだよな。
ObjCのnilは単なる定数0で、真偽判定あたりでCの仕様を引きずってるからメインで使われてただけで。
0632名称未設定
2015/02/01(日) 14:17:34.77ID:fB1F7Q9500633名称未設定
2015/02/01(日) 14:28:24.43ID:fB1F7Q950あんま実質的な話じゃないなwまあ、NSNullだったらコレクションに入れられませんってのが無いのにってくらいか
0634名称未設定
2015/02/01(日) 14:55:09.58ID:56ExUfKe0値のないキーで objectForKey: したとき何を返すのかが疑問
0635名称未設定
2015/02/01(日) 15:10:26.20ID:fB1F7Q950nil入れてー、めんどくせーが頭に強く残って、そっちのは当たり前の無意識下ですっぽり抜け落ちてた
0636名称未設定
2015/02/02(月) 04:51:46.36ID:0AQrlJwi00637名称未設定
2015/02/02(月) 04:54:42.37ID:D+xQRbhw00638名称未設定
2015/02/02(月) 07:23:44.52ID:busullEF00639名称未設定
2015/02/02(月) 07:33:17.24ID:B+Lg3/3j00640名称未設定
2015/02/02(月) 10:02:48.40ID:ZIMF1l1K05年もしたらObjCの話題出しただけで老害扱いされることだろう
0641名称未設定
2015/02/02(月) 10:09:52.86ID:83sAzeM70まあ、主流がどれかどちらかにはなっているのかは未知数だが、Objective-CにせよSwiftにせよ他の言語にせよ、なんで敵視するのかわからんな。適応できないからとか?w
周りではC(だけ)をやっているのはほぼ見ないが、今Cの話題出したら老害なのか?ふーんw
0642名称未設定
2015/02/02(月) 16:24:57.04ID:l/ghb/Tr0誰かが書いてくれるラッパを使うって手もあるけど
0643名称未設定
2015/02/02(月) 20:03:40.22ID:LyCSlLbs00644名称未設定
2015/02/02(月) 23:36:21.43ID:fockMdBz00645名称未設定
2015/02/06(金) 12:31:57.27ID:8xiUl6Iw0http://anago.2ch.net/test/read.cgi/mac/1422619580/150-
0646名称未設定
2015/02/07(土) 15:40:53.08ID:loZToZC800647名称未設定
2015/02/07(土) 16:19:35.01ID:dxUjxynB00648名称未設定
2015/02/07(土) 18:12:43.30ID:lXYpQRkj00649名称未設定
2015/02/07(土) 18:20:48.46ID:xu6P/gCx00650名称未設定
2015/02/07(土) 18:21:21.37ID:8yMw18p+0Objective-Cの方法論が気に入った我々としては
>Objective-C without the C
で出てくるものは当然
『smalltalk with modern language』かと思ったら
なんかObjective-Cでもsmalltalkでもないただの新言語が出てきて困惑。
0651名称未設定
2015/02/09(月) 09:45:11.38ID:7c710IQm00652名称未設定
2015/02/10(火) 00:04:14.52ID:YvPCVweP0http://elementscompiler.com/elements/silver/
0653名称未設定
2015/02/10(火) 04:16:14.92ID:D2lEHJ6y0https://developer.apple.com/swift/blog/?id=22
0654名称未設定
2015/02/10(火) 10:10:23.46ID:jAs/krrz00655名称未設定
2015/02/10(火) 10:22:39.15ID:jAs/krrz0覚悟の上だろうけど書籍出してる人ら涙目だろ
0656名称未設定
2015/02/10(火) 10:37:18.67ID:ZmlHq9sj00657名称未設定
2015/02/10(火) 11:03:47.12ID:Y5ZZe/Ok00658名称未設定
2015/02/10(火) 11:39:18.32ID:q+aVJuU600659名称未設定
2015/02/10(火) 18:18:35.89ID:VfNH9X/700660名称未設定
2015/02/10(火) 18:26:56.17ID:3jN68bPg0Swiftのような実行時のOptional/非Optionalのような動作にはどうだろうな
表記だけなら好ましい。引数がnilを許容するのかしないのかわかるので
SwiftではNSStringからStringへの暗黙的変換はしなくなったのね。StringからNSStringへはするみたいだけど。なんだろ?
0661名称未設定
2015/02/10(火) 22:14:05.45ID:HcjodI7L0https://developer.apple.com/xcode/downloads/
0662名称未設定
2015/02/10(火) 23:04:52.09ID:oedAzMA400663名称未設定
2015/02/11(水) 03:02:57.04ID:gWgr3cpe0そんなに改善点・変更点多いの?
0664名称未設定
2015/02/11(水) 23:10:34.94ID:vG4wVLT500665名称未設定
2015/02/12(木) 00:20:41.15ID:/1MU2/Bl00666名称未設定
2015/02/12(木) 14:17:40.56ID:kGExNDqy00667名称未設定
2015/02/12(木) 16:40:12.96ID:vlwBgZ6O0WinではいまだにMFCだし。
新言語なんて3時間もあれば使える。(豪語)
0668名称未設定
2015/02/12(木) 19:15:00.05ID:NEvw55+B0以前のiOSに対応させる方法はありませんか?
0669名称未設定
2015/02/12(木) 19:51:14.45ID:oPsy5Y9p00670名称未設定
2015/02/13(金) 21:05:58.67ID:TBU3Ntwj00671名称未設定
2015/02/14(土) 15:29:06.16ID:0/oO10/p0プロはObjective-C
0673名称未設定
2015/02/15(日) 00:56:22.90ID:oOV1QOQ80バイナリにするから元の言語仕様は関係無いんだね。
やる気出てきたー!
0674名称未設定
2015/02/15(日) 03:09:53.64ID:xUfPyZQ/0ただし簡単なアプリ限定で。
コード補完も恐ろしく遅い。
1.2に期待。
0675名称未設定
2015/02/15(日) 13:05:20.04ID:iiwm6AnM0コード補完させようとしたら source kit が落ちる問題もな
1.2 betaは当然まだ使えん
0676名称未設定
2015/02/16(月) 01:51:35.14ID:/WJzoqS40それとも設定かなにかある?
クラスのメンバ変数は見れるけど
0677名称未設定
2015/02/16(月) 02:37:28.55ID:4IFZNCUD00678名称未設定
2015/02/16(月) 07:32:49.97ID:AeBc2uOn00679名称未設定
2015/02/16(月) 11:31:42.92ID:ZckOaPg+00680名称未設定
2015/02/16(月) 19:19:54.42ID:pNmlYkO900682名称未設定
2015/02/16(月) 23:47:58.69ID:VE6xrSIP00683名称未設定
2015/02/17(火) 01:19:59.78ID:IU+yhJvj00684名称未設定
2015/02/17(火) 01:49:44.46ID:suSTFd2/00686名称未設定
2015/02/24(火) 02:03:06.19ID:PiX1ZRhx00687名称未設定
2015/02/24(火) 12:20:54.49ID:qvfB1rJh00688名称未設定
2015/02/24(火) 12:59:20.09ID:a9aElys90行き来するとセミコロン打ってしまうよなw
0689名称未設定
2015/02/24(火) 19:17:11.26ID:XpRXKysE00690名称未設定
2015/02/24(火) 23:28:01.81ID:RFHJqt3w00691名称未設定
2015/02/25(水) 13:38:48.84ID:SydbQ5cR00692名称未設定
2015/02/25(水) 22:38:15.97ID:6o5G86gL0Obj-C 3.0用意したからこっち推しねwww
って言い出しそうな気もしてる
0695名称未設定
2015/02/26(木) 09:27:32.24ID:5KB5TMJf00696名称未設定
2015/02/26(木) 09:49:53.15ID:55oCpqbK0今年のWWDCでの動きを静観しよう。
0697名称未設定
2015/02/26(木) 14:59:01.68ID:nc/N6U9c0class外で書いたグローバルなプロパティって初期化して起動しても覚えてるんだけど、特にリリースとかしなくてもいいのかな?
アプリの設定とかに使うと覚えててくれて便利なんだけど何で消えてないのか分からないから、もっと本格的に使いたいけど何かこわい。
どういう領域に記憶されてるんですかこれ?
0698名称未設定
2015/02/26(木) 21:50:46.90ID:Tvzi6vUT0簡単な小さなアプリつくってる初心者か、
遅いビルドの忍耐が大好きなマニアか、
将来スイフトが主流になった時の為に予習してるか
どれか。
0699名称未設定
2015/02/26(木) 22:33:29.88ID:HySKqxhL0どっちも使えるようになればいいのに。
0700名称未設定
2015/02/27(金) 00:02:23.85ID:gz6ioi2i0え…これで落ちるんwwwwwwwww
ありえんだろ
0702名称未設定
2015/02/27(金) 12:12:53.20ID:aZBEVcVH0これほどじゃなくても、そこそこのアプリだと体感的には3倍くらい
0703名称未設定
2015/02/27(金) 22:53:30.43ID:BXG2QYKb0obj-cでよくね。リファクタリングが無効なのもいただけない。xcode6.3で改善してるのか?
0705名称未設定
2015/03/03(火) 17:21:07.44ID:sQ/mRPfF0ビルド速度やコード補完、リファクタリングも上は関係ないし(工数はアウトオブ眼中
0706名称未設定
2015/03/04(水) 15:04:54.30ID:7a7xhrf600707名称未設定
2015/03/04(水) 22:23:59.18ID:Nni+wYwr0if分とかもスペース入れる箇所が気にくわね
0708名称未設定
2015/03/04(水) 23:45:25.85ID:I6XrnB0G00709名称未設定
2015/03/05(木) 10:19:05.33ID:esISOF/f0豪に入って豪に倣えのスタンスで諦めてるわ
0710名称未設定
2015/03/05(木) 12:40:06.67ID:wVmU5EQt0if分とかは自分好みのをCode Snippetに登録してる。
0711名称未設定
2015/03/05(木) 16:24:00.77ID:t0w0ZiBy00712名称未設定
2015/03/05(木) 17:54:11.24ID:LMVau1vt0AppCodeが使われるのも分からいでもない
Appleは信者が多いので否定意見は2ch内でも少ないよな
0713名称未設定
2015/03/05(木) 18:06:53.20ID:p55fB0IR0モチベーションの為に好きになるのはいいけど、プログラマだったら同時に別の目で見つめることもできた方がいいかもね
0714名称未設定
2015/03/05(木) 18:18:24.64ID:t0w0ZiBy0EclipseやIntelliJが絶対にいいのだったらそっちを使えばいいだけの話だろ(開発できんの?)
AppCodeだってそっちが絶対だったらそっちを使えばいいだけの話
否定だけで自分で調べようとか工夫しようとか何かしようとしないなんて、ほんとに開発者なんかいな
短絡的に「信者」と言うのも短絡てすぎて、普段どういう思考で開発しているのか心配になるな
0715名称未設定
2015/03/05(木) 18:52:10.73ID:RmnjUE0X0いま思考停止しましたボク!って周りに宣言してみせてるだけじゃんwっていう。
0716名称未設定
2015/03/05(木) 18:58:38.63ID:5hXIrfiL00717名称未設定
2015/03/05(木) 19:14:11.59ID:Ul+A7PQB0AppCodeはIntelliJベースでswiftをサポートしたんやで
Xcodeをちょっとけなされたからって他の選択肢を知らない(調べない)のは...
0718名称未設定
2015/03/05(木) 19:37:07.15ID:t0w0ZiBy0なるほど。どうも
特にXcodeでSwiftに「強い不満」も「なにも支障も無い」ので必要ないから調べる必要性もつもりもないからええんやw ちょーっと違う
(けなすw EclipseとIntelliJは他の開発で使ってるけどね。特にどれがどうこうとは思わないな。頭のスイッチにちょっと手間取るだけで。それこそ豪に入って豪に倣えw)
0719名称未設定
2015/03/05(木) 21:42:10.92ID:roEPA32Y00720名称未設定
2015/03/05(木) 23:38:12.78ID:t0w0ZiBy0訓練というか単に馴染むちょっとした努力(?)するだけだけど
0721名称未設定
2015/03/06(金) 00:25:04.60ID:XSSSBOY800722名称未設定
2015/03/06(金) 23:46:42.09ID:NE2l1c7D0ウォッチキットいらんから正規のアップデートして欲しい。
0723名称未設定
2015/03/07(土) 02:19:11.17ID:8Amd2kL300724名称未設定
2015/03/07(土) 02:44:43.99ID:iR0BalLu00725名称未設定
2015/03/07(土) 10:17:57.12ID:FOP5YwBT0足しただけだねぇ
まぁ、Ob-cよりましだな
0726名称未設定
2015/03/07(土) 18:26:33.23ID:lJHe6ALT02%は確実に自分にメリットがあるとわかる
こんな感じ。
0727名称未設定
2015/03/07(土) 19:51:11.50ID:g5kzvWuO0キディがJavaScriptを書きながら「俺、Javaできるぜー」って言って
本物のJavaに直面して「俺の知ってるJavaと違う」って思う感じ
ガチでやろうとすると(今の段階では)objcのがリファレンスが安定してる
そんな感じかな。swift用に命名規則を作らないといけいない気がする
0728名称未設定
2015/03/08(日) 20:44:54.91ID:ENXAB+2h0俺はswiftの方が読み書きが楽だからswiftでいいや。
それよりも別ファイルでIN/OUTを繋ぐ設計図的なものが欲しい。
他人のアプリ直す時コードだけだと動き把握するだけで頭爆発しそうになる。
IB使うと重いのも何とかして欲しい。
バイナリにしたら同じってことには出来ないのかな?
0729名称未設定
2015/03/09(月) 09:21:35.70ID:67dyZoqF0Cocoaと相性いいわ、ビルド速度早いわ、プリミティブ型とそれに準ずる型が少ないわ
obj-cのあまりの便利さに鼻血が出そうになってプライベートは戻ってしまった
今さら業務の方は戻せないから swift やってるけど率先して推すものじゃない
0731名称未設定
2015/03/09(月) 13:21:25.64ID:n4rzqhzh0さぁ、あなたもSwiftをディスってレス乞食しよう!
0732名称未設定
2015/03/09(月) 16:00:05.75ID:k0ALkJVX0swiftよりobj-cの方がスマートに見えるな
swiftで書いたら何コレな感じ
0734名称未設定
2015/03/09(月) 21:30:19.07ID:Qmo4bpr800735名称未設定
2015/03/09(月) 21:45:20.84ID:swJR0lJQ0JavaとSwiftがライバルとして10年ぐらい前に闘ってたのかなぁ…(ポワワ
0736名称未設定
2015/03/09(月) 22:05:26.38ID:BJ/q/EWF0元より土台が違う
0737名称未設定
2015/03/10(火) 06:35:35.42ID:cl2TL5VK0/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift
0738名称未設定
2015/03/10(火) 10:30:12.39ID:7/ZJQfU+0/usr/bin/swift
0739名称未設定
2015/03/10(火) 10:51:51.76ID:TnkYBGWm00740名称未設定
2015/03/10(火) 12:36:50.97ID:uB3QylDb0/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift
0741名称未設定
2015/03/10(火) 16:23:03.83ID:votYSwmN00742名称未設定
2015/03/11(水) 01:04:10.30ID:q4FQQaAr00743名称未設定
2015/03/13(金) 17:26:47.96ID:FYORiJwO0AudioQueueGetProperty を呼びだそうとすると、コンパイルエラーになります。
エラーメッセージ:
Cannot invoke 'init' with an argument list of type '(AudioQueueRef, $T3, $T7, $T11)'
コード:
var levelMeter = AudioQueueLevelMeterState(mAveragePower: 0, mPeakPower: 0)
let levelMeterSize = UInt32(sizeof(AudioQueueLevelMeterState))
if let q = self.queue{ // AudioQueueRef が入っている
AudioQueueGetProperty(
q,
UInt32(kAudioQueueProperty_CurrentLevelMeterDB),
UnsafeMutablePointer(levelMeter ),
UnsafeMutablePointer(levelMeterSize))
}
println("levelMeter = \(levelMeter.mPeakPower)")
2番めの引数が怪しいと思っているのですが(Objective-Cのenum周り?)、
どうしてもわかりません。何かヒントをいただけるとありがたいです。
0744名称未設定
2015/03/13(金) 19:21:46.12ID:sPnacjXt0let levelMeterSize
だから、Unsafe[Mutable]Pointerにはならないんじゃね。また、levelMeterは構造体渡しじゃなくて構造体のポインタでなきゃじゃね
var levelMeterSize = UInt32(sizeof(AudioQueueLevelMeterState))
if let q = self.queue{ // AudioQueueRef が入っている
AudioQueueGetProperty(
q,
AudioQueuePropertyID(kAudioQueueProperty_CurrentLevelMeterDB),
&levelMeter,
&levelMeterSize)
}
かな
0745名称未設定
2015/03/13(金) 19:50:00.52ID:72sdC8Gr0コンパイル通りました!
0746名称未設定
2015/03/13(金) 19:51:30.45ID:72sdC8Gr0勉強になりました。
0747名称未設定
2015/03/13(金) 19:51:32.20ID:72sdC8Gr0勉強になりました。
0748名称未設定
2015/03/13(金) 21:34:12.20ID:72sdC8Gr0リファレンスには UnsafeMutablePointer<Void> ってかいてあったので、それっぽく試行錯誤していたんですが・・。
0749名称未設定
2015/03/13(金) 21:52:01.92ID:sPnacjXt0const int levelMeter = ...;
const int *levelMeterPointer = &levelMeter;
はいいが、
int *levelMeterPointer = &levelMeter;
は、ダメな感じw (テキトーに書いてるから間違っているかもしれない)
AudioQueueGetPropertyで、levelMeterSizeの値が変わる(可能性がある)ので、letじゃダメじゃんvarだろっていう。エラーメッセージがわかりにくだけだな
0750名称未設定
2015/03/13(金) 21:58:03.83ID:sPnacjXt0Cわからなくてletとvarの関係/違いに近いかな
でもやっぱり、OS X/iOS共にCoreがCなのでCを理解しなくてもいいなんてなさげね
0751名称未設定
2015/03/13(金) 22:08:16.95ID:72sdC8Gr0Mutable が付いているのは、変更可能という意味ですよね。
let は Mutable のポインタに出来ないというのは初めて知りました。
let も変更不可ですけど、そことここが連動しているとまでは思っていませんでした。
0752名称未設定
2015/03/13(金) 22:31:04.76ID:72sdC8Gr0これはポインタを作るためのものではなくてポインタ型の定義に使って、実際のポインタは & などで生成するのですね。。
Using Swift with Cocoa and Objective-C のポインタの章を読み直して来ます。
0753名称未設定
2015/03/14(土) 23:15:05.77ID:F13sqbnw0NSTime.scheduledTimerWithTimeInterval で1秒ごとに下記のコードを呼び出しています。
マイクからのボリュームを測りたいのですが、printlnの出力はずっと "levelMeter = 0.0" のままです。
以前書いたObjective-C ではうまくいっていたのですが、なぜ Swift でうまくいかないのかわかりません。
Swiftコード(うまくいかない):
func updateVolume(timer: NSTimer){
var levelMeter = AudioQueueLevelMeterState(mAveragePower: 0.0, mPeakPower: 0.0)
var levelMeterSize = UInt32(sizeof(AudioQueueLevelMeterState))
if let q = self.queue{
AudioQueueGetProperty(
q,
AudioFormatID(kAudioQueueProperty_CurrentLevelMeterDB),
&levelMeter ,
&levelMeterSize )
println("levelMeter = \(levelMeter.mPeakPower)")
}
}
Objective-Cコード(うまくいっている):
- (void)updateVolume:(NSTimer *)timer {
AudioQueueLevelMeterState levelMeter;
UInt32 levelMeterSize = sizeof(AudioQueueLevelMeterState);
AudioQueueGetProperty(queue,kAudioQueueProperty_CurrentLevelMeterDB,&levelMeter,&levelMeterSize);
// Cordova だったので Javascript に送っています
[self writeJavascript:[NSString stringWithFormat:@"receiveVolumeLevel(%f)",levelMeter.mAveragePower]];
}
また何かヒントを頂けるでしょうか?
よろしくお願いします。
0754名称未設定
2015/03/15(日) 00:46:19.36ID:gLE+mjjf0> [self writeJavascript:[NSString stringWithFormat:@"receiveVolumeLevel(%f)",levelMeter.mAveragePower]];
前者は levelMeter.mPeakPower を、後者は levelMeter.mAveragePower を測ってるのだが何故?
0755名称未設定
2015/03/15(日) 01:22:19.70ID:7jCV6PoJ0AudioFormatID(…) でなくて、AudioQueuePropertyID(…)じゃないの?
それとも、どちらを使っても大丈夫なの?
0756名称未設定
2015/03/15(日) 08:09:08.89ID:yOMn1qAU0これは試行錯誤する中で乖離してしまったみたいです。
どちらもボリュームの数値を取るのですが、基準が違います。
しかし直してみても動作は変わりませんでした。
>>755
間違っていました。直してみましたが、動作は変わりませんでした。
levelMeter のポインタをきちんと渡せているんだろうか・・?
0757名称未設定
2015/03/15(日) 10:56:27.16ID:yOMn1qAU0捨ててしまって確認してなかったので、それ見てみます。
0758名称未設定
2015/03/15(日) 13:17:30.48ID:ljKptewv0コンテナビューで分割表示してるビューがあるんですが、この子ビューのボタンイベントでコンテナを持ってる親ビューごと閉じたいときはどうしたらいいでしょうか?
0759名称未設定
2015/03/16(月) 06:26:56.85ID:vB29ydbE0AudioQueueGetProperty で値が取れない件について質問していたものです。
理由は単に AudioQueueSetProperty を事前に呼び出すのが漏れていたためでした。
アドバイスありがとうございました。
0760名称未設定
2015/05/02(土) 19:45:05.53ID:8rMQWpM700761名称未設定
2015/05/03(日) 01:39:20.63ID:4VkrlE2C00762名称未設定
2015/05/03(日) 02:02:30.38ID:2rHMl0RU00763名称未設定
2015/05/05(火) 04:58:56.08ID:2MsaSDrg00764名称未設定
2015/05/13(水) 18:04:10.88ID:+JzT9wj800765名称未設定
2015/06/02(火) 12:12:23.88ID:lhK0HVW400766名称未設定
2015/06/06(土) 13:23:50.13ID:qktaiX2U00767名称未設定
2015/06/06(土) 13:24:19.03ID:qktaiX2U00768名称未設定
2015/06/10(水) 16:54:49.02ID:lXzGEQF/00769名称未設定
2015/06/10(水) 23:08:42.54ID:tfp0btCz0想像だけど。
0770名称未設定
2015/06/11(木) 05:32:41.20ID:Na4mNtEm00771名称未設定
2015/06/11(木) 05:58:36.09ID:vuwb0X7k00772名称未設定
2015/06/12(金) 05:48:25.59ID:fhQf7JcE0linux環境化でGCC拡張をサポートしていないLLVMがlinuxで普及するか微妙。
上手くlinux環境でLLVMが普及したら
LLVMアセンブリ書いて、swiftいらね、あれ、、、
0773名称未設定
2015/06/12(金) 11:17:26.32ID:qq4B28mF00774名称未設定
2015/06/12(金) 11:24:23.35ID:8VIpIe/F00775名称未設定
2015/06/12(金) 16:02:18.93ID:RGdJw/+700777名称未設定
2015/06/12(金) 19:29:52.18ID:qq4B28mF00778名称未設定
2015/06/17(水) 23:54:47.74ID:UACzG7qC0clangはそうでもないのけ
0779名称未設定
2015/06/18(木) 18:43:54.79ID:xQYPjKy200780名称未設定
2015/06/19(金) 03:27:58.94ID:pjDJKqdA0まあ2chなので少しでも荒れれば人は離れるから当然か
さて、去年秋に予想した通りSwiftはついにオープンソースになることが、この間のWWDC2015で発表された
まさか1年で発表するとは予想外でもう少し先だと思ったが、タイミング的にも遅過ぎると普及に絶対的に不利になるからこれもありなのだろう
上では、Swiftのオープンソース化として、次の3パターン、
>対応の形態として、
>AppleのWebKitのようにオープンソースにして丸ごとコミュニティに提供するのか、
>MSの.NETのように仕様だけを標準化して公開し実装はMonoのようにオープンソース含め各々に任せるのか、
>あるいはオラクルのJavaVMのようにランタイムの開発も含め完全に自社のコントロール下に置いてWindows版やLinux版を開発するのか
>についてはまだ見えてこない。
を予想したが、最後のパターンではないらしく、OSI準拠にしてオープンソース化し、コントリビューションを受け入れることをAppleが最初に言っている
ただ、完全に手放しだとむしろ自社製品の開発と整合性に苦しむことになりかねないので、
やはり2番目の.NETに似たやり方に近い方法で普及させていくのではないだろうか
もちろんソースコードごとコミュニティに公開するからそこはMonoのときより踏み込むだろうが、
常にブランチのメインストリームをAppleが(実デバイスに最も安定して乗せられるという意味で)コントロールし続ける形になるかも知れない
デバイスに普及している実用言語のうちでJavaやC#等との大きな違いの一つに、
ガーベジコレクションを使った共通VM上の中間言語ベースなのか、参照カウントを自動化(ARC)して埋め込みランタイムごとCPU別ネイティブにコンパイルするかの違いがあり、
これは川岸の向こうとこっちほど隔たりがある
Appleが小さな処理である参照カウントとその自動化を選択した決断が適切だったかがどうかは、今後明らかになっていくと思う
まずは今後が楽しみだ
0781名称未設定
2015/06/19(金) 05:01:04.36ID:KBaP2V2D00782名称未設定
2015/06/19(金) 08:04:16.63ID:Q3howQrY03行でまとめ直せ
0783名称未設定
2015/06/19(金) 09:03:17.56ID:OKFEESXm00784名称未設定
2015/06/19(金) 14:27:33.43ID:HWfmCJ4o0GC vs ARC
なら、ARCの勝ちだと思う。
GC使うアプリ(Androidアプリ)はバッテリーの持ちが悪い感じがするんだけど、
どうなんでしょう、エロい人?
0785名称未設定
2015/06/19(金) 14:39:24.76ID:L6crFzbo0なんであんな低機能でバッテリー持ち悪いのか
どうなんで(ry
0786名称未設定
2015/06/19(金) 14:58:51.03ID:HWfmCJ4o0その2日もつっていうのは、Tizen機だったりPebble機だったりしない?
Android端末と繋がる、wearable端末の中には、Android Wear機じゃないのも
まじってるよ。
0787名称未設定
2015/06/19(金) 15:06:11.69ID:71xlp9gv0Motoはおk、LGはApple Watchとどっこいどっこい、Samsungは知らん
つーか、ランタイムのメモリ管理より、別の要因の方が大きいだろうよ
0788名称未設定
2015/06/19(金) 15:30:08.48ID:HWfmCJ4o0ランタイムっていうか、VMが動くってのがAndroid機が
電力消費激しい原因じゃないのかなぁ。
アプリ毎にVMが動くという、幾つもVMが起動しているのが
Android OSって事なんじゃないすか?
だから、Android OSってのはメモリ大盛りな機種が多いし。
iOS6機なんて256MBで動いてる(iPod touch 4th)のがあるし、
Zenfone2なんかすごいメモリ搭載しないとダメなんでしょ?
0789名称未設定
2015/06/19(金) 15:41:50.08ID:HWfmCJ4o0気になって、自分で調べてみました。
Dalvik VMの起動は1回だけだそうです。アプリ毎にVMが動くんですが、そのVMは
最初に起動したVMのコピーだそうです。コピーはforkシステムコールってので
作るそうです。
オブジェクトのクローンを作るのと似てるんだと思います。
アプリ毎にVMが動くんだけど、その起動はforkシステムコールだって事らしいです。
0790名称未設定
2015/06/19(金) 23:40:02.26ID:bPFMFZt10iOSはiOSいくつで付いたんだったっけかなぁ…
もともとアプリがバックグランド動作をしないのが常識な造りなのを利用して
起動してるけど休眠してるアプリはiOSがcoredataのしくみ利用して
暇な時間に展開してるアプリを圧縮の上、フラッシュメモリに退避するしくみだから
起動すればしただけ実メモリ圧迫し続けるUNIX仕様のままの
Androidとはメモリの空き具合がそもそも違うつか…
0791名称未設定
2015/06/20(土) 03:15:00.12ID:u27EkuBX0iOS 4でbock、iOS 5でARCとStoryboardが登場
んでARCはweak以外はiOS 4でも使えるようになってた
iOS 6でAuto Layout
ざっとそんな感じ
0792名称未設定
2015/06/20(土) 03:15:58.86ID:u27EkuBX00793名称未設定
2015/06/22(月) 19:47:31.37ID:AiMn/Qt600794名称未設定
2015/06/22(月) 20:15:40.10ID:7Xgd0Ixz00795名称未設定
2015/06/22(月) 21:51:02.29ID:1fg6KRzP0悔しい
0796名称未設定
2015/06/23(火) 00:11:32.48ID:JVRuEDAz00797名称未設定
2015/06/23(火) 12:49:29.99ID:FwSg2ZVN0「Swift(プログラミング言語)」選んで購読してると
毎回のようにこの女がトップ記事とか
もうやめて下さい
0798名称未設定
2015/06/24(水) 19:44:59.92ID:mNwK620o0まさに棚ボタか
0799名称未設定
2015/06/25(木) 15:39:08.92ID:qlBqBB+U0約3766トン
https://web.archive.org/web/20150216090935/http://nanohana.me/?p=3415
チェルノブイリで爆発した燃料の量は、推定たったの10トン前後。
これからフクイチではこの約3766トン全てが放出されるだろう。
ちなみに3号機の爆発した燃料だけでも、150トン。
使用済み燃料棒の一覧
号数 燃料の種類 使用済み燃料棒 未使用燃料棒 燃料棒合計 燃料総量予測)
1号機 ウラン 292本 100本 392本 約129t
2号機 ウラン 587本 28本 615本 約203t
3号機 MOX 514本 52本 566本 約186t
4号機 ウラン 1331本 204本 1535本 約507t
5号機 ウラン 946本 48本 994本 約328t
6号機 ウラン 876本 64本 940本 約310t
共用プールMOX有り6375本 不明 6375本 約2103t
0800名称未設定
2015/06/27(土) 00:23:05.60ID:+T+0WcVb0VMのせいというかGCとARCの違いによる差だね
ハードスペックが同じなら、iOSが圧倒できるよね。
0801名称未設定
2015/06/27(土) 07:33:31.42ID:1MFpg6ZY010年前と違ってGC要因のアプリバグは皆無だが、手酷いバグがあったの?
0802名称未設定
2015/06/27(土) 08:32:36.78ID:0N4nW8xj0探索し続けるプロセスが背後で走り続けるから
リソースやパワーが限定されるモバイルデバイスなどでは
その負荷が無視できないぐらい大きいよねという
ものすげぇあたりまえの話なだけだと思うが…?
0803名称未設定
2015/06/27(土) 10:06:42.62ID:/dkAVgtS0最近のOracle Javaやdalvik, artはその程度の話は最適化されてるから心配しないけど
0804名称未設定
2015/06/28(日) 00:28:49.28ID:Ch8eMncC0javaの言語仕様が変わりでもしない限り、
vmがいくら効率よくなっても、gcによるメモリの開放タイミングは変わらないでしょ。
,だから、メモリの大食いは改善されない。
0805名称未設定
2015/06/28(日) 00:37:02.93ID:EkArqxBl00806名称未設定
2015/06/28(日) 06:38:40.96ID:mF7MO+370Ginger Breadでの仕様変更は煽りをくらった
0807名称未設定
2015/06/28(日) 09:34:07.79ID:fF6xvPFN0swiftランタイムがよしなにやってるなら幸いだけど、iOSに乗っかってるなら変わらんかね
0808名称未設定
2015/06/28(日) 10:20:15.98ID:Ch8eMncC00809名称未設定
2015/06/28(日) 12:09:29.67ID:eeP9GVCY00810名称未設定
2015/06/28(日) 12:16:43.27ID:GhXQR40w00811名称未設定
2015/06/28(日) 22:17:58.43ID:FBPAjRFG00812名称未設定
2015/06/28(日) 22:29:12.06ID:cMqXQi+c00813名称未設定
2015/06/28(日) 22:32:52.72ID:nCC7KEEN00814名称未設定
2015/06/28(日) 23:16:19.53ID:GhXQR40w00815名称未設定
2015/06/29(月) 08:59:28.41ID:sGzukjrv00816名称未設定
2015/06/29(月) 09:36:09.49ID:9ECKF6BM00817名称未設定
2015/06/29(月) 09:57:17.31ID:Qf/ep4df0メモリ解放のタイミングは
プログラマが決める。
ただし、コンパイラ付属のARCがメモリ解放命令を
ソースに挿入してくれるので、プログラマがメモリ解放
を意識する事は無い。
メモリの解放は、コンパイラ付属のARCにお任せってこと
になる。
0818名称未設定
2015/06/30(火) 00:49:08.48ID:uDc5M/Te00820名称未設定
2015/06/30(火) 10:40:34.57ID:o1qW3HCo00821名称未設定
2015/06/30(火) 11:00:31.85ID:mI3hS93v0thx
検索するとこんなの出てきた。
If you're coming from a programming language such as Ruby, Python, or Lisp, then you know the power of blocks.
swiftでのclosureってことだね。Rubyでいうlamda式、procオブジェクトみたいな。
"what's new in ios"で検索するとappleのサイトにまとめてある
ios release noteがヒットする。
0822名称未設定
2015/07/01(水) 02:47:27.23ID:Rs4q6AfO0なんかそもそも「参照カウント方式」自体を知らないみたいだけど大丈夫か…?
クラスを使う時に「いまおまえを使ってる」ってインスタンスの共有カウンタに+1
使い終わったら「使い終わったぞ」と-1
全員が使い終わったらカウンタが0になるから解放って単純システム
単純で速くて簡単だけど、プログラマがカウンタ操作を勘違いしてると
解放されない/解放されちゃうバグが発生することがある。
もともとObjective-Cの基本管理方式
んで、特殊なことやってるんじゃなきゃ使った/使い終わったは
機械的に判定できるので、そのカウンタ操作の部分のコードを
Xcodeの方に自動で任せる機能がARC(オートマチック・リファレンス・カウンティング)
これでプログラマが無自覚にバグを作り込むことなく
軽量高速な参照カウント方式を享受できるようになった。
実際、Objective-CでMac用にGCも選べるけどわざわざ選ぶ人がまずいない。
0823名称未設定
2015/07/01(水) 04:14:19.84ID:zDHAPfh400824名称未設定
2015/07/01(水) 07:14:56.89ID:6oeyhFi900825名称未設定
2015/07/01(水) 08:48:20.65ID:2ECdjcKl00827名称未設定
2015/07/01(水) 14:53:56.65ID:LI2M9JWB00828名称未設定
2015/07/01(水) 16:51:44.79ID:pGP71s1U00829名称未設定
2015/07/01(水) 17:35:24.75ID:okKs+NA10それがどのタイミングでやるかはOSまかせ、Mac,iOSが賢いかは知らん
0830名称未設定
2015/07/01(水) 17:43:40.31ID:0Dzrnazg00831名称未設定
2015/07/01(水) 17:49:32.43ID:NWyPT+ku00832名称未設定
2015/07/01(水) 17:55:49.89ID:Lu3NOcb/00833名称未設定
2015/07/01(水) 17:57:24.68ID:G0sC1s8M0もう少し下の層から見たらやってるよ
0835名称未設定
2015/07/01(水) 23:07:30.38ID:Rs4q6AfO0休眠アプリを圧縮してフラッシュに退避させることで
メモリを開ける動作がiOS5辺りからついてるし
アイドル時間に適宜やってんじゃないかな。
…っつーよりここまでiOSやMac知らない奴がなんでこのスレ迷い込んで来てんだ?
0836名称未設定
2015/07/01(水) 23:15:27.41ID:DmBgqj930CFType のオブジェクトのメモリ管理の話であって、
このスレ的にはそこは3行で済ませてSwift のネイティヴ型の
メモリ管理の話してもいいんじゃないの。
ヒープに取られることもあるのかとか参照カウントなのかとか。
0838名称未設定
2015/07/02(木) 00:54:33.61ID:ef6YXqy90SwiftもARC使ってるから無関係じゃないでしょ。
ARCの欠点はインスタンスの所有者を意識しないと循環参照しちゃうことだが、
メリットのほうがでかい気がするね。
rustのメモリ管理も面白そうなんで勉強したい。
0840名称未設定
2015/07/03(金) 08:26:52.43ID:1W7R06Tt0ようやくdelegateパターンとかいうのに慣れてきました。
Windows Phone絡みでC# + dot Netframeworkにも興味あるんすけど、
dot Netframeworkでもdelegateパターンの多用が見られるんですか?
なおdelegateパターンとは、不完全なDecoratorパターンの事です。
(cf. Cocoa Fandamentals Guide, Design Patternの章)
おっと、スレちかも。
0841名称未設定
2015/07/03(金) 11:26:50.26ID:xmqC4rtj0これからはAPI全てクロージャーで書き直されるとだと思うんだが。
0842名称未設定
2015/07/03(金) 12:52:31.99ID:XNgX/SaB00844名称未設定
2015/07/03(金) 14:04:31.24ID:pRuDA1UH0例えばUIControlのaddTargetをクロージャにした場合、
既存のプログラムはフレームワーク内のパーツも含めて全書き換えになるし、
IBActionにできないからIBでの設定ができなくなる。
俺は別にいいけど、一般的にはどうかな。
0845名称未設定
2015/07/03(金) 14:13:34.30ID:bq9mDut90そんな訳はない。tableviewとかは、今後もdelegateを使った実装のほうがわかりやすい。
要は使い分けの問題。
本来コールバックで処理した方が自然なところにはclosureを使うべきだったんだけど、blocks構文の仕様が後付だったせいで、delegateを使ってる箇所が幾つかあるから、そういうところは置き換わって行くかもね。
0846名称未設定
2015/07/03(金) 17:22:48.80ID:YeNhtdyD0やるなら CollectionView のタイミングでやって欲しかった、当時なかった気もするけども
URLSessionとURLConnectionの乗り換えみたいに、うーん?と考えながら書き換えになりそう
0847名称未設定
2015/07/17(金) 06:29:33.38ID:1YXYUL7N00848名称未設定
2015/07/17(金) 17:54:00.96ID:7W6HIEYP0var 関数内static = 1
0849名称未設定
2015/07/17(金) 18:25:31.77ID:doUblNs10知っていてたのか知らないのか知らんが
http://stackoverflow.com/questions/25354882/static-function-variables-in-swift
こういう一歩余計めんどくさいことをさせるのがSwiftだろうw あんまそれ↑を必要とする意味がわからんけど
0850名称未設定
2015/07/17(金) 18:32:13.91ID:doUblNs10クラスはどこでも定義できるから関数/メソッド内でプライベートクラス定義してそれのクラス変数でやれってことか
普通のクラス変数の定義と同じで首尾一貫しているやんw
0852名称未設定
2015/07/21(火) 17:11:25.92ID:qxc6WExK0CALayerDelegateをAPI Referenceで見ていて出てきたんだけど、informal protocolを実装するにはどうすれば良い?
protocol Mochi {
func sayHello() -> String
}
例えば、sayHelloをinfomalにするにはどう書けば良いんすか?
0853名称未設定
2015/07/21(火) 17:12:31.21ID:hTeoz3s700854名称未設定
2015/07/21(火) 17:27:10.64ID:zF3HfVi500855名称未設定
2015/07/21(火) 17:31:01.29ID:7Jk+UwkD0使うにしても@objcで宣言しないと使わせてやらねー的なモノだったような
0856名称未設定
2015/07/21(火) 17:34:55.89ID:zF3HfVi500857名称未設定
2015/07/21(火) 19:54:36.98ID:Pf7RPCtF0まったく推奨されてない
静的型のSwiftにおいて同じ型なのにあるメソッドがあったりなかったりって状態がアカン
ObjCでいうrespondsToSelectorも無いし
明確に型を分けるべき
ただしSwift 2.0ではプロトコルエクステンションでデフォルト実装を書けるようになったから
一部のユースケースではデフォルト実装で代用できる
0858名称未設定
2015/07/21(火) 21:07:53.59ID:D7GAPV6E00859名称未設定
2015/07/21(火) 21:17:49.47ID:zoOCSy5a0swiftでinformal protocolを簡単には実装できないんすね。
0860名称未設定
2015/07/21(火) 21:30:26.83ID:Pf7RPCtF0Informal protocolみたいなズボラな方法よりSwiftに合ったもっといい方法があるし
ObjCでもObjC 2.0以降はほとんど使われなくなってる古い手法
Informal protocolはただのNSObjectのカテゴリだから、SwiftでもNSObjectのextension書けば同じこと
でもそんなことする意味はまったくない
0861名称未設定
2015/07/22(水) 07:34:53.39ID:bv8teojX0推奨はされてないが使えるってことかな
objc の informal protocol = swift の optional protocol(@objc付与必須)でおk?
0862名称未設定
2015/07/22(水) 08:14:14.62ID:t/e2AFT+0852です。
Swiftでinformal protocol準拠のクラスを定義するには、informal protocol
の実装部分はobjcで書いて、@objcコンパイル指令を使ってintormal protocol
をSwiftソースへ埋め込めば良い。
って解釈でOKでっしゃろか?
0863名称未設定
2015/07/22(水) 08:26:30.22ID:t/e2AFT+0func sayHello() -> String
}
class Piyo: Mochi {
func sayGoodby() -> String {
return "By, Piyopiyo"
}
}
上記をコンパイルすると、note: protocol requires function sayHello()
と言って怒られます。
@objcコンパイル指令を使えば、怒られずに済む訳ですよねぇ。
けど。。。@objcコンパイル指令なんて、使った事無いっす。
0864名称未設定
2015/07/22(水) 10:40:07.81ID:9Wr60tM+0細かく言うと違う
@protocolは元々あったのねん。でも、全て実装必須
delegateのような実装してもいいし実装してもいくないのを実現する(他にも理由があるだろうが)のに、じゃ、@interface NSObject (Hoge)でインターフェースだけ定義してっていうのが、informal protocol
protocol に対して informal protocol だろう。protocolを使う時点でInformal protocol じゃないだろう
protocolにoptionalをつけたら、informal protocolと同じように(また、なんでもかんでもNSObjectになんて不細工で無く)、実現できたにすぎない
元々の
> CALayerDelegateをAPI Referenceで見ていて出てきたんだけど、informal protocol
も、CALayerDelegate が「まさしく」 informal protocol だからだよ。ヘッダー見てみ
0865名称未設定
2015/07/22(水) 10:45:28.36ID:9Wr60tM+0optionalなprotocolを(@objc付きだろうが)Swiftだけで実装するには、
http://tea-leaves.jp/swift/content/プロトコル
らしいよ。ちたーググってみよう。「informal protocol」もたぶんあるよ
0866名称未設定
2015/07/22(水) 11:07:46.33ID:t/e2AFT+0THX
できたぁー。
import Foundation
@objc protocol Mochi {
optional func sayHello() -> String
}
class Piyo: Mochi {
func sayGoodby() -> String {
return "Bye, Piyopiyo"
}
}
let a = Piyo()
print(a.sayGoodby())
コンパイラがrequires function sayHello()って言わなくなった。すごい。
0867名称未設定
2015/07/22(水) 11:12:02.95ID:t/e2AFT+0環境はXcode7 beta1 + Swift2.0っす。
0868名称未設定
2015/07/22(水) 11:40:14.88ID:MPVI/U/M0長々講釈たれてたが@objcで強引にobj-c機能をswiftに持ってくるが正解
swiftが静的だからとか関係なく、気分悪いから使わない文法にしただけで互換のために使えなくもない
ただ、わざわざswiftでドロップしたロジックを使うのは好ましくはない
0869名称未設定
2015/07/22(水) 16:48:23.11ID:t/e2AFT+0#pragmaとかのコンパイル指令と同類なのかと勘違い
しちゃったわぁ。
0870名称未設定
2015/07/23(木) 15:56:42.08ID:rKzdoz3L00871名称未設定
2015/07/23(木) 19:29:03.42ID:09yVANYT0極端すぎんだろ
0872名称未設定
2015/07/24(金) 09:01:18.62ID:9k6Fc05g0やっぱObjective-Cっすかねぇ。Swiftよりも。
Swiftの方が、ソースをみても落ち着くんすけど、気分的に。
0873名称未設定
2015/07/24(金) 10:50:31.20ID:/nsf41rL00874名称未設定
2015/07/24(金) 14:25:48.43ID:JcI4I+dS0https://developer.apple.com/swift/blog/?id=30
0875名称未設定
2015/07/24(金) 14:51:24.66ID:ROIarXPA0アリだと思います
0876名称未設定
2015/07/24(金) 16:15:26.42ID:9k6Fc05g0情報thx
It would be as surprising as an array with values ?? and ?? being considered equal to ??.
0877名称未設定
2015/07/24(金) 16:16:28.05ID:9k6Fc05g0やっぱ絵文字は表示できないのかな?俺の使ってる2ch browserでは。
0879名称未設定
2015/07/24(金) 17:09:16.52ID:/nsf41rL00880名称未設定
2015/07/24(金) 17:11:38.38ID:JcwI3xXx00881名称未設定
2015/07/24(金) 17:15:54.02ID:9k6Fc05g0俺は自分で決めたコーディング規約、80文字にしてます。
だから、ネットで拾ったサンプルコードも、まずは改行の挿入から
はじめる事が多いっす。
1)文字数制限なし。
2)80以上の文字数制限をしている。
3)同じく80文字
3つの内、どれでっしゃろ?
0882名称未設定
2015/07/24(金) 17:20:52.76ID:JcwI3xXx0固定幅とかナンセンスすぎ阿呆らし
0883名称未設定
2015/07/24(金) 17:51:01.65ID:LhkaOaZz01行1ステートメント(複合あり)の方が読みやすくなるし。まず、大まかに流れを掴むためには
その後じっくり読むのには1行じっくり読めばいいのだし。たとえ横スクロールしても
0884名称未設定
2015/07/24(金) 20:08:43.32ID:UIS9DV/n0swiftでは100行くらいを目安に改行してる
折角読みやすい言語仕様になってるのに、横スクロールなんてしたくないからな
0885名称未設定
2015/07/24(金) 21:10:16.07ID:LhkaOaZz00886名称未設定
2015/07/24(金) 21:18:49.88ID:r3oHu3pa0ぇえー。俺、vimでもソースいじるから80coulumnで改行してる。
Xcocdeのpreferenceでも80columnで薄ーいライン入れるオプションあるから
外人さんにも、そんな人多いのかなぁと思ってたんだけど。
0887名称未設定
2015/07/24(金) 21:31:21.11ID:LhkaOaZz0Terminalのウィンドウ(&vim)も80にしかならないわけじゃないでしょ。80に固執する意味がわからんなw
まあ、Terminalでのウィンドウは「なんとなくな見栄え」から俺も80がデフォルトで決して大きくはしないけどw
0888名称未設定
2015/07/24(金) 22:04:29.73ID:1LaI0dIr0ディスプレイサイズ広くなったし、80は少なくね?って100とか120のルールを最近は見る
0889名称未設定
2015/07/24(金) 22:28:37.33ID:2WylF6tf00890名称未設定
2015/07/24(金) 22:34:15.35ID:1LaI0dIr00891名称未設定
2015/07/25(土) 02:53:06.13ID:TOmTQc0b0構文規約の強制ってところがあるんだよね。
具体的には、{}の位置を
func XXX() { //<―
//something
} //<―
と強制される。
swiftもぜひ入れてほしい。
正直プロジェクト毎に構文規約が変わるのめんどくさい。
いっその事言語仕様としてガチガチにしてくれた方がいい。
0892名称未設定
2015/07/25(土) 08:58:17.60ID:A2G0+Sye00893名称未設定
2015/07/25(土) 09:38:04.51ID:eKl1s7no0インデントはエディタの担当領域じゃないかなぁ。
goってのを使ったこと無いから、構文規約の強制ってのが
どんな言語仕様なのかようわからんけど。
まさか、使うエディタも指定してくるとか?昔の
N88 Basicみたいに。
0895名称未設定
2015/07/25(土) 19:26:42.66ID:mg8EsEFj0強制されるってのは言語仕様って事?
そもそも改行とインデントの強制があればブロックの中括弧はいらない気がする。
って、それpythonやん。
0896名称未設定
2015/07/26(日) 10:00:46.02ID:iDYLOVO80横長すぎるコードは大抵手直しが必要なサインだと思うよ。
0897名称未設定
2015/07/26(日) 11:09:10.16ID:jnczt4ol0まあ「読みやすいかどうか」の判断が人それぞれの部分もあるから難しいんだけど。
0898名称未設定
2015/07/26(日) 12:37:49.14ID:01tDimKM0上にある80じゃ狭いから100や120もじゃ、100や120にすれば絶対かというとその根拠は不明だし、横長すぎるって、じゃ、どれだけが横長すぎるかっていうとその根拠も不明だからな
その場その場のセンスwだな。根本的にコードを書く自体が臨機応変なセンスを求められるものだし
0899名称未設定
2015/07/26(日) 12:46:12.21ID:sX+UzKaI0@interface ThirdPartyLib : NSObject {
BOOL _dump;
}
@end
// lib->_dump = YES;をしたい。
サードパーティ製のスタティックライブラリなのでプロパティーは作成されていない。
カテゴリーやリフレクションを使わずにアクセスする方法ってあるのかな。
0900名称未設定
2015/07/26(日) 12:56:28.99ID:a5uOv+hC0コーティングルールが根拠の一つだな
そのルールを決める時に何で判断するかはあるだろうけど
Googleが公開してるコーディングルールにも桁数あったような、、、
まぁルールのない一人の開発なら気分でおk
0901名称未設定
2015/07/26(日) 12:59:15.37ID:01tDimKM0いや、だからその コーディングルール の 根拠 がなんでやねんっていう
世の中には変なコーディングルールも存在するんやで。まあ、関係ないけど
0902名称未設定
2015/07/26(日) 13:04:44.72ID:FJcBmH7E0超裏技を教えましょう。
@interface ThirdPartyLib : NSObject {
@public
BOOL _dump;
}
0903名称未設定
2015/07/26(日) 13:29:36.21ID:01tDimKM0Key-Value Coding の setValue/valueForKey は使えるな
んなのよりは、カテゴリーでアクセサなりプロパティ追加したほうがいいと思うけど
0904名称未設定
2015/07/26(日) 13:47:35.76ID:a5uOv+hC0その場その場で決める気分より、コーティングルールを考えろというね
君が考える必要性を感じない開発をしてるのはよく分かったw
0905名称未設定
2015/07/26(日) 14:09:05.96ID:01tDimKM0その場その場ってなんか勘違いしてない?横幅だよ。周りとのバランスとかで考えているよw
横幅でのコーディングルールは君は固定で必要なのね。誰かが決めてくれないとなのね。ふーん、必要なんだろうな、全くわからんが
0906名称未設定
2015/07/26(日) 22:27:49.88ID:0Ah167/o0Aさんの書いたコードをBさんが読むわけだからね。
0907名称未設定
2015/07/26(日) 22:49:23.82ID:jnczt4ol0空行をどこで入れるかとか、どういったコメントをどの程度入れるかでも読みやすさは変わる。
そこまでコーディングルールとして明記する職場なんてあるのかな。
俺は見たことない。
0908名称未設定
2015/07/26(日) 23:39:44.62ID:01tDimKM0そんなもの捨てたら臨機応変wに他人のソースも苦もなく読めるようになるよ。たかが横幅の問題なら
そんなどうでもいいことよりも、絶対必要な最小限度なコーディングルールが皆の幸せになると思うんだけどww
0909名称未設定
2015/07/27(月) 10:02:06.83ID:rpvTTBsA0ソースコードにインデントの為にタブ(\n)の入力があっても良いですか?
1)タブはスペース(例えばスペース2個)で代用する。ソースのファイルサイズが若干増加するが、
最近のファイルシステムは最小管理単位が4Kbyteもあるので、Diskの消費
量は変わらない。
2)タブを使ってインデントをする。行の先頭を揃えるためにタブを使うのは昔からの
習わしで、変えてはイケナイ。
ちなみに、俺は1)です。
0910名称未設定
2015/07/27(月) 10:24:21.90ID:rpvTTBsA0メソッド引数を羅列する時、途中で改行したくなったとします。カンマの後で改行しますか?前で改行しますか?
例えばこんだけ、メソッド引数(NSRgularExpression#firstMatchStringメソッドの引数)が有った時、改行は次の1) - 3)のどんな具合に行いますか?
(str as String), options: NSMatchingOptions.ReportCompletion, range: NSMakeRange(0, str.length)
1)(str as String),
options: NSMatchingOptions.ReportCompletion,
range: NSMakeRange(0, str.length)
2)(str as String)
, options: NSMatchingOptions.ReportCompletion
, range: NSMakeRange(0, str.length)
3)改行しない
4)カンマ以外の所、たとえばセミコロン;の前か後ろで改行する。
俺は1)です。
0911名称未設定
2015/07/27(月) 11:03:34.76ID:54LBs3Mr00912名称未設定
2015/07/27(月) 11:38:35.92ID:rpvTTBsA0リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)2012/6/23
Dustin Boswell、 Trevor Foucher
俺はこいつを読んで、自分のコーディングスタイルを見直す様になった。
細かいこだわりというか、規約を決めた事で、コードを見る時のストレスが減った様に
思う。それに、色々細かい事を迷わなくなって、決めたことに従うようにしようとだけ
思うようになった。
0913名称未設定
2015/07/27(月) 11:51:01.02ID:54LBs3Mr0初心者を抜けた頃には自分でそれなりに確立しているだろうっていう。人のコードを見て参考にするなり見やすいようにと
だいたい何も考えてないなコイツはってのは開発初心者だな。それなりの人はそれなりに書いてある。違いはもう好みの違いとしか言いようがないw
細かい強制しまくりなコーディングルールは「何も考えていない」ヤツ向けだよな、まあ、そうしたくのはわからないでもないってとこ
何も考えていない例:例えばfuncの終わりの } の次に空行なしで次のfuncとか。まあ、そういう好みがあるのかもしれないが
0914名称未設定
2015/07/27(月) 12:18:59.03ID:m4P9ukw700915名称未設定
2015/07/27(月) 12:44:36.50ID:rpvTTBsA0そかそか。
他人のコード見て気づくのは、
HTML書く人はスペース2個、コード書く人はスペース4個をインデントに使う
事が多そう。
0916名称未設定
2015/07/27(月) 12:48:32.08ID:rpvTTBsA0そうそう、思い出した。Rubyの人はスペース2個の人多いわぁ。
Rubyのメソッド名は短いの多いし、スペース4個もあると、間抜けな感じが
するなぁ。
0917名称未設定
2015/07/27(月) 14:15:26.79ID:J1S63idy0チーム開発で個々に自分の確立したルールで書かれたら困ると思うが
go使いがハードタブでこれが正義だと言いかねん
0918名称未設定
2015/07/27(月) 18:13:22.93ID:54LBs3Mr0チーム開発もやってるけど
チーム開発でも分担だけど?1つのファイルを複数で編集合戦でもしてるの?
タブすらなのね。タブすら相手に合わせて 読む ことができないの?
でもチーム開発では 単なる見栄え(統一感) からある程度合わせるのはあるけどね
0919名称未設定
2015/07/27(月) 18:23:38.96ID:54LBs3Mr0なんだやっぱり初心者じゃ。終了ww
0921名称未設定
2015/07/27(月) 22:15:30.27ID:rFjSOcSg00922名称未設定
2015/07/27(月) 22:24:28.54ID:54LBs3Mr0ああ、冗談でも初心者っぽくなのか。わからん。とりあえず以後気をつけようw
0923名称未設定
2015/07/27(月) 22:47:19.26ID:uGjOZ7jU00924名称未設定
2015/07/28(火) 01:34:17.66ID:AfulwDh40難しい、、、
0926名称未設定
2015/08/02(日) 17:53:29.16ID:7URspNO40教本では「警告が出る」とされることをやっても警告が出てきません、最新の
Xcode/Playgroundでは警告を出させるための設定が必要なのでしょうか?
例えば、Playground でオプショナルを宣言した際 ? を添え忘れると警告が出る
と教本にはありますが、Xcode 6.4 ではそれが出てきません。
また、オプショナルに直接アクセスしたら警告が出るはずですがやはり出てきません。
CommandLine Tool プロジェクトを作って試すと、上記2つの誤作法はそれぞれ
改行入れた時点ですぐエラー扱いになるので、Playground環境だけで何かすべき
ことがあるのか悩んでいる次第です。
OS: 10.10.4
Xcode: 6.4
でやっています。
0927名称未設定
2015/08/03(月) 09:42:54.67ID:vpdlUoCy0警告とか、最適化の設定なんて不要。
Swiftは今、環境変化激しいからね。Xcode6.3, 6.4で挙動が違うのは当たり前。
Swift1.0, 1.1, 1.2と来て、そして2.0のbetaが今の段階。
2.0betaでも俺は、奇妙な挙動に出会った事無いわぁ。
0928名称未設定
2015/08/03(月) 13:19:11.10ID:pWL7qVR50Linux側からのフィードバックとかも取り入れるんだろ?
カオスな言語になっていきそうな予感。
0929名称未設定
2015/08/03(月) 13:43:54.30ID:lhKlX2Bo00930名称未設定
2015/08/03(月) 13:57:43.49ID:vpdlUoCy0仕様変更なんてどの言語もショッチュウだよ。
C++なんて、C++11が出たと思ったら、C++14が出てきて、今はC++17へ向け作業中だし。
Rubyなんてどんどんリビジョン上がるし、1.92, 1.93, 2.0, 2.1, 2.2って感じで1年毎位に変化してる。
Objective-CだってNullabilityの導入がXcode7で予定されてるし、Swiftだけが仕様変更が頻繁って訳では無い。
0931名称未設定
2015/08/03(月) 13:58:55.47ID:v+fHk9+J00932名称未設定
2015/08/03(月) 14:17:29.29ID:KqUelVwU0人柱向けの言語だし楽しめば良いと思う
0933926
2015/08/03(月) 21:38:02.44ID:185C/m840まだ超初心者範疇なのでコマンドラインツールの
プロジェクトでプレイグラウンドの代用でどうにか
なりそうだしそっちでやってみます。
話に応対してもらってありがとうございます!
0934名称未設定
2015/08/04(火) 11:25:15.47ID:F3KHS8CM0playgroundを使ってSwiftに慣れようとするのは、第一歩としてはいいと思う。
俺は、playgroundが重くて、嫌になって、
vim + swiftc + quickrun環境へ移行した。こいつで、Xcode起動するまでもない様な、コードの断片を試すことができる。
ちょこちょこっとした、コードの断片を試す環境は、是非作っておかないと困るぞ。
vim + swiftc + quickrun環境の欠点は、breakpointを置けないので、print or printlnでデバッグしないといけない所。
0935名称未設定
2015/08/08(土) 21:49:14.93ID:gGCfgUvp00936名称未設定
2015/08/10(月) 19:28:13.78ID:cdhlVkIc0とvim信者の俺は思う、vimなんて他人に推すものじゃねーよ
0937名称未設定
2015/08/27(木) 18:13:56.49ID:X2w7eZYu00938名称未設定
2015/08/27(木) 21:43:24.33ID:rZIZiQmI0あまり大規模で複雑なコード書くとコンパイルが重くなる。
0939名称未設定
2015/08/27(木) 23:06:48.97ID:dndwqP2C00940名称未設定
2015/08/28(金) 10:24:00.11ID:je2cB01U00941名称未設定
2015/08/28(金) 10:46:45.73ID:3HBBuQgk00942名称未設定
2015/08/28(金) 11:18:44.87ID:ASMsznQn0差分コンパイルでも規模が大きくなればもたるよ
SourceKitのバンクは最新でも頻繁に起こるな。
ObjCのソースをコピペするとすぐにバンクする。
0943名称未設定
2015/08/30(日) 20:46:56.57ID:Tn5EFp2a0スレチ遅レスながらGo仲間がいてほっこり
Sublime Textで保存時オートフォーマットかけてるけど、コーディングルール強制って郷に従うと悩みが減っていいよね
c系もJavaも、チーム開発もの以外は全部AStyleで自動整形にしたよ
swiftでもAppleの標準が出たら自動整形プラグイン作る人が出てくるとは思うけど、まだ言語仕様がふらついてる感じだからなぁ。まだ先かな
0944名称未設定
2015/09/03(木) 18:48:06.60ID:fKZMSMkh0jazzyバグりすぎてて涙目
0945名称未設定
2015/12/04(金) 02:32:19.71ID:nDIBfoC20https://github.com/apple/swift
0946名称未設定
2015/12/04(金) 02:52:12.97ID:N2XwQhFd00947名称未設定
2015/12/04(金) 09:29:45.41ID:ugvMyHwh00948名称未設定
2015/12/04(金) 10:36:14.84ID:XckMiveg0utilsかどっかに、vim用のファイルタイプdetectorとか、syntax hilight用の定義ファイルがある。
0949名称未設定
2015/12/04(金) 11:47:56.65ID:CUwOVBL00carthageは死ぬ運命なの?
0950名称未設定
2015/12/04(金) 21:42:41.70ID:g3CnfHdM0全然過疎っててワロタ
0951名称未設定
2015/12/04(金) 21:46:56.99ID:H/aDfADg00953名称未設定
2015/12/05(土) 10:55:25.18ID:nRt9eie50俺全然、Taylor出てこない。ブラウザが学習しているのか?
もし、そうだったら怖いなぁ。
“swift”-taylor試してみるまでも無い。
0954名称未設定
2015/12/05(土) 10:57:38.98ID:tgpjEOyz0他の検索エンジンもしてるだろ、多分
0955名称未設定
2015/12/06(日) 14:53:15.35ID:NGuM7UWE0swiftc -g goo.swift
でコンパイルして、
lldb goo
でdebugセッション開始すればprint debugを避けられる。
0957名称未設定
2015/12/06(日) 16:03:39.09ID:LmjGkFYJ00958名称未設定
2015/12/06(日) 16:05:01.98ID:LmjGkFYJ00960名称未設定
2015/12/06(日) 16:11:45.71ID:LmjGkFYJ0http://www.apple.com/jp/swift/
0961名称未設定
2015/12/06(日) 16:16:12.54ID:pWopbfb60で、どこらへんが
>AppleはSwiftが流行ってますキャンペーンに必死
なんだ?
具体的にどうぞ
0963名称未設定
2015/12/06(日) 16:28:10.72ID:88fpyZMc0必死だな(藁
Windows上でのビルドと他OSへのクロスコンパイルは有志に投げっぱなしジャーマンなのかね
有志界隈でネタになるから、あえてやらないことで客寄せするのは狡猾だと思った
0964名称未設定
2015/12/10(木) 19:30:59.97ID:GmTcsZcI00965名称未設定
2015/12/13(日) 01:12:57.43ID:U56fmPkN0プログラミング言語Swift 3
http://potato.2ch.net/test/read.cgi/mac/1408762479/
0966名称未設定
2015/12/13(日) 11:22:55.09ID:2AX8YiIQ0良いスレッドタイトルだね。
スレタイは判りやすいのが良いね。
0967名称未設定
2015/12/15(火) 13:18:19.92ID:z2iu9b5+00968名称未設定
2015/12/15(火) 13:36:00.33ID:7RQORcKT00969名称未設定
2015/12/15(火) 13:47:18.52ID:IfYGN9EB00970名称未設定
2015/12/17(木) 23:36:47.87ID:AxBLpp0P00971名称未設定
2015/12/18(金) 00:22:53.73ID:3zhs+53+0詳解 Swift 改訂版 荻原 剛志
ttp://www.amazon.co.jp/dp/4797386258/
0972名称未設定
2015/12/18(金) 01:17:24.96ID:j17IN9RK00973名称未設定
2015/12/18(金) 01:49:25.31ID:jlQM2HgD00974名称未設定
2015/12/18(金) 02:17:22.47ID:LKcTc2DJ0obj-cでは改訂含めて安心できてほんと世話になった
もちろんswiftはネットの情報だけでも充分な手軽さと更新頻度の問題があるから戸惑う。まあ俺みたいな信者需要から一年経ってどう評価されてるかだろうな
0975名称未設定
2015/12/18(金) 02:38:12.79ID:QrcDPU/Q00976名称未設定
2015/12/22(火) 09:49:43.19ID:xggYXiDQ00977名称未設定
2015/12/22(火) 14:25:46.05ID:+e46rdLN00978名称未設定
2015/12/22(火) 14:44:23.33ID:GDZwZkQ80if let count = photos?.count {
return count
}
return 0
いちいち上みたいな書き方してた
return photos?.count ?? 0
でいいのね
0979名称未設定
2015/12/22(火) 22:52:14.84ID:XK3WE9/p00980名称未設定
2015/12/22(火) 23:17:24.95ID:xY9Be1lk0短く書けりゃいいってもんじゃねぇ
それともプログラミングコンテストにでも応募するか?
0981名称未設定
2015/12/23(水) 12:18:12.52ID:bnCq7NqS0レス数が950を超えています。1000を超えると書き込みができなくなります。