トップページ⇒tech
1001コメント296KB

Swiftスレ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2014/06/03(火) 04:12:21.08ID:rEEU5ykv
WWDC2014で発表されたAppleの新言語Swiftについて語りましょう
https://developer.apple.com/swift/
0487デフォルトの名無しさん2014/06/06(金) 13:05:06.24ID:A5R0aIHZ
Objective-Cは要するにCで、クラス化したモジュールに命令を送る
つまり『言語に追加した機能を使う』時は[]でっていう形で統一されてて
そこで「なにになにをさせる」って明示的な書き方をせよって念押しされてたから
他のオブジェクト指向言語が嵌った
"後でソース見たら何やってんのかわかんねぇ"問題が大幅に軽減されていたんだけど

いろいろガタがきてたCをモダン言語に差し替えたのはいいが
それで結果としてプログラマーの陥る精神疾患
「タイプ量が少なければ俺が楽、人には読めない難しい書き方する俺カッケー」が
輸入されて来ちゃったら本末転倒だよなーとは思ってる。
そもそもObjective-Cでも引数ラベルガン無視で[hoge: : :]って書いたり
キャメルケースなんかシラネーヨwwwってクラスやメソッドをAAA、BBBって
書いてもプログラム構文的には問題がないわけで
ありゃ文化的に"そう書かないと後で死ぬぞ?"と強制したものだから
Swiftでリセットした時に「魔法の呪文みたいに書くのがプロなんだよ
俺の呪文が解読できねぇのは素人!」みてぇなヒャッハー(モヒカン装備)が
流れ込んできて暴れられたらせっかくのSwiftが
他の言語が陥ったのと同じ混乱持ち込まれそうで嫌だなぁ。と
Appleはサンプルや正書法をしっかりして欲しいとは思う。
0488デフォルトの名無しさん2014/06/06(金) 14:22:42.46ID:dQ9iK7KV
JavaScriptやruby出身のにわかが暴れるわけですわ
0489デフォルトの名無しさん2014/06/06(金) 14:43:09.87ID:bOG7+wI5
動的型.vs.静的型のときに「動的型信者は、簡潔に書けるからスクリプト系の言語を
支持してるのあって、静的型でスクリプト言語なみに簡潔にかける言語がでてきたら
静的型のほうが断然いいよな」って言っても、動的型のほうだいいって認めなかったな。

あのときの動的信者はswiftは使用禁止な。
泣いて謝ってもるゆさん。
0490デフォルトの名無しさん2014/06/06(金) 15:21:15.78ID:7zy6H/7g
mac持ってるけどIOSデベロッパーじゃないからxcode6betaが取れない・・・
なんか方法ないかなー
0491デフォルトの名無しさん2014/06/06(金) 15:34:40.07ID:y58jmSWV
>>490
方法?あるよ
クレジットカードを手にしてiOS Developer Programを購入する
0492デフォルトの名無しさん2014/06/06(金) 15:41:17.61ID:7zy6H/7g
>>491
採用
0493デフォルトの名無しさん2014/06/06(金) 15:42:02.29ID:NEq+KBRq
一年間7800円なんだからゲーム一本買うようなもんだと思えばいいじゃん。ゲームより楽しいよ。
0494デフォルトの名無しさん2014/06/06(金) 15:48:29.43ID:UcUEUerQ
8400じゃなかったか
0495デフォルトの名無しさん2014/06/06(金) 15:51:14.13ID:BJtvL66b
>>486
俺は後者のほうがいいけど?

別に誰もswift強制してないんだから、objc使えばいいじゃん
0496デフォルトの名無しさん2014/06/06(金) 15:54:05.74ID:wKIGaEH1
>>493
ほんとそれ
0497デフォルトの名無しさん2014/06/06(金) 15:56:17.69ID:y58jmSWV
>>493
ゲームする時間がないから躊躇してんだよなぁ
0498デフォルトの名無しさん2014/06/06(金) 16:07:14.35ID:y58jmSWV
>>484
まだできません
0499デフォルトの名無しさん2014/06/06(金) 16:11:18.17ID:J6hrkM26
>>494
7800だよ。開発者登録やめてたけどSwift発表されて早く触ってみたくて即日登録した俺が言うんだから間違いないw
0500デフォルトの名無しさん2014/06/06(金) 16:16:25.49ID:7zy6H/7g
>>493
なるほどその考えいいな!最近は本当にゲームよりプログラミングの方が楽しいから行けるかも!
0501デフォルトの名無しさん2014/06/06(金) 16:29:18.65ID:UcUEUerQ
なるほど、4月から税別表記になったんだっけか
0502デフォルトの名無しさん2014/06/06(金) 16:48:05.07ID:343Zpa5B
あ、8400円は税5%込みの時の値段か。納得。
0503デフォルトの名無しさん2014/06/06(金) 18:42:20.59ID:T3cjS8yL
tupleは、3つまではレジスタ渡し(rax,rdx,rcx)で返されて
それ以上は全部スタック渡しになるようだ
でも浮動小数点はxmm0,xmm1の次はx87のスタックトップ使ってて超謎仕様
0504デフォルトの名無しさん2014/06/06(金) 18:43:54.35ID:T3cjS8yL
全部ってのは4つ目からスタック、ではなく1つ目から全部という意味ね
0505デフォルトの名無しさん2014/06/06(金) 19:38:00.97ID:s5X4N2N/
てことはタプルは3つまでにしといた方がパフォーマンスいいのか。ループ内で使う場合とかは頭の片隅に置いておいた方がいいな
0506デフォルトの名無しさん2014/06/06(金) 19:59:36.99ID:7T18ju/1
>>490
取るってなんだ取るって、どっかにくっついちゃったのか
0507デフォルトの名無しさん2014/06/06(金) 20:51:16.59ID:A5R0aIHZ
弟がダウンロードのことを「引き込む」っていうので
いつも会話で違和感あるの思い出した。
「落とす」も考えたらたいがいだな
0508デフォルトの名無しさん2014/06/06(金) 21:22:13.16ID:xKXbmGps
感覚的にタプルはペアなオブジェクトな印象‥何でだろうw
0509デフォルトの名無しさん2014/06/06(金) 21:25:39.79ID:s5X4N2N/
>>508
key-value的に使うことが多いからじゃね?
後は処理結果とエラーコードとか
0510デフォルトの名無しさん2014/06/06(金) 21:33:29.63ID:XcM2C4Vm
>>508
一般にはN個の要素から構成されるタプル(tuple, 組)について、
2要素のものをペア(pair, 対)と呼ぶ
同様に、3要素をトリプル(triple)、4要素をクワッダプル(quadruple)と
呼ぶことがある
Wikipediaの「タプル」のページに詳しい解説あり
0511デフォルトの名無しさん2014/06/06(金) 21:35:00.88ID:5aTUsUzW
>>469
石川梨華は2Dではない
0512デフォルトの名無しさん2014/06/06(金) 21:35:46.29ID:bHnhPL3c
感覚的にタプルはなんかたっぷんたっぷんしてるイメージがある
0513デフォルトの名無しさん2014/06/06(金) 21:36:10.59ID:Jz5ObmDX
PHPやJavaを駆逐するような言語を期待してたのになぁ
0514デフォルトの名無しさん2014/06/06(金) 21:36:59.13ID:lrmBy0jf
タプルは直積集合
0515デフォルトの名無しさん2014/06/06(金) 21:43:55.80ID:XcM2C4Vm
の要素
0516デフォルトの名無しさん2014/06/06(金) 21:58:13.31ID:bHnhPL3c
しかしSwiftの解説本が出る時に、
Optional Types とか force-unwrap とか Optional Chaining とか
Subscripts とか Memberwise initializer とか Nested Types とか
どういう風に訳されるのかね
適当な訳語が乱立しないようにApple Japan辺りが指針を出すべきだと思うけどね
0517デフォルトの名無しさん2014/06/06(金) 22:24:12.80ID:KlEM9OMP
今時訳さないんじゃない
0518デフォルトの名無しさん2014/06/06(金) 22:31:33.80ID:bHnhPL3c
訳すでしょ
Designated Initializer もデシグネイテッドイニシャライザじゃなくて指定イニシャライザって訳してるし
0519デフォルトの名無しさん2014/06/06(金) 22:31:56.30ID:ICJsHYDG
Javaの公式ドキュメント日本語訳だとOptionalはそのままだなあ
0520デフォルトの名無しさん2014/06/06(金) 22:37:48.39ID:qsDOAuAz
>>518
デザイネイテッドとちゃうの
0521デフォルトの名無しさん2014/06/06(金) 22:38:53.62ID:qsDOAuAz
なんでもない俺が悪かった
0522デフォルトの名無しさん2014/06/06(金) 22:41:05.86ID:UgiouvQd
デジグネイテッド
0523デフォルトの名無しさん2014/06/06(金) 22:43:13.61ID:bHnhPL3c
すまん、シの濁点が抜けてた
デジグネイテッドね
0524デフォルトの名無しさん2014/06/06(金) 23:18:36.37ID:WrtGDpxm
tupleのレジスタ渡しはarm64だと4つまでOKだった。
0525デフォルトの名無しさん2014/06/06(金) 23:35:21.34ID:qsDOAuAz
なんでamd64だと変わるんだw
最適化の傾向がよくわからんね
llvmがゴニョゴニョしてるんだろうけど

というかamd64上って仮想環境動作かhackintoshってことですか
0526デフォルトの名無しさん2014/06/06(金) 23:36:13.64ID:qsDOAuAz
ごめんなさい空目
armですねすみません
疲れてるな
寝ます
0527デフォルトの名無しさん2014/06/06(金) 23:49:25.99ID:WrtGDpxm
x86_64だと3つ、arm64(aarch64)だと4つ。
0528デフォルトの名無しさん2014/06/07(土) 00:23:20.70ID:jgc6Krm+
>>518
野球のDHに合わせて指名イニシャライザのほうが分かりやすかったよな
0529デフォルトの名無しさん2014/06/07(土) 01:32:28.79ID:K30zkuC1
>>482
Smalltalk のブロックが [] なんだから inline Smalltalk を書ける Objective C が [] を Smalltalk 部分の埋め込みに使うのは当然だろう。
無知な奴にとって意味不明だというのはそれは当たり前であって何の主張にもならない。
0530デフォルトの名無しさん2014/06/07(土) 02:13:32.75ID:rMJ4X6ee
むしろ昨日の昼にム板のスレでの門外漢の
"だいたいObjective-Cなんてさー"的なdisりに呆れて書き込んだ内容が
コピペ君にまるごとコピペされて俺の方が困惑。
0531デフォルトの名無しさん2014/06/07(土) 02:49:46.03ID:Xnu2GevG
Xcodeの補完ってまだ動かないの?
ならしばらく様子見したい
0532デフォルトの名無しさん2014/06/07(土) 06:25:43.11ID:SxbAzKvi
>>507
語源をたどると
相手が月とか衛星にあるコンピュータで
こっちから投げるのがアップロード
落とすのがダウンロード
なら自然な表現だな
0533デフォルトの名無しさん2014/06/07(土) 08:36:29.60ID:Qlm7Irx9
誰か言語比較のWiki に追加してくれ。わかる範囲で入れて置いてくれれば誰かが追加して行くだろう。

ttp://ja.wikipedia.org/wiki/プログラミング言語の比較
0534デフォルトの名無しさん2014/06/07(土) 09:01:34.57ID:PYm58794
>>531
動くよ
0535デフォルトの名無しさん2014/06/07(土) 11:05:05.36ID:54tfAzAv
>>491
クレカ持ってないんだがw
クレカ無いとデベロッパー登録は無理?
0536デフォルトの名無しさん2014/06/07(土) 11:13:46.01ID:MHvRsMmd
visaデビッドみたいなのでも認証通る?通らない?
http://ja.wikipedia.org/wiki/デビットカード
0537デフォルトの名無しさん2014/06/07(土) 11:56:22.67ID:Qlm7Irx9
商品購入と同じだから銀行振り込みでも良いよ。
0538デフォルトの名無しさん2014/06/07(土) 11:57:08.93ID:Qlm7Irx9
個人の場合は簡単だが企業の場合は少し面倒くさい。
0539デフォルトの名無しさん2014/06/07(土) 12:11:50.39ID:uAOOSJ5Q
あれ? 無料会員だとダウンロードできないの?
0540デフォルトの名無しさん2014/06/07(土) 12:14:42.36ID:PYm58794
無料会員は正式リリース後にまたお越し下さい
0541デフォルトの名無しさん2014/06/07(土) 13:16:18.13ID:SRkoD9Jh
>>536
通る
つかebank(ちくせう、今じゃ楽天だ)で通った
0542デフォルトの名無しさん2014/06/07(土) 13:29:20.97ID:4IjJ2QZJ
指定イニシャライザとコンビニエンスイニシャライザを明確に区別する仕様はいいね
0543デフォルトの名無しさん2014/06/07(土) 13:49:08.07ID:2vvW/YAp
>>529
Smalltalk では [] がブロックだからこそ、普通のメッセージ送信に [] が必須な ObjC の文法には違和感があるよ。
0544デフォルトの名無しさん2014/06/07(土) 13:57:18.75ID:Qlm7Irx9
1年で開発者登録数が倍増しそうだな。
0545デフォルトの名無しさん2014/06/07(土) 14:05:28.21ID:4IjJ2QZJ
2倍に増えるどうかは中国次第
0546デフォルトの名無しさん2014/06/07(土) 14:14:34.00ID:+6c+B5Zd
日本語の文字も使えるなら、なでしこ涙目だな
0547デフォルトの名無しさん2014/06/07(土) 14:17:35.25ID:Xnu2GevG
>>544
いや増えないだろ
アプリのアイデアないと使わないし
0548デフォルトの名無しさん2014/06/07(土) 14:22:59.23ID:jgc6Krm+
>>547
ワナビーを捕まえるビジネスですよ。

期間が1年だから
実機で動かす必要があるギリギリまで
申し込まないほうがいいぞ>新規開発者
0549デフォルトの名無しさん2014/06/07(土) 14:48:28.70ID:Qlm7Irx9
>>547 いや、単なる勉強として登録するのが結構増えると思う。

あ、でも正式リリースされると登録しなくても使えるのか。

アプリのお試しリリースと言うのは良いね。
0550デフォルトの名無しさん2014/06/07(土) 14:49:53.48ID:4QkqBwnr
>>547
俺ツール作るのに良い感じだけどね
何も売る目的だけでは無いかな
0551,,・´∀`・,,)っ-○○○2014/06/07(土) 14:56:19.27ID:x3Apu0jy
Obj-Cの[]ってWindowsでいうところのSendMessageだよな
うん、やっぱきめえwww
0552デフォルトの名無しさん2014/06/07(土) 15:00:55.77ID:89QZzfla
Smalltalkを真似るんだったらクロージャを[]にしてメソッドチェーンするのにいちいち書かなくて済むようにはしてほしかったな
0553デフォルトの名無しさん2014/06/07(土) 15:03:55.54ID:4IjJ2QZJ
なぜ言語の文法とOSのAPIを比べるのか
0554デフォルトの名無しさん2014/06/07(土) 15:10:34.56ID:4QkqBwnr
気の毒でつっこめないよw
0555デフォルトの名無しさん2014/06/07(土) 15:20:58.98ID:Qlm7Irx9
Swiftは、Pre Compilerを使わないと言う前提だから、実行時の動的書き換えがよく考えられてると思う。
0556,,・´∀`・,,)っ-○○○2014/06/07(土) 15:38:00.11ID:x3Apu0jy
メッセージはAPIあるいはsendメソッドであるべきだったと思うよ
0557デフォルトの名無しさん2014/06/07(土) 15:44:55.10ID:4QkqBwnr
ははは
0558デフォルトの名無しさん2014/06/07(土) 15:46:09.57ID:54tfAzAv
>>537
なるほどサンクス
0559デフォルトの名無しさん2014/06/07(土) 15:49:55.47ID:7pBMlLiO
その理屈だとSwiftでもメソッド呼び出しはobj->send(selector, args)みたいな書式にしろという主張かね
0560,,・´∀`・,,)っ-○○○2014/06/07(土) 15:55:21.94ID:x3Apu0jy
なんでわざわざWindowsAPIを例に出したと思ってるのだ

obj->Selector(args)

でええやん。ObjCの[]はやっぱりありえん。
0561デフォルトの名無しさん2014/06/07(土) 15:56:15.38ID:4IjJ2QZJ
CocoaにはNSNotificationっていう立派なメッセージングシステムがあるんだけど
0562デフォルトの名無しさん2014/06/07(土) 15:57:58.69ID:4IjJ2QZJ
ObjCの[]をDisるなら、Lispの()もDisらなきゃ
0563,,・´∀`・,,)っ-○○○2014/06/07(土) 16:01:52.86ID:x3Apu0jy
MFCのメッセージクラッカもたいがいきめえ
0564デフォルトの名無しさん2014/06/07(土) 16:09:39.57ID:7pBMlLiO
なんで[obj selector:args]は駄目でobj->selector(args)はいいの
0565デフォルトの名無しさん2014/06/07(土) 16:15:42.81ID:IaW8jP+0
Obj-Cの文法は既存のCの文法とは別にするとこで
Obj-CとCの部分を明確に区別することが目的だろ
0566デフォルトの名無しさん2014/06/07(土) 17:06:12.92ID:Xnu2GevG
>>561
delegateを使うより好きなんだよな
ただコードを追いにくいのと後始末忘れて
リークするという欠点が
0567デフォルトの名無しさん2014/06/07(土) 18:05:21.65ID:TgR+bTx+
なぜ比較対象がPython w
相変わらずインチキ臭いプレゼンが好きなんだな
http://tctechcrunch2011.files.wordpress.com/2014/06/img_0254.jpg
0568デフォルトの名無しさん2014/06/07(土) 19:20:37.06ID:SxbAzKvi
rubyじゃ知らない人が多すぎるからだろ
0569デフォルトの名無しさん2014/06/07(土) 19:22:39.50ID:3bOF7vlv
C++とかJavaとかと比較しよう
0570デフォルトの名無しさん2014/06/07(土) 19:26:21.82ID:SxbAzKvi
江添さすがだな

Appleが新言語、Swiftを発表するも、すでに閉鎖的すぎて絶望しかない
http://cpplover.blogspot.jp/2014/06/appleswift.html
0571デフォルトの名無しさん2014/06/07(土) 19:40:41.15ID:TlGqKTZW
仮に、他のプラットフォームで使えたとしても、Goなどと比べて特長(徴じゃないよ)が全くない。
だから、普通の人は閉鎖的だと言ってわざわざ絶望しない。
0572デフォルトの名無しさん2014/06/07(土) 19:55:29.09ID:rMJ4X6ee
こんな奴がC++の幹部やってるようじゃ未来は暗いな
早晩ObjCとSwiftに駆逐されるでしょう

だいたい自由(笑)なんてのはとっくに敗北してる
マルウェア天国のGoogle Playを見ろよ
ソフトの発展にはAppleみたいな信頼できる組織の統制が絶対に必要なんだよ
0573デフォルトの名無しさん2014/06/07(土) 19:56:47.37ID:7pBMlLiO
自由なソフトウェア教というApple教より不自由な宗教にハマってるようにしか見えんわなw
0574デフォルトの名無しさん2014/06/07(土) 19:57:36.03ID:/UoE9drH
>>567
で、C/C++ との比較はいかに?
0575デフォルトの名無しさん2014/06/07(土) 19:58:25.69ID:/UoE9drH
>>572
>C++の幹部
ここ笑うところですか?
0576デフォルトの名無しさん2014/06/07(土) 19:58:27.41ID:pVPDhPb9
ソフトウェア利用者の自由は保証するが、作る人の自由は保証しない。
0577デフォルトの名無しさん2014/06/07(土) 20:00:21.98ID:qArHvPwZ
>>572
なんでNGされてるのかと思ったらおまえマルチポストコピペ君じゃん。
0578デフォルトの名無しさん2014/06/07(土) 20:48:22.66ID:PqyH2mKV
>>535
この春に更新した時はクレジットカードかApple Storeギフトカードの選択しかできなかった。
Apple Storeギフトカードはコンビニ払いができるので、カードなしでも大丈夫。手数料もなし。
7800+消費税分の金額で自分宛のApple Storeギフトカードを購入。
コンビニでの入金後、2日くらいでコードがメールで届く。
Apple StoreでiOS Developer Programを購入するときにApple Storeギフトカードを選択して
事前に購入したコードを入力すれば完了。
0579デフォルトの名無しさん2014/06/07(土) 20:55:25.02ID:x/Jslsu8
SwiftだのC++だのPythonだのJavaだのたいして変わらん奴らで罵り合ってて恥ずかしくなるわ

言語には2種類しかないんだよ

Lispかそれ以外の言語か。
0580デフォルトの名無しさん2014/06/07(土) 21:02:23.99ID:rMJ4X6ee
>>577
NGにしてるしてるってわめくバカが一番ちゃんと読んでいる不思議w
0581デフォルトの名無しさん2014/06/07(土) 21:04:30.93ID:9clZYbXx
最近は共有NGってのもあるだろ
0582デフォルトの名無しさん2014/06/07(土) 21:19:37.20ID:4IjJ2QZJ
4GのMacbook AirだとPlayground弄るのもきついな
固まったり、落ちたりする
0583デフォルトの名無しさん2014/06/07(土) 22:03:33.64ID:x7Ot83v2
江添ってC++の幹部だったのかー
知らなかったわー
0584デフォルトの名無しさん2014/06/07(土) 22:09:58.99ID:ZS7Pwk6Y
お前ら嫉妬すんなよw
有名企業で言語の啓蒙が仕事とかなかなかできないぞw
しかしSwiftは興味深いし楽しい
自分が楽しめればよれこそが自由だよ
0585デフォルトの名無しさん2014/06/07(土) 22:32:50.70ID:kB4Uf9RW
否定意見を嫉妬認定はろくでもない奴の法則
0586デフォルトの名無しさん2014/06/07(土) 22:36:14.08ID:5ZPexMcX
自分の好きな物を否定されたら顔真っ赤にして人格否定するのはろくでなしの法則
■ このスレッドは過去ログ倉庫に格納されています