トップページ⇒tech
1002コメント321KB

Swift part6 [無断転載禁止]©5ch.io

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2016/02/02(火) 21:40:08.67ID:Ao+i9LUL
WWDC2014で発表されたAppleの新言語Swiftについて語りましょう

関連スレ
let s: プログラミング言語? = Swift[2]
http://anago.2ch.net/test/read.cgi/mac/1408755325/

プログラミング言語Swift 3
http://anago.2ch.net/test/read.cgi/mac/1408762479/

[SDK]iPhoneアプリ開発初心者質問箱43[touch][iPad]
http://anago.2ch.net/test/read.cgi/mac/1427294210/

Xcode part13 [転載禁止]©2ch.net
http://anago.2ch.net/test/read.cgi/mac/1424907278/


前スレ
Swift part5
http://anago.2ch.net/test/read.cgi/mac/1408755325/
0002デフォルトの名無しさん2016/02/02(火) 21:40:48.50ID:Ao+i9LUL
公式リンクなど
◆ Swift
https://developer.apple.com/swift/
◆ Swift Blog
https://developer.apple.com/swift/blog/

公式ドキュメント
◆ The Swift Programming Language
https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/
[iBooks版] https://itun.es/i6LR9w5
◆ Using Swift with Cocoa and Objective-C
https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/
[iBooks版] https://itun.es/i6Lr53p
◆ Swift Standard Library Reference
https://developer.apple.com/library/ios/documentation/General/Reference/SwiftStandardLibraryReference/

公式フォーラム (英語、要デベロッパーアカウント)
https://devforums.apple.com/community/tools/languages/swift
0003デフォルトの名無しさん2016/02/02(火) 21:41:17.91ID:Ao+i9LUL
FAQ

・初心者なんだけど Objective-C と Swift どっちで始めればいい?
趣味でやるならどちらでも好きな方をどうぞ。
就職・転職のための勉強ならObjCの知識はほぼ必須と思われるのでObjCから入るのが無難。
ObjCでもSwiftでも使うフレームワーク(UI○○やNS○○といったクラス群)は共通なので、アプリの作り方に大差は無いです。
Swiftの方がナウくて便利な書き方ができるが、その分覚えることは多め。
またSwiftが頻繁に仕様変更されるのは初心者にはツラいかも。

・日本語のドキュメント無いの?
残念ながら現在のところ無い。いつか翻訳されるとすれば↓ここに置かれるはず。
https://developer.apple.com/jp/documentation/
すでに日本語の解説本が多数出版されてるから、英語が苦手なら書籍で学ぶのアリ。

・買うならどの本がいい?
立ち読みして自分に合いそうなのを自分で探せ。
ただし若い言語のため仕様が流動的で、バージョンアップのたびに書籍の内容が古くなってしまう可能性があるので、
サポートサイトで新バージョン対応情報を公開していたり、随時アップデートされる電子書籍を選ぶといいかもしれない。

・Xcode をアップデートしたらコンパイルエラー出まくりなんだけど!?
マイナーバージョンアップでも破壊的な変更をばんばんブッ込んでくる。諦めろ。
変更点は Xcode のリリースノートにまとめられてる。歴代バージョンのリリースノートはこちら。
https://developer.apple.com/library/ios/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html
あるいは公式ドキュメント巻末の Revision History をチェック。
https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/RevisionHistory.html
0004デフォルトの名無しさん2016/02/03(水) 00:07:42.11ID:R9EPZkH9
乙wift
0005デフォルトの名無しさん2016/02/04(木) 23:18:05.42ID:M5WeNgYc
よく訓練されたSwift信者発見。

>Swiftの言語仕様に合わせて既存のCocoa APIを変えて行くとのことです。まだObjective-Cに執着している会社は早めに移行を検討する必要がありますね。

Cocoa APIの変更とObjective-Cへの執着〜Swift移行がどう繋がってるのかわからない。
俺の読解力が無いだけか。
0006デフォルトの名無しさん2016/02/05(金) 00:23:59.91ID:CLTcEK6c
そもそもCocoaAPIが変わるわけじゃない
信仰心も大概だが、ソースを見ずにとやかく言うのも良くない
0007デフォルトの名無しさん2016/02/05(金) 00:24:49.65ID:kDCwgmhF
つーか、要らないから使ってないだけでそ>Swift
0008デフォルトの名無しさん2016/02/05(金) 10:45:52.06ID:ZPivzzR9
>Appleが近い将来、「はい!今日からObjective-C禁止ね!だってSwiftの方が便利じゃん!じゃよろしく!乙!」といいそうな気がしてならないからです。

ブロガーは自分の発言にもっと責任を持てと言いたい。
これだからSwiftユーザは舐められる。
0009デフォルトの名無しさん2016/02/05(金) 12:07:51.37ID:Og9DR8Bu
>近い将来
現実的じゃないなー
0010デフォルトの名無しさん2016/02/05(金) 13:49:31.89ID:cvzC3wrO
うそはうそであると見抜ける人でないと(swiftを使うのは)難しい

Xcode7.2.1でswift周りで何かあった?
別段影響なさそうだったけど、影響あったヤツいたら教えれ
0011デフォルトの名無しさん2016/02/05(金) 17:23:45.10ID:mZPrB7ll
FAQ

・初心者なんだけど Objective-C と Swift どっちで始めればいい?
Swiftで始めるべきです
Objective-Cは残念ながらもはや時代遅れかつ、人間が理解できる言語ではありません

・日本語のドキュメント無いの?
Learn english, there is no future otherwise.

・買うならどの本がいい?
詳解Swift一択
この本の内容のレベルが高いと感じてしまうようであればあなたはSwiftへの入門を諦めた方がいいです

・Xcode をアップデートしたらコンパイルエラー出まくりなんだけど!?
英語のエラーログ読めないやつは速やかに自害してください
0012デフォルトの名無しさん2016/02/05(金) 17:28:35.12ID:J2z5kGZC
>>11
採用
0013デフォルトの名無しさん2016/02/05(金) 19:29:41.27ID:FOh5j5HS
詳解Swiftはレベル高くて勉強になるだろ
0014デフォルトの名無しさん2016/02/06(土) 11:51:33.22ID:DtY2GwTP
英語は薦めるけど公式のiBooks本を推薦しない
というネタレスだよ、ネタを解説させんな恥ずかしい
0015デフォルトの名無しさん2016/02/06(土) 12:13:25.44ID:FY2JQV8A
意識高い系言語で遊んでる意識高い系のスレ
0016デフォルトの名無しさん2016/02/06(土) 12:17:13.67ID:qnMqd6MR
ガキかよ
0017デフォルトの名無しさん2016/02/06(土) 12:55:53.18ID:oR/Yho10
>>16
??
0018デフォルトの名無しさん2016/02/07(日) 09:44:53.50ID:okwEP/J2
>>11
>Objective-Cは残念ながらもはや時代遅れかつ、人間が理解できる言語ではありません
Objective-Cが理解できないとか、プログラマやめた方がいいレベル
0019デフォルトの名無しさん2016/02/07(日) 09:50:32.28ID:2Erl9OjR
ど初心者目線ですが
Flappyのようなゲームを動画を参考に作った後、動画を見て制御文等を頭に入れ
その後、詳解のような本を読むとモチベが下がらずいいかもしれません。
わからないところはググりながらで。あとはアプリ開発の本でFlappyで使ったようなコードが出てくるので
再度理解しながら読み書いていくとか。
0020デフォルトの名無しさん2016/02/07(日) 10:16:48.09ID:V5gkt1eW
>>18
自然言語プログラミングな命名規則を推奨するObj-Cは理解出来ても納得したくない言語だと思った
言語が悪いんじゃなく、AppleのAPIが悪いだけかもしれんが

>>19
普通に正論だなw
0021デフォルトの名無しさん2016/02/07(日) 11:10:27.22ID:jvYVRZ1r
>>19
https://ja.wikipedia.org/wiki/FLAPPY
0022デフォルトの名無しさん2016/02/07(日) 11:54:59.08ID:2Erl9OjR
>>20
ほっ(*´ω`)
>>21
略して書いてごめんなさいw
0023デフォルトの名無しさん2016/02/07(日) 12:44:52.97ID:zQsTBXAe
Swift教信者は金輪際C言語は使うなよ
0024デフォルトの名無しさん2016/02/07(日) 13:26:15.01ID:itsriA93
Swift信者はコンパイラのソースコードを読むためにC++勉強してるんだろ?
本末転倒もいいところだ
0025デフォルトの名無しさん2016/02/07(日) 13:26:39.88ID:vXIFpP3i
Objective-Cはオブジェクト指向言語でSwiftはプロトコル指向言語?てことは移植するときそのまま書き換えじゃなくてクラスやメソッドの構成も変えないとSwift流にはならないって考えであってる?
0026デフォルトの名無しさん2016/02/07(日) 13:34:09.49ID:okwEP/J2
Objective-CなんてC言語の知識とオブジェクト指向言語について知ってれば
ほとんどハードルなしに使える

ネタ切れでなんとか新しい感を出したいがために、意識高い系言語をゴリ押し導入
しようとしてる時点でAppleも終わりの始まりだろう
0027デフォルトの名無しさん2016/02/07(日) 13:45:03.07ID:itsriA93
100万円のWatch使えよ
人生変わるぞ
0028デフォルトの名無しさん2016/02/07(日) 14:29:12.41ID:okwEP/J2
まあ変わるだろうな
なんでこんなもんに100万円も出しちまったのかと後悔し続ける人生へと
0029デフォルトの名無しさん2016/02/07(日) 20:09:10.66ID:AyReX6ih
日本だと車買えない維持できない哀れな中年が
代替見栄張りアイテムとして背伸びして買うものに
高級時計はなっちゃってるけど
世界の標準的な感覚では100万の時計は身につけてる他のものも
100万ぐらいで固めてる人が戯れに買うアイテムなんだよなぁ…
0030デフォルトの名無しさん2016/02/07(日) 21:58:19.09ID:V5gkt1eW
欧米か(死語
0031デフォルトの名無しさん2016/02/08(月) 05:03:05.10ID:z0FWqNRt
>>25
Objective-C/C++ はインライン Smalltalk を書ける C。
Swift は LL っぽい文法で(実質 Smalltalk ライブラリである) Cocoa にアクセスする言語。
Smalltalk は文法上はクラスベースだが実態はプロトタイプベース。
プロトタイプベースで C++ や Java などの ADT(抽象データ型)のコンパイル時型チェックをするためのギミックがプロトコル。C++0xから抜け落ちたconceptもそう。
だから objc 向けにまともに書けてるなら、書き直す必要はない。
0032デフォルトの名無しさん2016/02/08(月) 06:42:23.79ID:N6H7H47/
Obj-CがSmalltalk由来であることを誇りに思った終始盲目的な話の展開で意味が分からない、、、

>>25
swiftはオブジェクト指向でプロトコル指向で関数型で手続き型な言語だけど
実質の標準フレームワークのCocoaがオブジェクト指向だから
Obj-Cから変わらずオブジェクト指向のならっておけば良いんじゃね

一昔前のJSライクに末尾クロージャーで結果を受け取るのがAppleの中ではトレンドのようなので、それは気を付けた方が良い
デリゲートとか使ってたらダサいヤツ扱いされるのがオチ
0033デフォルトの名無しさん2016/02/08(月) 08:32:11.11ID:qjNVSHl1
なんかみんな色々言ってるけど、結論、意識高い系言語Swiftは要らないってことでいい?
0034デフォルトの名無しさん2016/02/08(月) 09:17:20.22ID:BsPJkgzg
>>33
いいよ
お前以外はみんなSwiftに移行してるから
0035デフォルトの名無しさん2016/02/08(月) 09:29:10.26ID:FN4YbbQj
ゴリ押しはどこかで歪みを生ずる
0036デフォルトの名無しさん2016/02/08(月) 10:26:57.02ID:IIXpg5Zd
逆張りはどこかで歪みを生ずる
0037デフォルトの名無しさん2016/02/08(月) 12:40:04.77ID:Q+u67wrR
同じ奴が"こう書けば信者が歯軋りするだろう?"って
「Obj-Cは死んだ!」「swiftはゴミ!」と交互に書いてるだけって
みんなわかってるしな…
0038デフォルトの名無しさん2016/02/08(月) 14:45:37.56ID:4WcluOF7
ほんそれ
0039デフォルトの名無しさん2016/02/09(火) 10:58:38.24ID:DeD0yAuh
プロトコル指向とオブジェクト指向の違いをわかりやすく教えて下さい。
0040デフォルトの名無しさん2016/02/09(火) 11:02:09.74ID:fvtMUsKQ
ググレカス
0041デフォルトの名無しさん2016/02/09(火) 13:55:25.12ID:0DjVzedi
レイヤーが違うと思うんだがな
オブジェクト指向はパラダイム
プロトコル指向はデザインパターン
0042デフォルトの名無しさん2016/02/09(火) 14:30:48.38ID:4zVjIm62
たしかJavaもプロトコル指向取り入れられてたよな。
interface内でメソッドのデフォルト実装出来るようになってるし。

どっかのブログでこれを批判してる人がいたが、
Swiftが追従してる所を見ると正統な進化だったんだな。
0043デフォルトの名無しさん2016/02/09(火) 14:45:57.62ID:0DjVzedi
プロトコル指向っていうか「実装に対してではなくインターフェースに対してプログラミングする」っていう、どのオブジェクティブ言語でも良しとされるスタイルを
Swiftのプロトコルとかプロトコル拡張とか値型とかに絡めてより具体的にSwiftではこうするって言ってるだけだ
0044デフォルトの名無しさん2016/02/09(火) 16:38:52.51ID:fvtMUsKQ
enumやstructに関数実装はswift初期の間違ったライブラリ実装でよく見たけど
プロトコルへの実体実装は流行ってるのかね

オブジェクト指向程度のパラダイムだと思うが、あまり使う気にならんぜよ
0045デフォルトの名無しさん2016/02/09(火) 21:54:03.01ID:HNZnYINy
>>44
間違ってるのならできないようにして欲しいな
0046デフォルトの名無しさん2016/02/10(水) 00:16:36.20ID:lmKoL+/Z
入門書の次に読む本で最適な本って何?
アプリ開発の教科書を読み終わったんですが、、、
アプリとしては、大学入試用学習アプリを作ってみたいと思うのですが。
掲示板機能なども実装したいです。
0047デフォルトの名無しさん2016/02/10(水) 07:31:31.93ID:TW/F63RH
>>46
http://potato.2ch.net/test/read.cgi/mac/1447650023/
0048デフォルトの名無しさん2016/02/10(水) 08:09:34.13ID:N7tKKlve
Swiftって何であんなに意識高いの?
0049デフォルトの名無しさん2016/02/10(水) 11:52:45.54ID:nNZFJpww
Appleが作った言語だからな。
0050デフォルトの名無しさん2016/02/10(水) 12:37:46.63ID:L3XT/ziE
>>49
意識高い系言語ってRubyってイメージなんだが。
0051デフォルトの名無しさん2016/02/10(水) 12:45:25.68ID:5D7l2JG3
じゃあ意識低い言語っていうとJavaとかObjC?
0052デフォルトの名無しさん2016/02/10(水) 13:29:05.50ID:TW/F63RH
C--とか意識低すぎ、どこを見てるのかワケワカラン
https://github.com/nrnrnr/qc--

>>45
列挙型/構造体とクラスの意義の違いを理解して使う分には良いんだけどねー
列挙型/構造体に関数使える!クラス使わない非オブジェクト思考で俺意識高いな!
みたいな結局クラス同等に使ってる頭悪そうな3rd libが当時は結構たくさんあった気がする
0053デフォルトの名無しさん2016/02/10(水) 19:47:28.02ID:YSgR1d2R
>>51
C++とかCOBOLとかいわゆるドカタ用の奴かな。
なんでわざわざ使い難いそれ?感が強ければ強いほど意識低い感UP
新しい、変わった、ってつけば意識高い方向で
古い、手垢のついた、非効率的な。で意識低いUP
0054デフォルトの名無しさん2016/02/10(水) 19:54:43.64ID:FUpM9Alw
>>53
日本語でOK
0055デフォルトの名無しさん2016/02/10(水) 21:41:32.73ID:L3XT/ziE
言語における意識高い系、低い系の具体的定義を明確化しないと
お話しにならないのでは。
0056デフォルトの名無しさん2016/02/10(水) 22:20:33.56ID:0P+OxeMu
C++は意識低いってことだよ
なんども言わせんなよ
0057デフォルトの名無しさん2016/02/10(水) 22:22:18.46ID:FUpM9Alw
C/C++ はマルチパラダイムとかいって切り貼り細工をごまかしているからね
問題はこういう言語を一個やると似たようなやつはいやになる,scala とかね
0058デフォルトの名無しさん2016/02/10(水) 22:51:35.23ID:fygSQYjJ
C++は意識低いのか
0059デフォルトの名無しさん2016/02/11(木) 00:03:32.71ID:YPqW9yG4
swiftで書くとほとんどoptional型になってしまう・・
nil全く使わなくなったらswiftにする
言語って言うより、もっとモダンにstoryboard内でUIパーツ毎に記述するとか、ソースコードファイルって概念がもう要らない
0060デフォルトの名無しさん2016/02/11(木) 00:17:08.99ID:fwp65K1P
>storyboard内でUIパーツ毎に記述
それリンゴとかアクションスクリプトみたいだな。
0061デフォルトの名無しさん2016/02/11(木) 00:22:57.21ID:fwp65K1P
ビューにコード100行ぐらいしかないとか、
チェックボックスぽちぽちだけで済むならそれでもいいけどな。
もうそのレベルならプログラマ要らないな。
0062デフォルトの名無しさん2016/02/11(木) 00:26:14.83ID:qW0CSVub
2016年のいまになってもテキストエディタでプログラムを一行ずつ打つみたいな言語が新造されてるとかまったく想定外ではあるな。
もうこの年代ぐらいになったらアイコンをポチるみたいにクラス扱ってて、入力はこれとこれ、出力はこれとこれ…って
リストから選んでグラフィカルに作業しつつ、デバッグも仮想実行でベロベロコピーされるインスタンスみながら
ありゃ、あそこ数字変だぞ?とか、あ、インスタンスの作成が止まらねぇやバグだなとか、あ、あそこに相互参照してるゴミあるや
みたいにやってると思ってた。
2016年には。

絶対、SFかぶれの吹いてる"シンギュラリティ"とかねぇわ。
0063デフォルトの名無しさん2016/02/11(木) 00:45:24.54ID:fwp65K1P
それはレイヤーの問題だよ。
今でもGUIだけでプログラミングできる環境はあるだろ? 詳しくないけど。
そのレイヤーではプログラマ = ユーザーなわけ。
もっと下のレイヤーではプログラマーがコードを書いてる。
0064デフォルトの名無しさん2016/02/11(木) 00:56:47.32ID:YPqW9yG4
プログラムが簡単になったら困るんだよ!
だからswiftとか「意識高い」とか洗脳して覚えさせるんだよ。
obj-cで何の問題もないのに。
0065デフォルトの名無しさん2016/02/11(木) 01:05:47.24ID:qODs7Gxm
>>52
>列挙型/構造体とクラスの意義の違いを理解して使う分には良いんだけどねー
簡単にでいいので意義の違いを教えて欲しいです
何でもかんでも列挙型/構造体に実装を突っ込むのは違和感を感じてて、でも勉強不足なので明確にどこがどういけないのかというのが理解できていないです
0066デフォルトの名無しさん2016/02/11(木) 04:12:12.04ID:LRu19Ons
意識高い系って誉め言葉だとでも思ってんのかね
0067デフォルトの名無しさん2016/02/11(木) 08:20:16.01ID:FNR4nKd2
>>62
そういう生産性の高い奴は一瞬で作業が終わるから成果物しか表に出てこない

裏方の言語が表に出るのはそうじゃないケースさ
0068デフォルトの名無しさん2016/02/11(木) 11:04:41.13ID:SJ0htAFp
>>62
コードをタイプして入力することの是非はさておき、
処理系と対話的にデバッグをするのは1970年代からあるSmalltalk環境での開発を彷彿とさせるね。
https://www.youtube.com/watch?v=aqW6Sp279Z0&;t=22m の22分あたりから
(ちょっとわかりにくいけど、Smalltalkでは実行コンテキストもオブジェクトで、デバッガはそれとの対話のためのGUIに過ぎない)

ジョブズ達はこれを見ているのにこのときはGUIだけでLisa/Macを作って満足しちゃって「使うは天国、作るは地獄」と揶揄された。
アップル追い出されたあと、ようやくネットワークとオブジェクト指向の重要さに気付いてNeXTSTEPを作って自慢していたけれど
http://web.archive.org/web/20121016134054/http://americanhistory.si.edu/collections/comphist/sj1.html#soft
このSmalltalkのライブなコーディング&デバッグ感覚は、SwiftのPlaygroundをもってしてもまだ限定的なのが残念だ。
0069デフォルトの名無しさん2016/02/11(木) 12:21:43.32ID:qdmL7Jdb
Apple信者は振り回されて大変だね
0070デフォルトの名無しさん2016/02/11(木) 16:06:06.09ID:xcuK9Mgz
>>62
UE4のBluePrintでもさわればいいよ。
正直情報共有という観点から使いづらいと思う。なんだかんだいって
文字は便利。
0071デフォルトの名無しさん2016/02/11(木) 19:09:05.17ID:kpTZNrvC
>>65
列挙型:
リストされた状態(変数)だけ持つ
状態から演算した値を返す関数実装はアリ

構造体:
(出来れば)値型の固まり、StringやNumberもまぁ含む
固まりから演算した(ry

クラス:
面倒なので説明省略

自身の状態を書き換えるを持つ列挙型や構造体の関数実装はシネ
クラスは参照渡し、それ以外は値渡しの違いも気をつけるべきか、値渡し多用は性能落ちるわ

異論は認める
0072デフォルトの名無しさん2016/02/14(日) 00:40:14.38ID:+Fbk6tbu
プロトコル指向ってつまり
カテゴリの実装によるロジックがそのまま使えて便利!って理解でいいかな?
0073デフォルトの名無しさん2016/02/14(日) 02:50:08.28ID:SS1KUmSL
頭悪いかコード書くの遅い人向け言語
それが、Swift
obj-cで十分
0074デフォルトの名無しさん2016/02/14(日) 03:43:30.50ID:M02RLBoc
こうやって老害と呼ばれる人種であるが生み出されていくんだね
0075デフォルトの名無しさん2016/02/14(日) 06:21:29.56ID:SS1KUmSL
まだ20代後半なんだけどな
言語とかはなるべく変えないほうがいい
フレームワークのパラダイムのほうが大切
0076デフォルトの名無しさん2016/02/14(日) 08:31:18.60ID:pE5MFLOA
まだ30半ばだけど言語は変えていい
フレームワークの流行りに適度に追従するのはほどほどに
パラダイム(笑)のキーワードは要注意
0077デフォルトの名無しさん2016/02/14(日) 10:03:07.98ID:AfwNxhnQ
20中盤だけど言語もフレームワークも変えていいし流行に追従しても良いと思ってる
言語ごとに合った実装するしフレームワークも同じだから色んなコード書けるし
実際多言語多フレームワーク使用経験は役立ってる

数を取るか深さを取るかみたいな話は考え方の話になるから置いておいて
obCより簡単に早くコード書ける言語だと言ってるSwiftを避ける論理的な理由とかあるのかな?
0078デフォルトの名無しさん2016/02/14(日) 10:03:43.49ID:+Fbk6tbu
ずっとc,php,obj-cでswiftをきっかけに関数型言語に触り始め
haskellに挫折してelixirに感動中
パターンマッチングいいよ。elixirは特にバイナリに対してパターンマッチングできるのが新鮮だった。
ということで他の言語に触り始める事で視野が広がる感じはする。
後言語自体の学習は2言語目以降は、楽。
いいチュートリアルを見つけさえすれば1日でそれなりに使えるようになる。
0079デフォルトの名無しさん2016/02/14(日) 10:16:54.67ID:pE5MFLOA
>>77
性能悪い、容量でかい、仕様変更多い、下位iOSバージョンで使えない

とりあえずこんな所か
先行投資の遊びは良いよ、実用は4.xくらいまで待つけど
0080デフォルトの名無しさん2016/02/14(日) 10:53:29.40ID:HUICKMOI
Swiftに移行しないといけない合理的かつ必然的な理由はあるのかね
Appleのゴリ押し方針への追従?
0081デフォルトの名無しさん2016/02/14(日) 11:23:25.51ID:aQudxkF7
ObjCの生産性低すぎるから
0082デフォルトの名無しさん2016/02/14(日) 11:31:02.90ID:pE5MFLOA
>>80
金になる
swiftです、というだけで食いつく顧客はいるので
上記のデメリットを度外視すれば美味しい
0083デフォルトの名無しさん2016/02/14(日) 11:54:38.74ID:aP2KUqj6
バカが多いのか
0084デフォルトの名無しさん2016/02/14(日) 14:28:32.02ID:zXLi9Jt7
某オサレバトル漫画みたいに、意識高いポイントを設定するとか
他言語をけなす +1 関数型 +1 Apple +10
0085デフォルトの名無しさん2016/02/14(日) 16:27:27.62ID:vfD0jhQo
>>79
下位OSバージョンには対応してるんじゃないのか?Swift 3もiOS 8や9で普通に動くでしょ。
容量がでかいのは同意。
0086デフォルトの名無しさん2016/02/14(日) 17:23:31.86ID:M02RLBoc
「性能悪い」や「容量でかい」は主観的な主張に聞こえるけど、客観的に言えること?
0087デフォルトの名無しさん2016/02/14(日) 17:30:15.01ID:/IUGatQv
Hello World 作れば分かるでしょ?
0088デフォルトの名無しさん2016/02/14(日) 17:30:49.87ID:/IUGatQv
容量の話ね。
0089デフォルトの名無しさん2016/02/14(日) 18:40:14.90ID:pE5MFLOA
性能はBM作れ
ケースバイケースでswiftの方が早い時もあるだろうが
取り合えずブートストラップなランタイム読み込みや、構造体多数宣言/利用な仕様が単純に余分

>>85
swift 2.xでiOS 7は切ったよな、確か
iOS 10が出たらiOS 8は切るんじゃね? swift 3.0 stableと同じタイミングかは知らんが
0090デフォルトの名無しさん2016/02/14(日) 19:41:52.01ID:ms7PNQ7+
>>87
Hello Worldを作ってもインクルードされてるライブラリの基本サイズしかわからんのではと常々。
一行増えるごとにサイズが2倍3倍と増えてくならともかく、素コンパイルの基本サイズが大きい小さいって
21世紀に言うことかそれ?と
0091デフォルトの名無しさん2016/02/14(日) 20:19:28.21ID:pE5MFLOA
アプリコードより小さな(笑)ランタイムの方がよほど大きいんだよなぁ

まぁそれを気にしない輩は
性能も容量も仕様変更も下位互換も気にしてないから
どーんとswift採用してくれるとウハウハでありがたい
0092デフォルトの名無しさん2016/02/14(日) 21:47:05.37ID:+Fbk6tbu
>>90
だよねーElectronで作ったアプリなんかタスクトレイに常駐するようなのでも200MBとかになる時代だよ。
まぁアプリ毎にブラウザを稼働させてるようなものなわけだけど
0093デフォルトの名無しさん2016/02/14(日) 22:04:23.06ID:M02RLBoc
書こうと思ったことが既に書かれてた
実際ObjCよりSwiftの方が容量大きいんだろうけど「それがどれほど問題になるか」なんだよね。Appleも大して問題にならないと思ってるからSwift推しなんだろうし。
それよりObjCの生産性の低さやレガシーさの方が問題あるんじゃないの、と。

あと老害的思考に実年齢は関係ないとおもう
0094デフォルトの名無しさん2016/02/14(日) 22:07:26.38ID:AfwNxhnQ
AppleがSwift推してる時点でもう必要不必要の議論の意味はないんじゃないかな
容量等の問題も徐々になくなるだろうし
Appleが用意してくるものもどんどんSwiftに寄ってくだろうし
0095デフォルトの名無しさん2016/02/15(月) 03:35:27.99ID:V/lUmn99
容量がでかいのは客観的に言えるのか?って言ってたやつが実際に大きいかよりそれがどれほど問題になるかとか首尾一貫してない事書いてて笑ったw
問題になるかどうかはプロジェクトによる。ジャンルにもよるがアプリの容量が18MB程増えりゃダウンロード数にも影響あるしな。
今はメリットデメリットを理解してObjective-CとSwiftを使い分けるしかない過渡期だろ。
0096デフォルトの名無しさん2016/02/15(月) 08:05:31.03ID:EjL4Z6aG
そう? 議論の出発点は >>77 のSwiftを避ける論理的な理由があるかどうかであって、そこから「容量が大きいことは多くの人にとっては(客観的には)問題にならないのでは」ってのはElectronからの話の流れで明白だと思うけど。

欠点を挙げることはSwiftであれObjCであれいくらでも出来るわけで、実際それがどれだけ問題になるかどうかが重要なんじゃないの? 「性能が悪い」も同じこと。
0097デフォルトの名無しさん2016/02/15(月) 08:55:26.82ID:A/fiNKK0
ObjCの生産性の低さを執拗に説く輩が多いけど、自分が無能だと言ってるの?
0098デフォルトの名無しさん2016/02/15(月) 09:13:57.36ID:Au7JCkC5
生産性の低さを嫌うのが無能なのなら世のスクリプト使いは皆無能ということになるな
0099デフォルトの名無しさん2016/02/15(月) 09:21:40.19ID:Y2rOmBCX
具体的に生産性の低い点はどこよ?
でそれをSwiftではどのように解決してるの?
0100デフォルトの名無しさん2016/02/15(月) 11:21:34.23ID:X2CvPdna
お前、教祖様をディスってんの?Swiftが生産性高いって言ってんだから、相対的にObj-Cが低くなるのは真理
しかし、Obj-CがJavaや他言語に比べて生産性が劣っているとは言ってないので、こう解釈すれば良い
生産性: Swift > Obj-C >> (超えられない壁) >> Java, JavaScript, Go, etc.
0101デフォルトの名無しさん2016/02/15(月) 17:43:46.48ID:TkgYdC/v
正確にはXcode(Swift, Obj-C) >> (超えられない壁) なんだがな。
0102デフォルトの名無しさん2016/02/15(月) 17:49:16.37ID:11uB8W2o
Xcodeが生産性高いと思ってるとは井の中の蛙やねぇ
0103デフォルトの名無しさん2016/02/15(月) 20:14:23.85ID:d+l4dmgl
>>102
教祖様に刃向かうつもりか?
0104デフォルトの名無しさん2016/02/15(月) 21:45:42.18ID:fTodsugA
Xcodeが使いやすいとか言ってる奴はVisual Studio使ったことないんだろうな
0105デフォルトの名無しさん2016/02/16(火) 00:24:45.15ID:tA04zQw6
VSさえ知らなければ不満はなかったのに
0106デフォルトの名無しさん2016/02/16(火) 06:22:31.38ID:cb7bLrdU
>>101
不正確だろw
swiftが生産性高くなるって教祖の論はどこ行った
0107デフォルトの名無しさん2016/02/16(火) 19:14:42.46ID:EQxTpbyE
>>96
Electronの容量が問題にならないのはデスクトップアプリだから
WiFi繋がずキャリア回線だけで使ってる情弱がたくさんいるiPhoneではまた話が違う
0108デフォルトの名無しさん2016/02/16(火) 20:06:48.53ID:ksFtmG2N
NMB + ElectronベースIDE、動作重いしバッテリー消費早いしCPUブン回って熱いし、Electron使えねー
って自分みたいな情弱は知らんわって話だわな

ElectronしかりSwiftしかり、ハイエンドデバイスでのみ使えば何ら問題ない
性能悪いだの、容量でかいだの、そんなものは金で解決すれば良いんだよ!(多分正論
0109デフォルトの名無しさん2016/02/16(火) 20:30:23.27ID:F5pzNKs/
大昔JavaやRubyとかが出てきたばっかりの時と似たような感じだわな。時間が解決する類い
0110デフォルトの名無しさん2016/02/16(火) 22:40:54.22ID:sju87GTY
スレ違いだがRubyってそんなに重たかったのか
CGIなんてPerl, Pythonでいいじゃんと使ってなかったから知らんかった

そんな重いRubyがRailsで救われたように、Swiftにも何か目立ったソリューションが出ると良いのう
最近のAppleのマーケティングはSwiftに限らずやる気が見られないので、3rdで誰かガンガレ
0111デフォルトの名無しさん2016/02/17(水) 16:24:14.84ID:9kGvW4HJ
TrackpadからMagic Mouseへ移行しました!
特にOutlet作成しやすくて嬉しい(^^)
0112デフォルトの名無しさん2016/02/17(水) 16:52:43.04ID:243ZLeyW
>>108
IDEの話ではなくElectronで作られたアプリがでかいって事では?
0113デフォルトの名無しさん2016/02/17(水) 16:55:21.89ID:W4p6uDeZ
nendの単価低すぎ!admobの5分の1なんだが
http://i.imgur.com/G8UWfRr.jpg
0114デフォルトの名無しさん2016/02/17(水) 20:53:43.19ID:LsOLwXMf
なんか関数型が騒がれてるからむりやりねじ込んできた感が未だにぬぐえない
swiftで書いてても、省略記法ばっかだし
言外の動作(評価した時点でunwrappingされるとか)が多いし
これ読みやすいか?書きやすいか?果たして?って疑問しか湧いてこない
確かにバグ呼び込みやすいのは圧倒的にOjb-Cだろうけど
swiftのあれこれだって、言語使用ってよりはコンパイラ側ががんばってるだけじゃないのとしか
0115デフォルトの名無しさん2016/02/17(水) 20:55:37.76ID:LsOLwXMf
Object-Cが古いだの汚いだのは理解できるけど
今時の記法とpascal臭い記法のキメラみたいになってて
読んでて気持ち悪いんだよなあ。swiftって
0116デフォルトの名無しさん2016/02/17(水) 21:26:24.43ID:27F9F8MI
確かにキメラ感はある
0117デフォルトの名無しさん2016/02/17(水) 23:43:08.05ID:Dl0u0Isx
>>114
クロージャーを指して関数型(笑)な言語だ!と思ってるなら
C++11やJava8のクロージャー/ラムダ式に比べれば読み書きしやすいだろ, Obj-Cのクロージャー表記もC++11並にきっついし

キメラを作ろうとしてキメラを作ったんだから良いじゃない
色んな言語からパクりまくった割には結構整ったキメラだと思ってる
0118デフォルトの名無しさん2016/02/18(木) 00:02:46.70ID:CuMm10A+
それでも今あえてswiftを使う必要性は感じないよなあ
0119デフォルトの名無しさん2016/02/18(木) 00:24:21.26ID:K530KUbi
つまり!でunwrapしちゃダメなんだよな?
でも!を自動的につけてくる、nil返してるのに
戻り先でnil判定?
ならばobjCにlet導入+nilチェックしないとコンパイルエラーで良くね?
NS〜抜きでアプリ作れないし、xcodeクソ重くなるし、クソ言語としか思えないのだが・・
0120デフォルトの名無しさん2016/02/18(木) 00:40:01.68ID:CuMm10A+
>>119
そういうことだよね
Obj-Cの拡張とコンパイラでの対応で何があかんかったの?と思う
関数が第一級オブジェクトだの関数を引数にできたりとか言っても
だからなに?くらいにしか思わないし
確かに今のままのObj-Cだと汚いかもわかんないけど実務的ではあるしなあ
0121デフォルトの名無しさん2016/02/18(木) 00:55:03.87ID:jwsyAE6+
Appleの幹部がGoogleにobjCププ!
とかバカにされてJS陣営に無意味に対抗してるとしか思えない。
ジョブズだったらobjCをドラスティックに改良したはず。
こんなクソ言語ゴリ推しするならApple系開発辞めるよ。
0122デフォルトの名無しさん2016/02/18(木) 01:10:11.93ID:A4Y2lHqG
obCやってなかったから未だに外部引数名に違和感が拭えない
イニシャライザなら〜とか第一引数なら〜とか統一性の無さも好きじゃない
0123デフォルトの名無しさん2016/02/18(木) 01:13:01.14ID:jwsyAE6+
オレがobjC改良するなら、
var参照時にvarがnilならvar_nilable {}に遷移する言語仕様にするよ。
optional型とかダッセ。
それとRORみたいに命名ルールとかフォルダ構成とかMVCを縛ってくれよ。飛躍的に生産性上がるぜ。
0124デフォルトの名無しさん2016/02/18(木) 01:26:29.63ID:LFvD/VqZ
今年のWWWCでObjC終了宣言してきそう
0125デフォルトの名無しさん2016/02/18(木) 01:34:03.32ID:jwsyAE6+
そしてAppleはまた衰退期か・・
歴史は繰り返すんだな・・
0126デフォルトの名無しさん2016/02/18(木) 07:05:06.85ID:BPR4XtWa
なぜSwiftの文字列はウンコなのか
http://postd.cc/why-is-swifts-string-api-so-hard/
0127デフォルトの名無しさん2016/02/18(木) 08:44:09.45ID:AlZVIp8V
Swiftは実務じゃ怖くて使えない。中で何してるやら。
0128デフォルトの名無しさん2016/02/18(木) 09:13:43.44ID:RqdQdsTw
中で何してるやら(キリッ

wwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0129デフォルトの名無しさん2016/02/18(木) 09:24:07.34ID:K530KUbi
ま、戻り値を->にしたかっただけなのかな・・。
0130デフォルトの名無しさん2016/02/18(木) 09:25:02.10ID:K530KUbi
仕事増やしてくれてありがとう。
0131デフォルトの名無しさん2016/02/18(木) 09:26:23.26ID:K530KUbi
でも絶対に書籍ビジネスには加担しないよ。。
0132デフォルトの名無しさん2016/02/18(木) 09:42:04.80ID:Yqyi43Dh
>>37の後者チームハッスル中
0133デフォルトの名無しさん2016/02/18(木) 12:33:20.24ID:Q+iiVHnj
>>123
ほんとOptional型はいみわからんよなあ
結局!使わなきゃいけない場面ってのは出てきちゃうんだし
利点に思えるような状況になったことないわ
>>127
なんか、仕様決めたやつ個人の使い勝手や書くときの癖が
swiftの記法には盛り込まれ過ぎてる気がするんだよな
呼び出し時の第一引数はローカルで第二引数以降は外部だとか
気に入らなきゃtuple使えよとか
返り値は関数名の右に->で出すとか
余計な事考えなくても自然にかけばそのまま動きますよーとか思って仕様決めてそうだけど
それに当てはまる人間ばかりじゃねえだろってケースがやたらと多い
0134デフォルトの名無しさん2016/02/18(木) 12:44:20.88ID:Q+iiVHnj
コーディングガイドラインでしっかり決めとかないと
ガンガン省略した書き方するやつが出てきそうで怖い
ttp://qiita.com/tottokotkd/items/7b51dd211dcce1e4e55b
0135デフォルトの名無しさん2016/02/18(木) 13:32:16.29ID:Yqyi43Dh
optionalの仕様元
https://kotlinlang.org/docs/reference/null-safety.html

kotlinスレで聞けば有用な使い方が分かるんじゃね
0136デフォルトの名無しさん2016/02/18(木) 14:04:50.51ID:Q+iiVHnj
>>135
ありがと読んでみる
0137デフォルトの名無しさん2016/02/18(木) 15:13:22.84ID:LFvD/VqZ
kotlinスレなんてあるの? 検索しても見つからなかったけど、urlたのむ
0138デフォルトの名無しさん2016/02/18(木) 16:53:18.78ID:Vd1TbJu9
>>134
Objective-CにTupleが導入されたらだいぶ便利になるなーと思った
今年のWWDCに期待
0139デフォルトの名無しさん2016/02/18(木) 19:31:20.60ID:CuMm10A+
大カッコ嫌い、C/C++嫌いがswift持ち上げてると思うことにしてる
0140デフォルトの名無しさん2016/02/18(木) 20:18:47.41ID:K530KUbi
結局、ObjC理解しないと開発できない気がするので、Swiftは絶対条件になってからにする。
0141デフォルトの名無しさん2016/02/19(金) 02:57:34.16ID:UbeTXikW
NSxxxxのほとんどがoptional?を返す。
JSONのフィールド値もoptional。
結局?!だらけになり、型推論が災いして可読性の低いソースコードになる。
swiftはいらない。
0142デフォルトの名無しさん2016/02/19(金) 02:59:31.86ID:Z0yy6QmJ
optional == what?!
0143デフォルトの名無しさん2016/02/19(金) 03:03:02.65ID:UbeTXikW
as! だらけでオブCが読みやすく感じる。
as! で簡単にクラッシュさせれるし。
0144デフォルトの名無しさん2016/02/19(金) 03:06:21.02ID:Z0yy6QmJ
そりゃどっちがリーダブルかっつったらオブちゃんじゃね?
ヘッダーみれば何するクラスか一瞬でわかるし。
0145デフォルトの名無しさん2016/02/19(金) 08:54:26.14ID:GBm78rMT
どこでクラッシュしたか相変わらず分からんクソ言語
喜んでるのは本屋と変態プログラマーだけだ
0146デフォルトの名無しさん2016/02/19(金) 09:40:45.00ID:VJBRgwyM
あれえ?なんでここでこうなるの??
調べた結果、"裏でこういう処理が差し込まれます。"なんやそれ!
見た目と振る舞いが違いすぎんよ。読んでそのまま動いてくれるような
直感的な書き方させてくれよ。ムダなおせっかいがすぎる
!とか?とか??とか、もっと具体的に意味が解る言葉で書かせろと思う
変数名が長くなりがちでメッセージがだらだら長くなるObj-Cが
大嫌いな人が多いってのはわかるけど
読んでそのままの意味で理解できるほうが可読性あがるんじゃないの
0147デフォルトの名無しさん2016/02/19(金) 09:42:34.16ID:VJBRgwyM
個人的にヘッダファイル欲しいんだけどなあ
直感的にも何がpublicになってるのか分かりやすいし
インターフェイスのコメントをしっかり入れれば簡易のドキュメントにもなるのに
ヘッダファイルの存在を嫌ってる人多いのかなあ
0148デフォルトの名無しさん2016/02/19(金) 11:48:27.59ID:FLvnXKEb
理想
Xcode使ってれば不便ないから要らない
一々プログラマが宣言と実装を重複して書くのは無駄
IDEも使わないような情弱はswiftに向いてない

現実
インクリメンタルを有効に実現できないから、swift 2.0からは内部的にはヘッダファイル作るわ、、、
ヘッダファイルは冗長(キリッと言った手前、おおっぴらには公開できないけど

という感じでヘッダファイル作る仕様になってるから、swift-clangのコマンドで生成できるんじゃない?
コマンド叩いてまで作る意味があるとは思えんけど
0149デフォルトの名無しさん2016/02/19(金) 12:00:35.76ID:F99oDgp7
SwiftでFrameworkを作ったらObjective-Cヘッダが生成されてなんじゃそりゃと思った
今も変わってない?
0150デフォルトの名無しさん2016/02/19(金) 12:59:10.23ID:VJBRgwyM
あれこれ明示的にしておくってのは利点もあると思うんだけど
昨今の流れはどんどん塞いでいくよなあ
>>148,149
現実的にはObj-C/Cocoaとの互換性からも汚くなってる部分があるのも否めないね
0151デフォルトの名無しさん2016/02/19(金) 14:19:34.24ID:4Cf/QVqR
@objcでクラス宣言したら.hヘッダが作られるのは仕方ないはず
作ってくれないとobj-cから叩けないフレームワークになってしまうからな
.swiftヘッダも一緒に出来るのもご愛嬌
0152デフォルトの名無しさん2016/02/19(金) 19:23:25.55ID:SZcs7Yct
言語そのものがハンガリアン記法みたい
読み下すのたいへん
0153デフォルトの名無しさん2016/02/19(金) 21:37:00.99ID:powhRbYu
Swiftは黒歴史
0154デフォルトの名無しさん2016/02/19(金) 23:39:07.16ID:T0mM5V/Y
>>146
BASICから入ってC見た時ですら
「なんでこんな暗号みたいな短縮表記しようとすんの??」だったからな…
プログラマというかコーダー特有の脳の病気なのかもしれんが
あの「タイプ数を減らすためなら読めないオタクの符丁みたいになってもいい」ってのは
マジでカウンセリング受けさせてコンピュータサイエンス界から排除して欲しいわ。
0155デフォルトの名無しさん2016/02/20(土) 00:21:31.28ID:x7CEQATf
swiftってワンライナー好きな人が好みそう
0156デフォルトの名無しさん2016/02/20(土) 00:23:05.69ID:x7CEQATf
http://goo.gl/VCf8B9
こんなもん.の前も書けばいいだけなんだけどな
言語としてこういうのが許されてるってことは
コーディングルールが厚くなるってことだな
0157デフォルトの名無しさん2016/02/20(土) 03:00:57.51ID:KOODKWnu
無駄なこと書かなくていいんだから素直に喜んだらいいじゃん

C++の

enum class HOGE_FUGA_FIZZ_BUZZ_TYPE: int {
  HOGE_FUGA_FIZZ_BUZZ_TYPE_SOME_VALUE;
}

void DoSomething(HOGE_FUGA_FIZZ_BUZZ_TYPE hogeFugaFizzBuzzValue);

DoSomething(HOGE_FUGA_FIZZ_BUZZ_TYPE::HOGE_FUGA_FIZZ_BUZZ_TYPE_SOME_VALUE);

とか馬鹿じゃねーのと思うわ

Swiftなら

enum enum class HOGE_FUGA_FIZZ_BUZZ_TYPE {
  SOME_VALUE;
}

func DoSomething(hogeFugaFizzBuzzValue: HOGE_FUGA_FIZZ_BUZZ_TYPE);

DoSomething(.SOME_VALUE)

で済むわけ

なんでわざわざ長く書きたがるのか理解不能だわ
0158デフォルトの名無しさん2016/02/20(土) 03:43:58.96ID:iS9YCN1I
メソッドと引数の型、役割が頭に入ってればいいけどさ、
>DoSomething(.SOME_VALUE)
状況によってはここだけみても何をしてるかが分かりづらい事があるからじゃない?
0159デフォルトの名無しさん2016/02/20(土) 04:02:30.93ID:ENHXFYe3
それは DoSomething が何する関数か分かってないような論外の奴だけ。
0160デフォルトの名無しさん2016/02/20(土) 06:38:14.55ID:Ua+MsWai
>DoSomething(.SOME_VALUE)
なんて脳内分担がわけのわからなくなるゴミみたいなことやってるから
その系統のオブジェクト指向言語は七転八倒してんだとむかしっから。

[SometingDoer doSomethingWith: SOME_VALUE];

の方がまだマシ。
じゃないから
0161デフォルトの名無しさん2016/02/20(土) 06:39:18.28ID:Ua+MsWai
あ、改行の下に推敲した変なゴミがあったw
0162デフォルトの名無しさん2016/02/20(土) 07:02:45.18ID:PGEmHZm3
いいんだよ、小規模とかUI層向けだろSwiftは。
0163デフォルトの名無しさん2016/02/20(土) 09:40:04.82ID:KDGCRpaZ
>>160
プログラミング言語が理解できないなら自然言語でソフト作れば良いのに
Obj-Cも頑張って自然言語に似せてるけどなでしこに比べたらクソ
0164デフォルトの名無しさん2016/02/20(土) 09:46:17.38ID:0qBkvfyt
確かにUI周りを記述するにはいい言語だと思う
ObjCはつらい
0165デフォルトの名無しさん2016/02/20(土) 09:50:07.97ID:rAWSq34I
>>157
ソースコードが短く書けりゃいいってもんじゃないんだか
だったらBASICはピカイチだぞ
0166デフォルトの名無しさん2016/02/20(土) 10:50:06.38ID:KOODKWnu
>>158
例が悪かった
DoSomethingHogeFugaFizzBuzzValue(.SOME_VALUE)
が正解。
C++も
DoSomethingHogeFugaFizzBuzzValue(HOGE_FUGA_FIZZ_BUZZ_TYPE::HOGE_FUGA_FIZZ_BUZZ_TYPE_SOME_VALUE)
に訂正。
HOGE_FUGA_FIZZ_BUZZ_TYPEの値が入るってわかってるのに、
HOGE_FUGA_FIZZ_BUZZ_TYPE::
つけて完全修飾しないといけないのがダセーんだよC++は
その辺Swiftはあらゆるところで無駄がない
「このくらいわかるだろ?」ってところがちゃんとわかってる
プログラマが本当にフォーカスしないといけないことに集中できる感じ
0167デフォルトの名無しさん2016/02/20(土) 10:52:22.63ID:KDGCRpaZ
>>165
型が保証されてて変数名に型名と同一のプレフィクスがある場合に記述を短くしても可読性は劣らない

と条件を細かく説明してあげないと分からないのかな?
誰が全方位で兎角短くしろと言っているんだよ
「プログラミング言語」としてプログラマが読める程度に省略表記だ

Obj-C程度の英語文法じゃないとプログラムが読めないプログラマはswiftに適さない
性能良くて、容量小さくて、読みやすいObj-C使った方が絶対良い
0168デフォルトの名無しさん2016/02/20(土) 12:24:05.94ID:oRecbE2T
Swiftに適さないプログラマとかが出るならSwiftも大したことないな
0169デフォルトの名無しさん2016/02/20(土) 12:50:05.37ID:KDGCRpaZ
大したことある言語があるなら教えてくれよwww
0170デフォルトの名無しさん2016/02/20(土) 12:59:39.52ID:x7CEQATf
英語文法の話なんかしてたか?
0171デフォルトの名無しさん2016/02/20(土) 13:07:30.32ID:x7CEQATf
>>160
なんかそういう経緯をしらないか
多人数で開発してて自分のコードを他人が読むこと考えてないとか
書くコストが下がってもメンテのコスト上がったら意味ないし
できるだけreadableな方向に向けるべきだろうと
自分だけ読めればいい、ついてこれないやつを見下す楽しさもある
みたいな人が多いのかねえ
0172デフォルトの名無しさん2016/02/20(土) 13:25:22.80ID:KOODKWnu
なんか勘違いしている人が多いから一応言っておくと
>>157 で言いたかったのは
「Swiftなら短く書ける」
じゃなくて
「Swiftなら無駄なこと書かなくていい」
ってことだから。
ただ短く書きたいんなら省略でもなんでもすればいいだろうよ。
無駄なことを書かなくていいってことが重要。
型名や定数値にプリフィクスをつけたりだとか、
特定の型の値が入ることがわかってるのに型名を指定したりだとか、
変数の初期化で左辺と右辺で型名を二度書いたりだとか、
宣言と実装で同じことを2回書いたりだとか、
そういうことをしなくていいんだよねSwiftは
0173デフォルトの名無しさん2016/02/20(土) 15:45:34.46ID:iS9YCN1I
例えばだけど
label.textAlignment = .Center;
だと無駄もなく簡潔だけど後から.Centerを検索した時にNSTextAlignment以外もたくさんひっかかってしまうのは面倒かも
無駄に思える助長な書き方もメンテコストまで考えるとあった方がいいかも知れない
そういう時はSwiftの場合は
label.textAlignment = NSTextAlignment.Center;
って書けばいいんだけど、どっちで書くかはコーディングガイドラインで決めておく必要があるね
0174デフォルトの名無しさん2016/02/20(土) 16:30:41.61ID:KOODKWnu
>>173
そんなものはIDEの検索機能で「NSTextAlignmentの」Centerを探せばいいだけだろ
なんでテキストベースで探すんだよ
0175デフォルトの名無しさん2016/02/20(土) 19:07:25.93ID:iS9YCN1I
>>174
すまん、例えば
switch label.textAlignment {
case .Left:
break;
case .Right:
break;
case .Center:
break;
default:
break;
}
このコードはXcodeでどうやったらNSTextAlignmentのCenterを検索できる?やり方知らないから教えて欲しい
0176デフォルトの名無しさん2016/02/20(土) 19:37:01.11ID:KOODKWnu
>>175
Xcodeでどうやるか、そもそもできるかどうか知らんけど、
静的解析でわかるはずなんだから、理論上は実現できるはずでしょ
使ってるIDEでできなかったら、
できるIDEに乗り換えるか、実装されるのを待てばいいんじゃねーの
今できなくてもそれはIDEの機能が足りてないだけで、
Swiftのせいじゃないし
0177デフォルトの名無しさん2016/02/20(土) 20:03:44.38ID:x7CEQATf
じゃあObj-Cで必要な機能を拡張したり
XCodeでの対応を進めればいいって話に戻るな。それ
0178デフォルトの名無しさん2016/02/20(土) 20:24:07.95ID:KDGCRpaZ
???
obj-cで省略表記するのかな?

まぁobj-cもswiftに合わせてジェネリクスやnilable等々仕様拡張してるし、両方共良くなればいいよ
冗長な記述が好きならobj-cを、簡略な記述が好きならswiftを

あ、当然swiftは遊びの範疇でな
0179デフォルトの名無しさん2016/02/20(土) 21:01:20.35ID:kXmEjnOB
swiftアンチの人、なぜswiftがダメでobj-cが良いか
ぜひqiita当たりに理論を纏めて見てほしい。
そのほうがわかりやすい。結局swiftアンチの人は
型推論が嫌いだからswift嫌いとしか読み取れなかった。

Rx系のライブラリ触った時
obj-c + ReactiveCocoaより
swift + RxSwiftの方が概念の理解がスムーズに行った。
ライブラリの使い勝手がDSLよりになるのがswiftの優位性だと思う。
0180デフォルトの名無しさん2016/02/20(土) 21:11:46.05ID:x7CEQATf
散々出てるんですけど・・・
0181デフォルトの名無しさん2016/02/20(土) 21:46:44.14ID:KDGCRpaZ
>>180
散文的だからQiitaでまとめてくれよw
おれも見に行くぜ
0182デフォルトの名無しさん2016/02/20(土) 22:29:52.66ID:Liwvkgr6
Swiftが嫌な理由

・!や?や$0とか読みづらい
・nilマンセー
・同じこと実現するのに今更勉強する気になれない

以上
0183デフォルトの名無しさん2016/02/20(土) 22:31:14.07ID:mba7oROC
・意識が高い
0184デフォルトの名無しさん2016/02/20(土) 22:33:56.42ID:Liwvkgr6
・書籍ビジネス
0185デフォルトの名無しさん2016/02/20(土) 22:42:56.21ID:Liwvkgr6
SwiftってAutoLayoutみたいな存在で、あってもなくていいような立ち位置で生き残ると思う。
0186デフォルトの名無しさん2016/02/20(土) 22:47:02.98ID:Liwvkgr6
ま、好きにしたらいいと思うよ。
うちの会社はゲームメインだからObj−C分からない人間は採用できないけど。
0187デフォルトの名無しさん2016/02/20(土) 22:56:56.08ID:x7CEQATf
ベストエフォートやコンフォートで考えるところを
どこまでもコストや最適解でしか考えてない人が突っ込んでくる
そのめんどうくささがswift界隈
0188デフォルトの名無しさん2016/02/20(土) 23:23:23.38ID:efMAbpWt
ゲームメインだとObjC必須なのか?
むしろObjCもSwiftも使わんだろゲームだと
0189デフォルトの名無しさん2016/02/21(日) 00:07:40.84ID:i1+cspgo
unityでもハード(カメラとか)はObjC
SUPERCELLもUnityゲームだけじゃないし
0190デフォルトの名無しさん2016/02/21(日) 09:27:00.98ID:5IOGtqQ9
わざわざswiftスレにアンチしに来るのがobj-c界隈ならそっちのが迷惑だ
真面目に業務常用出来ると思ってるヤツはいないんだから黙ってろよw
0191デフォルトの名無しさん2016/02/21(日) 09:43:29.54ID:3g1YrZlr
>>190
>真面目に業務常用出来ると思ってるヤツはいないんだから黙ってろよw
クソワロタwww
0192デフォルトの名無しさん2016/02/21(日) 10:08:50.87ID:5IOGtqQ9
だろwww
これにアンチしに来てるんだからウケる
0193デフォルトの名無しさん2016/02/21(日) 11:40:35.75ID:G8sdUr3K
初期やベータの頃から触ってる側からしても
期待を裏切られ続けてヘイト稼ぎまくってる感じがあるわ
最近は大分良くなってると思うしそんなに不満はないけど
0194デフォルトの名無しさん2016/02/21(日) 12:03:45.83ID:0Y/OP8Cx
>>179
アンチする人が既にネットにいないということはSwiftが非の打ち所が無いくらい優れてるからなんだよ。
要するにアンチやってるのは2chネラーみたいな少数派だけってこと。
0195デフォルトの名無しさん2016/02/21(日) 12:15:21.59ID:amZe1com
>>194
敬虔なSwift教信者さんですね
布教活動は順調ですか?
0196デフォルトの名無しさん2016/02/21(日) 12:26:36.70ID:uN9Uue/l
非の打ち所がないんじゃなくて棲み分けてるの。
画像動画音声編集3DCGはCで書くから、Cと親和性の高いObj-Cでクラス実装した方がいい。
そういう低レベルな処理が無いならSwiftでいい。
だから置き換わるもんでも無いし、喧嘩することも無いわけ。
0197デフォルトの名無しさん2016/02/21(日) 13:14:00.66ID:BvJlDGCw
>>193
というかObj-Cも最初は面倒くさい事の固まりだったし
swiftももっと汚れまくって実用的になったら
いくぶんかは改善されんじゃないのかな
0198デフォルトの名無しさん2016/02/21(日) 13:15:00.70ID:BvJlDGCw
>>194
なんかこのスレ、ElCapitanやwindows8の愚痴スレ思い出すんですけど
俺には問題なく使えてる!って人がわざわざかまってもらいに乗り込んでくる残念さ
0199デフォルトの名無しさん2016/02/21(日) 13:19:06.91ID:Mj5AYY0e
Swiftの力強さを理解することで存在階級を一次元上げて欲しいだけだよ
0200デフォルトの名無しさん2016/02/21(日) 13:19:39.96ID:0Y/OP8Cx
まあお前らの気持ちはわかるよ。
ネットの記事見ると根拠も無しにObjective-Cは終わった言語みたいな言い方する奴らばかりだからな。
AppleがObjective-Cの将来性をはっきりしないのが混乱の原因なんだよ。
0201デフォルトの名無しさん2016/02/21(日) 13:32:13.54ID:BvJlDGCw
qiitaなんてkenokabeを代表に持論の宣伝サイトにしかなってないからなあ
stackoverflowみたいな集合知を期待してたのに
0202デフォルトの名無しさん2016/02/21(日) 13:50:09.54ID:hql2OPnW
日本の集合知はここだろうに
0203デフォルトの名無しさん2016/02/21(日) 15:13:05.54ID:6XsjzBUm
毛の壁ならQiita追放されただろ
0204デフォルトの名無しさん2016/02/21(日) 15:23:29.82ID:60OzU5Vm
とりあえずswiftアンチの人はobj-cスレに移動したほうかいいのでは。
すくなくともここはしばらくこのスレは集合知になっていない。
0205デフォルトの名無しさん2016/02/21(日) 15:55:18.13ID:3g1YrZlr
本当にSwiftがいいものならアンチなど出てこないと思うが
0206デフォルトの名無しさん2016/02/21(日) 17:34:23.38ID:6XsjzBUm
アンチはおらんよ
老害がいるだけ
0207デフォルトの名無しさん2016/02/21(日) 17:39:42.13ID:5IOGtqQ9
>>205
良い業務ツールじゃないけど、良いオモチャじゃん
なぜかそのオモチャに本気でヘイトしに来てるアンチがいるけど
0208デフォルトの名無しさん2016/02/21(日) 17:40:22.10ID:rns+FXt7
Swiftスレは言語アンチとでもいうべき者が頑張ってて困る。
プログラミング言語にアンチしてどうする。
0209デフォルトの名無しさん2016/02/21(日) 17:46:26.20ID:Qnn0v2ck
>>176
できるかどうか分からない理論上の話をしてたのかよ…
コーディングガイドラインを持ち出してるんだから現存する開発環境での実用の話だと分かれよ
0210デフォルトの名無しさん2016/02/21(日) 19:44:02.66ID:60OzU5Vm
linux対応してまもなくWAFが出るのも人気がある証拠だね。
http://qiita.com/nakailand/items/c68514263c1fadcd695e
0211デフォルトの名無しさん2016/02/21(日) 23:48:10.58ID:BQbKyoVe
Swift(キリッ!意識高いんだから勝手にやらせとけ
数年後には誰も使わないから
0212デフォルトの名無しさん2016/02/22(月) 00:46:31.88ID:nLXhHomv
アプリ開発の勉強を始めたけどswift言語よりxcodeがちょっと厳しいわ

VisualStudioやらEclipsのぬるま湯で育ちだから
xcodeに細かい不満はたくさんあるけど一番辛いのは日本語化する気が全く無さそうなところ、せめて公式ドキュメントくらい日本語化してほしいな
日本人はアップルの超上客なのに、殿様商売の横柄な態度が随所に見て取れる

xcode歴1週間のペーペーより
0213デフォルトの名無しさん2016/02/22(月) 00:47:22.52ID:ZFg4O/yo
数年後にはObjective-Cを誰も使ってないと思うけどな
使ってたらその会社は終わり。人材競争で勝てん
優秀なエンジニアほどSwift使いたいに決まってるんだから
0214デフォルトの名無しさん2016/02/22(月) 01:09:13.57ID:HYv+Nik3
超優秀なエンジニアが作ったプログラミング言語がObjective-Cです
たかが言語を使っているだけで優秀だと勘違いしているのは、二流エンジニア
SwiftはObj-Cについて来れなかったライト層をアプリ開発の夢を抱かせて、
Appleがテラゼニを回収するための道具でしかないよ
0215デフォルトの名無しさん2016/02/22(月) 01:27:57.44ID:s4dndiZI
Obj-C→Cのようなクリティカルな分野からUIまで
Swift→JavaScriptのよりも無駄に無駄を重ねたスクリプト系

mapとかいらない、forでいい
Optionalとかいらない、必要に応じてnil判定する
0216デフォルトの名無しさん2016/02/22(月) 01:31:42.70ID:s4dndiZI
今年のWWDC以降、Apple Swift cocoaの開発を断念

Swiftなんかただの株価操作
0217デフォルトの名無しさん2016/02/22(月) 01:37:21.99ID:s4dndiZI
?でOptional ChainingするとOptionalを返すとか もうアホかと
死ぬまでOptionalと戯れてろ
Obj-Cのプロはnill使いこなしてるから
0218デフォルトの名無しさん2016/02/22(月) 01:53:07.82ID:s4dndiZI
Classやprotcolやメソッド探しでxcodeからのレスポンスがない
相変わらずpoコマンドの補完が効かない
型推論で勝手にoptional型になってる
as!でランタイムエラー出まくり
意識高いSwift覚えて損した
0219デフォルトの名無しさん2016/02/22(月) 02:38:21.34ID:D8zQb93R
>>214
ほんそれ
Swiftに限らずキワモノ言語はコンパイラがめんどいだけである意味だれでも作れると思う
0220デフォルトの名無しさん2016/02/22(月) 03:04:41.18ID:j2lN2Bjj
会社のswift推しがウザイw
objective-c分かってないやつらにswift押しが多くて痛いw
unwrapとかより!(xxx)とかでnilならxxxクロージャコールするコード生成してほしいわー
0221デフォルトの名無しさん2016/02/22(月) 04:37:42.50ID:6npoRjnP
>>214
ライト層というのは分かる。Swiftが発表された時JSみたいだからWebプログラマが流れてくるなんて言ってた人も周りにいた
>>218
デバッガで補完効かないのなんでだろうね

Swiftのプレイグラウンドは凄くいいと思う
他の言語でもあーいうのできないかな
0222デフォルトの名無しさん2016/02/22(月) 08:10:35.88ID:F7mWrMTv
playgroundは言語の機能じゃなくIDEの機能だ
javaならgroovyで、goやrustもライン実行を実現してるから、有用だと思う人が多ければ
IntteliJ, Eclipseのプラグインで誰かが作ってるんじゃないかな
0223デフォルトの名無しさん2016/02/22(月) 08:31:08.09ID:BiED2ynR
Swift本がたくさんちまたに溢れてるのは、Objective-C解説本でシェアとれず食いっぱぐれた層が、Swiftでは負けまいと必死で我先にと出そうとした結果
0224デフォルトの名無しさん2016/02/22(月) 08:41:11.89ID:y6o8tSrf
ま、商機だからね。
でも市場に活気があるのは良いことじゃん。
0225デフォルトの名無しさん2016/02/22(月) 09:21:10.19ID:BYBQJAA1
なんつうか
ハマる人にはハマるんだろうなって言語だな。swiftは
ところどころobj-c以上に汚い所があったりして
妥協の産物を出てないっていうか
obj-cでさほど困ってないのにわざわざ乗り換える意味も感じないな
0226デフォルトの名無しさん2016/02/22(月) 09:38:24.16ID:j2lN2Bjj
ま、意識低くていいから素直にfor文書こうよ
Swiftで作ったアプリなんか危なっかしくて使えん
0227デフォルトの名無しさん2016/02/22(月) 09:48:14.25ID:j2lN2Bjj
あと2年でswiftは消えるな
Objective-Cはずっと生き残るが他の言語が出てくる
0228デフォルトの名無しさん2016/02/22(月) 09:55:08.50ID:BYBQJAA1
新しい言語でどんだけ消えていったのがあったかな
appleも昔、新言語やろうとして失敗してなかったっけ
0229デフォルトの名無しさん2016/02/22(月) 09:57:21.82ID:BYBQJAA1
convenienceとかletとか
文字の見た目と動作が全然関係ないのはあかんわ
0230デフォルトの名無しさん2016/02/22(月) 10:43:07.76ID:F7mWrMTv
letの仕様元
https://doc.rust-lang.org/book/variable-bindings.html

俺の愛用するrustをディスるとはいい度胸してるじゃねーか, ちょっと屋上来いや
convenienceは何の言語が仕様元だろうね、rustのunsafeとはキーワードの語源が違いすぎるので別っぽい
0231デフォルトの名無しさん2016/02/22(月) 11:15:04.12ID:8mg9gd4i
GoogleのGoが意外と生き残ってるのを見ると、進化次第で生き残るかもしれない
0232デフォルトの名無しさん2016/02/22(月) 13:09:47.09ID:oNnlX6Vk
>>228
Cocoa-JavaとWebObjectsぐらいしか知らないな
Appleので他にも消えた言語あれば知りたい
0233デフォルトの名無しさん2016/02/22(月) 15:11:01.87ID:BYBQJAA1
Optionalが実質nilチェック強要だったり
なんかObj-Cの仕様を拡張するか、コンパイラが賢くなればいいだけの話なのに
言語そのものを作りなおす必要あったんですかね
そのくせあちこちコンパイラ任せでどこまでコンパイラの振る舞いを信じりゃいいのかな
0234デフォルトの名無しさん2016/02/22(月) 15:11:40.10ID:BYBQJAA1
>>232
apple dylanってごぞんじない?
0235デフォルトの名無しさん2016/02/22(月) 15:12:52.66ID:BYBQJAA1
>>230
ごめんごめん
でもこういうところあるよね↓
>convenienceは何の言語が仕様元だろうね、rustのunsafeとはキーワードの語源が違いすぎるので別っぽい
いろんな言語から切り貼りした感があるんだよなあ
0236デフォルトの名無しさん2016/02/22(月) 15:22:32.39ID:xIYZjXu/
そういえばCocoa-Javaなんてあったな。
Swiftが無くなることは無いだろうけど、両者の共存はありえるね。
0237デフォルトの名無しさん2016/02/22(月) 15:45:36.66ID:NLPjEEX5
letなんてrustよりはるか昔から使われてるだろ
0238デフォルトの名無しさん2016/02/22(月) 15:50:13.41ID:j2lN2Bjj
論点は
const って使われ方してたか?
ってとこだろ
0239デフォルトの名無しさん2016/02/22(月) 16:46:30.94ID:oNnlX6Vk
>>234
へー、Dylanは初耳だった
0240デフォルトの名無しさん2016/02/22(月) 17:31:38.23ID:qQRpdLnx
Objective-C++の機能を多数の言語からパクったモダンな文法でラップしたのがswiftなんだから当然だろ
モダンな文法に魅力を感じないならObjective-C使えばいい

さておき、意識高い系言語と名高いswiftだけど
アッポーのマーケティングに踊らされないぜ、とアンチは意識高いなぁと
ここ数日の連投見てて思った
0241デフォルトの名無しさん2016/02/22(月) 19:31:09.61ID:NoOECSfa
そりゃ新しかろうが
それが実務に向いて無ければ乗らないのが最善だからな
新しいものが全てに置いて優れてるとは限らないわけで
0242デフォルトの名無しさん2016/02/22(月) 19:50:37.86ID:nLXhHomv
言語仕様の優劣は俺にはまだわからないが

今から始める人はswiftを覚えるし、本もswiftばかりになるし
学校もobj-cではなくswiftを教えるし
xcodeのデフォルトがswift(アップルが押している)

まぁ言語の差なんてどおって事ないけどそれよりxcodeが雑魚過ぎるのと
ドキュメントが貧弱過ぎ
0243デフォルトの名無しさん2016/02/22(月) 20:52:49.68ID:D8zQb93R
>>236
Cocoa-Javaあったなぁ
一番最初にCocoaプログラミングを始めた時にObjective-Cとかいう変態言語なんだよ
だったらJavaで書くわとか思ってほんの少しだけ触った記憶が蘇った
ただ、Objective-CはJavaよりもCらしく、オブジェクト指向として拡張した部分が
明確に分かれてる体系かつ表現をもつ稀有な言語だということを知って、
むしろ簡単だったことに気づいてからはObjective-C一本になった
0244デフォルトの名無しさん2016/02/22(月) 23:18:30.39ID:NoOECSfa
Cocoa-JavaってWEB屋から人を引っ張ってくるためのモンだと思ってた
0245デフォルトの名無しさん2016/02/23(火) 04:24:05.65ID:PyQLzd9C
こんなキメラな言語やるくらいならC#で書きたい
勝手にSwiftにでも変換しておくれ!
誰か作って!
0246デフォルトの名無しさん2016/02/23(火) 04:36:10.68ID:sfBHOk0j
この言語のどこがモダンなんだよ?
JSONひとつモダンにアクセスできないじゃないか!
?とか!とかas?とかas!とかいいかげんウザイんだよ!
Optional型のないSwift++熱望しる。
0247デフォルトの名無しさん2016/02/23(火) 04:56:37.02ID:PyQLzd9C
Swift覚えるくらいならやっぱりJavaでいいかな
AppleはARC-Javaいつ発表するの?

Swiftを学校で教える日は多分来ないと思う
ソースコードがアカデミックじゃないし
型推論されるからメソッドの戻り値調べなきゃならなくて
xcode無しでソースコード書けないし
c++以来久しぶりのクソ言語だと思う
0248デフォルトの名無しさん2016/02/23(火) 08:04:42.99ID:EdYfjdOn
Objective-Cから変える必要性は特に感じてなかったが、
Swiftは想像以上に黒歴史のようだな。。
Appleさん、何してんの
0249デフォルトの名無しさん2016/02/23(火) 08:05:17.91ID:Dg/6MwMF
>>245
Xamarinでも使ってろよ
0250デフォルトの名無しさん2016/02/23(火) 08:43:18.71ID:QJ/PxRJG
>>245-247
真夜中にID変えての連投乙

swiftppって誰か使ったことある?
普通に安定して、最新言語仕様に追従できてるなら、、、と興味ある
0251デフォルトの名無しさん2016/02/23(火) 09:14:54.18ID:FkWk80JW
ID変えたとか言いだしたら危ない症状なのでひとまず落ち着いた方がいい
つか245と247はID同じだろ
0252デフォルトの名無しさん2016/02/23(火) 09:28:20.30ID:C/qn4poo
頭でこねくりだした最適化を
アフォーダンス無視して実装したような
フラットOSみたいな言語
0253デフォルトの名無しさん2016/02/23(火) 09:53:16.81ID:6g/c4Met
swiftppはコンパイラから非公式になるから怖い
0254デフォルトの名無しさん2016/02/23(火) 10:01:21.43ID:w86OZMvw
微妙な新言語がよくハマってる
「この問題を解決するためにこの言語ではこうしました!」ってやって
そんな問題と無関係なとこでもその問題解決方をいちいち指定させられるという
例の本末転倒パターンそのまんまなんだよなぁ…
たぶん、ジョブズがいたころから作っててダメ出しされてたプロジェクトが
握りつぶされずなんかの拍子で未完成のまま表へ出てきた感がハンパない。
0255デフォルトの名無しさん2016/02/23(火) 10:37:12.50ID:YzD1VGP9
このタイミングでSwift推ししてる奴らは完全にAppleに踊らされてるよな。
0256デフォルトの名無しさん2016/02/23(火) 10:43:59.81ID:C/qn4poo
クックみたいな
株価チラ見しながら目新しいってだけのもので耳目集めるやりかたって
apple株の上下には関係してるけど、それ以上の意味はないよなあ・・・
ジョブズがああ見えて実際は、無意味に場をコントロールしてたわけじゃないんだなってのがよく分かる
0257デフォルトの名無しさん2016/02/23(火) 10:50:02.55ID:C/qn4poo
Stringのunicodeの扱いがおかしいって指摘してる人がネットで何人かいるけど
俺も怖いからできるだけ文字列はNSStringで扱いたいんだよなあ
でもStringしか受け付けてくれないAPIってあるじゃん
NSData.init(contentsOfFile: String)とか
すると、そこでいちいちas! Stringとかやんのすっげ鬱陶しいんだよね
まあこれもStringの振る舞いを修正してくれれば済むんだろうけど
多分それってNSStringと同じくらいコストがかかるようになって
せっかくのStringが意味なくなるって事だよね?
0258デフォルトの名無しさん2016/02/23(火) 11:19:54.78ID:ANSNYxQy
[速報]IBMとアップル、プログラミング言語「Swift」をクラウド対応に。Bluemix上にSwiftランタイム、Webフレームワーク「Kitura」などを提供
http://www.publickey1.jp/blog/16/ibm_swift.html
0259デフォルトの名無しさん2016/02/23(火) 11:44:14.67ID:C5FOPpcM
> Swiftパッケージを公開し共有できる「IBM Swift Package Catalog」
swift-package-managerとの親和性があると良いなぁ
0260デフォルトの名無しさん2016/02/23(火) 12:29:26.55ID:7UmsByHK
やっぱトップは技術がわかんないとダメだな
0261デフォルトの名無しさん2016/02/23(火) 16:00:07.35ID:9R6KV/lv
ARC JavaはJava使いとして欲しいなと思ってたことがある
でも、GCって実際のとこARCのリファレンスカウントだけ管理してるけど
0になった瞬間にfreeしないってだけなんじゃないかな
0262デフォルトの名無しさん2016/02/23(火) 16:59:01.58ID:KzK8no6J
スレ違いだが、GC本読んで出直せ
http://www.amazon.co.jp/dp/4798025623

IBM Swift Package Catalog の公式サイトのチュートリアルへのリンクが404 not foundでワロタ
使わせる気ねーのかよ
0263デフォルトの名無しさん2016/02/23(火) 17:05:53.90ID:j8ttemL9
XCODE 7.1.2が4.4GBもあって、インストールエラーだらけだ。
swift をコーディングする以前の問題だ。
0264デフォルトの名無しさん2016/02/23(火) 18:15:59.35ID:SdPT40yw
>>262
リンクはこっちの方が良いかと。
http://tatsu-zine.com/books/gcbook
0265デフォルトの名無しさん2016/02/23(火) 18:57:01.88ID:1r/amxg8
ARCはGCじゃないってのに ンモー
0266デフォルトの名無しさん2016/02/23(火) 19:14:01.74ID:9R6KV/lv
ARC=GCじゃないってのは知っとるつもりだが?
強い参照(リファレンス)の数をリアルタイムで数えて、0になったときにGCで回収されるというGC実装も
考えられるでしょ
だからARCはGCの実装の一種と捉えた

出直す程の認識間違いある?
0267デフォルトの名無しさん2016/02/23(火) 22:05:28.60ID:Zy3nyJh1
スマートポインタとガーベジコレクタは普通区別するけど、厳密な定義は知らなーい
0268デフォルトの名無しさん2016/02/23(火) 23:27:24.85ID:EdYfjdOn
まあ、GCとの違いは、どこでreleaseされるかプログラマがわかるかどうかじゃないの
0269デフォルトの名無しさん2016/02/23(火) 23:28:11.17ID:EdYfjdOn
ちょっと語弊があったな
正確にはどこでretainカウンタが-1されるかわかる
だな
0270デフォルトの名無しさん2016/02/24(水) 00:37:43.18ID:nryJuyX8
>>266
いまいちわかんないのが弱い参照の意義
循環参照による問題を解決すると説明されるけど、強い参照がなくなれば
いつ解放されてもおかしくないなら、弱い参照の意味なくね?って思うんだけど
0271デフォルトの名無しさん2016/02/24(水) 00:42:47.71ID:WEjeBnTI
そういやweak selfの問題はswiftでも解決できなかったんだっけか
0272デフォルトの名無しさん2016/02/24(水) 00:48:57.46ID:KomNTiZC
weakはオブジェクトが解放されたらnilが代入される。
unownedは解放されてもポインタ値が残る。
0273デフォルトの名無しさん2016/02/24(水) 00:59:54.73ID:vh2KRUx7
CocoaPodsって何割くらいswiftあるの?

全部swiftになって欲しいわ、
なんやねんhファイルとかブリッジングとか意味わからん
0274デフォルトの名無しさん2016/02/24(水) 01:34:05.32ID:jnSdIxuw
ARCの問題点は循環参照問題なんだよね。
インスタンスA(以降A)とインスタンスB(以降B)でそれぞれ参照を持ち合ってたら
リファレンスカウントは絶対に0にならないから開放されずメモリリークになる。
だから所有権を明確にする
例えばAがBの所有者だと決める。
AはBを強い参照で持つ
BはAを弱い参照で持つ
0275デフォルトの名無しさん2016/02/24(水) 01:39:53.95ID:ErmV3SfI
お互いに持ち合ってても、例えばAがリリースされる時にBのリファレンスカウントも-1するようにすればよくね?
0276デフォルトの名無しさん2016/02/24(水) 02:07:42.34ID:6+Qi9DL1
>>275
BがAを持ってるからAはリリースされない
0277デフォルトの名無しさん2016/02/24(水) 07:31:32.38ID:KomNTiZC
publicでstrongになることの方が特殊だろ。普通はweakだから。
0278デフォルトの名無しさん2016/02/24(水) 08:26:01.81ID:ErmV3SfI
>>276
そうだな
ただ、そもそもお互いに参照するような構造ってどうなのよ
あり得る?そんなの
selfわたした時とか?
0279デフォルトの名無しさん2016/02/24(水) 10:27:01.06ID:IlbTDVJn
サークルリスト
今時、リスト構造を自前で定義するヤツwwwと言うだろうが
0280デフォルトの名無しさん2016/02/24(水) 13:16:32.61ID:OJSOKlVE
双方向リストとか。
ツリーでも親子が参照し合うの普通にある。
0281デフォルトの名無しさん2016/02/24(水) 13:55:40.01ID:Se7ELmM7
そういう時こそCoreData(違
0282デフォルトの名無しさん2016/02/24(水) 14:01:42.96ID:Se7ELmM7
>>62
遅レスだけどLabViewとかSqueak Scratchとか?
0283デフォルトの名無しさん2016/02/24(水) 14:07:44.09ID:9bLN3o8X
Android向けにGoogleも作ってたよな
全く流行らなくて大学だかOSS財団だかに寄贈したけど
0284デフォルトの名無しさん2016/02/24(水) 14:19:58.66ID:d3RsMO70
>>283
流行らないのは思考をプログラムに落とすスピードが遅すぎるからだろう
入力デバイスが進化するかしないとキーボードの優位性は揺るがないよ
0285デフォルトの名無しさん2016/02/24(水) 14:27:50.71ID:Se7ELmM7
人間の思考をそのまま落としこんだら
特例処理やバグだらけになるんじゃないの
0286デフォルトの名無しさん2016/02/24(水) 14:37:13.84ID:d3RsMO70
>>285
いやいやいや頭のなかで考えているロジックをプログラムとして取り出すって意味で
思考自体を再現するって意味じゃないのよ
口で喋ってロジックを入力するより指でキーボード叩いたほうが疲れないし、文字に残るから自分でも確認し易い
熟練すれば口でしゃべるより速く入力できるし、同音異義語や記号類の入力も間違えなく出来る
ただアイアンマンで使ってるAR的なインターフェイスはロジックを入力するんでなければ憧れる
0287デフォルトの名無しさん2016/02/24(水) 14:42:24.33ID:9bLN3o8X
他人に伝わり易い文章を出力してくれ
>>62も>>286も長文で読みづらいぞ

何ならswiftでも良い
0288デフォルトの名無しさん2016/02/24(水) 16:37:43.05ID:RwekTpLw
他人が言ってることがよくわからないのは
自分がバカだからではないか?と考えたことがないかね?
0289デフォルトの名無しさん2016/02/24(水) 16:44:39.83ID:sJWRokNI
今北産業
3行以上の日本語はムリポ
0290デフォルトの名無しさん2016/02/24(水) 17:16:24.43ID:drmMA+z+
>>266
ゴミが出るたびに捨てる仕組みをコレクタと呼ぶのは理解に苦しむ。

> GCで回収されるというGC実装も
何を言っているんだ。それじゃただのヒープメモリもGCになるじゃないか。
0291デフォルトの名無しさん2016/02/24(水) 20:09:23.74ID:Mz+XsROO
Garbage Disposerとかならいいの?
0292デフォルトの名無しさん2016/02/24(水) 20:29:31.83ID:Mz+XsROO
まあ、なぜコレクターかというと、ゴミとなってしまったメモリ領域を再利用できる形に広い集めるという意味合いだろう
0293デフォルトの名無しさん2016/02/24(水) 20:54:58.77ID:ErmV3SfI
あるいはこう解釈することもできるだろう
使用済みオブジェクト=ゴミが占有しているメモリ領域からゴミを拾うことで、
使えるメモリ領域として復活させる動作であり、これをガーベージコレクターと呼ぶ
0294デフォルトの名無しさん2016/02/24(水) 21:55:18.16ID:lD0cq4lL
まぁ結局のところGCも参照カウントも性能面では論外なんだけどな
うちはゲーム業界だからC++使って生ポインタで管理してる
0295デフォルトの名無しさん2016/02/24(水) 22:04:05.37ID:n7U/6q6J
C++のスマートポインタをラップしたものがARCだろうがよ
ゲームくらいなら別に気にしなくて良いのでは
もっと下のカーネルレイヤーではARC強制のswiftは流石に使ってもらいたくないが
0296デフォルトの名無しさん2016/02/24(水) 22:26:00.07ID:4L1Xo6cN
生ぽはねーわ
せめてunique_ptrつかうだろ
0297デフォルトの名無しさん2016/02/25(木) 08:19:15.19ID:b+P0PcmD
ここはGCスレになったのだ、、、

まぁアンチがswiftに興味なく連投してたら
遇遇興味あるGCの話題が出てはっちゃけてるんだと思うけど
0298デフォルトの名無しさん2016/02/25(木) 08:41:49.27ID:3e5AQpW4
ここまでをまとめると、
・Objective-CでできるならSwiftでは書かない
・as!のダウンキャストだらけでウザイ
・Appleのゴリ押し言語なので使いたくない(Androidへの転向も考える)
・nilチェックするからOptional型は要らない
・Swiftしか分からないAppleエンジニアは使いものにならない
・SwiftのString型は危険

でおk?
0299デフォルトの名無しさん2016/02/25(木) 08:44:08.57ID:b+P0PcmD
良いんじゃないかな
よくもまぁそこまでヘイトしたなぁと関心するレベル
0300デフォルトの名無しさん2016/02/25(木) 09:10:35.34ID:zMDWpLnx
>>298
Optional型は圧倒的に便利だと思うけどなぁ。
この変数はここでは絶対nilではないと保証してくれる安心感。
obj-cは確かにヌルポはないけど、無視してるだけなわけで
バグの温床でしかないし。
0301デフォルトの名無しさん2016/02/25(木) 09:14:18.99ID:zMDWpLnx
>>297
Rustの所有権の仕組みとか気になっている。
言語として変数の所有権と生存期間(scope)を明確にして
コンパイラで静的にメモリ管理する仕組みってことみたいだけど、それで
なんとかなるなら新しいなー。
0302デフォルトの名無しさん2016/02/25(木) 09:16:52.84ID:t9an1TeS
>>300
Optional型ってバグの温床じゃね?
0303デフォルトの名無しさん2016/02/25(木) 09:44:01.39ID:5375YmuT
optional型→なんでもas!→nil→クラッシュ
めんどくさくなったわりに何にも変わってない
悪くなってるとも言える
0304デフォルトの名無しさん2016/02/25(木) 09:57:14.89ID:b+P0PcmD
if let hoge = hage as? Hoge って普通ならやるけどな
面倒だけど言語仕様レベルで安全だろ?
as!多用するアホは氏ね
0305デフォルトの名無しさん2016/02/25(木) 10:32:40.91ID:7LdnMwee
結局nil判定みたいもんだろ。ココフレワがnil返すんだから。
0306デフォルトの名無しさん2016/02/25(木) 10:38:09.56ID:7LdnMwee
上の方で参照持ち合って云々って言ってるんだから、nil判定必須じゃん。
この点は、nilを呼んでも何も起こらんobj-cのが理にかなってる。
0307デフォルトの名無しさん2016/02/25(木) 10:51:56.92ID:JxCBO0ao
???
メッセージ式じゃなくなったswiftにObj-Cの理はそりゃ合わないだろう

obj?.function()
でも良いけどそういう話じゃないよな、多分
0308デフォルトの名無しさん2016/02/25(木) 11:03:52.36ID:5375YmuT
if let 名前つけるのめんどい = gege as? Gege
Kotlin いくかな・・
0309デフォルトの名無しさん2016/02/25(木) 11:14:31.45ID:KgJ/f8Sa
Optionalのアンラップ周りが面倒だったり危険だったりっていうのは同意。
だけど!や?のおかげでドキュメント読む手間は無くなるからかなり便利だとは思う。

そんなこと思ってSwift始めたけど、気づいたらObjCにもNullability追加されてて泣いた。
完全にAppleに踊らされたわ。
0310デフォルトの名無しさん2016/02/25(木) 11:22:11.79ID:ssqtom4w
SwiftアンチはOptionalも使いこなせないロートルだってことはよくわかった
0311デフォルトの名無しさん2016/02/25(木) 11:46:41.59ID:Gc+CYElX
>>309
いろいろと妥協の産物すぎんだよなあ
0312デフォルトの名無しさん2016/02/25(木) 11:48:01.01ID:Gc+CYElX
>>298
Optionalってnilを意識しなくていい、nilチェックしなくていい
ってことじゃなくて
むしろ率先して、ここでnilチェックしないのなんで???って指摘するためのもんだと思うけどな
0313デフォルトの名無しさん2016/02/25(木) 12:15:11.70ID:5375YmuT
だったらポインタ全部nilチェック必須でよくね?
0314デフォルトの名無しさん2016/02/25(木) 13:28:06.31ID:Ij4GpV9/
>>308
if let hoge = hoge
って同じ変数名でもいけるよ

>>312
ここでnilだったらどうするかも明示的に書いといてってコンパイラに言われてる感じだね
ObjCでもそういう所を意識しながら書けてる人には不要かも知れない

まだ個人でしか使ってないけどチームでやるような規模だと as! が危ないというか、一番クラッシュを生みそうだという予感はしてる。
0315デフォルトの名無しさん2016/02/25(木) 13:30:04.63ID:r7ln0uPM
>>309
同じアホなら踊らにゃ損々、と偉い人が言ってた
optionalアンチはobj-cでもnullabilityもgenericsも使わないんかな
自分は型がコンパイラ時に静的解析出来るから便利に使いたいぜ
0316デフォルトの名無しさん2016/02/25(木) 14:49:18.81ID:t9an1TeS
なんか、ちょいちょいSwiftをネガティブにとらえてるのは老害だけだという思い込みをもってる書き込みが見られるけど何なの?
そういうことにしたいですって意思表示?
0317デフォルトの名無しさん2016/02/25(木) 15:40:06.36ID:Gc+CYElX
>>316
swiftけなしてるやつの実像はこうあってほしいという願望なんだろうな
コンプの裏返し
0318デフォルトの名無しさん2016/02/25(木) 15:47:25.94ID:6VtyvXLR
いちいち Swift スレに粘着してるアンチが暇人なのは確か。
0319デフォルトの名無しさん2016/02/25(木) 20:22:02.45ID:Ij4GpV9/
逆にお前らの思うSwiftのいいところをバンバン書いてくれよ
0320デフォルトの名無しさん2016/02/25(木) 21:01:46.08ID:JO97d6Cm
アポーの気分に踊らされるのが面白いと思ってる
2.xは仕様変更が微妙でマジで残念
0321デフォルトの名無しさん2016/02/25(木) 22:13:41.12ID:ByN9juOy
新しい物が常に素晴らしいわけでもないからなあ
出されてほいほい飛びつくのはたんなる受け身なだけだし
0322デフォルトの名無しさん2016/02/25(木) 22:31:02.45ID:ssqtom4w
>>316
302みたいな書き込みしてるからだろ
0323デフォルトの名無しさん2016/02/25(木) 22:38:02.84ID:5375YmuT
同じことするのに言語覚えるのはアホだろ
0324デフォルトの名無しさん2016/02/25(木) 22:52:31.18ID:fKYZJK0H
>>322
は?
0325デフォルトの名無しさん2016/02/25(木) 23:18:21.62ID:3sku5G7P
Protocol Oriented Programmingって
C++のテンプレートの強い型付け版なのかな
C++でテンプレート関数として定義されてたのが
拡張メソッドとして定義されるようになっただけで
やってることは一緒に見える
GeneratorとかIteratorと一緒やん
0326デフォルトの名無しさん2016/02/26(金) 00:14:29.64ID:6yg7vUPZ
仕様決めたやつ本人と
そいつの感覚に近い人だけが便利な
選民思想言語
0327デフォルトの名無しさん2016/02/26(金) 00:16:04.11ID:6yg7vUPZ
流行をチラ見して急造した株価対策言語
0328デフォルトの名無しさん2016/02/26(金) 00:32:11.04ID:B7GtwkvN
>>326-327
意識高い系言語だ、バーロー

>>325
C++の機能を文法糖衣したObj-Cを文法糖衣したものがSwift
単純な機能はC++11の劣化互換になるのは当然だろ
ARCみたいなshared_ptrを透過的に使ったり、deferみたいなtryに応用だったり、遠目に見たら独自機能が載ってる
0329デフォルトの名無しさん2016/02/26(金) 09:19:43.54ID:aBNgJWic
Swiftで新しい感を出さないとWWDC乗り切れなかったんだよ
ネタ切れになってるAppleにとっての苦し紛れの一手がSwift
0330デフォルトの名無しさん2016/02/26(金) 10:43:29.49ID:xCMPpYoX
正規表現用のマッチ文字列作る時に
\sとかをいちいち\\sでダブルエスケープさせられるんだけど
これってなんか意味あるのかな
0331デフォルトの名無しさん2016/02/26(金) 12:36:01.72ID:fCSgBQdM
Swiftで書いても何も楽にならないどころか悪影響だらけのApple開発
まずxcodeがクソ重くなるのを何とかしろ
0332デフォルトの名無しさん2016/02/26(金) 15:03:50.45ID:UKpJQ4ex
iPhone6sもズコーだったからな〜?
きっとiPhone7も防水くらいしかないんだろうな・・
0333デフォルトの名無しさん2016/02/26(金) 20:23:37.03ID:YDBBqF4+
>>325
objc も Swift も根っこはダックタイピングじゃん。
だから C++ の template で concept が望まれたように、プロトコルがある。
プロトコル「指向」ってのは、Swift のプロトコル拡張を使うと色々便利だよ、程度の意味。
0334デフォルトの名無しさん2016/02/26(金) 21:19:38.96ID:ZPlaw7Ap
我々が望もうが望むまいがswiftがメジャーになる
これは言語の良し悪しとはあまり関係ない
0335デフォルトの名無しさん2016/02/26(金) 21:30:08.77ID:fCSgBQdM
それはありえない。
なぜならApple専用言語だから。
0336デフォルトの名無しさん2016/02/26(金) 21:33:48.23ID:fCSgBQdM
今年のWWDCはかなりズコー感あるな・・
0337デフォルトの名無しさん2016/02/26(金) 22:14:33.59ID:3VGOsyLR
>>328
そういうSwiftをこき下ろしたいだけの
条件反射的なレスはいらないので・・・

>>333
Swiftがダックタイピング? C++ だよね?
> C++ の template で concept が望まれたように、プロトコルがある。
ってのは同意。
強い静的型付けと柔軟なジェネリックプログラミングを両立したい、という流れがあって、
C++が、テンプレートを使った静的ダックタイピングをやめて、
コンセプトと制約テンプレートを使ってそれを実現しようという動きと、
Swiftの、プロトコルとジェネリクスと型制約(where句)を使って
それを実現する動きがあって、
Swiftはそれをプロトコル指向プログラミングと呼んでいるんだと思う。
C++にコンセプトが導入されたらコンセプト指向プログラミングとか言われるんだろうか。
0338デフォルトの名無しさん2016/02/26(金) 22:55:07.49ID:B7GtwkvN
こき下ろしてはないんだけどなぁ
文法以外に特徴・特性がないのは事実として受け止めるべきだと思ってる
0339デフォルトの名無しさん2016/02/26(金) 23:02:12.24ID:AFl5e6Ia
しかもxcodeが頑張らないと、アンラップするコードがまず書けないであろうクソ言語
0340デフォルトの名無しさん2016/02/27(土) 00:29:11.92ID:rCWjLtxH
お前らいいところを書けって言っただろうが
なぜほとんどがネガティヴな意見なんだよ
0341デフォルトの名無しさん2016/02/27(土) 02:47:44.28ID:+uOZPezb
いいところがないからだろ
言わせんな恥ずかしい
0342デフォルトの名無しさん2016/02/27(土) 07:03:48.31ID:zwwRZ2hM
シャープ倒産するぞ!
0343デフォルトの名無しさん2016/02/27(土) 11:39:49.89ID:ECgVwTRg
コード書くにはswiftが分かり易いじゃん
30年前の言語よりも分かりやすいって
周辺事情でobj-cがまだ有利だけど
アップルがswift押してるんだから今から始めるにはswift使えばいいと思う
obj-cやってた人は学習コストがかかるから嫌だろうけど
0344デフォルトの名無しさん2016/02/27(土) 11:48:44.66ID:+uOZPezb
Swiftに否定的=学習コストが気にする馬鹿=老害
という風潮
0345デフォルトの名無しさん2016/02/27(土) 12:00:17.24ID:fjoQxCAd
>>342
鴻海はヤルヤル詐欺
0346デフォルトの名無しさん2016/02/27(土) 15:10:05.74ID:zwwRZ2hM
obj-c知らなくて仕事あるの?
まずobj-cから勉強しようね。
0347デフォルトの名無しさん2016/02/27(土) 16:55:38.70ID:bWQugq8q
Objective-Cはオブジェクト指向プログラミングとCがわかってればすぐ習得できるだろう
0348デフォルトの名無しさん2016/02/27(土) 17:20:11.03ID:FthQntvk
>>347
Obj-Cの習得は、OOPのスキルがネックなんだろうかね。
SwiftでもOOPなのは変わらないんだけどね。
0349デフォルトの名無しさん2016/02/27(土) 17:47:01.64ID:ECgVwTRg
>>346
swiftの仕事あるよ
どんどん増えてるよ
obj-cの仕事はどんどん減っている
appleが推しているんだから増えるのは当たり前

http://hrog.net/2015102624991.html


>>348
objCのネックは単純に古い事だろう、
イマドキの言語と比べるとちょっと厳しい
0350デフォルトの名無しさん2016/02/27(土) 18:01:16.08ID:3sRBvym6
古いだと?そんなこと言ったらオブCおじさんが激怒するぞ
0351デフォルトの名無しさん2016/02/27(土) 18:12:14.20ID:+uOZPezb
>>348
Swiftはwithout Cを高らかに謳ってるくらいだから、Cを知ってるやつにしてみれば
Objective-Cよりは習得コストは高いだろうな
とは言っても別にSwiftも習得するのは特に問題にはならんだろう
まあこのスレはSwiftの習得コストが高いと思ってる老害がネガティブな意見を
言ってるという風潮があるようだが
0352デフォルトの名無しさん2016/02/27(土) 18:20:03.75ID:ECgVwTRg
オブジェクト指向言語を何か1つでもかじっていれば
swift言語の習得自体はそれほど難しくないんだけど
初めてXcodeを覚えるのは結構骨が折れる、
ゴミIDEだわ、長所はiOSアプリをビルドできるという一点しか見当たらない
0353デフォルトの名無しさん2016/02/27(土) 19:51:20.82ID:zwwRZ2hM
obj-c好きがみんなおじさんだと思ってると痛い目みるぞおまえら
swiftってxcodeがないとソースが読めないじゃないか
0354デフォルトの名無しさん2016/02/27(土) 20:00:40.82ID:m1wsh7QH
実際、Swiftアプリなんかまだ0.1%も無いじゃん。
大手のプログラム作らないおじさん達がSwift好きってのはよく聞く。
0355デフォルトの名無しさん2016/02/27(土) 20:02:20.81ID:m1wsh7QH
Swiftで作ってみろマジウンコだから。
0356デフォルトの名無しさん2016/02/27(土) 20:03:41.03ID:FthQntvk
>>351
without Cとは言っても、結局Cocoa上で書くのならwith Cだよね。
0357デフォルトの名無しさん2016/02/27(土) 20:18:25.15ID:xEIkJCXX
はっきりいってswiftは書きにくいし
Obj-C以上にだらだら一行が長くなる
0358デフォルトの名無しさん2016/02/27(土) 20:24:12.23ID:zwwRZ2hM
NS〜 ってクラスが99%必要なくなってからswift推せクソApple
今は新しい物好きの日本人マンセーでめんどくせーだけだ
swiftで作ったら品質はかなり落ちる、ここ2年間くらい様子を見てからだな
そんなnilだかfor文どうのこうのウジ虫みたいなことよりも新しいパラダイム導入してくれ!
画面からホログラム出せるとか!
背面フルサイズ5000万画素CCD+外部レンズでプロ用途カメラになるとか!
0359デフォルトの名無しさん2016/02/27(土) 20:37:42.06ID:zwwRZ2hM
swiftで多重非同期処理のデバッグしてるとメッセージループに戻ってないはずなのにまた同じブレークで止まって困る
xcodeの問題だろうが現状swiftはゲームでは全く使えない
0360デフォルトの名無しさん2016/02/27(土) 21:39:43.46ID:3fSSIBtc
まぁ、プログラミング分野でもコマンドラインでコマンドカタカタと
マウスカーソルでGUIぐらいの革命をAppleには期待してるからなぁ…
swiftは結果としてコレジャナイというかObj-Cの置き換えにもならんし
じゃあ、これは言語の革新です!って人々が飛びつくものかっていうと
なんかわりと毒にも薬にもならんバッとしない言語が一個増えたってだけで
だから何がしたかったんだよこれ?ってクックを小一時間問い詰めたいというか。
0361デフォルトの名無しさん2016/02/27(土) 23:12:47.28ID:/4scmDn7
>>358
NSObjectを継承したクラスを使わないで完結できない限りObjective-CとSwiftのパフォーマンス比較なんて実用においてなんの意味も無いよな。
SwiftFoundationのオープンソース化が進んだ後、その他のFrameworkがどこまでオープン化とSwift化されるか、、

サーバーサイドSwiftにはそこそこ期待してる。
NSURL~やNSHTTP~といったクラスがそのままサーバーのプログラムで使えるようになれば楽しい。
0362デフォルトの名無しさん2016/02/28(日) 00:20:49.22ID:8UTlGxzR
objective-cの莫大な遺産を無視するが如くswift推しはどうかとも思う
Appleがobjective-c捨てるっていうタイミングがあったらswiftとかじゃなくて別の世界に行きたい
というか行くべき
Appleは頭がおかしくなってる
0363デフォルトの名無しさん2016/02/28(日) 00:53:04.34ID:YF5CTJLS
だからSwiftはネタ切れを誤魔化すための苦肉の一手なんだよ
WWDCみてたときも満を持して発表って印象はなかったし
0364デフォルトの名無しさん2016/02/28(日) 00:56:07.78ID:8UTlGxzR
アメリカ特有の経済誘導、日本人がもっとも引っかかるやつ
ハリーポッターとかもそう、なにが楽しいんだよ
未発表のタバコはまず日本で試すらしいし
0365デフォルトの名無しさん2016/02/28(日) 01:03:33.94ID:+LUfD8Er
最近、obj-c理解できなかった低脳おじさんがswift好きって・・なんか違うと思うんだけど・・
0366デフォルトの名無しさん2016/02/28(日) 01:19:34.52ID:+LUfD8Er
最近の流行りで、戻り値を->で返したかったなら、
angulerJSみたいな同期制御構文も入れちゃえばよかったのに。
しかし、ただfuncって書くのは無駄すぎる
0367デフォルトの名無しさん2016/02/28(日) 02:58:43.03ID:YF5CTJLS
Swiftって無理してCっぽくない表現にしようとしてて、本末転倒だよな
とにかくなんか新しい感を出したいっていうのが前面に出てる
だから意識高いとか言われんだよな
0368デフォルトの名無しさん2016/02/28(日) 03:09:28.95ID:YQ1prT0b
>>366
何事も省エネかと思いきや確かにfuncって記述は増えたな
0369デフォルトの名無しさん2016/02/28(日) 03:19:22.02ID:YF5CTJLS
funcとかjsかよw
0370デフォルトの名無しさん2016/02/28(日) 03:25:54.20ID:DIyN5luY
Swiftって何回みても文法がクソだな
表面上の違う感じを出す以外に目的を見いだせない
0371デフォルトの名無しさん2016/02/28(日) 07:32:57.86ID:KbW8tan2
>>365
obj-cをというより、OOPを理解できなかった層がSwiftを歓迎してるというのは、あるように思う。
0372デフォルトの名無しさん2016/02/28(日) 08:03:11.71ID:zn9Pk7Zh
>>370
文法をdisとobj-Cはブーメランになるぞ
どう考えても文法はSwiftに軍配が上がる
最新の言語だから当然

まぁ日本の2chでswiftをdisっても
様々はサイトや雑誌、メディアは今後はSwiftでobjCは入れ替わっていくと描かれている
実際に案件はSwiftがどんどん増え、objCはどんどん減っている
本もobjCはなくなり、ほとんどSwiftに置き換わった現実

職業エンジニアは言語の優劣で言語を選択しない
どの言語を求められているか、また、何が有利かで選ぶ
今はJavaが圧倒的シェアナンバーワンの言語だけど、他の言語より言語仕様が優れている訳ではない、java言語を取り巻く環境が有利なだけ
0373デフォルトの名無しさん2016/02/28(日) 08:24:52.71ID:8UTlGxzR
入れ替わらない。
obj-cもC資産を継承してるから今がある。
swiftに未来はない。
0374デフォルトの名無しさん2016/02/28(日) 08:27:34.09ID:KbW8tan2
入れ替わるんじゃなくて、objcの上の層だよswiftは。
0375デフォルトの名無しさん2016/02/28(日) 08:52:25.45ID:IlnKpMcp
戻り値も推論できるのに・・迷惑な層だな・・
0376デフォルトの名無しさん2016/02/28(日) 09:58:59.49ID:8UTlGxzR
swift推しのほうが老害な気がしてきた・・
0377デフォルトの名無しさん2016/02/28(日) 10:13:58.24ID:KbW8tan2
文法に焦点が当たってるようだけど、
そこよりも根本的に大事なのはプログラムを構造化しやすいかって事だと思う。
Swiftは構造化しやすい?
0378デフォルトの名無しさん2016/02/28(日) 11:15:40.76ID:laaXHMHf
c資産はswiftでも使えるで。
c++資産はobjective-c++の方が上手く扱えるかもね。
前も言ったけどswiftの方がdslチックに書きやすい構文が沢山ある。
その分学習コストは上がるけどね。
でもライブラリの使いやすさはswiftの方が上。
rxSwiftとかAlamofireとかの使い勝手をためしてみるべき。
0379デフォルトの名無しさん2016/02/28(日) 11:23:05.08ID:YQ1prT0b
>>372
最新の言語は当然文法が優れてるってマジですか!?
0380デフォルトの名無しさん2016/02/28(日) 15:48:22.58ID:8Z9cxY+A
優劣じゃなく、モダン/レトロの見方だよ
レトロの方が見やすい人もいるよ
0381デフォルトの名無しさん2016/02/28(日) 15:58:13.87ID:zn9Pk7Zh
>>379
マジですよ

少なくとも新規にとっては圧倒的swift
将来を考えてモダン要素取り込んでる
今時の若者がobj-Cを見たらまず嫌悪感を抱くから

若者がプログラミングの勉強を始める時、まずは色々ちょこっと調べるだろ
そこでobj-Cを見て

「、、、やっぱjavaでアンドロイドにするわw」

ってなると困るだろ
0382デフォルトの名無しさん2016/02/28(日) 16:03:16.29ID:zn9Pk7Zh
盲目な人は swift vs obj-c で見ているけど
出生の意義を考えると

java vs obj-c
java vs swift

c# vs obj-c
c# vs swift

で考えなければならない
obj-cじゃ負けてるって事
0383デフォルトの名無しさん2016/02/28(日) 16:15:48.48ID:zn9Pk7Zh
■言語仕様の優劣を言うと

C# > java => swift >>(超えられない壁)>> obj-C


■現段階の仕事の数(稼ぎ易さ)で言うと

java >>> c# >>> obj-c >= swift

今後 obj-c と swift は入れ替わるのは確実
swiftが出たため、 obj-c の仕事は2014年から比べて半減している
0384デフォルトの名無しさん2016/02/28(日) 17:09:44.52ID:IlnKpMcp
やっとobj-cで生産性上がってきたのに・・orz
0385デフォルトの名無しさん2016/02/28(日) 17:11:38.24ID:YF5CTJLS
>>383
>C# > java => swift >>(超えられない壁)>> obj-C
寝言は寝て(略
0386デフォルトの名無しさん2016/02/28(日) 17:23:47.04ID:IlnKpMcp
Objective-C 最強ってことじゃん!!!!
0387デフォルトの名無しさん2016/02/28(日) 17:37:39.88ID:Tw3p2vcj
仕事の数と稼ぎ易さを一緒にするのはNG

Swiftの年収は平均1000万
Objective-Cは600万
C#とJavaは300万

圧倒的に稼ぎやすいのはSwift
0388デフォルトの名無しさん2016/02/28(日) 17:45:24.64ID:y2JqqQss
C/C++ をしっておればすぐに触れるのだから,Objective-C/C++ 一択だね
もう年でいろいろ微妙なバリエーションが出るのに我慢できなくってね,というかswiftは収束する気があるのか?
0389デフォルトの名無しさん2016/02/28(日) 18:10:06.68ID:IlnKpMcp
swiftエンジニアに未来はない
0390デフォルトの名無しさん2016/02/28(日) 18:30:35.57ID:YjGy2cBj
望まれて出てきた言語とゴリ押しで出てきた言語とでは雲泥の差がある
0391デフォルトの名無しさん2016/02/28(日) 18:46:00.64ID:YQ1prT0b
>>381
マジか。じゃあ新しいGoやDartも既存のものより文法が優れてるのか!
0392デフォルトの名無しさん2016/02/28(日) 18:52:12.13ID:9GMDqqmh
Objective-Cは汚いとか言われたけど、ゆうてもメソッドのセレクタの書き方とメッセージ式くらいだろ
Swiftの方が下手にunlike Cを意識しすぎてよっぽど変態的だろ
0393デフォルトの名無しさん2016/02/28(日) 20:06:03.95ID:IlnKpMcp
私大手の委託なんだけど中途のプロパー子持ちおじさんさんの自己紹介で、
「Objectve-Cはキライです・・」
とか言う人がいて引いたわ
外注さんが9割の現場で普通そういう事言わないよね
0394デフォルトの名無しさん2016/02/28(日) 20:22:23.12ID:Tw3p2vcj
Objective-Cは害虫に相応しい言語だな
プロパーはSwiftでモックアップだけ作って年収1000万
0395デフォルトの名無しさん2016/02/28(日) 23:15:08.23ID:rg/ovNSK
Swiftゴリ押してくる連中って、
数年前にgitゴリ押ししてきた連中と同じ臭いがするんだよな
実用性考えずに自分の使いたい技術使いたいだけの奴ら
業務のこと何もわかってない、プロ意識のかけらも無い連中
0396デフォルトの名無しさん2016/02/29(月) 00:09:43.20ID:V/8XsLT4
うちのまわりじゃ
新しく始めるプロジェクトでgit使わないとかもうありえなくなったよ
0397デフォルトの名無しさん2016/02/29(月) 01:51:47.30ID:o7OZi0x1
今時git使ってない現場って何使ってるの?
20160225_souce.zipみたいなのを共有サーバーに置いてるの?

svnも当時はゴリ押しだとかほざいてたやつがいたけど、当時としては優れていたから定着した
gitも同じ流れがもう来て終わったタイミングだし、今更gitをゴリ押しって感じるのはセンスなし
時代についていけていない自分を恥じるのが普通
0398デフォルトの名無しさん2016/02/29(月) 02:44:08.09ID:IpEd/0de
Apple開発言語紛争が原因で倒産か・・
0399デフォルトの名無しさん2016/02/29(月) 03:08:27.18ID:WmIWqVHA
gitは今やデファクト
gitが触れないなんて話にならない
AndroidやるならJavaやるしiOSやるならObjective-CもSwiftもやる
現段階でどちらかしか出来ないなんて話にならない
0400デフォルトの名無しさん2016/02/29(月) 03:32:13.00ID:IpEd/0de
obj-cのプロ(swiftでも書ける)>(超えられない壁)>swiftしか知らないアマチュア

obj-cでcontextとframeworkをどう操りiOSデバイスに結果を導き出すかを知らないと使いものにならない
obj-c覚えられないなんて、そもそも頭が悪いんだよ
0401デフォルトの名無しさん2016/02/29(月) 09:40:41.54ID:nByWuiD1
世の多くの資産はシープラ。
まず、これだけはマスター級でないと。
他はその場で学べばいい。

一時流行に過ぎんので。
0402デフォルトの名無しさん2016/02/29(月) 10:31:55.55ID:2i3XcTJw
Brain damaged language
0403デフォルトの名無しさん2016/02/29(月) 12:04:36.79ID:vcQMR0YE
オブCおじさん、gitを使わない
0404デフォルトの名無しさん2016/02/29(月) 12:56:02.10ID:hVRraje9
Swiftのプロトコル指向ってただのmixinじゃん。
Swiftユーザは既存の技術をドヤ顔で革新的とか言っちゃうほど低レベルの集まりなの?
0405デフォルトの名無しさん2016/02/29(月) 13:19:52.93ID:rONM9FLT
>>404
少なくともこのスレでは「革新的」と言ってる人はいないようだね。
よそのスレで聞いてくれば?
0406デフォルトの名無しさん2016/02/29(月) 13:26:14.95ID:hVRraje9
スレ内が全てだと思ってるの?
もっと外に目を向けなよ。
0407デフォルトの名無しさん2016/02/29(月) 13:26:28.02ID:2WZsxuUY
>>404
で、誰が革新的って言ってるの?
0408デフォルトの名無しさん2016/02/29(月) 13:31:14.75ID:2i3XcTJw
swift apple 革新的
で検索するとそれっぽいのがちょこちょこ出てくるな
https://goo.gl/6Li3ZV
0409デフォルトの名無しさん2016/02/29(月) 13:49:30.99ID:72S2rfUu
>>406, >>408
うむ、ならば革新的と言ってる所に突っ込んでこい
ここは信者も死滅して、アンチとアンチで遊ぶヤツしかいねー
0410デフォルトの名無しさん2016/02/29(月) 14:08:36.85ID:hVRraje9
革新的云々は今起こっているSwift持ち上げやSwift推しに対する比喩で、話の論点はそこではないです。
既存の知識や文化を知らない人たちがSwiftを持ち上げてることが問題なんです。

>>5や>>8みたいな無責任な書き込みがネットには多いことは既にに知っていると思います。
わたしはそれを皮肉ったつもりなんですが、わかりずらくてすみません。
0411デフォルトの名無しさん2016/02/29(月) 14:43:18.93ID:72S2rfUu
随分と丁寧な問題提起で恐縮だけど、悪いがこのスレは>>37な状態だ

>>401みたいに無意味に持ち上げたり
>>403みたいに無関係なツールと絡めたり
それくらいに傾向してないとネタにもならぬ
0412デフォルトの名無しさん2016/02/29(月) 15:51:22.85ID:yW9tvhS3
>>410
>わかりずらくて

プログラミングの前に日本語を勉強し直してこいよ
丁寧に書いたつもりでも隠しきれない低能っぷりがにじみ出てるぞ
0413デフォルトの名無しさん2016/02/29(月) 19:29:40.29ID:odEYfIEy
頭悪い人には分からないのかもしれないが
ここでswiftをdisっても無意味
現実はapple主導でswiftへのシフトが始まってるんだから

swiftの欠点を2chでつついてもこの大きなうねりは止まらない
時代は確実にswiftへと動いている

乗るしかない、このビッグウェーブに
0414デフォルトの名無しさん2016/02/29(月) 19:53:35.20ID:F2s+Z5ip
シフトがはじまってようがなんだろうが
ダメなもんはダメだけどな
0415デフォルトの名無しさん2016/02/29(月) 21:20:48.20ID:iwQJ57PC
>>413
>現実はapple主導でswiftへのシフトが始まってるんだから
その証拠をみせてくれよ,いつswift の仕様が固まるんだ?
0416デフォルトの名無しさん2016/02/29(月) 21:21:00.55ID:WmIWqVHA
Appleが推し進めようがPingみたいにダメなもんは廃れる
0417デフォルトの名無しさん2016/02/29(月) 22:04:03.29ID:IpEd/0de
この波には乗れないな
0418デフォルトの名無しさん2016/02/29(月) 22:13:37.71ID:odEYfIEy
obj-cにこだわっていると仕事無くなるぞ
たった1年で案件半減はさすがに危機感覚えた方がいい
「弘法筆を選ばず」
言語に拘るのは三流、素直にswiftを学ぶべき

まぁobj-cオンリーの頑固者でもあと5年は食えるとは思うが
さすがに10年は食うの厳しいと思うぞ、世の中の流れ的に

エンジニアは常に学ばなければならない
―――――――――――――――――――――――――

第6位 Objective-C

求人年俸額平均:367万8,719円
掲載件数:659件
主にiOS(iPhone)やMacOSのアプリ開発に利用される言語ですが、昨年にApple社より発表された新言語「Swift」に主流の座が移り変わりつつあります。 そういった状況を反映して、掲載件数は昨年比59%と、大きく減少しました。


第3位 Swift

求人年俸額平均:388万0,770円
掲載件数:149件
昨年、Apple社から、iOSやMacOSの新しい開発言語として発表され、早くもObjective-Cに代わって定着しつつあります。求人ニーズに対してはまだエンジニアが少なく、求人給与額が上昇している傾向が伺えます。
0419デフォルトの名無しさん2016/02/29(月) 22:20:00.16ID:vqq2bNcJ
とはいえ言語が流行れば単価は下がる
0420デフォルトの名無しさん2016/02/29(月) 22:22:21.15ID:dVPHiWGl
アマチュアswifter vs プロフェッショナルobjcer
swifterは一切のobj-c資産を利用してはいけない
ファィ!!!
0421デフォルトの名無しさん2016/02/29(月) 22:29:06.05ID:odEYfIEy
>>419
そうとは限らない
人口が圧倒的最多のjavaは単価相場は中間くらいでCやC++より高い(平均ね)
需要と供給で決まる
今後は分からないが少なくとも今現在の状況を見る限りではswiftに移行できる準備はしとくのが良いと思われる

swiftを覚えた方が良い一番の理由は、今後iosプログラミングの書籍はswiftしか出ないんで、今からの若手はswiftしか学ばないからそのうちswiftの方がメジャーになるのは目に見えている事
まぁobj-cはまだまだ大丈夫だけどさ

大事な観点は、何を学ぶべきかは言語仕様の良し悪しではないって事
0422デフォルトの名無しさん2016/02/29(月) 22:30:06.64ID:odEYfIEy
>>420
swift派だけどもちろんobj-cの資産はフル活用するってば
0423デフォルトの名無しさん2016/03/01(火) 07:02:49.12ID:xOSuvFin
SwiftはAppleの黒歴史になる
0424デフォルトの名無しさん2016/03/01(火) 08:15:55.63ID:qxKqoywD
言語くらい一番いいものを使いたいな〜まだ今はobj-cだよ
次世代はswiftじゃないboards(仮称)だね
systemboard、storyboard、logicboardとnetworkboard
logicboardにはstoryboard(複数枚チーム開発可)上のすべてのUIパーツが登録され全メソッドドロップダウンで選択(auto override)、delegateも線を引っ張るだけ、internal/globalメソッドは同期非同期をメソッドのプロパティで選び非同期を選ぶとcontext/completion設定が可能
通信はnetworkboardからエンティティ登録するとget(/post)メソッドが自動生成されカスタマイズも可能、各メソッド内の使用オブジェクトのプロパティ設定は全てGUIから可能(extensionも可)
すべてのオブジェクトはStringクラスを継承し書式指定文字列化が可能
systemboardにはカメラ、GPS、不揮発性メモリなどのH/W資産オブジェクトを定義/利用
各boardでソースファイルとしての管理が可能
0425デフォルトの名無しさん2016/03/01(火) 08:19:43.74ID:qxKqoywD
そして全プログラミング環境はboards規格準拠になる
0426デフォルトの名無しさん2016/03/01(火) 10:10:50.11ID:2SeeZW+R
ごめん貴方が何言ってるかわからない
0427デフォルトの名無しさん2016/03/01(火) 12:26:44.50ID:eKJhfGat
つまりまとめるとswiftスレまでわざわざ来てobjcマンセーするような
objc使いにはなるなって事でおけ?
0428デフォルトの名無しさん2016/03/01(火) 13:30:53.64ID:JF9qBhO4
swiftマニアのobj-c嫌いというか敵愾心を見るにつけ
極端な人を呼び込みやすい言語なんだろうなとは思う
合う人には強烈に合うんだけど、多数の人からすれば今すぐ乗り換えるものにも思えない
それだけのことなんだけど、今いる?それ?程度のコメントにもいちいち噛み付いて
乗り遅れてるだの老害だの言い始めるから敵増やす
kenokabeメソッドそのまんま
0429デフォルトの名無しさん2016/03/01(火) 14:57:53.63ID:CYOvNsDD
そもそも apple 好きってそういうもんじゃないの
0430デフォルトの名無しさん2016/03/01(火) 18:53:42.60ID:9+z7v2VA
今年のWWDCでオープンソースのSwift Foundationは完成お披露目できるんかね?進捗どうなってる?
0431デフォルトの名無しさん2016/03/01(火) 23:19:56.98ID:Kb7+kGi5
10年間Obj-Cでアプリ作ってきたが去年Swiftに乗り換えたわw
Swift便利でもうObj-Cには戻れない
0432デフォルトの名無しさん2016/03/02(水) 01:49:14.03ID:O+5v5XDS
c++より前から存在していたobj-cが、
まさか台頭してくるとはiphoneが出るまで誰も夢にも思わなかったよね。
でもc++が採用にならなくて本当に良かったです。swiftは正直iOSアプリが書ける以外に
代表する取り柄がない言語ではあるけど、
使いやすい言語であることは確か。
0433デフォルトの名無しさん2016/03/02(水) 04:20:09.36ID:PrkArxwy
>>431
こういうわざとらしいレスをみると、ね。
0434デフォルトの名無しさん2016/03/02(水) 08:11:40.65ID:BwGZqFNz
ここまでをまとめると、

やっぱりunwrapはうざい

で、おk?
0435デフォルトの名無しさん2016/03/02(水) 08:34:04.87ID:ZkqrS/9C
xcodeなかったらウンコunwrapできない
xcode-swiftって名前変えろ
0436デフォルトの名無しさん2016/03/02(水) 08:47:10.32ID:ZkqrS/9C
if let unkoDeta = unko as! Unko {
こんなコードだらけで読みづらい
}
・・
let toilet = (unko?.siru())! // カッコや?!、型も分からずウンコ読みづらい
xcodeないと保守できない
0437デフォルトの名無しさん2016/03/02(水) 10:56:53.50ID:4R/WZSDa
error:(NSError **)errorで呼んだ先からエラーオブジェクトが返ってくるの
これはこれでべんりじゃーん
自分が処理しないなら更に上位にforwardingして任せりゃいいだけだし行数減らせるわあ
と思ってたら

do/try~catchでみんなハッピーになろうや->ええ・・・

エラーがいらない時はtry!してねとか
じゃあべつにojb-c/cocoaの時みたいにnilで塞ぐか**で返せば良いんとちゃうますの・・・
do/try~catchはdo/try~catchで結構めんどくさいんですけど・・・
0438デフォルトの名無しさん2016/03/02(水) 15:34:14.60ID:0I3eMr0J
その後either投入も考えてる、とtwitterで発言あったから、、、
ライブラリで入れるのか、 Swift文法で入れるのか分からんけど
前者ならObj-C互換でObj-C(Cocoa NSEither)で組み込みかねぇ
0439デフォルトの名無しさん2016/03/02(水) 15:48:26.70ID:POD7fJSO
Swiftのoptionalや静的型に文句言ってる奴は、ObjCで潜在的バグまみれの糞コード書いてんだろうなぁ
恐ろしい
0440デフォルトの名無しさん2016/03/02(水) 17:43:59.12ID:O+5v5XDS
>>438
swiftをきっかけに関数型に興味を持ったからeither希望
0441デフォルトの名無しさん2016/03/02(水) 20:27:29.85ID:NUu2izut
Optional型ってのは他にいいアイデアが思いつかなかったから
妥協の産物でひねりだされたもんで
アレがいろいろ汚くさせてることに違いはないからなあ
0442デフォルトの名無しさん2016/03/02(水) 20:32:35.66ID:0I3eMr0J
なんでアンチはkotlin発祥のoptional型や
C++採用の型推論をこのスレでディスって煽るん?
0443デフォルトの名無しさん2016/03/02(水) 20:56:10.29ID:NUu2izut
C++使うなら別にObj-C++でもいいからな
swiftは選択肢を奪ってる
0444デフォルトの名無しさん2016/03/02(水) 22:20:34.39ID:Zwwrr2mi
obj-cのメソッドチェインに比べれば!?の方がまだマシだろ
0445デフォルトの名無しさん2016/03/02(水) 23:02:07.06ID:rslbYwhQ
>>439
アンラップで強制クラッシュするよりマシ。
0446デフォルトの名無しさん2016/03/02(水) 23:13:58.00ID:qqtjEaZb
アンラップでクラッシュしないようにバインディングすんだろ何言ってんだ
0447デフォルトの名無しさん2016/03/02(水) 23:46:15.60ID:FMXaUyzn
今からiosアプリ始めるにはswiftしかないか?
ちなみにサーバーサイドは何使ってるの?
0448デフォルトの名無しさん2016/03/02(水) 23:49:12.72ID:NUu2izut
アンラップの強制クラッシュもそうだけど
基本swiftってガンガン落としてけって思想なのかね?
obj-cはむしろそこでやらないなら、そこを呼び出した上位に任せればいいって感じだけど
0449デフォルトの名無しさん2016/03/03(木) 07:56:18.83ID:jR6TS88L
swiftはオナニー言語
0450デフォルトの名無しさん2016/03/03(木) 08:53:53.04ID:sDd8C7iY
まったくobj-cに関与せずにswiftオンリーでプログラムを十分に組めるものなのかね?
当初、結局はobj-cの知識が必要だの、そっちでモジュール作ってどうこう言われていて
中途半端な言語だなと思ってフレずに終わったんだが。

>>447
別にC++でもいいし、JavaScript+Node.jsの組み合わせでもいいだろ。サーバーサイド
はどちらにせよ、phpやjavaと相場は決まってるんだから。
0451デフォルトの名無しさん2016/03/03(木) 08:57:24.30ID:Dk2Oib6M
swiftいいよ。最高だよ。みんな覚えよう!
0452デフォルトの名無しさん2016/03/03(木) 09:27:22.47ID:Zp/ix4r0
>>440
swiftは関数型としては中途半端で汚すぎると思うんですけど
関数型ならhaskellだろうもん
0453デフォルトの名無しさん2016/03/03(木) 09:32:22.67ID:Zp/ix4r0
>>446
きもいし読み間違い起こすわ
0454デフォルトの名無しさん2016/03/03(木) 09:43:57.96ID:jR6TS88L
!?アレルギーになりました
0455デフォルトの名無しさん2016/03/03(木) 10:37:20.01ID:3A04OlFI
>>450
そんなの無理ゲーに決まってるだろ、、、
だからswiftコーダーは両方やってるワケで
0456デフォルトの名無しさん2016/03/03(木) 10:43:35.36ID:Qj7bwkW1
>>450
まったく関与せずは実用では無理
0457デフォルトの名無しさん2016/03/03(木) 11:22:37.27ID:sDd8C7iY
>>455
>>456
結局さ、言語として独立していないって事だよね。ソレ。
他じゃあり得ないことなんだがそんなふざけた言語。

未だにそんな状態ってのが笑える。普及せんわ。
0458デフォルトの名無しさん2016/03/03(木) 11:37:36.71ID:ETMFlz86
androidの開発環境の方が優れてるということか?
0459デフォルトの名無しさん2016/03/03(木) 11:56:46.03ID:3A04OlFI
>>457
お前、Cに依存してるC++にも同じこと言えんの?

本気で普及すると思って使ってないし
両方使えた方が美味しいのでやっとく分に損はねーぞ
0460デフォルトの名無しさん2016/03/03(木) 12:30:37.83ID:jykHRqX5
SwiftでUIKit使ってると!や?だらけになるんだけど、
これを回避するために全く新しい代替フレームワークが出てくる可能性ってある?
0461デフォルトの名無しさん2016/03/03(木) 12:45:01.30ID:2CCvCPSD
if文多用して、キャスト&コンストラクタ使いまくればいいんじゃね?
Obj-Cでもやってるんだからお前なら出来るだろ

俺は普通に面倒だから?とif let使うけど
!使うアホは永遠ヘイトしてどうぞ
0462デフォルトの名無しさん2016/03/03(木) 13:43:39.93ID:jykHRqX5
これが
let s = self.window!.rootViewController as! UISplitViewController
let n = s.viewControllers[s.viewControllers.count-1] as! UINavigationController
n.topViewController!.navigationItem.leftBarButtonItem = s.displayModeButtonItem()

こうなる
if let s = self.window?.rootViewController as? UISplitViewController{
if let n = s.viewControllers[s.viewControllers.count-1] as? UINavigationController{
n.topViewController?.navigationItem.leftBarButtonItem = s.displayModeButtonItem()
}
}
正気じゃないよ
0463デフォルトの名無しさん2016/03/03(木) 13:58:14.06ID:UHfffoEa
ifは多段しなくてもよくなってなかったっけ?
読み辛いのはCocoaが悪いだけな気がする
obj-cで書いても英文読んでるようで疲れるぜよ

gtkやqtをswiftから叩きたいけど、あれらはC++だからswiftから素直に叩けないんだよなぁ
一度トライしたけど、ラッパーにラッパー重ねて、まだCocoaの方が幸せでした
0464デフォルトの名無しさん2016/03/03(木) 14:11:09.66ID:Zp/ix4r0
>>462
だよなあ
なんでこれに同調しなきゃいかんのか
永遠にヘイトしてろとか罵倒されなければいかんのか
0465デフォルトの名無しさん2016/03/03(木) 14:45:53.55ID:pV64cjRE
同調しなくていいし、このスレにいなくてもいいんだよ?
わざわざ出張して毒にも薬にもならない否定だけしてれば、そりゃヘイトか煽りだろw
0466デフォルトの名無しさん2016/03/03(木) 15:08:44.01ID:mJcEdtPO
if let は , で区切ればネストさせずに書けるのにw
0467デフォルトの名無しさん2016/03/03(木) 16:24:32.89ID:Qj7bwkW1
, 区切りで連結させると結局どこでエラーが起きても同じ else で対処する事になる
そこで try catch でのエラーハンドリングが生きてくるという事?
0468デフォルトの名無しさん2016/03/03(木) 17:13:03.46ID:NI2A9sOU
>>429
Apple好きは「swiftはなぁ…」って苦笑してる側で
なんか実際は仕事してないカンチガイ意識高い系が
「え?おたくswiftじゃないの?ぼかぁもうswiftだよ!」って
鼻孔を拡げながら言ってる雰囲気ある。
0469デフォルトの名無しさん2016/03/03(木) 19:11:43.80ID:Crb7qJdo
時計のアラーム画面みたいにUIPickerViewを
1周して元に戻したいんだけどどうやったらいい?

デフォルトだと代後まで回って元に戻らないわ
0470デフォルトの名無しさん2016/03/03(木) 19:53:30.87ID:L27RbJl9
>>468
なんかジョブズ以降、appleの出すものを全部拝領するのがマカーだと思われてる節があるな
それこそにわかの発想なんだが
0471デフォルトの名無しさん2016/03/03(木) 20:55:44.39ID:AfSBhVD+
むしろ、WindowsのUIや設定諸々が本当にMacぐらいいろいろ整理されてたら
別にWindowsでも構わんぐらいだしな。
0472デフォルトの名無しさん2016/03/03(木) 21:40:16.42ID:jR6TS88L
クソ言語、おれは絶対に騙されない
0473デフォルトの名無しさん2016/03/03(木) 21:47:17.60ID:jR6TS88L
吸い太もも は好きだ
0474デフォルトの名無しさん2016/03/04(金) 07:48:10.05ID:A7nrOp7k
>>451
Swiftマンセーーーーーーーーーーーーーーーー!!!
0475デフォルトの名無しさん2016/03/04(金) 07:55:51.64ID:TjqvRwYA
>>467
if let ... , letとtryは同時に使うものじゃないからな

if let ... , letはnil判定、キャスト判定に使う分にはそこそこ便利
,区切り出来なかった頃は普通に面倒だったけど

do try catchは仕様追加時は、なんぞこれwww笑った
末尾Closureの省略表記に対応した、末尾Errorの省略表記と理解して、あー、、、と苦笑した
0476デフォルトの名無しさん2016/03/04(金) 08:11:53.06ID:n80vq8YG
>>457
そんな言語ありふれてるんだが。
皆C拡張書いたりシェアードライブラリ呼んだりして賄ってんだよ。
0477デフォルトの名無しさん2016/03/04(金) 08:53:10.51ID:VkXveF8a
Unwrapppppppppppppppppppppppp
0478デフォルトの名無しさん2016/03/04(金) 08:58:47.88ID:VkXveF8a
16bitの組込みで生きてる20代のおれから言わせてもらうと、
obj-cでも贅沢なのに何がswiftだ!nullでクラッシュ?笑わせるなwwww
0479デフォルトの名無しさん2016/03/04(金) 09:14:05.93ID:INPOjUPr
>>478
珍しくまともなレス、と思ったらいつものアンチの子だった
お前のレス、1回投稿した後に5分後くらいにもう一回レスするから物凄く分かりやすい

そしてお前にはswiftはOptionalしか突っ込みドコロがないのか
try、String、class/strict/enum、C style for、@convention(c)、etc.と
他にもより使い勝手がオカシイ文法があるだろ
0480デフォルトの名無しさん2016/03/04(金) 09:15:55.47ID:INPOjUPr
typo. strictじゃなくstrutだった
0481デフォルトの名無しさん2016/03/04(金) 09:49:23.71ID:caIAl3e0
>>468
正解。

正直 「コレも」 失敗言語として終わるよ。リンゴはこんなの過去にもやってる。
0482デフォルトの名無しさん2016/03/04(金) 11:25:08.46ID:JX9S2zww
http://qiita.com/mishimay/items/895d676eb9940d75e639
trySwift楽しそう。
行きたかった。地方は辛いね。
0483デフォルトの名無しさん2016/03/04(金) 11:29:29.41ID:ws81OHPW
Swiftに飛びついた結果がこれだよ。
http://qiita.com/omochimetaru/items/17cdbb5a77972c82a781

言語仕様が固まってないよちよち歩きの言語は幅を利かせるべきではない。
こういう言語はこっそり憂でるものだろ。
今のSwiftブームはプログラマのオナニーを見せられているだけで不快なだけ。
0484デフォルトの名無しさん2016/03/04(金) 11:46:29.47ID:Nf80a+JB
>>483
現在生き残ってる言語にはそれぞれ理由がある
それを自分本位あるいは自分には便利みたいな改善案で新言語作ってもなあ
0485デフォルトの名無しさん2016/03/04(金) 11:47:49.76ID:Nf80a+JB
で、swiftも生き残るためにはより汚くならざるをえないし
いまのObj-C2.0みたいに罵倒されながらも使う分には便利だね。の妥協点を探すはめになる
歴史は繰り返す
文法のエレガントさとか純粋性の高さとかは実務では敷居の高さにしかならない
0486デフォルトの名無しさん2016/03/04(金) 12:26:36.00ID:MD3FdpXj
>>483
仕様のバグみたいなもんだろ
ちゃんとどうすべきかを方針決めて、修正してもらうしかない
0487デフォルトの名無しさん2016/03/04(金) 12:51:55.16ID:Nf80a+JB
廃止だな
0488デフォルトの名無しさん2016/03/04(金) 16:32:28.86ID:dMekrRVv
はい、死だな
0489デフォルトの名無しさん2016/03/04(金) 16:42:38.53ID:2E05ek9f
>>483
また仕様変わったwwwって笑いながら使うものだろ
Swiftブームは一昨年前の惨事で、今は落ち着いたものだ

その仕様は仕様変更かワーニング強化かねぇ
プロトコルに自体書かせる言語仕様はトレンドだから削除は出来ないだろうから
適当にワーニングで処置して頂きたい所存
0490デフォルトの名無しさん2016/03/04(金) 19:43:47.55ID:GrYyKtdy
コードの書き方の指標そのものが変わるようなオレオレ拡張ライブラリが多過ぎで辛い。
自分1人ならいいけど複数人で書く場合、逐一そのライブラリの仕様の理解を全員で共有しないといけない。
クラスレベルでの局所的なメソッド拡張程度に抑えるべきではないのか?
これはSwiftに限った話じゃなくて他の言語でもそうかも知れない。
でもSwiftの発表してる人のスライドを見るとこんな機能のクラスやライブラリを作ったぜより、Swiftでこんな仕組みもできちゃうぜ的な内容が多い気がする…
0491デフォルトの名無しさん2016/03/04(金) 19:53:17.60ID:gkI2v/cJ
自分に取って素晴らしい、が他人にとってもそうとは限らないんだけど
どうもその辺壊れてる人がswift信奉者に多い印象はある
0492デフォルトの名無しさん2016/03/04(金) 19:59:15.16ID:2E05ek9f
新興言語のライブラリなんてみんなそうだったろ
Swiftは5年生き延びたら落ち着くんじゃない

そこまで生き残るか分からないけど
0493デフォルトの名無しさん2016/03/04(金) 20:54:48.54ID:JX9S2zww
>>483
う、、、それはあるかもしれない
DSLが得意って結局DSLの学習コストというものが発生するしね。
Elixirのマクロとか別言語化するからやばい。

でもswiftみたいな静的型なら補完効くしちゃんとコメントとかつけてくれれば
マクロよりはマシなレベルじゃないかな
0494デフォルトの名無しさん2016/03/05(土) 00:49:08.05ID:PtGnJbGH
よくもここまで分かりにくく書けるよな
オレオレ型推論メッチャ疲れる
0495デフォルトの名無しさん2016/03/05(土) 01:16:41.61ID:I2QoCu+E
Swiftの型推論はC++11の型推論と同一だから
Swiftの型推論に困るならC++でも型推論使えない子になるぞ

それとも、またOptionalやキャストが気に入らないのかな?
0496デフォルトの名無しさん2016/03/05(土) 01:29:04.16ID:Y+yze1Qk
Swiftは世界一素晴らしい言語です!!
こんな最高な言語を使わないなんて頭おかしいとしか言いようがないですよ!!
0497デフォルトの名無しさん2016/03/05(土) 02:33:14.09ID:jb1F0oyu
Siwft嫌いな人はどんな言語をいいのか教えて。
俺はGoが好きです。
0498デフォルトの名無しさん2016/03/05(土) 03:23:38.16ID:xj99ir4G
>>497
Rustが好きです
Swiftが可愛いく見える最高にマゾい変態言語仕様が堪らない
あとまぁSwiftやGoに比べて性能良いしな
0499デフォルトの名無しさん2016/03/05(土) 03:28:04.26ID:AsG5i6Al
型を書くのが好みだから型推論は自分が間違ってた時に教えてくれるぐらいの役目でお付き合いしてる
0500デフォルトの名無しさん2016/03/05(土) 04:17:52.36ID:IUUoHmtA
Swiftってなんであんなに無理に違う感出してるの?
分かりやすい文法って訳でもないし
かえって読みにくいし書きにくい
何か直感的に書こうとすると大概裏切られる文法という意味でセンスが光る感じって言えばいいのかな
0501デフォルトの名無しさん2016/03/05(土) 04:19:01.32ID:IUUoHmtA
>>499
型推論は便利だけどBASIC的な不安を感じてしまう
0502デフォルトの名無しさん2016/03/05(土) 05:25:44.45ID:PtGnJbGH
funcって書かないで戻り型を書けよ
気持ち悪いんだよ
0503デフォルトの名無しさん2016/03/05(土) 14:12:57.50ID:fWjSDRt6
いくらなんでも、-> はないよな
0504デフォルトの名無しさん2016/03/05(土) 14:19:16.56ID:zjxr8oeE
->はHaskell由来でしょ
0505デフォルトの名無しさん2016/03/05(土) 14:23:55.13ID:UYtB00OI
->は構造体ポインタからのメンバ参照だろJK
基本的に構文設計のセンスがないよね
0506デフォルトの名無しさん2016/03/05(土) 14:23:59.62ID:mFk1f1pP
でもさ、複数の戻り値を返す場合、それが良くね?
0507デフォルトの名無しさん2016/03/05(土) 14:32:01.62ID:AsG5i6Al
複数の返り値を返すのはタプルの機能であって、返り値の型を関数の前に書くのか関数の後ろに->で書くかはまた別の話だと思う
0508デフォルトの名無しさん2016/03/05(土) 14:36:02.52ID:UYtB00OI
とりあえず、変にモダン()に構文変えずに、Cベースで分かりやすく機能追加してくれればよかったのにって心から思う
やっぱObjective-C 3.0としての正常進化が正解だろ
やっちまったよなAppleは
Jobsなら絶対そうしたはず
0509デフォルトの名無しさん2016/03/05(土) 14:41:35.28ID:zjxr8oeE
->だと高階関数の型が左から右に流れてわかりやすい
0510デフォルトの名無しさん2016/03/05(土) 14:42:38.77ID:mFk1f1pP
>>507

func function(arg1, arg2)->(res1, res2) {
}

(res1, res2) function(arg1, arg2) {
}

機能じゃなくて、どっちがわかりやすいかって事。
いっそ、どっちでも書けるようにしてはどうか。
0511デフォルトの名無しさん2016/03/05(土) 15:00:59.70ID:UYtB00OI
そもそもfuncがいらねぇだろ
varとかletも頭悪い感じする
0512デフォルトの名無しさん2016/03/05(土) 15:44:12.34ID:A68whlSI
C++でmost vexing parseにイラつかせられているので
Swiftの文法は優れていると思う
C++だと
A a(); // A型の変数aの宣言なのかA型を返す関数aの定義なのか
みたいな曖昧さが生じるけど
Swiftはキーワードで始めることでその曖昧性を排除してる
0513デフォルトの名無しさん2016/03/05(土) 15:47:17.86ID:mFk1f1pP
パース的にも、「こいつは関数だ」っていう視認性的にも、あった方がいいんだろな。
0514デフォルトの名無しさん2016/03/05(土) 15:52:31.61ID:EFi6W4GY
Swift はよくできてる
慣れると非常に書きやすく読みやすい
0515デフォルトの名無しさん2016/03/05(土) 16:46:36.83ID:iHGvxRPq
>>512
言ってる意味がわからないんだけど変数で変数名の後に( )つける時ってどういう時?
0516デフォルトの名無しさん2016/03/05(土) 17:46:35.06ID:A68whlSI
>>515
引数ありでコンストラクタ呼ぶときは()つけるでしょ
A a(b, c, d);
それと同じノリで引数なしのコンストラクタ呼ぶときに
A a();
とか書くとエラーになる
文脈に応じて使い分けないといけないのがイケてねーんだよ
Swiftならどっちも
var a = A()
var a = A(b, c, d)
と一貫性あって美しい
0517デフォルトの名無しさん2016/03/05(土) 17:59:18.18ID:iHGvxRPq
>>516
Objective-Cではそもそもそんな紛らわしい表現使わないから全く問題にならんと思うが、
それってどの言語と比較してんの?
0518デフォルトの名無しさん2016/03/05(土) 18:03:21.52ID:e0eJLm/d
>>512で言語指定してるのに見えてなくてワロタw
思考停止したヘイトレスばかり書いてるからwww
0519デフォルトの名無しさん2016/03/05(土) 18:04:18.74ID:zjxr8oeE
www
0520デフォルトの名無しさん2016/03/05(土) 18:18:08.17ID:xdiHToCv
>>518
C++はあれはあれで仕方ないんだろうなーとは思いつつ
みんな、あんな異常なゴミ仕様言語が一時期Cの後継扱いになったのが
オブジェクト指向の黒歴史だったなという認識なので
「C++と比べてswiftは〜」って比較自体が
「うんこに比べてゴミの方が〜」って言ってるバカ眺めてる感じなんですよw
0521デフォルトの名無しさん2016/03/05(土) 18:46:44.90ID:iHGvxRPq
ID: A68whlSI はなんでC++と比較してんの?
0522デフォルトの名無しさん2016/03/05(土) 19:09:02.17ID:UYtB00OI
>>520
ワロタ
0523デフォルトの名無しさん2016/03/05(土) 19:19:20.27ID:NGPswp4q
>>520
ゴミでもウンコでもないものは?

>>521
LL か LR かでは話が通じないと思ったから実例を出したんじゃねーの。
0524デフォルトの名無しさん2016/03/05(土) 19:27:11.67ID:kQ69sjpg
>>512, >>516が指摘しているC++のダメなところがいまだに分からない
誰か解説してくれ
0525デフォルトの名無しさん2016/03/05(土) 21:15:37.42ID:C6PXQEiT
今はC++でも最適化が効くからA a = A();の記法でも問題ないと思うどな。
あと最近の流行りはauto a = A();なのでSwiftと同等の一貫性はもたせられてる。

auto a = A();
auto a = A(b, c, d);
0526デフォルトの名無しさん2016/03/05(土) 21:20:28.14ID:A68whlSI
>>525
その記法だとCopyConstructibleでないときにエラーになる
コピーコンストラクタをdeleteしてみろ
0527デフォルトの名無しさん2016/03/05(土) 22:43:59.73ID:e0eJLm/d
swiftがクソだと思ってる子は、C++もクソだと思ってるから
その話題の先には食いつかないんじゃないかと

次くらいに、脈略なくマンセー or Optionalヘイトが来そう
0528デフォルトの名無しさん2016/03/05(土) 23:08:37.83ID:AsG5i6Al
var 変数名: 型
って後ろに型を書くのも今時の流行りなの?
0529デフォルトの名無しさん2016/03/06(日) 00:08:43.02ID:b6Djrwpa
まあ本当に理想とする言語ってないのかもね。
だからこんなに言語が量産されるわけで。
一つ聞きたいんですが
プロトコル指向という概念はswiftが先?
何かベースとなる言語がありそうな気がするんだけど
0530デフォルトの名無しさん2016/03/06(日) 00:21:39.88ID:Pw/hdXu1
プロトコルは昔からObj-Cにもあるし、JavaならInterfaceがあるので、
概念としての新規性は無いでしょ。
0531デフォルトの名無しさん2016/03/06(日) 00:24:12.81ID:KcqVY3vA
とにかく新しい感を出すためにはどう洗脳すればよいかに重点を置いて検討しているからね
0532デフォルトの名無しさん2016/03/06(日) 00:34:18.35ID:VblWpyA9
swift 終わったな・・
0533デフォルトの名無しさん2016/03/06(日) 01:26:21.52ID:8W5th79d
アセンブラすら楽しんで書いてた俺に死角は無い
0534デフォルトの名無しさん2016/03/06(日) 02:46:45.80ID:NdluMUD6
>>530
プロトコル(インターフェース)という概念と
プロトコル指向という概念は別物だと思う
Objective-C時代のプロトコルは単に機能の宣言でしかなかった
あくまでオブジェクトがメイン、オブジェクト指向
そこを変えてプロトコルをメインにするのがプロトコル指向な訳で
0535デフォルトの名無しさん2016/03/06(日) 02:59:00.82ID:Pw/hdXu1
>>534
大きく違うのは、クラスだけじゃなく構造体と列挙型にも適用できるって事ぐらいじゃない?
0536デフォルトの名無しさん2016/03/06(日) 08:41:28.64ID:/BNEePO3
もともとコンピュータというのは大型で高価な機械だったので
60年代から離れたところから通信(ネット)で使うというのはわりとあたりまえで
そこいら辺の事情から離れたところにあるコンピュータ同士で
ネットワーク通信しながら一連のプログラムを協調動作させる未来が想定されていた。
そうなると出てくるのが離れたマシンで動いてるプログラム同士での
たとえば、相互のやりとりの共通化(プロトコル)の問題だったり
他のプログラムが知らないうちにデータ書き換えちゃう問題だったり

…どこかで新しいトピックとして聞いたような話になってきたっしょ?(笑
0537デフォルトの名無しさん2016/03/06(日) 08:47:37.66ID:/BNEePO3
Objective-Cはそっち側の分野のコンピュータサイエンスから発想された言語のひとつだから
それらを解決するのに「メッセージコマンドとパラメータをセットで送るようにすりゃよくね?」とか
「"こういうメッセージを使える"ってテンプレートセットを相互了解してると便利だよね」とか
そんな感じで作られてる。逆に言語のもともとの発想がメッセージ投げたら
"相手がいつどうやるか観てらんない"だから発想的には素でマルチスレッドというか
そんなところに立っているので、逆に通ってきた道の側から
最近の言語が「副作用」だの「プロトコル指向」だので
"言語仕様で強制することでバグを減らそう!減らせるはずだ!"ってやってるのが
(…それってC++が陥った言語仕様地獄パターンじゃねぇの…)という感じに見える。
相手(コンピュータ/オブジェクト/クラス)に投げたらあとは彼が勝手にやってくれる
それは"オブジェクト同士の取り決め"で縛るものであって統一仕様作るんだ!は
何度目だバベルの塔?ってそういった感
0538デフォルトの名無しさん2016/03/06(日) 09:44:49.44ID:1A4Oc1Ia
>>534
だから言い方だよね
べつにSwiftのCocoa/Cocoa Touch APIの体系がプロトコル指向になってるわけでもなく
結局何も変わらんが、Swiftって素晴らしい言語なんだよって思わせたいだけ
0539デフォルトの名無しさん2016/03/06(日) 09:48:01.27ID:b6Djrwpa
>>528
今時というかむしろCの宣言構文が負の遺産だった。
http://qiita.com/m0a/items/2b03b189d746ae231756
0540デフォルトの名無しさん2016/03/06(日) 09:58:03.64ID:b6Djrwpa
>>536
>大きく違うのは、クラスだけじゃなく構造体と列挙型にも適用できるって事ぐらいじゃない?

だったらGoの方が先進的だなー
あれは同じ関数を持っていたら同じインターフェースとみなすことができるから
最初からどんな型でも別名で宣言しなおせば同じように扱える。
といってもジェネリクスはないから
あんまり抽象的に扱うのは得意じゃないけど
0541デフォルトの名無しさん2016/03/06(日) 10:52:32.28ID:JyfckrBg
長文書いたのに「Goからの仕様拝借」の一言で終わらせられてる子可哀想

色んな言語から言語仕様をパクった言語だから他言語知らないとツッコミがズレるよ
Swiftに独自性なんて期待されてなくて、マーケティングで売り出してるんだからな
0542デフォルトの名無しさん2016/03/06(日) 10:56:11.62ID:KcqVY3vA
>>541
>Swiftに独自性なんて期待されてなくて、マーケティングで売り出してるんだからな
開発者視点で考えればわざわざ変えるわけだから、変えるための合理的な必要性が
期待されてるんだが、ただのAppleのマーケティングのためのゴリ押しにしか見えない
ってのがまずいんだろ
0543デフォルトの名無しさん2016/03/06(日) 11:24:08.61ID:E+dKwvyv
>>525
autoがAに推論されて、A()テンポラリオブジェクトだからaの寿命はその行で終わる。
auto&& か const auto&なら寿命が伸びて安心して使える。
0544デフォルトの名無しさん2016/03/06(日) 11:48:35.39ID:KvcWWJnr
オブC信者はポエムばっかりだな
0545デフォルトの名無しさん2016/03/06(日) 11:58:04.43ID:JyfckrBg
>>542
その苦情は言語作ったアポーじゃなく開発言語を選択したプロマネに言えよwww

お前には1.xの頃の意見で、2.0にもなればゴリ押しに踊らされるのはアンチくらいだw
0546デフォルトの名無しさん2016/03/06(日) 12:24:24.44ID:NdluMUD6
>>538
> Cocoa/Cocoa Touch APIの体系がプロトコル指向になってるわけでもなく

そりゃいくらアップルでも20年かけて作ったCocoaをすぐ置き換えるのは無理だろw
今はまだFoundationの一部だけだけど、そのうち徐々に置き換えられていく
それでもSwift 2.0のプロトコルやプロトコル指向で書かれたオープンソースライブラリを眺めていれば違うってのはわかるはず
0547デフォルトの名無しさん2016/03/06(日) 12:27:19.80ID:Pw/hdXu1
>>537
バグを減らすのが目的ってのが、よくわからないんだよな。
具体的にどんなバグなんだろ。
0548デフォルトの名無しさん2016/03/06(日) 12:47:57.80ID:1A4Oc1Ia
>>546
ほう
0549デフォルトの名無しさん2016/03/06(日) 12:50:00.57ID:tu3qBPH6
プロトコル指向は protocol extension がキーなのに、わかってないやつがいるんだな
0550デフォルトの名無しさん2016/03/06(日) 13:02:48.18ID:b6Djrwpa
>>549
プロトコル指向っていうのはつまり
エクステンションによって実装されたロジックが
プロトルの実装したオブジェクトを用意することによって
使えるようになるって理解であってる?

だから同じロジックがenumだろうがclassだろうが
structだろうがプロトコルの実装さえ行えば適用されると。
0551デフォルトの名無しさん2016/03/06(日) 13:09:33.81ID:Pw/hdXu1
>>549-550
それならこれまでとはかなり違うと思う。
「プロトコル拡張」が真髄なわけだね。
0552デフォルトの名無しさん2016/03/06(日) 13:21:08.63ID:tu3qBPH6
super class - subclass の関係を廃止して、従来の super class の機能は protocol extension で記述する
super class - subclass という非常に密な関係性がなくなることで自由度が増す
多重継承が容易
super class 相当の機能を後で入れ替えることができる
全く別の class, struct, enum と共通の機能を使いやすくなる
等々
0553デフォルトの名無しさん2016/03/06(日) 13:40:37.82ID:KcqVY3vA
それってSwiftじゃないとダメな理由あるんだっけ?
0554デフォルトの名無しさん2016/03/06(日) 13:58:12.48ID:Pw/hdXu1
革新性って、それによってプログラムの構造が大きく変わる事だと思うわけよ。
だからタプルとかは割とどうでもよくて、プロトコル拡張によってプロトコル側に実装を書いてしまえば、
採用するクラス側には書かなくて良いっていうのは、結構革新的だと思う。
0555デフォルトの名無しさん2016/03/06(日) 14:03:31.99ID:hl8mFrJC
Swift以外にprotocol extension使える言語ってあるの?
0556デフォルトの名無しさん2016/03/06(日) 14:08:58.87ID:KvcWWJnr
Java 8 の Interface の default 実装が近いと思う
0557デフォルトの名無しさん2016/03/06(日) 14:11:01.35ID:KvcWWJnr
あ、でも Java は後から Interface にメソッド追加はできないから、デフォルト実装の面だけ Protocol extension に似てるのは
0558デフォルトの名無しさん2016/03/06(日) 14:14:09.41ID:j0uQiFMH
どんな革新であっても
それが実務で大きなアドバンテージでなければ
意味ないんだけどな
0559デフォルトの名無しさん2016/03/06(日) 14:21:54.58ID:srxyPbvO
トレイトとかモジュールとか割と似たようなのはどこにでもある
C++の template だって似たような事はできないか
0560デフォルトの名無しさん2016/03/06(日) 14:22:02.25ID:tu3qBPH6
プロトコル指向を取り入れてからは、多重継承相当ができるようになったのと、
class と struct 間で共通のプロトコルを扱えるようになったのがすこぶる便利

まだ「プロトコルから書き始める」ところまでは行ってないけどね
既存の super class を protocol に置き換えてる最中
0561デフォルトの名無しさん2016/03/06(日) 14:22:32.64ID:g15wMUfE
>> 554
採用するクラス側になにも書かなくていいわけじゃなくて、
必要最小限のメソッドを実装する必要はあるでしょ。
0562デフォルトの名無しさん2016/03/06(日) 14:22:44.97ID:NdluMUD6
>>553
「やろうと思えばできなくもない」のと「やりやすい」のとじゃ違う
Objective-Cでもプロトコル指向的な手法はできなくもないけど
やっぱりやりにくいし、いろいろ制限もある
クラスでしか使えないし、Selfを使った制約も使えない
プロトコル拡張みたいな関数をメソッド風に呼び出せない
Comparableの演算子みたいなので両辺の型を一致させるみたいな制約もできない
オブジェクト指向で言えば、C言語でもやろうと思えばできるけど
誰もやってないでしょ。普通にオブジェクト指向言語使うよね。
それと一緒
0563デフォルトの名無しさん2016/03/06(日) 14:36:15.54ID:NdluMUD6
>>561
それは当たり前だろw
言いたいのは
「必要最小限の機能を実装すれば(プロトコルに適合すれば)、
そこから芋づる式に機能が利用できるようになるから嬉しいよね」
という話であって
何も書かなくていい、なんて言ってないw
0564デフォルトの名無しさん2016/03/06(日) 14:56:59.30ID:g15wMUfE
>>554 >>563
結局多重継承と同じじゃん。
ようするにそれを親子関係から切り離したことが革新的ってことなんでしょ?
でもやってることは多重継承だよね。
0565デフォルトの名無しさん2016/03/06(日) 15:05:09.00ID:tu3qBPH6
protocol指向だからと言って、別に多重継承にしなくても良い
0566デフォルトの名無しさん2016/03/06(日) 15:05:51.57ID:KvcWWJnr
> super class - subclass の関係を廃止
> 既存の super class を protocol に置き換えてる

クラス継承がそのままプロトコル拡張の継承に置き換わるもんじゃないぞ
クラスとプロトコルじゃ抽象度合い違うし、プロトコル拡張のメソッドはオーバーライドしたときsuperで呼べないのが継承と違う

本当はスーパークラスでやらずにもっと大きなくくりで抽象化できるはずなのに、今まで言語機能の制約でできなかったものだけやればいい
何でもかんでもプロトコルにしろって話じゃない
0567デフォルトの名無しさん2016/03/06(日) 15:09:00.21ID:tu3qBPH6
>>566
>何でもかんでもプロトコルにしろって話

これはどこから出てきたの?
0568デフォルトの名無しさん2016/03/06(日) 15:10:52.86ID:tTnKJmeM
プロトコルなのに、拡張という名の下に実体を実装しちゃうなんて
本末転倒な気がするんだけど
0569デフォルトの名無しさん2016/03/06(日) 15:13:53.81ID:hl8mFrJC
だから新しい概念なわけで
0570デフォルトの名無しさん2016/03/06(日) 15:15:00.56ID:KvcWWJnr
>>567
>>552
> super class - subclass の関係を廃止して、従来の super class の機能は protocol extension で記述する
0571デフォルトの名無しさん2016/03/06(日) 15:16:47.57ID:tu3qBPH6
何でもかんでもなんて書いてないじゃんw
そもそも UI のクラスは subclass で作るわけだし
去年のWWDC でもそう言ってただろ
0572デフォルトの名無しさん2016/03/06(日) 15:18:20.93ID:tTnKJmeM
>>569
新しさはあるけど本末転倒だと意味がないと思うんだけど
拡張ってある意味一番簡単な進化の方法だけど、ごちゃごちゃする原因にもなると思う
0573デフォルトの名無しさん2016/03/06(日) 15:18:38.82ID:KvcWWJnr
プロトコル拡張は「アルゴリズムの共有」なんだと俺は理解してる
純粋な「アルゴリズム」と呼べるレベルの抽象的なものだけでいい
0574デフォルトの名無しさん2016/03/06(日) 15:26:33.54ID:tTnKJmeM
プロトコルの拡張っていう言葉と定義がおかしい
プロトコルの拡張っていう言葉を使うならJavaでいう
インターフェースとサブインターフェースのような関係
じゃないとおかしいと思うんだけど
実体を実装しちゃうならプロトコルという言葉は使わない方がいいと思うのは
自分だけかな
0575デフォルトの名無しさん2016/03/06(日) 15:40:06.55ID:p9SK+xVI
>>554
プロトコル拡張の効果って上位の方のクラス、例えばNSObjectにカテゴリ拡張でメソッドを実装する感じに似てる?
それでいて部分的に継承利と利用が出来るというか
0576デフォルトの名無しさん2016/03/06(日) 15:47:37.71ID:Pw/hdXu1
>>575
ちょっと違うかな。
NSObjectのカテゴリ(Informal Protocol)だと、サブクラス全部が実行できちゃうし、
継承関係はObj-Cのプロトコル同様、多重継承できるし。
0577デフォルトの名無しさん2016/03/06(日) 15:49:42.93ID:Pw/hdXu1
しかしそう言われてみると、実務的にあまり変わらんかもw
0578デフォルトの名無しさん2016/03/06(日) 15:55:46.34ID:1A4Oc1Ia
結局、Swiftの表面的な構文の新しさに騙されて何か革新的っぽい可能性を感じさせるけど、
実は革命的な何かが起こるほどSwiftに変える合理的な必要性や逼迫した状況はないとも思えてくる
0579デフォルトの名無しさん2016/03/06(日) 15:58:06.73ID:hl8mFrJC
>>574
Swift 1でprotocolとextensionが既にあって、protocol extensionはSwift 2での追加だから
protocolとextensionそれぞれの機能を考えると自然に思えるけど
0580デフォルトの名無しさん2016/03/06(日) 16:08:43.22ID:1A4Oc1Ia
Swiftってソースコードサイズが小さくなることを売りのひとつにしてるとおもうけど、
それって内部処理の透明性がなくなって、結局可読性が落ちる原因にならんかな
シンプルな構文表現と実際実行される処理のトレーサビリティーはトレードオフだと思う
0581デフォルトの名無しさん2016/03/06(日) 16:10:25.61ID:lGppAa1l
swift早くも終わったな・・
0582デフォルトの名無しさん2016/03/06(日) 16:37:41.07ID:b6Djrwpa
プロトコル指向によって抽象化されるのはいいけど
そのトレードオフとしてなんだかわからないことになるというのはあるかも
例えば文字列のindexアクセスとか面食らう。

http://qiita.com/boohbah/items/795501495e1aeab6231e

indexを進めるのにsuccessor()呼びださなきゃいけないとか。
確かにマルチバイトだから +=1 できない気持ちもわからないわけじゃないけど
面食らうよなぁ

ロジックを汎用的に実装するのはいいけど、
使う側には意識しないで済む作りにしてほしい
0583デフォルトの名無しさん2016/03/06(日) 16:46:09.85ID:tTnKJmeM
やっぱりObjective-CとSwiftの二本立てで進んでほしいな
Swiftはプロ向け言語ではない気がしてきた
0584デフォルトの名無しさん2016/03/06(日) 18:36:48.59ID:Z12lYzRW
swift信奉者が望むわかりやすい言語の例

客「コレ、オネチィース」
店「チス、コレッスネ、ウィッス」
客「ウィ」
店「……」ピッピ
客「オウェ!?ウェウェウェ、ウィウィウィ」タタタッ
店「?」
客「コレモ、シャス」
店「ウスウス、オケス」
客「サイセン」
店「イェイェ、ゼンゼ、ジョブッスシ、イースイース」ピッ
客「ウィァ…」
店「ィー…コチャーノコノミャキ、アタタッスカ?」
客「ソッスネ、チンシテッサイ」
店「ワカリャッシタ、アタタッス」バタン
客「…ノウェ」
店「ィェアーット、ゴテンデ、ケーサーゼーニナリャッス」
客「サゼッスカ、ンジャゴセッデッ」
店「ア、ウェイウェイウェイ、マチァッシタ、サンゼッハピーイェンッス、シャイセン」
客「イッスイッス、ゴセッドゾ」
店「ゴセッカラディ-…セーニャッエンノカーシッス」
客「ウィ」パーン!
店客「ウェア!?」
店「…アチー、マーネズワスッタ、ハレッシチィシタカラ、カエテキャッス」
客「ア、イスイス、ジョブッス」
店「シャセンッシタ、アザス」
客「ウェイ」ピロリンピロリン、ガー
店「ザッシター」
客「ア、シートワスッタ、シット!」
0585デフォルトの名無しさん2016/03/06(日) 21:21:22.41ID:lmClW4Ae
型に関して超厳密なくせに型推論推奨って面白い言語だよね^^
0586デフォルトの名無しさん2016/03/06(日) 21:31:07.09ID:j0uQiFMH
人間の思考を落としこむんじゃなくて
こうあると良いかなって理想を落としこんだみたいな言語
0587デフォルトの名無しさん2016/03/06(日) 22:01:14.79ID:bEdy2uoK
>>584
短いけどクソ読みにくい言語の特徴が表現されてる
0588デフォルトの名無しさん2016/03/06(日) 22:30:29.78ID:llwhHDW+
>>585
型が厳密なのと型推論を推奨するのは矛盾しないでしょ
0589デフォルトの名無しさん2016/03/06(日) 22:35:27.79ID:lmClW4Ae
>>588
だったら型指定宣言も必須でいいって思っちゃう
まあ別に指定しても問題ないからいいっちゃいいけど、スタンスとしてぶれてる感がある
0590デフォルトの名無しさん2016/03/06(日) 22:37:48.65ID:lmClW4Ae
リテラルについても何となく中途半端
Double型でも整数リテラル許容したりとか
ゆるいのか厳しいのかよくわからない感じ
0591デフォルトの名無しさん2016/03/06(日) 22:46:08.33ID:bEdy2uoK
コードの短さを大切にしてるSwiftさんがインクリメント記法採用しないとはね
えっ?前置と後置でバグの原因になるって?
そんなやつはプログラマ辞めc(略
0592デフォルトの名無しさん2016/03/06(日) 22:49:01.11ID:lmClW4Ae
いやインクリメントはあるだろ
0593デフォルトの名無しさん2016/03/06(日) 22:53:19.84ID:b6Djrwpa
>>592
3.0でなくなる予定
0594デフォルトの名無しさん2016/03/06(日) 22:56:16.81ID:b6Djrwpa
>>593
https://github.com/apple/swift-evolution/blob/master/proposals/0004-remove-pre-post-inc-decrement.md
0595デフォルトの名無しさん2016/03/06(日) 23:04:48.87ID:bEdy2uoK
Swiftは馬鹿用言語かよっていうね…
0596デフォルトの名無しさん2016/03/06(日) 23:17:44.84ID:bEdy2uoK
諸悪の根元はそのChris Lattnerとかいうべジータおやじだろ
LLVMだけやってりゃいいんだよ
0597デフォルトの名無しさん2016/03/06(日) 23:19:48.91ID:lmClW4Ae
あ、インクリメント消えるのね…
もしかしてfor文とかもC互換表現廃止されたりすんの?
0598デフォルトの名無しさん2016/03/06(日) 23:53:55.09ID:wAphfcJu
C形式の for(int i=0; i<10; i++) みたいなのは消えるんじゃなかったっけ。
実際要らんとは思うが。
0599デフォルトの名無しさん2016/03/06(日) 23:54:15.81ID:KvcWWJnr
>>589
いまどきの静的型付け言語で型推論無い言語の方が珍しいぞ
0600デフォルトの名無しさん2016/03/06(日) 23:58:29.81ID:KvcWWJnr
>>591
https://swift.org/documentation/api-design-guidelines/
・ Clarity is more important than brevity.
コードの短さより明確さを優先するのがSwift流
0601デフォルトの名無しさん2016/03/07(月) 00:00:10.95ID:aG2D9DKB
>>598
その形式は残さないと算術計算できなくなるよw 級数とか。
>>594で要らないって言ってるのはインクリメントでしょ?
0602デフォルトの名無しさん2016/03/07(月) 00:01:21.45ID:be9Auz0b
日本人には
var a: Int = 1(変数a Int型の に1を代入)
より
int a = 1; (int型のaに1を代入)
の方がしっくりくる
0603デフォルトの名無しさん2016/03/07(月) 00:07:51.77ID:be9Auz0b
>>598
その形式は残しておいてほしいよな
これまで長い間いろんな言語がCベースの表現を採用してきたのは
それなりに理由があるんだよな
変えりゃいいってもんじゃねぇんだよ

例えば
for(i = 0; i <= 10; i += 2) {
を書きたいときSwiftらしい書き方だとどうなんの?
+=は残すから
for i = 0; i <= 10; i += 2 {
は残るのかね

だとしたら、1単位のインクリメントのCライクな構文として
for i = 0; i <= 10; i += 1 {
は許されて
for i = 0; i <= 10; i++ {
はだめとかめんどくさい感じになるのかな
0604デフォルトの名無しさん2016/03/07(月) 00:11:53.67ID:aG2D9DKB
>>603
計算ではストライドが1とは限らんからね。
列挙じゃできない計算があるから廃止は無理。
0605デフォルトの名無しさん2016/03/07(月) 00:11:56.89ID:hZ36ZErY
>>591
結局これだろ
前置のインクリメントなんてややこしいもん使わんからやるなら前置だけ排除してほしいわ
0606デフォルトの名無しさん2016/03/07(月) 00:43:13.82ID:be9Auz0b
>>604
だよね…

Swiftらしい構文として
for var i in 0..+2..10 {
とか?
いまいちいい構文が思いつかない
どうすんだろう…
やっぱり
for i = 0; i <= 10; i += 2 {
の形式は残す感じかね

Cのfor構文は、ループ継続条件としてのwhile的要素を持つという柔軟性を
もちながら、それをwhile構文より簡潔に書けるというところに価値があると
思うんだけどな

Javaが比較的新興言語であったにもかかわらずここまでシェアを獲得できたのは
極力Cベースの構文を維持したからだと思うのだが…

>>605
それは解としてありな気がするな
インクリメント、デクリメントの前置、後置でバグらせちゃうほどアホなプログラマを
救うことに対する代償の方が多い気がしてならない
0607デフォルトの名無しさん2016/03/07(月) 00:50:35.86ID:ZVHlHc0A
あかん、やっぱりObjective-C 3.0としての正常進化が正解だとしか思えん
0608デフォルトの名無しさん2016/03/07(月) 01:20:27.34ID:be9Auz0b
こんな感じの表現の方がまだありかな
for var i in 0, 2...10 {
for var i in 0, 2..<11 {

増分(減分)を変数にしたいときでもあまり違和感がないかも
var x = 2
for var i in 0, x...10 {

だとしても例えば
for(i = 0; i >= -10; i--) {
をfor inでは表現できないんだよな
いろいろめんどくせーな

つーか、Chris Lattnerさんはこんなことばっかり考えてんだろうなぁ
ClangとかやってんだからObjective-Cの進化の方を考えてほしいわ...
0609デフォルトの名無しさん2016/03/07(月) 01:43:18.50ID:aG2D9DKB
>>608
ちょっと見てみたら、2.0からこんなのあるみたいだよw

for index in stride(from: 5, to: 1, by: -1) {
println(index)
}
0610デフォルトの名無しさん2016/03/07(月) 02:03:55.13ID:be9Auz0b
>>609
えー?w
自分で言うのも何だけど、それだったらまだおれの方が
構文考えるセンスある気がしない?w
ありえんわ

ただ、さっそくXcode 7.2.1のPlaygroundで試してみたけどエラーが出て使えなかった
使えても使う気になれないほどめんどくさすぎていけてないけど

もうやだこの言語...
0611デフォルトの名無しさん2016/03/07(月) 04:09:58.50ID:aG2D9DKB
でもenumとswitchに文字列を使えるのはいいよな。
Obj-Cだと定数シンボルに英数字しか使えないから長くなる。

switch (character) {
case “#”:
case “{”, “}”:
case “@”:
default:
}
0612デフォルトの名無しさん2016/03/07(月) 04:15:37.64ID:SLxpGZR7
swiftって変な書き方やり放題でswiftが分からないとまったく読めないのが欠点
obj-cならなんとなくでも読める
0613デフォルトの名無しさん2016/03/07(月) 04:24:55.08ID:aG2D9DKB
あまりトリッキーなのはダメだよね。
0614デフォルトの名無しさん2016/03/07(月) 09:06:43.38ID:Oy7ADESA
>>609
もうBASICのFOR文をそのままパクればいいよww
0615デフォルトの名無しさん2016/03/07(月) 09:10:46.32ID:PTVUWsE1
forは別にこれで良くないか

( 0 ..< 100 ).forEach {
print($0)
}
0616デフォルトの名無しさん2016/03/07(月) 09:17:57.74ID:jiHRKur4
Swift、勉強すればするほどクソさに気付く
だめだろこの言語
Chris Lattnerのセンスがない
0617デフォルトの名無しさん2016/03/07(月) 09:23:18.45ID:gjaDJoXT
可読性云々の問題ではないレベルで無駄にCっぽくないように構文変えてるのがダメだわ
0618デフォルトの名無しさん2016/03/07(月) 10:00:10.98ID:7Rqg7q5d
>>609,610
stride(from: to: by) はSwift 1.0の書き方

Swift 2.0からIntやDoubleがStrideableプロトコルになったから
5.stride(to:1, by:-1)
0619デフォルトの名無しさん2016/03/07(月) 10:26:26.28ID:ae84SU+w
もうwhile使えばよくね?
0620デフォルトの名無しさん2016/03/07(月) 11:17:31.16ID:gjaDJoXT
ストライドの列挙作るのにわざわざメソッドとかやばいな…
ほんともう、whileと+=とかの方がマシなレベルだな
forがなくなるとか言ってた人いたような気もするけど、これのこと?
0621デフォルトの名無しさん2016/03/07(月) 11:53:05.30ID:7Rqg7q5d
strideが必要になるのは変なイテレーションしたい時だけ
大抵は単純なfor-eachかenumerate()かrangeで事足りる

let arr = ["a", "b", "c"]

// インデックスがいらない場合
for val in arr { print(val) }

// インデックスも欲しいなら
for (i, val) in arr.enumerate() { print("¥(i):¥(val)") }
for i in 0..<arr.count { print("¥(i):¥(arr[i])") }

// 1つ飛ばしなど
for i in 0.stride(to: arr.count, by: 2) { print("¥(i):¥(arr[i])") }
0622デフォルトの名無しさん2016/03/07(月) 12:57:44.08ID:AqI6//Ed
>>620
for ;; {}記法が無くなるのは知っていたけどi++まで無くなるのは初耳だった。
0623デフォルトの名無しさん2016/03/07(月) 16:06:11.91ID:1SrloHC9
Cライクなforはあまり好きではないんだよね
構文として美しくないというか、複雑というか
個人的には>>621の書き方の方が好きかな
すべてを離散的に表現できて良いというか

ただ、Cライクなforをなくして、
処理速度が問題になる場面が出てこないのか気になる
0624デフォルトの名無しさん2016/03/07(月) 16:09:10.97ID:akZE6dMV
for inならObj-Cでも出来るんだけどなあ
0625デフォルトの名無しさん2016/03/07(月) 16:52:41.12ID:j36Dcwjh
拡張forは前スレで話題になったが

問題は、C-style for削除で拡張forしか許さず性能が落ちること
対する反論は、そんなセンシティブな性能を気にするヤツはswift使うな
0626デフォルトの名無しさん2016/03/07(月) 17:29:24.14ID:7Rqg7q5d
Cスタイルのfor文は一般的に性能いいもんじゃないよ
ループごとにCPUの苦手とする条件分岐をしないといけないから
Objective-CでもFast Enumerationと呼ばれてるだけあってfor-inの方が速い
単純なコードならCスタイルのfor文でもコンパイラが最適化してくれたりするけど
0627デフォルトの名無しさん2016/03/07(月) 17:57:50.19ID:aG2D9DKB
条件分岐のコストはほとんど影響無いよ。高速列挙だって内部的に同じ事やってるから。
高速列挙が速いのは、同じ事をCのfor文で書いた場合、ループ内でobjectAtIndex:を呼ばなきゃならないため。
単純にループ回すだけならCのfor文の方が速い。あたりまえだけど。
0628デフォルトの名無しさん2016/03/07(月) 18:01:36.90ID:itqi+UYL
速度議論したいならキャップチャ貼ってくれ
どっちが早くても読みやすい拡張for使うけど
0629デフォルトの名無しさん2016/03/07(月) 19:37:02.59ID:j36Dcwjh
反論と表現したのが悪かったか
結論な、嫌なら Swift使うな、がオチだたはず
0630デフォルトの名無しさん2016/03/07(月) 20:18:51.25ID:X8YwrOCo
もう別にC/C++ と共存できる swift で十分だと思うよ‥
0631デフォルトの名無しさん2016/03/07(月) 20:37:36.60ID:gjaDJoXT
もうC, C++と共存できてるObjective-Cのままでいいと思うよ…
0632デフォルトの名無しさん2016/03/07(月) 20:42:30.80ID:/Ug+LzYA
Swift作ってんのは素人なの?ってくらいなんか構文も欠陥がありそう
はやくも3.0とか言ってるしころころかわりすぎてやばくね?
0633デフォルトの名無しさん2016/03/07(月) 20:50:10.63ID:RjJY8KVS
>>632
言語仕様がコロコロ変わってんのは、おそらく当面は業務で使ってもらう気はないってことなんだろう。
商用アプリを作る方々には枯れ切ってあらかた膿も出し切ったObjective-Cがありますんで、ってことで。

Swiftの方は、取り敢えずいろんな要望を聞きながら面白い言語(「画期的な言語」という意味ではない)を
作ろうぜってノリで楽しんでるだけだよ、おそらく。
まーいずれはSwiftの仕様も安定させてObjective-Cから乗り換えてもらうようにしていくつもりなんだろうとは思うが。
0634デフォルトの名無しさん2016/03/08(火) 00:59:34.89ID:sN4lvfZc
swift終わったな
0635デフォルトの名無しさん2016/03/08(火) 01:03:11.75ID:rpuQJ8JV
今年のwwdcでは話題にもならないな・・
0636デフォルトの名無しさん2016/03/08(火) 01:07:34.26ID:UHO1fSnV
Swift、コロコロ仕様変更されるわ、構文はクソだわ、数年後消えてそうで先が思いやられるわで勉強する気なくすわ…
0637デフォルトの名無しさん2016/03/08(火) 01:32:30.79ID:yyX+riJl
人柱覚悟がないなら勉強しない方が幸せだ

2.x系後半は仕様変更落ち着いてるけど1.xから2.1くらいまでは阿鼻叫喚だったからな
このスレはもう笑うしかないって笑ってた
0638デフォルトの名無しさん2016/03/08(火) 01:37:38.14ID:GdFfj4MN
ちなみに2から3の互換はどうなる予定なの?
0639デフォルトの名無しさん2016/03/08(火) 02:25:14.84ID:5Jvv0cNg
詳解Swift2.0改訂版買って損したよ
まだ変わるんだろうし、今後もあるのかも不安になるほどいけてない言語だと思った
無理して新しいものを作ったらこうなるっていう典型例じゃない?
0640デフォルトの名無しさん2016/03/08(火) 03:20:32.50ID:yyX+riJl
>>638
github.com/apple/swift-evolution

Out of Scope
Full source compatibility: Swift 3.0 will not provide full source compatibility. Rather, it can and will introduce source-breaking changes needed to support the main goals of Swift 3.0.

2.2, 2.3でビルドエラー出ない仕様変更ばかりで不安だったけど、Swiftはこうでないとな
C-style forや、++,--の仕様削除もEvolutionにあがってる

>>639
アップルに踊らされるとこうなるって典型例ではあるな
GoogleのGoやMozillaのRustなんかの先行例があるのに、なぜ食いついたし
0641デフォルトの名無しさん2016/03/08(火) 07:21:36.27ID:DEBXtPtm
C++みたいに互換性重視しすぎて
変な位置にfinal置くとかになるよりは
Swiftの方が後腐れ無くてよい
ゴリゴリ仕様変わるって言っても
書いたコード全部パァになるほどじゃないんだし
コンパイルエラーを地道に潰していけばいい話
0642デフォルトの名無しさん2016/03/08(火) 09:19:28.08ID:4iOD9H96
数年後まだSwiftがあったら使ってみるでいいわ
使用を強制する言語はちゃんとセンスあるやつが考えないとマジで終わる
0643デフォルトの名無しさん2016/03/08(火) 09:23:41.55ID:cozSVSK+
swiftは書きにくい上に読みにくい
スクリプト言語かよってくらいに
0644デフォルトの名無しさん2016/03/08(火) 09:57:25.48ID:qYSmvnZa
5年後・・
昔さーAppleゴリ推ししたSwiftってのがあってな・・
0645デフォルトの名無しさん2016/03/08(火) 10:14:16.82ID:GdFfj4MN
>>643
スクリプターを呼び込むのも目的の1つなんじゃないの?
0646デフォルトの名無しさん2016/03/08(火) 10:29:17.08ID:yyX+riJl
Swift発表から2年後、、、
今さー Appleに踊らされたアホと、未だにゴリ押しだ!って連投するアホがいてな、、、

>>643
スクリプト言語の手軽さとコンパイラ言語の性能が合わさって最強に見える
って昔言ってたよ

実際、開発/発表の頃は JavaScriptが席巻してたからその層からの流入を期待したんだろう
0647デフォルトの名無しさん2016/03/08(火) 10:29:36.43ID:K4M3oHO3
俺はSwift使っておまいらの数年先行っとくわw
0648デフォルトの名無しさん2016/03/08(火) 10:58:38.34ID:yyX+riJl
意識高いなw
ついでと言ってはなんだが、3.0を使った感触聞きたい
ちょっと頑張ってみてくれよ(他人任せ
0649デフォルトの名無しさん2016/03/08(火) 11:04:33.06ID:SKnphZW3
3.0は6月頃のWWDCでβ、9月10月頃にリリースだろ
0650デフォルトの名無しさん2016/03/08(火) 11:14:32.34ID:K4M3oHO3
3.0人柱になるぜw
2.0のときの人柱プロジェクトでもう一回炎上したるわw
0651デフォルトの名無しさん2016/03/08(火) 13:43:39.25ID:SiXffVUR
人柱にバージョンがあるのかと思った
0652デフォルトの名無しさん2016/03/08(火) 14:32:39.01ID:7sBKHua9
>>643
ネイテイブコンパイルができる軽量言語は嬉しいけどな
0653デフォルトの名無しさん2016/03/08(火) 15:30:39.31ID:8CR/oZ/l
文化を調和させる
http://niwatako.hatenablog.jp/entry/2016/03/02/160011

これ面白かったclassを使わずにstructを使って関数型のような
実装にすると。プロトコル指向もごちゃごちゃ言わず
実際の例を見るとしっくり来た。

プロトコル指向ってstruct,enumとかでもオブジェクト指向できるでしょ
ってだけな。Goはどんな型でもメソッド生やせるしRubyは全部オブジェクトだし
そっちのほうが明らかに言語としていいけど、
swiftってまず最初に既存のフレームワークがあって
それを残したまま、拡張できるようにがんばってる言語なんだな。

ちょっとずつ改変していってどっかで下位互換を切り捨てる。
0から作った言語のほうが綺麗だけど、
swiftは現実的。過渡期でアンチが多いのも納得。
0654デフォルトの名無しさん2016/03/08(火) 15:40:41.30ID:yyX+riJl
こういうことをSwiftだから(ドヤァってやってるとマジモンの意識高い系だなぁと思う
C++でも同じこと出来るし、やってる人はいるわけだしなぁ

そんなことより愉快痛快なLL文法でこんな遊べるよ!のプレゼンが欲しい
0655デフォルトの名無しさん2016/03/08(火) 15:42:55.42ID:eH6rdSRK
もうさあ、XamarinでC#使った方が何かと便利
0656デフォルトの名無しさん2016/03/08(火) 15:54:02.57ID:8CR/oZ/l
>>655
Xamarinマイクロソフトに買収されたしたしかにいいかも。
んでC#で書くとどんだけいい感じに書けるの?教えて下さい
0657デフォルトの名無しさん2016/03/08(火) 16:08:18.30ID:yyX+riJl
Windows主体でギリギリAndroid, iOSで使えるC#
Mac, iOS主体でギリギリLinuxで使える Swift
似たりよったな感じ

マルチプラットフォームならgoやrustの方が手広いぞ
それらの方が絶対的に良いかと言うと良いとは言えないが
0658デフォルトの名無しさん2016/03/08(火) 19:28:38.24ID:uec+GJu8
>>654
そもそも各機能や長所に関しては
別にobj-cを拡張すりゃ済むことじゃん
程度の話でしかないしなあ
括弧嫌悪症とか全部.で繋げたい人ならともかく
0659デフォルトの名無しさん2016/03/08(火) 19:44:43.85ID:4qIHSBJq
>>653
Swift文化なんて醸成されていないのに、「こういう書き方はObj-CやJavaにはできませんよね(ドヤァ」を文化の調和とかいうから敵が増える

やってることは一般的なプログラミング原則の実践に過ぎないのだから、
「Swiftのよさ」ではなく、「プログラミング原則の正しさ」から初めて、
それを実現する上でSwiftという言語は筋が良いという方向に話せばいいのにバカしかいないんとちゃう?
0660デフォルトの名無しさん2016/03/08(火) 20:10:22.85ID:8CR/oZ/l
>>659
swiftは言語としての筋はあんまり良くないんじゃない
だからプロトコル指向というテクニックを使って
他の言語が普通に出来てることを何とかしようとしているわけで。

関数型になりたいswiftって感じ
なんでクライアント用言語が関数型になりたいんだろう。
0661デフォルトの名無しさん2016/03/08(火) 20:29:30.43ID:4qIHSBJq
>>660
言語というかプラットフォームとしての筋が悪いけど、布教する上での話の作り方が頭悪いって感じ
これじゃなびくのは信者だけ

プロトコル指向ってただのインターフェース指向でテクニックでもなんでもないよね
んで、なんでインターフェース指向にするかというとモジュールを疎結合にしたいから
それには実装のバイナリと、インターフェースのバイナリを独立させる必要がある(依存性が強いと制御の反転もできない)
Swiftは3.0までABIが固まらないから、この辺がどうしようもなく弱い感じで、
スクリプターにはいいけど、かっちりしたアーキテクチャを考えるにはまだ不足しているものが多い
0662デフォルトの名無しさん2016/03/08(火) 22:35:44.52ID:Yb9eHKk4
なぜObjective-C 3.0ではだめなのか、いまだに理解できん
0663デフォルトの名無しさん2016/03/08(火) 23:15:16.96ID:SKnphZW3
Objective-C使ってりゃいいじゃん
0664デフォルトの名無しさん2016/03/08(火) 23:39:11.44ID:DEBXtPtm
Swiftを出したのは開発者の獲得で競争力を確保するためでもあるんだと思う
2011年にKotlinが発表されて、Androidの開発に激震が走るのは目に見えていた
KotlinとObjective-CじゃKotlin使うわな
開発者をAndroidに取られないためにもSwiftは必要なんだよ
0665デフォルトの名無しさん2016/03/09(水) 00:13:58.92ID:eJyjKhu5
Cocoa Java復活させりゃええやんじゃあ
0666デフォルトの名無しさん2016/03/09(水) 03:00:51.71ID:6uZQGjqP
http://hayabusa6.2ch.net/test/read.cgi/pc2nanmin/1439353617/216
        ↑ ↑ ↑  ↑ ↑ ↑
0667デフォルトの名無しさん2016/03/09(水) 03:42:20.09ID:wrVe4OoS
激震が走るのは目に見えていた(笑)
0668デフォルトの名無しさん2016/03/09(水) 08:55:25.79ID:q5DHV9sD
groovyの焼き直しながっかり言語だったけどな、、、
IntelliJ(jetbrains)程度のブランド力では盲信する人はでなかった

まあAppleのブランド力でもObj-C信仰から離れられない人もいるので言語業界は難しいね
Swiftは良くはないが、Obj-C至上と信じてアンチするのはもはや信仰
0669デフォルトの名無しさん2016/03/09(水) 09:07:08.12ID:vHYGdF7A
開発者に使わせる言語なんだから質を求めるのは当然だろ
0670デフォルトの名無しさん2016/03/09(水) 09:35:30.98ID:YnZzi6/L
>>664
Kotlinとか新規に言語つくるくらいだったら
RubyMotionでいいんじゃね。
マルチプラットフォームだし
0671デフォルトの名無しさん2016/03/09(水) 11:17:37.08ID:odxAMKEp
>>664
激震走ったのは激震走った人だけというオチ
0672デフォルトの名無しさん2016/03/09(水) 11:47:00.61ID:VjFIrQgn
激震走ったwww
これは間違いなく流行るwww
マシン語が透けて見えるwww
CPUの歓声が聞こえてきそうだwww

あとなんかあったっけ?
0673デフォルトの名無しさん2016/03/09(水) 11:58:43.96ID:OSbes0PK
古舘かよw
0674デフォルトの名無しさん2016/03/09(水) 12:11:42.16ID:q5DHV9sD
>>670
perl, ruby, python, lua, c#, java, obj-c, kotlin, nim, swift, go, rust, c/c++
全部マルチプラットフォームだしどれでもいいな
0675デフォルトの名無しさん2016/03/09(水) 12:20:21.49ID:q5DHV9sD
iOSに絞って、そこにJSスクリプト層を引き込むためのSwift

マルチプラットフォームとかAppleは真面目に考えてないから
他言語はクロスコンパイルまで実現してるけど、SwiftはせいぜいLinuxのホストコンパイルが精一杯
0676デフォルトの名無しさん2016/03/09(水) 13:18:24.73ID:uBrXNYcj
そんなことより AlphaGo vs Lee Sedol 観ようぜ
コンピュータ囲碁界に激震走るぞ
0677デフォルトの名無しさん2016/03/09(水) 13:28:46.27ID:PbitPRWF
>>675
マルチプラットフォームって言ってもWindowsやAndroidまではそうそう発展しないだろうな、、
Foundation以外もないと現実問題使えないし、Appleの社員も他のプラットフォームまではあまり面倒みないだろうから有志が頑張るしかない
0678デフォルトの名無しさん2016/03/09(水) 15:39:53.32ID:q5DHV9sD
BSDへの移植は有志が頑張ってたな
自分はcygwinで...と思ったけどアホらしくてやめた

OSS公開前: (信者)LLVMだからどこでも動くからwww Swiftサイコー
OSS公開: (アポー)コンパイラと一部コアライブラリ公開な、Linuxならビルド通るから
OSS公開後: (信者)...
当時の信者の声が今はもう懐かしい

swift-llvmレポジトリも公開されてるけど
LLVMの先のバイナリ化の部分をポーティングしたらクロスコンパイル通るのかねぇ
0679デフォルトの名無しさん2016/03/09(水) 21:14:14.48ID:mMIvtfL4
Chris Lattner氏が語る - Swift 3でのCocoa命名変更
http://www.infoq.com/jp/news/2016/03/lattner-swift3-renamification
0680デフォルトの名無しさん2016/03/09(水) 21:45:33.80ID:eJyjKhu5
名前からNSが消えるのか
ついに聖域を犯したな
Jobsがいればなぁ、こんな体たらくにはなってなかった
0681デフォルトの名無しさん2016/03/09(水) 21:55:32.90ID:uBrXNYcj
NSとか名前空間ないゆえの妥協の産物だからな
今時こんなダサいことやってる言語他になかったから消えて当然
0682デフォルトの名無しさん2016/03/09(水) 21:55:45.72ID:vHYGdF7A
これまでジョブズが築き上げてきたものが消えていく
悲しさしかない…
0683デフォルトの名無しさん2016/03/09(水) 22:01:55.08ID:q5DHV9sD
ジョブスを悼みすぎ
Swiftアンチはアポー信者じゃなくジョブス信者なのかw

小さな(笑)ランタイムに別モノとしてぶっこむのか、ラッパーとしてぶっこむのか
もしくは、コンパイラがコンパイラ時に推論するのか
どうするのかが気になるな

コンパイラでやってくれれば性能落ちなくて良いのだが
0684デフォルトの名無しさん2016/03/09(水) 22:29:45.06ID:vHYGdF7A
ジョブスじゃなくてジョブズね…

世界初のWebブラウザを産み出したObjective-Cよ
もう多くの人に使われることはなくなるのだな
今までありがとう
そしてさようなら…
0685デフォルトの名無しさん2016/03/09(水) 22:38:13.16ID:eJyjKhu5
(´;ω;`)
0686デフォルトの名無しさん2016/03/09(水) 23:14:28.46ID:VjFIrQgn
Swift 3.0は互換性無くなるのかよ。
全力でSwift布教活動してた俺の立場は無いじゃねえかよ。
0687デフォルトの名無しさん2016/03/09(水) 23:49:33.69ID:q5DHV9sD
2.0 OSS化の時からswift-evolutionで明言されてたろ...
どんな間違った情報を全力で布教してたのか、小一時間問いたい
0688デフォルトの名無しさん2016/03/09(水) 23:55:28.77ID:uBrXNYcj
1.xの頃から構文変わる時は同時に変換ツールも必ず出すって明言してるし
実際にそうしてきてるから特に問題にならん
0689デフォルトの名無しさん2016/03/10(木) 00:30:12.63ID:5haZlxCt
Swiftなんて先進気取りの物好きしか評価してねえからなあ
イラン機能ばっか便利便利言ってる変わり者ばっか
0690デフォルトの名無しさん2016/03/10(木) 01:36:26.63ID:Oqr06JvI
>>688
Xcodeのその機能、ちょいちょいバグってるけどなw
一発変換で問題出るから、ようやく最近 swift 2.x に移植されたPJがあったわ
問題解決するの面倒だから1.xのままでいいやって放置されてた模様
0691デフォルトの名無しさん2016/03/10(木) 05:42:32.94ID:oSy7KrO0
つまり機械的にNSを取り除く仕様になるの?
obj-cでは相変わらずNSXXXでアクセスするまま?

暗黙的に変換する行為は正直やめてほしい。
obj-cのインターフェースをswiftから呼び出す時とかわけわからん時あるし
0692デフォルトの名無しさん2016/03/10(木) 07:04:58.81ID:o/Qe45D5
Chris Lattnerは失敗できないから意地でもSwiftを導入しようとするだろう
そういう政治的な力が働いたプロジェクトはどこかで歪みを生じ、
出来上がったものは合理性を欠いたものになるだろう

Swiftは終わりの始まり
0693デフォルトの名無しさん2016/03/10(木) 07:21:13.27ID:HTKaLGc1
他人のswiftなんか読めたものじゃない
最悪クソ言語
0694オマケにソース非互換、Swift4を待とう2016/03/10(木) 07:25:11.35ID:xbid3YeQ
Swift 3がソース非互換になるというLattner氏の発言に対しては,いくつかの不満の声も上がっている。氏自身,“開発者目線”でのSwiftの変更を長く続けられないことは認識しており,Swift 3からSwift 4への移行は今回よりも簡単なものになることを望んでいる,と述べている。
0695デフォルトの名無しさん2016/03/10(木) 07:28:15.00ID:HTKaLGc1
NSプレフィックスが消えたらApple開発やめる
そもそもジョプズの居ないAppleに魅力ないな
0696デフォルトの名無しさん2016/03/10(木) 07:33:39.01ID:d/UXsx9Y
ジョブズがいたら、こんなChrisとかいうやつの自己満言語に付き合わされることもなく、
Objective-C 3.0として正常進化してたんだろうな
Apple終わったなまじで
0697デフォルトの名無しさん2016/03/10(木) 07:34:46.20ID:xbid3YeQ
NS無しライブラリもきっとバグだらけだろう。。。
iOS9以降の可能性が高い。。。
最低後2年間はiOS8市場があるだろうし。。。
0698デフォルトの名無しさん2016/03/10(木) 07:40:09.35ID:HTKaLGc1
話捏造してもゴリ押ししてきそうだよな・・
「Swiftはジョブズの夢だったんです・・」とかw

ところでSwift化するメリットって何?
絶対にクラッシュしなくなるの?
まさかオナニー?
0699デフォルトの名無しさん2016/03/10(木) 07:55:59.32ID:WQjjuOf2
アンチ絶賛ジョブズ詐欺中w
0700デフォルトの名無しさん2016/03/10(木) 08:02:34.07ID:Oqr06JvI
オプショナルしか突っ込めず、なりを潜めたかと思ったら
ジョブズマンセー、ラットナー氏ねで息吹き返してワロス

雨後の竹の子みたいなレス数に笑うわwww
0701デフォルトの名無しさん2016/03/10(木) 08:04:50.49ID:1rjuU7Zr
Swiftに親を殺された奴がスレにはたくさんいるっぽい。
0702デフォルトの名無しさん2016/03/10(木) 08:07:09.39ID:o/Qe45D5
突っ込むもなにもSwiftにかえる合理的な理由がない
あるのは政治的な理由だけ
0703デフォルトの名無しさん2016/03/10(木) 08:14:03.11ID:HTKaLGc1
ここまでをまとめると

obj-cで必要十分!swiftはいらない

でおk?
0704デフォルトの名無しさん2016/03/10(木) 08:59:31.64ID:Oqr06JvI
おkおk、だからもう帰っていいよww

>>702
政治は金を生むから良し悪しおいといて、使うと美味しいんだよ
金を産み出さないなら使ってねーよ
0705デフォルトの名無しさん2016/03/10(木) 09:01:30.62ID:xbid3YeQ
優れているから使いたいんじゃなくて、swiftで金儲けなのかよ・・
0706デフォルトの名無しさん2016/03/10(木) 09:15:33.95ID:d/UXsx9Y
C知ってればすぐ使えたObjective-CよりSwiftの方がいいとはどういうことだろうね
0707デフォルトの名無しさん2016/03/10(木) 09:21:26.52ID:Oqr06JvI
>>705
当たり前だろ、、、
アポーはネズミーランドと同じく夢を売ってるんだから
iOSしかりSwiftしかり、夢を売る側に立たないと単に踊らされるアホじゃん、、、

>>706
Obj-c without Cって公式マニュアルの頭で言ってる
ハナからCプログラマなんか相手する気ない
JS層を踊らせるための言語だから、そんな層は要らない
0708デフォルトの名無しさん2016/03/10(木) 09:25:45.58ID:xbid3YeQ
話題作りで株価操作か・・遊ぶならkotlinかな・・
0709デフォルトの名無しさん2016/03/10(木) 09:29:20.31ID:xbid3YeQ
.mの中にCの関数を普通に書ける便利さと言ったら
意識低くていいよな・・
0710デフォルトの名無しさん2016/03/10(木) 11:44:55.94ID:WQjjuOf2
SwiftでもC関数使えるんですが
0711デフォルトの名無しさん2016/03/10(木) 12:06:37.29ID:Oqr06JvI
.mmの中にC++の関数を普通に書ける便利さと言ったら
意識低くていいよな・・

と好意的に解釈してあげる、実際SwiftからC++叩けないの不便だし
ただ、考慮足りないのに声高な辺り、アンチの方が意識高い系だと思う
0712デフォルトの名無しさん2016/03/10(木) 12:08:26.01ID:OLUNjZSr
使えるのと使いやすいのは違うでしょ。

let p = UnsafeMutablePointer<CChar>().alloc(4)
strcpy(&p.memory, "hoge")

char *p = alloc(sizeof(char) * 4);
strcpy(&p, "hoge");
0713デフォルトの名無しさん2016/03/10(木) 15:53:03.02ID:8Cw/BeOR
allocした領域の5バイト目を破壊してる…
0714デフォルトの名無しさん2016/03/10(木) 15:59:40.16ID:AmUGSUkd
アンチSwiftな人はKotlinはどう思ってるの?
スマホアプリ言語はこの似たような言語が主流になりそうだけども。
0715デフォルトの名無しさん2016/03/10(木) 16:46:04.73ID:JMEKeXJh
こうやって易々と使ってバグを埋め込まないようにUnsafeな型を明言するのは良いことだな
同じようにARC管理外なことを忘れるヤツもいそう

rustからパクったunsafeなら、それに倣ってブロック管理して欲しかったが
あれは実現難しいので仕方ないね
0716デフォルトの名無しさん2016/03/10(木) 20:55:40.02ID:kpMAPa+Z
まあここはSwiftスレだから、いかにSwiftが素晴らしい言語かを力説するところです
Swift最高!!!
0717デフォルトの名無しさん2016/03/11(金) 00:18:31.92ID:VDJql5I8
久しぶりに逆振りの煽り来た
0718デフォルトの名無しさん2016/03/11(金) 02:17:53.91ID:RA7SR1be
>>717
え?>>716は嘘なの?
0719デフォルトの名無しさん2016/03/11(金) 02:38:10.78ID:thuZ5Z05
ポジションとしては「東京チカラめし」
0720デフォルトの名無しさん2016/03/11(金) 04:15:09.66ID:n1cOj2RG
>>714
アンチじゃないけど、Kotlinはないだろ
悪い意味で枯れたKotlinを今更やってるのはSwiftで遊んでる層だけだよ
Kotlinで遊ぶなら同じくSwiftでも遊んでると思う
0721デフォルトの名無しさん2016/03/11(金) 09:28:14.53ID:U/yGmrJD
林 伸夫のLong and Winding Mac
盛り上がるSwiftのエコシステム。「try! Swift」に参加して、熱気に圧倒された
http://itpro.nikkeibp.co.jp/atcl/column/15/051100119/030800020/
0722デフォルトの名無しさん2016/03/11(金) 09:35:13.41ID:0f42Yr40
びっくりするほど中身ない記事だな
まだ意識高い系の>>653の方がマシだった
0723デフォルトの名無しさん2016/03/11(金) 11:44:53.90ID:kWA4jyXp
この手の記事は文系向けにそれらしいこと言てるだけだから仕方ない。
所詮はSwift流行ってほしいと思ってる側の記事。
本当のSwiftを知りたいなら2chやソーシャルメディアの書き込みを覗くといい。
0724デフォルトの名無しさん2016/03/11(金) 12:00:11.62ID:ijy4osd+
ここはアンチと煽りがヒャッハーしてて、 Mac板は閑古鳥が鳴いてるなw
Swift信者がどこにもいない悲しさよ

Apple信者がObj-CもSwiftも共に素晴らしい
と前スレでは1,2人いたけど、思いの外Apple信者はObj-C信仰のままなんだなぁ
0725デフォルトの名無しさん2016/03/11(金) 12:18:31.03ID:AvrJEqMa
あることを実現したいとき自分がやり方の分かるObj-CがSwiftよりも手に馴染むというのは分からなくもない
Swiftも進化していけば良くなるんじゃないの?
0726デフォルトの名無しさん2016/03/11(金) 12:19:21.16ID:SMAEajhb
信者とか信仰とかいう話で片付けたら何も良し悪しの議論が進まないと思うが
0727デフォルトの名無しさん2016/03/11(金) 12:26:55.61ID:yIfHCu/l
objcの良しとswiftの悪しをobjc信者が垂れ流しに来るから仕方ない
0728デフォルトの名無しさん2016/03/11(金) 14:43:25.06ID:tt4Vt7x5
do {
try Swift()
} catch {
print(
0729デフォルトの名無しさん2016/03/11(金) 14:44:30.46ID:tt4Vt7x5
使い物にならない ←いまココ
0730デフォルトの名無しさん2016/03/11(金) 14:47:11.83ID:ijy4osd+
ここに来てるObj-C好きはSwiftの一切を認める気ないから仕方ないね
議論する気なくObj-C至上と言うだけだもの

>>725
それは言語の進化じゃなく、開発者側の慣れの問題じゃね?
自分もBetaや1.xの頃はObj-Cでこうする場合、Swiftだとどうするんだよ
って言ってたが、いい加減慣れた
0731デフォルトの名無しさん2016/03/11(金) 14:49:53.86ID:AvrJEqMa
>>730
Obj-Cだって20年前にNeXTに載っていたときから今の形だったわけじゃなく
ライブラリや糖衣構文なんかが出たりで書きやすくなっていったでしょ?
0732デフォルトの名無しさん2016/03/11(金) 14:50:13.25ID:3hX0AJzt
結局冷静に考えるとObjective-C 3.0で問題ない
0733デフォルトの名無しさん2016/03/11(金) 16:34:16.17ID:SMAEajhb
session.dataTaskWithRequest(request) { (data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in
}.resume()
のcompletionHandlerが見づらいのは俺だけ?慣れかな?
0734デフォルトの名無しさん2016/03/11(金) 16:44:29.74ID:NegWeRdk
引数の型を明記するとより読み辛いな
それは省略出来るとして、3.0でこんな表記になるんじゃなかったか
session.dataTask(request) {
(data, repose, error)
in
}.resume()
0735デフォルトの名無しさん2016/03/11(金) 19:25:04.48ID:8BkLfnVH
なんでも省略すりゃいいってもんでもないよなあ
0736デフォルトの名無しさん2016/03/11(金) 19:35:55.93ID:kdcYkQND
2.2表記準拠でもこんな感じか
型推論あるから引数型は意味ないし、-> Void は無駄だから省略する
session.dataTaskWithRequest(request) {
(data, repose, error) in
}.resume()

Objective-Cの文化で考えなければ適切な省略だと思うけどな

Objective-C, Cocoa APIは冗長に書くことを美徳としているから、Swiftの省略が美しく見えないのは理解できる
しかし、それが気に入らないと特攻してくるObj-C信者の思考は理解できない
0737デフォルトの名無しさん2016/03/11(金) 21:13:18.74ID:DjcAq1W2
省略することがすなわちバグを生みにくい表現であるとは限らない
プログラミングするのは人間である以上、冗長性というものはある程度必要であり
単に長くなることによるタイピングコストはIDEの入力補助機能で補えばいい
0738デフォルトの名無しさん2016/03/11(金) 21:13:20.66ID:3hX0AJzt
省略することがすなわちバグを生みにくい表現であるとは限らない
プログラミングするのは人間である以上、冗長性というものはある程度必要であり
単に長くなることによるタイピングコストはIDEの入力補助機能で補えばいい
0739デフォルトの名無しさん2016/03/11(金) 21:23:37.61ID:uCl9yuwm
アンチがID変えようとしてミスってんぞw
0740デフォルトの名無しさん2016/03/11(金) 21:57:19.79ID:3hX0AJzt
妄想乙
停車駅で知らぬ間にフリーWi-Fiつかんでて書き込んだ直後に切れてエラー表示が出たので、
もう一回送信したらLTEで書き込まれて結果的に連投になっただけ
そもそもIDを変える必要がないんだが
0741デフォルトの名無しさん2016/03/11(金) 22:00:04.40ID:GWi2rsdc
必死だな
0742デフォルトの名無しさん2016/03/11(金) 22:02:43.54ID:kdcYkQND
Obj-Cの長い英文表現は、Obj-Cの世界では美徳だと認めているだろうが

[[session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
}] resume];
> session data task with request, completion handler
英文として成り立つCocoa I/Fは慣れればなかなかに愉快な言語仕様

ただ、英語じゃなくてプログラミング言語をやってるんだから、プログラミング言語として楽なSwiftでも良かろう
極論、英語でプログラミングしたいならLiveCodeとかShakespeareがもっと愉快でオススメ
0743デフォルトの名無しさん2016/03/11(金) 22:17:25.99ID:kdcYkQND
英語より日本語の方が美しい、なんでお前ら英語使ってんの?って英語圏のフォーラムで言ってるようなもんだからな?
どっちが良い悪いじゃないし、英語/日本語両方使えた方が良かろう、わざわざ出張って布教するから宗教,信者と言われる
0744デフォルトの名無しさん2016/03/11(金) 22:19:33.56ID:RA7SR1be
>>739
わざわざそれ書き込む方が鬼の首取ったと言わんばかりの張り付きレスポンスだと思うけど
0745デフォルトの名無しさん2016/03/11(金) 22:23:29.33ID:IHIwRxrQ
煽り: >>739, >>741
Obj-C信者: >>744
Swift信者: いない

Swiftスレは平和なもんだw
0746デフォルトの名無しさん2016/03/11(金) 22:24:57.48ID:IHIwRxrQ
煽り: >>739, >>741
Obj-C信者: >>740
Swift信者: いない

間違った
0747デフォルトの名無しさん2016/03/11(金) 22:35:38.22ID:thuZ5Z05
英文としてどうかじゃなくて長い旅路の末にObjective-Cを見出し再評価した人々が
プログラム言語として『やっぱりこうじゃなきゃ』と感じてることの核心が
"「誰が、誰に、何をさせてるか」がはっきりしていない言語は
クソプログラマーがすぐ暗号みたいなコードにしやがるよね"で。

swiftはどうもそのObjective-Cがいま再評価された理由を根底から理解していない
どっかから連れてきたその手の技術バカが作ってるっぽいぞ…!?ってのがありありとわかるから
「うん、それまた新しいC++みたいな"スパゲッティ化言語"作り始めたね」って眺めてるだけの話

んで、言語仕様コロコロ変更辺りから距離とって眺めてると
案の定どんどん「コードに何がどれだかわからないように埋め込めるモダンな言語!」って
なってってるから「(ああ、これダメな奴だ)」ってなってってて
これ対岸の火事のままなら笑って眺める対岸の重大インシデントだけど

こんなものを「Appleの公式開発言語だ」ましてや「Objective-Cに代わる〜」とかマジ勘弁。
だいたいそんな。
0748デフォルトの名無しさん2016/03/11(金) 22:39:07.66ID:3hX0AJzt
素晴らしきSwiftの世界
0749デフォルトの名無しさん2016/03/11(金) 23:46:14.28ID:SMAEajhb
>>734
なるほど、型を省略すればすっきりするね。
変数や引数が何のクラスかは自分ではあまり意識しなくても、変なことしたらちゃんとコンパイラが考えて(推論して)適切に警告してくれるって思っておけばいいのかな。

SystemのFrameworkなら大体分かってるからいいけど、3rdの知らないFrameworkやアプリ内で作られた独自クラスを使ったコードを読んだ時に型や長いメソッド名がないと何をやっているのかパッと見で把握しづらいかもなぁ。
さっきの例で言うとdataはNSDataでResponseはNSURLResponseだろうなと俺が推論しながら読む必要がありそうな。
コードレビューがやり辛いかも。
0750デフォルトの名無しさん2016/03/11(金) 23:53:22.68ID:SMAEajhb
あ、型を書いてもいいから3rdのライブラリはともかくプロジェクト内の実装はコーディングガイドラインで型を書くようにしておけばいいのか。
0751デフォルトの名無しさん2016/03/12(土) 00:03:53.95ID:lpW9Veo+
すいすいすいふとwwwwww
0752デフォルトの名無しさん2016/03/12(土) 08:38:32.49ID:lnVxl+4G
Xcode使う大前提でoptionキー押しながらマウス乗せたら型が出た気がする
IDE使わないで開発するヤツはいないだろうから、型推論は便利に使うぜ
0753デフォルトの名無しさん2016/03/12(土) 12:55:48.35ID:IkCQn1iR
吸い太!
0754デフォルトの名無しさん2016/03/12(土) 13:11:35.10ID:BcLnuPjC
obj-cに、本当のジェネリクスと例外がサポートされたら、もう何もいらない
nilとか便利に使うからどうでもいい

kotlinか普及しなかったのがすべての答え
0755デフォルトの名無しさん2016/03/12(土) 14:22:53.33ID:BDXKc72j
>>754
普及しないも何も1.0出たばっかですが、、、
androidの開発環境の開発元が出してる言語だし、
androidStudioとの親和性を高めていく方向では期待できる気がするけど。

swiftはxcodeとの親和性が低すぎで悲しい。リファクタリングいつ出来るようになるの。
0756デフォルトの名無しさん2016/03/12(土) 14:38:36.02ID:oS3fCNyN
kotlin も swift もいい難いんだよ
つかなんて読むんだ、ことりん、でいいのか?
0757デフォルトの名無しさん2016/03/12(土) 15:15:42.75ID:lnVxl+4G
まだリネーム出来ないことを嘆く子はいたのかwww
その程度のIDE機能、諦めろよ

Kotlin出たのSwiftの何年前だと思ってるんだ
Swift信者が合わせて担いでいるから最近話題が稀にあるが、枯れ腐った言語だろ...
0758デフォルトの名無しさん2016/03/12(土) 15:58:16.76ID:Zbyfy48z
>>754
Objective-C 3.0を出さないのは、それ出しちゃうとそれでいいじゃんってなるからだな
0759デフォルトの名無しさん2016/03/12(土) 16:17:57.35ID:lnVxl+4G
マーケティング的にないわな
踊らせて儲けてるのに、そっちの興味が行っては困る
Swiftに合わせてgenericsやnilable入れてもバージョン付けしない辺り狙ってるよな
0760デフォルトの名無しさん2016/03/12(土) 16:23:01.47ID:utZY+mCI
スレ違いだけど、objc3.0は勝手に作れるよw
3.0の仕様を定義して、パースしてobjc2.0に変換してからビルドするプラグインでも作りゃいいんじゃね?
0761デフォルトの名無しさん2016/03/12(土) 16:32:01.19ID:+BnUZy11
>>742
誰になにをメッセージとして投げるか視覚的にもわかりやすいしな
汚くはあるが、可読性は高い
面倒くさいのはブロックが絡んだときで
あれはobj-cにむりやり下手くそな拡張したやつがわるい
0762デフォルトの名無しさん2016/03/12(土) 16:41:50.57ID:2uBppHJQ
2011年にKotlinが発表されて、Androidの開発に激震が走るのは目に見えていた
0763デフォルトの名無しさん2016/03/12(土) 16:44:10.29ID:lnVxl+4G
視覚的に分かりやすいか、、、?
文系脳で文章をそのまま読み解くのが得意ならいいけど
数式ライクな非自然言語の方がプログラマとしては一目で把握しやすいがなぁ
Obj-C以外の他の言語も併用してたら尚更
0764デフォルトの名無しさん2016/03/12(土) 16:48:12.68ID:Zbyfy48z
>>762
それここで何回もきいたわ
0765デフォルトの名無しさん2016/03/12(土) 16:54:00.76ID:BDXKc72j
>>763
blocks構文とかIDE支援がないと使い方しょっちゅう忘れるんだが。
読みづらいは読みづらいと思う。
なれの問題ではあるだろうけど。
0766デフォルトの名無しさん2016/03/12(土) 17:42:16.92ID:utZY+mCI
obj-cはわかりやすいというより、覚える必要が無いという方が近い。
0767デフォルトの名無しさん2016/03/12(土) 17:53:57.32ID:iPxxcyad
Obj-Cのブロックも元のC++よりはマシかな
Swiftのクロージャの方がシンプルだけど
0768デフォルトの名無しさん2016/03/12(土) 17:58:28.48ID:Srvzf/Ne
>>767
もとのC++?
ちょっと何言ってっかわかんないっすね
0769デフォルトの名無しさん2016/03/12(土) 17:59:58.00ID:EHy/vOH7
>>768
気にするな,ム板全体が劣化しているんだ‥
0770デフォルトの名無しさん2016/03/12(土) 18:09:37.43ID:iPxxcyad
>>768
C++にブロック、スマートポインタ、型推論があって
その機能を文法糖衣してObj-C, SwiftのブロックやARC, 型推論がある

まさかObj-C, Swiftで初めて出てきた機能と信じてないよな
どれも文法はスマートにシンプルになってるが、そんな新しい機能じゃねーぞ
0771デフォルトの名無しさん2016/03/12(土) 18:16:55.71ID:utZY+mCI
文法糖衣って言ったら、blocksの実装がC++って意味になるぞ。
blocksの正体はobjcのクラスだが、C++で書かれてんの?
クロージャ自体は他の言語にも割と普通にある。
0772デフォルトの名無しさん2016/03/12(土) 18:29:29.69ID:iPxxcyad
実装としてLLVMは同列に扱ってたはずだぞ
C++クラスかObj-Cクラスかは、見るレイヤーで同列か別物か変わるだろうけど

文法仕様としてはありふれたものよな
分かりやすい所だとJSがそんな感じでC++も随分遅れて取り込んだんだし
0773デフォルトの名無しさん2016/03/12(土) 19:06:34.98ID:eETh49FG
>>763
俺は文系脳なのか文章を読むようにコードを読めるObjective-Cが楽だし好きなんだよな、、
他の言語の時は頭を切り替えて読む感じ
0774デフォルトの名無しさん2016/03/12(土) 21:04:38.65ID:+BnUZy11
>>773
おれも
あれこれ省略されてると
あれこでどういう符丁だったっけ?って脳みそのオクからひっぱりだすはめになるし
同じ書き方でも場所によって意味が変わったりするともうだめ
if分だと!がいらないとかさ
0775デフォルトの名無しさん2016/03/12(土) 22:29:04.51ID:MATxlUhm
出来ない奴が難癖つけてるようにしか聞こえん
if文だと!がいらないんじゃなくて
let maybeStr: String? = "Hello, world!"
こうあったとして
if let str = maybeStr as String { // もし (String? 型の) maybeStr が String 型として str とおけるなら
これが、as String (String 型として)は自明なので
if let str = maybeStr { // もし (String? 型の) maybeStr が (String型として) str とおけるなら
こう省略できるだけ
何が難しいのやら
0776デフォルトの名無しさん2016/03/12(土) 22:48:24.04ID:Srvzf/Ne
一目瞭然性?
0777デフォルトの名無しさん2016/03/13(日) 00:12:24.35ID:23Fl+Vy1
Swift理解できないほどのバカがObjCでろくなコード書けてるわけがないんだよなぁ
言語云々する前に職業変えたほうがいい
0778デフォルトの名無しさん2016/03/13(日) 00:13:19.75ID:jyBK2h9h
Swiftが理解できないから文句言ってると思ってるやつ多すぎ
0779デフォルトの名無しさん2016/03/13(日) 08:04:05.40ID:wOA1cLLH
>>773-774
なんでお前らがSwiftスレにいるのか、コレガワカラナイ
Obj-Cで意気投合してそれを使ってたいならObj-Cスレに行けよw

>>778
アンチと煽りでプロレスしたいだけなんだよな
Swiftが本当に良いと思ってるヤツいないから
0780デフォルトの名無しさん2016/03/13(日) 08:23:11.46ID:EnPm109B
>>779
773だが、両方使ってるからこのスレにいるんだよ。両方仕事でガッツリ使ってるよ。Swiftのメリットデメリット、今後どう進化していくのか気になるからここ見てんだよ。
何か文句あんのか?
良し悪し書いて何が悪いんだよ。否定的な事書かれたらここに来んなよとかお前は思考停止の頭スカスカのカスプログラマーか?
0781デフォルトの名無しさん2016/03/13(日) 08:24:44.53ID:CJzs3Mac
>>780
かまって欲しいがためにここにいるんじゃないのかな
ここならアンチアンチ言ってれば安定して相手してもらえるから
0782デフォルトの名無しさん2016/03/13(日) 09:07:40.28ID:jQMpG1j2
正直な所Swiftの将来性が心配だからこのスレ見てる。
見た感じだとすぐに移行する必要はなさそうだな。

>>781
Mac!!
0783デフォルトの名無しさん2016/03/13(日) 09:11:18.33ID:23Fl+Vy1
こんな活発で将来が約束されたOSSプロジェクト他にないだろう
0784デフォルトの名無しさん2016/03/13(日) 09:16:15.53ID:zql1ECZW
クソ言語すぎて開発者が離れて衰退しませんように
ナムナム
0785デフォルトの名無しさん2016/03/13(日) 09:36:55.67ID:wOA1cLLH
>>780
否定意見じゃなくObj-Cマンセーだから聞いたのだがな

>>770
SwiftのdeferはC++にない機能
Goにある、とかいう意見は聞こえない
0786デフォルトの名無しさん2016/03/13(日) 09:58:22.71ID:6npzZ9GO
Swift3.0で構文が変わります。
Swift4.0で構文がかわります。
Swift5.0で構文が変わります。
・・・しかも最新のiOSオンリー対応
こんな言語業務で使えるわけなかろう!
0787デフォルトの名無しさん2016/03/13(日) 10:02:43.98ID:m8m5LQ0A
swift?!
上記は省略形で、省略しないと、
swift?えっマジ、やだー!
ですを
って名前変えろwww
0788デフォルトの名無しさん2016/03/13(日) 11:36:44.69ID:jQMpG1j2
仕様変更の多いSwiftをiOS開発で使うならともかく
Webで使いたいとか言う奴は完全にマゾだな
0789デフォルトの名無しさん2016/03/13(日) 12:57:16.34ID:wOA1cLLH
IBM涙目w
node.jsに代わって使われるかもしれない
静的型付け&コンパイラ言語なので性能は良い...可能性にかける

iOS開発と同様、遊びでの利用に留めるけど
あとはアポー信者を騙して金をせびるか
0790デフォルトの名無しさん2016/03/13(日) 14:46:18.95ID:0XVKjE5P
要するに様々な意見があるってことじゃんw
0791デフォルトの名無しさん2016/03/13(日) 19:25:56.68ID:6npzZ9GO
使えないって意見だらけな
0792デフォルトの名無しさん2016/03/13(日) 19:37:37.78ID:SZVN9lO9
もう学生が嬉々として「これを友達に紹介するだけで儲かるんですよ!」と
目を輝かせてアムウェイビジネスを語り始めたレベルで
ラトラーの両肩を掴んで「目を覚ませ!」ってガックンガックンゆさぶりたい。
0793デフォルトの名無しさん2016/03/13(日) 21:12:25.90ID:wOA1cLLH
ジョブズの頃からそういうものだから仕方ないね
ジョブズ存命の頃から作ってたようだし、彼が発表したら食いつきよく儲かる言語だったろうと悼むしかない;(
0794デフォルトの名無しさん2016/03/13(日) 21:24:53.74ID:hCONU1HE
むしろ、この路線で完成度で出てきちゃうってとこで
ジョブズは停めてたとしか思えない。
0795デフォルトの名無しさん2016/03/13(日) 21:57:13.40ID:Gh3MSdai
>>789
今のIBMってもう完全にAppleの金魚の糞だよね
昔はIT業界の巨人だったのに…
0796デフォルトの名無しさん2016/03/13(日) 22:15:26.71ID:n7onQsNB
マ イ ン ド コ ン ト ロ ー ル の手法

・沢山の人が、偏った意見を一貫して支持する
 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法

・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法

偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い

靖 国 参 拝、皇 族、国 旗 国 歌、神 社 神 道を嫌う カ ル ト

10人に一人は カ ル ト か 外 国 人

「ガ ス ラ イ テ ィ ン グ」 で 検 索 を !
0797デフォルトの名無しさん2016/03/13(日) 22:21:09.19ID:b9iPnLfy
IBMって客に法外に高いプロジェクト料金ふっかけて裏金作るクソみたいな会社
0798デフォルトの名無しさん2016/03/13(日) 23:14:39.81ID:m8m5LQ0A
swiftなんかに浮かれてる会社は必ず潰れる。
0799デフォルトの名無しさん2016/03/13(日) 23:19:57.80ID:wOA1cLLH
>>794
iOS 6だかのMapは止めなかったぞ

IBM, Red Hat, Oracle, etc.の固い企業はよく悪く言われるね
昔はSunと仲良く?Java屋やってたけど Googleがひどく荒らして挙げ句Oracle買収に至ったから何かに転向もやむなしかと
しかし、Web Swiftは不毛の大地だと思う
0800デフォルトの名無しさん2016/03/13(日) 23:28:11.93ID:b9iPnLfy
全力でつぶされてて笑えるwww
kotlinでも似たようなことがあったな
結局javaの勝ちだったが
0801デフォルトの名無しさん2016/03/13(日) 23:44:31.69ID:jxedjjGu
>>795
メインフレームの世界じゃIBMは今でも巨大ブランドですよ。
パーソナル方面ではアップルに乗っかる方針のようですが。
0802デフォルトの名無しさん2016/03/14(月) 00:29:52.12ID:EugXbGuE
全く売れないメインフレーム笑な
0803デフォルトの名無しさん2016/03/14(月) 00:59:36.81ID:2LHA4OJT
どう考えてもSwiftは地雷
0804デフォルトの名無しさん2016/03/14(月) 01:12:03.54ID:canBCmwP
今年のWWDCでまだSwift推しならApple開発辞める。
0805デフォルトの名無しさん2016/03/14(月) 03:53:38.72ID:c99sGxCf
どうぞどうぞ
0806デフォルトの名無しさん2016/03/14(月) 04:19:57.83ID:rxc3Byav
実質死んだkotlinと同じ展開w
0807デフォルトの名無しさん2016/03/14(月) 04:25:38.17ID:qlVjnPP2
比べるんならGoogleのGoじゃないの?
KotlinってJetbrainsでしょ。会社の力が全然違うと思う。
0808デフォルトの名無しさん2016/03/14(月) 09:21:16.31ID:VeJxRbZg
Apple は社内のシステムで ObjC や Swift 使ってるの?
0809デフォルトの名無しさん2016/03/14(月) 09:21:25.77ID:rxc3Byav
swift死亡
0810デフォルトの名無しさん2016/03/14(月) 09:24:32.98ID:VOPeYWvU
Swiftはクリス・ラットナーの自己満だからな
なので日曜プログラマ向け言語
0811デフォルトの名無しさん2016/03/14(月) 09:34:39.28ID:EugXbGuE
Swiftの仕事が極端に減ってる感じ。
うちのプロジェクトもプロトタイプはSwiftだったけど3.0で仕様が変わるって発表されてからObjCに決まった。
Swiftは誰も使わないと思うがSwiftScriptで頑張れ。
0812デフォルトの名無しさん2016/03/14(月) 09:50:24.86ID:eQdvLNLx
>>807
goはぶっちゃけ抽象化が苦手すぎてツール開発か
WebApiサーバくらいしか向かないと思う。エコシステムは凄くいいだけに惜しい。
一部のロジックをgomobileで実装しようとしても
APIのインターフェースがC経由になる
辛い。
0813デフォルトの名無しさん2016/03/14(月) 10:05:04.19ID:TLWPTsA2
型推論とオプショナル型がなくなったSwift 9.0くらいになったら業務で使えるかも
0814デフォルトの名無しさん2016/03/14(月) 10:24:34.60ID:1iOF5VE5
Swiftに限ったことじゃないけど
なんで型推論ってこんなに嫌われてるの?
VBのVariant型みたいなものだと思われてる?
0815デフォルトの名無しさん2016/03/14(月) 10:49:05.58ID:t/84a/RD
そんな嫌われてる?
0816デフォルトの名無しさん2016/03/14(月) 12:19:15.48ID:aKHvbxKB
実務向けに汚くしてから発表すればよかったのに
0817デフォルトの名無しさん2016/03/14(月) 13:12:44.53ID:RxXZXYZn
ま、今のままだと完全に普及せずに終わるね。
0818デフォルトの名無しさん2016/03/14(月) 13:23:49.35ID:wrlHwsiG
いやSwiftは自己満クソ言語だけど普及はするよ。
これから新規で始める人はみんなSwiftなんだから。

ただObjective-C経験者やC言語経験者の移行は当面難しいだろうから両者共存の道が一番妥当。
0819デフォルトの名無しさん2016/03/14(月) 13:43:16.83ID:aXdkBNOw
初心者ですけど、今はまだobjective-cの知識も必要なので、swiftより先にそちらを覚えないと、
いずれどこかで行き詰まる感じなんですよね?
以前、ネットのどこかで、swift誕生でアプリが楽に開発できるようになるって記事を読んで
初心者でも覚えやすそうだと期待したんですが
0820デフォルトの名無しさん2016/03/14(月) 13:44:47.61ID:t/84a/RD
とっつきはいいんじゃない?
最初に覚えるおまじないのたぐいも少ないし
0821デフォルトの名無しさん2016/03/14(月) 14:07:42.53ID:M0AhYSOB
型推論って、入力は楽になるけど読む方は大変にならない?慣れたら要らないってのはわかるけど、初めて見るメソッドとかだと嬉しくないことが多いと思う。

let message = "hoge"と入力したら、: String が補完されるとか、IDEに頑張って入力の手間を減らす感じにして欲しいなぁ。
0822デフォルトの名無しさん2016/03/14(月) 14:33:36.99ID:RxXZXYZn
>>821
読む方とは?

普通その変数に入れたものは、使うときになんらかの明示的型変換やるのは当たり前
なのですが。
0823デフォルトの名無しさん2016/03/14(月) 14:50:44.69ID:XA3d71CS
読みにくくなるとしたら変数やメソッドの命名とかコードの流れとか、要するにコードの書き方が下手くそなんだろ
スクリプト言語なんてそもそも型まったく書かなくても成り立ってんだから型推論で読みにくくなるとか普通に考えて無いわ
0824デフォルトの名無しさん2016/03/14(月) 14:57:37.68ID:RxXZXYZn
>>823
ですな。JavaScriptなんて典型的なわけで。
0825デフォルトの名無しさん2016/03/14(月) 15:31:48.98ID:eVNLJJnz
>>773
COBOLでもやってろ
0826デフォルトの名無しさん2016/03/14(月) 15:34:02.08ID:t/84a/RD
IDENTIFICATION DIVISION
0827デフォルトの名無しさん2016/03/14(月) 15:42:31.11ID:av/XuOk9
言語仕様がコロコロ変わってる間はプロがSwiftを使うことはないだろう
0828デフォルトの名無しさん2016/03/14(月) 16:23:14.29ID:M0AhYSOB
>>822-823
自分が書いたコードは自分が書いた時に何の型かわかって書いてるから後で読んでも問題ないけど、
他人の書いたコードの修正をするような場合とか、ライブラリのサンプルをとりあえずコピペして動かしてみようって時に、
あんまり馴染みのないメソッドの戻り値の型がわからないと、動きが推測しにくかったりするし、
戻り値を使って別のメソッドを呼ぶときにも若干のめんどくささを感じたりするなぁ。

他人の書いたコードで、
let baseURL = accessor.generateBaseURL(parameter)
と書かれてた時に、メソッドの仕様を把握してなくて、baseURLがNSURLかStringかわからなくて面倒、みたいなね。

JSとかだったらNSURLかStringかなんて区別ないからいいけど、Swiftなら結局型は把握しなくちゃいけないよね。
変数の宣言時に型が書いてあれば、IDEの機能すら使わずに見ただけでわかるから、githubのREADME見ただけで直線的に書けるけど、
型がわからないと一旦コピペして、型確認して、ってなるからワンテンポだるい感じする。
ヘタするとIDEのパーサーがうまく機能しなくて結構待たされたりすることあるし。

そのライブラリなりフレームワークなりを完全に把握して、見通しが立ちまくってるのならIDEの補助なんて要らないだろうし、
わかりきった型のタイプなんてしたくない、と思うのもわかるんだけど。
0829デフォルトの名無しさん2016/03/14(月) 17:22:46.29ID:NRgKP0Xz
>>825
的外れすぎてもうね、アホかと
0830デフォルトの名無しさん2016/03/14(月) 18:14:14.30ID:qlVjnPP2
階層が深くなりがちなコードを書く人の場合do try catchは便利そうな気がしてきた。
しかもNSError型以外に好きな型でthrow catchできるし。
0831デフォルトの名無しさん2016/03/14(月) 18:21:36.32ID:rxc3Byav
読む方も型推論するの疲れた
0832デフォルトの名無しさん2016/03/14(月) 20:45:36.39ID:qlVjnPP2
>>736
コード書き換えてみたら
session.dataTaskWithRequest(request) {
data, repose, error in
}.resume()
でもいけた。
まだ慣れてないからいろんな書き方が出来るのもちょっと混乱するな。
0833デフォルトの名無しさん2016/03/14(月) 20:47:56.59ID:BHy/xkqE
()も省略できるようになってたのかw
流石にそれはワロタ
0834デフォルトの名無しさん2016/03/14(月) 21:31:53.56ID:aaBATIMS
>>828
AppleのSwiftに限らず、GoogleのGo、MozillaのRust、MicrosoftのTypeScript、大元のC++
いずれも静的型付け&型推論でテキトーにやるのがイマドキだろうよ
今すぐこれらの言語が業務利用の主流言語になる気はしないけど、静的型付け&型推論は慣れた方が良いんじゃないかね
0835デフォルトの名無しさん2016/03/14(月) 23:52:59.80ID:yRy4E+K7
>>819
流されるな
これから始める人はSwift一択でよい
0836デフォルトの名無しさん2016/03/15(火) 00:27:27.67ID:uwWkC4Im
コンパイルの遅さに萎えた...
0837デフォルトの名無しさん2016/03/15(火) 00:39:48.43ID:Mpjoj4af
>>819
Swiftしか使えないバカになるより、Objective-CやってCも使えるプログラマになった方が潰しがきく
0838デフォルトの名無しさん2016/03/15(火) 01:13:02.34ID:V5Hx7lSz
>>837, >>835, >>837
元の質問者含め煽り同士で空中戦繰り広げんなw

コンパイル速度は随分マシになったけど、相変わらず copying swift library が長いよのう
swiftじゃなくiOSのせいだけど、32bit,.64bitの2倍コピーするようになったし
0839デフォルトの名無しさん2016/03/15(火) 03:10:41.24ID:Xxy9BFIs
スペック十分のマシンでもコード補間が少し詰まるような感じがする
SwiftじゃなくてIDEの問題だけど
0840デフォルトの名無しさん2016/03/15(火) 08:18:54.21ID:i+2J/gfr
SwiftはJavaScriptのような形で使えて普及できたらいいのに。

別途Obj-C勉強しないとダメっていう時点でダメだわ。
0841デフォルトの名無しさん2016/03/15(火) 09:27:09.41ID:bKUTlxTt
言っとくけどObjective-CはCが分ければすぐわかるから
Swiftはいちいち独自()の表現だから覚えることは多い
0842デフォルトの名無しさん2016/03/15(火) 09:30:43.69ID:TkZx4J2l
プログラマとしてCは知ってて損はないしJavaやC#やC++、Objective-Cとかの基礎にもなるな
一方Swiftは…
0843デフォルトの名無しさん2016/03/15(火) 10:30:14.84ID:i+2J/gfr
>>842
でも、それだと

じゃぁ、Obj-Cでいいじゃん Swiftいらないじゃんってなると思うけれど。
0844デフォルトの名無しさん2016/03/15(火) 10:52:09.72ID:Go5fM+AQ
ボトムアップのCと、トップダウンのSwiftを比べて、、、ファイッ
勝者はどっちだ!?

>>832
そこまで省略するとWithRequest(request)が随分マヌケに見えるな
3.0の愉快痛快な省略記表を楽しみにしよう
0845デフォルトの名無しさん2016/03/15(火) 11:34:40.55ID:Gqyv+ptq
swiftのプロジェクト中止になったよ。
0846デフォルトの名無しさん2016/03/15(火) 11:48:21.11ID:/+iTSfDu
まともなobcエンジニア探すのも大変なのに、まともにSwift2できる外注さんっているの?
うちの会社プロパー少なくてほとんど外注。
とんでもソースで納められたら次の外注さんメンテナンスできるのかなー。
さすがに全コードをプロパーで面倒見れないし。
省略して簡単に書けそうだけど、逆にバグも簡単に入れられるわけで、仕様変更時のコストが気になるなー。
まだまだobcかなー。
0847デフォルトの名無しさん2016/03/15(火) 11:56:13.55ID:Gqyv+ptq
rubyとかも保守性の悪さで流行らないんだよな。
もう5年かけてでもobj-c→java8.9.10しかないのでは?
マーケット的にswiftはないと思う。
言語覚えるよりframework覚えるのが吉。
0848デフォルトの名無しさん2016/03/15(火) 12:23:46.09ID:vxrFHeSb
何だよ保守性って
スクリプトなんて書き捨てだろ
手早く書いて動かなくなったら捨てろ
0849デフォルトの名無しさん2016/03/15(火) 12:26:09.41ID:i+2J/gfr
>>848
何言ってんだこいつ
0850デフォルトの名無しさん2016/03/15(火) 12:33:03.01ID:CcxqNl1p
スクリプトが、というのはおかしいがswiftのPJは書き捨てが正しいだろ
書き捨て出来ないPJでSwift使うプロマネは市ねと1年以上前から言われてる
0851デフォルトの名無しさん2016/03/15(火) 12:47:44.35ID:8D7gJIae
外に作らせてる段階でどうでもいいアプリだとも言える
0852デフォルトの名無しさん2016/03/15(火) 12:55:33.79ID:3ODrcQXu
人手不足なんだから仕方ない
0853デフォルトの名無しさん2016/03/15(火) 13:35:23.21ID:/+iTSfDu
iOSアプリが本業の会社なんてゲームくらいしかないじゃん。
よって常駐の派遣/業務委託エンジニアがほとんどじゃないか?
プロパーはビジネス作っていかなきゃならないし。
0854デフォルトの名無しさん2016/03/15(火) 13:44:36.95ID:8D7gJIae
どんな言語にせよ自前で作らないのは仕方ないとして検品する能力がないなら諦めろとしか……
0855デフォルトの名無しさん2016/03/15(火) 14:32:59.30ID:KruUj8h6
>>853
こういう会社にSwiftなんです、凄いんですって言って儲ける
Swift言語仕様が変わったらAppleが悪いんでメンテ工数載せますね^^って更に儲ける
受託ウメー

ババ引くのは一番上の意識高い系文系企業なので、中間企業でも上を騙せば良いんじゃない?
0856デフォルトの名無しさん2016/03/15(火) 15:00:56.26ID:x9uKJmZb
プログラムって軽く東大に入れるレベルの人達がやってるイメージがあるけど
やっぱりあるていど能力が高くないと習得できないよね?

Swift言語はハードル高そうだし
0857デフォルトの名無しさん2016/03/15(火) 15:32:50.45ID:0IUhIuBq
そんなこともない、3流大学の学生でもコードが書ける
そう、 iPhone向けプログラム(Obj-C,Swift)ならねってジョブズなら言ってくれたと思う
0858デフォルトの名無しさん2016/03/15(火) 18:12:52.65ID:HFxwW5rq
Obj-Cである程度書けたらSwiftで書くのも数日余裕を見れば新規開発、保守考えないプロジェクトなら楽勝だと思うんだけど
C/C++の構造体、ポインタ、クラスをバリバリ弄るって言うのならSwiftにするメリットはないだろうけど

Swiftだからハードル高いってことはないと思うけどな。SourceKitServiceが落ちるとか、仕様がガンガン変わるとかそのへんは置いとくと。
0859デフォルトの名無しさん2016/03/15(火) 19:17:10.94ID:CBlTI8RW
いっその事ReactNativeにしたらどうだろう。
typeScriptもswiftぽい書き味。realmも対応してるし。
ロジック部分をandroidと共通化できるし
0860デフォルトの名無しさん2016/03/15(火) 20:16:51.37ID:jXNKpZXX
ReactNative、基本理念としてネイティブがガリガリ書けるヤツが使えよって感じじゃん
そして演算ロジックをJSで共通化したらもっさり感半端ないと思う
もちろんUI構築のデータシーケンス共通化は出来るけどさ

Swiftで遊んでる身からするとアレはアレで良いと思ってるけど
Swiftクソ!Obj-C最高!!とか言ってるヤツには受けないだろ
使いこなすにはSwift以上に人を選ぶわw
0861デフォルトの名無しさん2016/03/15(火) 21:08:16.86ID:CBlTI8RW
>>860

http://facebook.github.io/react-native/releases/next/showcase.html
ここに幾つかサンプルがあるけど、別にモッサリ感はない。
複雑な演算ロジックが必要なアプリってゲーム以外ないでしょ。
ゲーム作るならUnityとかだろうし。

XMLでUI書くのがシンドいくらい。でもwebでもそのまま学習内容が適用できるし
fluxをiOSアプリで使いたいと思ったらViewController邪魔だし。
0862デフォルトの名無しさん2016/03/15(火) 21:15:28.96ID:QWATuKA3
結局初心者はswiftとCどっちからやればいいんだ…
0863デフォルトの名無しさん2016/03/15(火) 21:45:42.35ID:HFxwW5rq
iOSアプリ、Macのアプリを書きたいっていう前提で話すけど、
今までC/C++とか触ったこと無いなら、Objective-Cで1個アプリ作って、ポインタ周りとかなんとなく把握した後に2個目はSwiftとかでいいんじゃないの?
いきなりSwiftでもいいけど、ライブラリとか使ってObjective-Cのコードを触らなくちゃいけないとき(それなりにある)にObj-Cがさっぱりわからないと困って、ポインタとかでハマりそうだから。

Obj-Cなら初めの学習コストがやや高くて苦労する、Swiftなら途中でObj-Cを触るときにわけ分かんなくて苦労するって違いじゃないかな
0864デフォルトの名無しさん2016/03/15(火) 22:02:40.62ID:QWATuKA3
なるほど…
プログラミングについて基本的なオプジェクト指向だったりそもそもオプジェクトってのはなんなのかを調べたりはしてるんだけど、
結局何をしたらいいかがどこのサイトを見てもわからなくて困ってる。
まずは〜から始めるべきだろう。とか言語のことしか書いてなくてどいうツールを使って何をすれば知識が身につくかってことが書いてない。
OSの区別もつかないような人が新卒としてSEになるってよく聞くんだけどそういう人はまずどういうことから始めてるんだろう。
0865デフォルトの名無しさん2016/03/15(火) 22:21:43.14ID:TkZx4J2l
>>843
いやたぶん、実際にはObjective-C 3.0としての正常進化でも全然いいんだよ
現にObjective-CでこれほどまでにiOSアプリ市場が盛り上がってるんだから
Swiftに変える逼迫した状況もない
0866デフォルトの名無しさん2016/03/15(火) 22:30:45.04ID:/+iTSfDu
そうか!!
頭いいやつはSwiftでお客を煙にまいてボロ儲けか?
ただSwift使ってもクラッシュ箇所がわからないんだよなーiOS開発って限りなくカオスだよ。
0867デフォルトの名無しさん2016/03/15(火) 22:33:30.42ID:3NttT/rt
>>865
となると、普通にObj-C勉強して、Obj-CでiOSアプリを作るという
王道が一番良さそうだね。

Androidでも作るとなるとJava / Obj-Cか。面倒臭いなぁ。
0868デフォルトの名無しさん2016/03/15(火) 22:36:13.17ID:vbavnT06
objcの緩さに戻りたい
0869デフォルトの名無しさん2016/03/15(火) 22:49:30.17ID:HFxwW5rq
>>864
職業としてのSEになりたいの?趣味でアプリを作りたいの?
どっちかによって結構違うと思う。
趣味としてアプリを作るなら、本当に全く何もやったことないなら、アプリを1から作る手順を説明してる本の本通りにしてみるとかかな。
職業としてのSEだったら、会社の研修で色々覚えさせられるからそのレールに乗っかっていけばいいだろうし、自主的に勉強って感じとはちょっと違うだろうからよくわからないな。

何から始めていいのかわからないなら、サイトでXcodeのインストールレベルから詳しく解説してるところを見つけるか、よさ気な本を探して買ってくる感じがいいんじゃないのかなぁ
0870デフォルトの名無しさん2016/03/15(火) 22:53:39.91ID:TkZx4J2l
>>867
何だろう
たぶん、JavaはC言語の構文ほぼそのままと言ってもいいくらいC言語ベースだし、
Objective-CはC言語に純粋にオブジェクト指向部分を拡張した言語(C#とかC++よりもC言語らしい、
というかC言語そのものと言ってもいいくらい)だから、SwiftよりObjective-Cの方が頭の切り替え少なくてすむと思うよ
0871デフォルトの名無しさん2016/03/15(火) 22:54:00.20ID:QWATuKA3
>>869
職業としてなりたい。
ただ求人見ても知識ゼロでの募集は今のところないから探しつつやれることはやっておきたい。
とりあえず今は
http://www.kyoji-kuzunoha.com/2013/02/xcode-app-7.html

見ながらXcodeいじってるけどこういう感じのサイトを見ながら色んなアプリ作っていけばいいのかな。
0872デフォルトの名無しさん2016/03/15(火) 22:59:44.95ID:LV93oL97
>>866
ビジネス作ってる意識高い系ならもう少し考えろ、マジで
Swiftでモノ作ってもユーザーには全く関係ないし、性能劣化のデメリットしかないんだから、別のビジネス考えないでどうすんの
対信者ビジネスは儲かるんだから、ここのObj-C信者もうまく使えば儲けのネタになる気がすんぞ
0873デフォルトの名無しさん2016/03/15(火) 23:01:30.98ID:MreNGBWb
C言語って凄いなって正直思うわ
もうC言語が生まれてからだいぶ経つけど、今でもJavaやC#といった
シェアをもつ比較的新興な言語もC言語をベースにしているし、PCやスマホ以外の
組込み系でもやっぱりC言語がメインだし
ここまで長らくベースとして様々な言語に参考にされ拡張されてきた
C言語の歴史の長さとその実績があるというのは、それなりに理由があるんだと思う
0874デフォルトの名無しさん2016/03/15(火) 23:17:57.19ID:4c+RAuKw
swiftは終わったか・・
0875デフォルトの名無しさん2016/03/15(火) 23:23:48.39ID:MreNGBWb
終わったかどうかは知らないけど、without Cを公式に謳っている以上
歴史あるC言語系に実質喧嘩を売っているわけだから、iOS開発における
メインストリーム言語としてのSwiftという立ち位置を目指しているのであれば、
それなりの覚悟は必要だとは思うね
0876デフォルトの名無しさん2016/03/15(火) 23:37:49.16ID:kvLimxB+
ちょっと前はポインタも見えないJavaはC/C++とかけ離れてるって見下されてたのに
Swiftを落とすために相対的に株が上がって笑うわ
先月からどんだけSwiftヘイトに必死なんだか
0877デフォルトの名無しさん2016/03/15(火) 23:56:24.91ID:efg0PHVu
それだけSwiftがObjective-C以上に異質だってことなんじゃないの
むしろ、これまでのC系列とは違うことこそ正義だという言語思想
なんだから当然かもしれないけど
Objective-Cなんて名前がついてるからとっつきにくく感じるけど
C言語の知識とオブジェクト指向プログラミングを知ってる人なら
オブジェクト指向として拡張されたメッセージ式やメソッドの記法と
コンパイラディレクティブくらいを知ればあとは割とすんなり書けると思う
初学者にとってはどっちかというと言語の仕様というよりは
CocoaのAPI構成の理解の方がめんどいと思う

まあ、Swiftでも何でもいいけど、さっさと言語仕様確定してほしいね
0878デフォルトの名無しさん2016/03/15(火) 23:59:35.86ID:RkGpBmLF
iOS開発の開発言語を決めるのはお前ら庶民じゃないApple様だろ
例えばSwift製以外は申請拒否るよって言えばそれまで

Cのどの部分をJava、C#が引き継いでてどの部分を切り捨てたのか
SwiftはC、Java、C#とそれぞれどこが同じでどこが違うのか
わかってて言ってるん?
0879デフォルトの名無しさん2016/03/16(水) 00:06:11.77ID:2471fwbe
脅して変えさせるやり方は失敗すると思う
iOSデバイスも売り上げ鈍化してきてるし、Apple様も
いつまでもあぐらかいてられるとは限らない
0880デフォルトの名無しさん2016/03/16(水) 00:18:23.62ID:S2qjuD84
C#>java>OBJ-C>C>(超えられない壁)>swift

つーか、もうコンピューター言語イラネ
日本語より良い言語があっても覚えないのと同じ
0881デフォルトの名無しさん2016/03/16(水) 01:03:04.72ID:Tb17X3fe
>>880
xamarin使えばよくね?
0882デフォルトの名無しさん2016/03/16(水) 01:23:21.29ID:g5eQuceW
確かにXamarinはやばいね
AppleはSwiftにうつつを抜かしてる場合ではないと思う
0883デフォルトの名無しさん2016/03/16(水) 01:40:43.70ID:MbQ3DF2k
>>878
Appleが決めてるのはAPI。開発言語じゃない。
別にアセンブラでもいいんだよ。
0884デフォルトの名無しさん2016/03/16(水) 01:42:17.36ID:6qvx9oa+
>>878
Swift製以外リジェクト!が実現できるのは何年後かな?現実的に考えて。
0885デフォルトの名無しさん2016/03/16(水) 06:00:51.97ID:HfDCgyef
CarbonからCocoaに切り替えたの知らないの?
現実的にありえる話だよ?

って昔このスレで信者が言ってた
0886デフォルトの名無しさん2016/03/16(水) 08:42:33.56ID:S2qjuD84
それ言語じゃないし
Objective-C Proを待とうぜ
0887デフォルトの名無しさん2016/03/16(水) 09:14:14.70ID:HU6vv5c2
それだったらObjective-C 3.0で
0888デフォルトの名無しさん2016/03/16(水) 09:18:44.37ID:Kyc63uGc
>>859
カタログスペック見てイイ!というは易し
実際に作ったら結構キツかったぞ
Androidの知識もiOSの知識も必要だし、基本シングルスレッドの待ち合わせで遅延するし

>>880
なでしこ>(越えられない壁)>C#>java>OBJ-C>C>(超えられない壁)>swift
日本語がプログラミング言語を越えられるわけないよなぁ...

なでしこやってるとObj-C言語仕様がクソすぎて論外だわ
0889デフォルトの名無しさん2016/03/16(水) 10:14:39.18ID:q4JDXg1H
今言えるのはSwift関連の書籍は買わないこと
0890デフォルトの名無しさん2016/03/16(水) 10:44:51.60ID:Tb17X3fe
>>888
最近は業務系で日本語を変数名にしたり、DBのカラム名を日本語にしたりしてるからなぁ
気持ち悪いと思うのは老害なんだろうか
0891デフォルトの名無しさん2016/03/16(水) 10:46:41.09ID:Tb17X3fe
>>888
おお、経験者いたー。
どの辺がきつかったか詳しく。
reactiveNativeでコンポーネントを公開されているもの使えば
bootstarp的なios用のコンポーネントでデザインを省略できないかなー
と思ってるんですが、、、、、
0892デフォルトの名無しさん2016/03/16(水) 11:03:43.18ID:4JZmVgDp
>>890
Swiftに至っては絵文字で変数名宣言できるしなw
公式ドキュメントの寿司の絵文字変数は日本人を笑わせにきてる

GoだかRustだかでマルチバイト文字列の変数を許容するか否かでアンケート取ったら
想定外に過半数がマルチバイトを利用してるって結果で、うぐぐと言いながら仕様投入されたし
C言語等のレガシー仕様は尊重しつつ、温故知新で新しいモノは理解したいね
0893デフォルトの名無しさん2016/03/16(水) 11:45:07.54ID:ObM/KsZ+
漫画家のステップとして応募した人へ:話の勉強をして下さい。
苦労するのが嫌なら凄いキャラを作って、そいつが動くのに任せて下さい。
漫画家になりたいなら絵を描いてる暇なんてないはずです。

by富樫

プログラマーにも同じことが言える
0894デフォルトの名無しさん2016/03/16(水) 12:55:15.69ID:O9XWfcl4
>>888
ぴゅう太でもいじってたら?
0895デフォルトの名無しさん2016/03/16(水) 13:41:54.86ID:6qvx9oa+
このスレでたまにSwift下げに対して何々でもやってろよと言う人がいるけどSwift上げ出来てない時点で負けなんだよなぁ
0896デフォルトの名無しさん2016/03/16(水) 13:42:41.70ID:6qvx9oa+
ところでApple公式以外でSwiftのバージョンアップに追従して更新されてるSwiftの電子書籍ってある?
0897デフォルトの名無しさん2016/03/16(水) 13:42:56.00ID:tN26Mesw
勝ち負けだと思ってんのか
0898デフォルトの名無しさん2016/03/16(水) 14:40:16.72ID:O9XWfcl4
>>895
売り豚かな?
0899デフォルトの名無しさん2016/03/16(水) 14:41:24.80ID:O9XWfcl4
>>897
前々からそういう話だってことにしたがってるやつがいるな
0900デフォルトの名無しさん2016/03/16(水) 15:55:34.54ID:88yCdiic
http://i.imgur.com/qDZctTA.jpg
http://i.imgur.com/5lkTTRI.jpg

なんでこうなるか教えてくださいまし、、
0901デフォルトの名無しさん2016/03/16(水) 16:01:40.24ID:12ZVBINx
なんで@interfaceにコード書いてんだよ
だいたいObjCだろそれ、ここSwiftスレなんだが
つかスクショの撮り方も分からんやつが開発なんてしてんじゃねえやめちまえ
0902デフォルトの名無しさん2016/03/16(水) 16:14:03.99ID:p2nDQRCr
ワロタ
0903デフォルトの名無しさん2016/03/16(水) 16:21:10.03ID:O9XWfcl4
>>900
釣りでしょ??流石に
0904デフォルトの名無しさん2016/03/16(水) 17:08:39.80ID:6qvx9oa+
>>897
Swiftについての勝ち負けではないがまともな反論も出来ずに逃げてるって点だけ見れば言論としては負けだね
0905デフォルトの名無しさん2016/03/16(水) 17:11:56.10ID:MbQ3DF2k
>>900
けっこう面白かった
0906デフォルトの名無しさん2016/03/16(水) 18:09:26.88ID:5cIRvF1M
>>904
>>37だから真面目に相手される訳ないよね

なにげに>>901が親切なのはポイント高い
0907デフォルトの名無しさん2016/03/16(水) 19:10:42.65ID:Tb17X3fe
http://qiita.com/tatsuya6502/items/d82fd8f1244afff4db13
swiftは成功している模様。少なくともこの完成度の割にはコミュは活発のようだ。
0908デフォルトの名無しさん2016/03/16(水) 19:51:12.67ID:08Q65Pye
swiftに変えて良かったのか正直未だ実感は沸かない
強いて言えば無名関数がほんのりと良くなった感じ
0909デフォルトの名無しさん2016/03/16(水) 20:45:52.20ID:q4JDXg1H
Xamarinはかなり普及すると思う。
なぜならこの業界ではXがつくとなぜか普及するから。iOSもiOS Xになるし。
でもiOS向けXamarinは怪しい。
AppleのMonoイジメがあるだろうから。
0910デフォルトの名無しさん2016/03/17(木) 00:48:15.03ID:ng1DlSct
どちらにしてもswiftは終わったな
0911デフォルトの名無しさん2016/03/17(木) 03:12:37.61ID:dvbMSvEK
知ってる
0912デフォルトの名無しさん2016/03/17(木) 09:24:15.31ID:kK9Vryou
みんなSwiftがどうやらクソらしいことには気づいてんだよ
でもこれを勝機としてビジネスを勝ち取りたいと夢見たやつもいるわけだ
そういう人にとっては是が非でも普及してほしいんだよ
いずれにしろAppleが置き換えるんだからという態で自分を騙しつつ突き進むしか道はないのだよ
0913デフォルトの名無しさん2016/03/17(木) 09:28:09.13ID:6/WZgFC5
cocoa javaの悪寒
obj-cの完成度と資産があまりにも大きすぎる
0914デフォルトの名無しさん2016/03/17(木) 09:40:18.57ID:M6Lm2IWO
こういうのに乗っておくとドヤ顔できますよ〜でしかないわな
swiftはもう単なるバズらせワードに堕した
こっちは実利で環境選んでるんであって
個人的理想論だの売り豚的勝負観に付き合いたいわけじゃねえんだってのに
0915デフォルトの名無しさん2016/03/17(木) 09:47:20.07ID:aulv3pOz
ビジネスという実利という考えがなさそう
Peas book, Health Kit, Apple Watchと乗り換えうめえ
Swiftスレでのアンチに実利はある?
0916デフォルトの名無しさん2016/03/17(木) 09:58:53.96ID:U5XyTqUO
>>915
siftは糞という糞スレのせいでもうすぐこのスレが終わるわけだが。
swift使ってよかった!と思えるライブラリとか教えて下さい。

俺はrxSwiftとSwiftFilePath

SwiftFilePathは地味に便利。薄いライブラリなので中身を追うのも簡単だし。
0917デフォルトの名無しさん2016/03/17(木) 10:09:10.74ID:gf+4TM5q
Swiftで上っ面書いても下は普通にObj-Cライブラリ使うからなぁ
誰も見ないライブラリ層でSwiftを率先して使うことはないかな
0918デフォルトの名無しさん2016/03/17(木) 19:19:57.67ID:2s/ub2K7
>>914
なんでSwiftスレに来てヘイト活動に付き合ってるん?
Swiftをドヤ顔か遊びでやってるなら、個人的理想論や売り豚的勝負観と笑って付き合えると思うけど

Swiftライブラリはフレームワークライブラリで使うと死ねたから使いたくないぞ
フレームワークライブラリの中にも小さなランタイムが入ってて、リンクする時も同じバージョンじゃないとダメなのな
おかげで古いXcodeを使い続けることになった時は空を仰いだわ
0919デフォルトの名無しさん2016/03/17(木) 21:03:29.09ID:ng1DlSct
ワロタ
0920デフォルトの名無しさん2016/03/17(木) 21:42:24.99ID:dvbMSvEK
>>913
ほんとそんな気配を感じる
ただ、Objective-CとSwiftの並列なら全然ありだと思う
まあAppleはやんないだろうけどね
0921デフォルトの名無しさん2016/03/18(金) 00:35:54.07ID:+Hfn5OA2
スマフォ好きだし、アプリ作ってみたいからはじめたわ。
iPhoneがなくなる未来が見えないし、楽しみだよ。
フォートランくらいしかやったことねぇけど、なんとかついていけてる。
0922デフォルトの名無しさん2016/03/18(金) 04:03:28.28ID:0xItJsgm
Appleはswiftの推進に完全に失敗して敵を作ってしまったな。
swift3.0までは「swiftってのがあるけどどう?」ってスタンスが正解だったな。
0923デフォルトの名無しさん2016/03/18(金) 04:15:27.89ID:NZuxYs+d
Cでさえ生きてるのにobj-cが無くなるわけないんだが
swiftは永遠に仕様を変えていく理想の言語なんだよ
書籍買うとか業務で使うとかただのマヌケ
0924デフォルトの名無しさん2016/03/18(金) 07:30:11.86ID:KrqIIFOB
色んな言語の元になったCだからこそ生きてんだろ
iPhone無かったらobjcだってマイナー言語じゃねーか何言ってんだ
0925デフォルトの名無しさん2016/03/18(金) 07:48:46.72ID:NZuxYs+d
COBOLでさえ生きてるのにobj-cが無くなるわけないんだが
swiftは永遠に仕様を変えていく理想の言語なんだよ
書籍買うとか業務で使うとかただのマヌケ
0926デフォルトの名無しさん2016/03/18(金) 08:04:58.86ID:+10IZMNV
>>921
いつの時代から来た人だよ
0927デフォルトの名無しさん2016/03/18(金) 08:13:30.41ID:G1QQzRTC
>>925
数十年スパンの企業システムと
使い捨ての携帯電話向けの未熟ソフトを比較しても
0928デフォルトの名無しさん2016/03/18(金) 08:30:22.59ID:ZhS8uhtQ
>>924
Swiftの方が歴史も実績も何もない超マイナー言語じゃねーか何言ってんだ
0929デフォルトの名無しさん2016/03/18(金) 08:45:45.84ID:46f5RXDe
CとObj-Cの比較が、Obj-CとSwiftの比較にすり替えられててワロタ
意図したレスか脊髄反射のレスか分からんがちょいちょい笑わせにくるの好き
0930デフォルトの名無しさん2016/03/18(金) 08:50:01.95ID:0xItJsgm
SwiftがObjective-C#って名前で.msファイルに両方+Cも書けて3.0スタートなら大流行りだったのに、残念。
Appleのハードは優秀なのにいつもソフトで躓くな。
0931デフォルトの名無しさん2016/03/18(金) 08:52:25.99ID:ZhS8uhtQ
>>929
>iPhone無かったらobjcだってマイナー言語じゃねーか何言ってんだ
だったら>>924のobjcだっての「だって」で暗に並べられてる言語は何なんだよ?
0932デフォルトの名無しさん2016/03/18(金) 08:53:48.60ID:0xItJsgm
>929
違うな、すり替えられてない。
そもそもCがいろんな言語の元になったから生きてるという理屈がマヌケそのもの。
0933デフォルトの名無しさん2016/03/18(金) 08:54:33.77ID:46f5RXDe
面白いから頑張れw
0934デフォルトの名無しさん2016/03/18(金) 08:56:23.22ID:ZhS8uhtQ
>>933
逃げ乙
0935デフォルトの名無しさん2016/03/18(金) 08:57:32.50ID:NZuxYs+d
ここまでをまとめると、

Swifterはマヌケ
0936デフォルトの名無しさん2016/03/18(金) 09:01:20.86ID:46f5RXDe
飽きたからまたな
obj-cもswiftも適度に使うのでどっちかに傾向する信者は楽しい

>>916
SwiftライブラリってCarthageで入れてんの?
それともCocoaPod?便利な方教えれ
0937デフォルトの名無しさん2016/03/18(金) 09:19:47.87ID:f9TMfSkf
傾倒ね
ID:46f5RXDeは日本語ができるようになってからプログラミングやったんじゃないんだな始めた方がいいんじゃない?
0938デフォルトの名無しさん2016/03/18(金) 09:24:49.14ID:N5TaEPO6
お前もな
0939デフォルトの名無しさん2016/03/18(金) 09:28:42.50ID:2GFDDzWx
スマホの予測変換で絶対誤入力増えたろ
0940デフォルトの名無しさん2016/03/18(金) 10:21:08.41ID:0V9EONfH
以下良スレの嵐
0941デフォルトの名無しさん2016/03/18(金) 10:21:54.99ID:0V9EONfH
良レスだった
0942デフォルトの名無しさん2016/03/18(金) 12:01:17.86ID:gp82sZml
Part 6はObj-C信者のアンチスレでした
Part 5は半年くらいかけて消化した覚えがあるので、すごいアンチの勢いだったな

次スレに合わせて隔離スレ立てた方が良いんじゃね?
真面目にSwift使った上でアレコレじゃなく、バズワードでレスするから話が流れまくるわ
0943デフォルトの名無しさん2016/03/18(金) 12:04:22.51ID:8aObCWzT
stackoverflow Developer Survey Results 2016
http://stackoverflow.com/research/developer-survey-2016

II. Most Loved, Dreaded, and Wanted
Loved ・・・ Swift 72.1%
Dreaded ・・・ Objective-C 60.2%

IV. Trending Tech on Stack Overflow
Winners ・・・ Swift 74.6%
Losers ・・・ Objective-C -18.5%
0944デフォルトの名無しさん2016/03/18(金) 12:15:56.10ID:0V9EONfH
Objective-C>Swiftの項目も書かないとフェアじゃないな
Swiftが今トレンドなのには違いないが
0945デフォルトの名無しさん2016/03/19(土) 01:42:27.66ID:62PKqvMs
超絶めんどくさいswiftやるくらいならcocoa java普及してくれ!
0946デフォルトの名無しさん2016/03/19(土) 06:47:30.52ID:TH+k+4Mf
この必死感>>943
Swiftマンセー!!!
0947デフォルトの名無しさん2016/03/19(土) 20:35:58.36ID:uJsvs2AR
Objective-CもSwiftも、将来は1つになるから全然大丈夫。

Swift 5.0あたりで、Objective-Cコードがインラインで書けるようになる。
Swift 10.0あたりでは、今のSwiftコードのほとんどがサポートから外れて、中身はObjective-Cとほぼイコールになる。
で、Swift 12.0あたりだと、中身が完全にObjective-Cなってる。

つまり、中身はObjective-Cだけど、表向きはSwiftと呼ぶ時代の到来だ。
0948デフォルトの名無しさん2016/03/19(土) 23:31:10.79ID:D7cqYiEI
 ̄ ̄ ̄ ̄ ̄ ̄ ̄l/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ∧_∧
    ( ´・ω・`)     ∧_∧
    /     \   (    )何言ってんだこいつ
.__| |    .| |_ /      ヽ
||\  ̄ ̄ ̄ ̄   / .|   | |
||\..∧_∧    (⌒\|__./ ./
||.  (    )     ~\_____ノ|   ∧_∧
  /   ヽ 空気読めよ   \|   (    )
  |     ヽ           \/     ヽ. オマエ馬鹿だろ
  |    |ヽ、二⌒)        / .|   | |
  .|    ヽ \∧_∧    (⌒\|__./ /
0949デフォルトの名無しさん2016/03/20(日) 00:01:31.90ID:zeaJmZit
アンチの妬みすごいなこのスレ
妄想入ってる奴もいるし
0950デフォルトの名無しさん2016/03/20(日) 00:05:47.83ID:YNMOH2/p
そりゃAppleが半分脅しでゴリ推してるんだからトレンドは上位になるだろうな
0951デフォルトの名無しさん2016/03/20(日) 00:11:59.42ID:tYKJ6VgB
swiftで書くといつまでたってもビルド通らない
xcodeめちゃ遅くなる死ね
0952デフォルトの名無しさん2016/03/20(日) 04:24:36.81ID:E7aSnkcV
>>951
いつのバージョンのXcode使ってるんだよ?
xcode7でSwiftのビルドが遅いと感じることはないぞ
0953デフォルトの名無しさん2016/03/20(日) 06:56:38.48ID:/jOCO4OR
Optionalの存在意義を説明しているサイトあれば教えてください。

色々試してるものの、nilチェックは無くならないし、nilチェックのif {}内でさえ?指定が外せないという...

組み合わせるcast構文がasとなっていて後置されるせいで、補完が効かないケースが多いし...

Optionalはコレだから価値があると納得したいです。
0954デフォルトの名無しさん2016/03/20(日) 08:38:15.65ID:ZVeN2v/s
ggrks
0955デフォルトの名無しさん2016/03/20(日) 09:41:01.73ID:uaIeAaSY
>>949
ただの冗談だろ。
0956デフォルトの名無しさん2016/03/20(日) 11:21:24.02ID:tYKJ6VgB
>952
ビルドじゃなくて
0957デフォルトの名無しさん2016/03/20(日) 11:27:29.20ID:Ub8X/u9x
swift覚えるよりiOSとUIKit覚えたほうが勝ちだぞ>初心者
今swiftでググってもカスみたいな情報しかないから
swiftは7.0あたりからやれ
0958デフォルトの名無しさん2016/03/20(日) 11:58:03.72ID:YNMOH2/p
まあそれは言えてるな
現段階ではSwiftはコロコロ仕様が変わりすぎで使えない
SwiftはSwiftの知識でしかないが、Objective-Cを覚えとけば
他言語にも応用が利くから、初学者の今後のためにもなる
0959デフォルトの名無しさん2016/03/20(日) 12:13:03.36ID:aRfCOro3
>>958
遠回り過ぎる。
学習コストが低くて生産性の高いSwiftやった方がはるかに得
0960デフォルトの名無しさん2016/03/20(日) 12:18:59.68ID:eeC1yhzG
>>953
>色々試してるものの、nilチェックは無くならないし、nilチェックのif {}内でさえ?指定が外せないという...
この行の意味がわからないんだがオプショナルバインディングちゃんと使えてんのか?

そもそもオプショナルなんてのは散々nullに気をつけてきたのに
今更nullは危険だからnullを入れたければ明示してねって話だし
存在意義と言うならオプショナル型だからnilを取りうる事をコーディング中に注意喚起する程度で
そういうもんと割り切るしか無い
0961デフォルトの名無しさん2016/03/20(日) 12:21:41.26ID:YNMOH2/p
>>959
C言語知らないプログラマなんていない気がするから、そういう意味では
Objective-Cの学習コストの方が低いと思うけどな
Swiftは仕様が固まってからでも遅くないと思う
0962デフォルトの名無しさん2016/03/20(日) 12:41:31.74ID:GdGOCP5U
オプショナルは邪魔過ぎるあれのせいでobjcに戻りたい
0963デフォルトの名無しさん2016/03/20(日) 12:48:41.54ID:tOEh7O6K
optionalはguard let構文が付いてから使えるようになった
ネストが深くならないのがいい
0964デフォルトの名無しさん2016/03/20(日) 12:58:00.86ID:YlJ66Eyf
>>959
覚えたことが無駄になるのは学習コストが高い
0965デフォルトの名無しさん2016/03/20(日) 13:20:48.37ID:pa30xhYh
C言語知ってる普通のプログラマならObjective-Cとか余裕でしょ
やたらアンチCなSwiftはいちいちめんどくさい
Swiftゴリ推しなのは、Apple関係者とObjective-Cでビジネス食いっぱぐれてSwiftへの移行に勝機を見いだそうとしてる弱小ソフトサプライヤーだけだから
0966デフォルトの名無しさん2016/03/20(日) 14:26:45.71ID:EZrM2noc
Swiftアンチは自動運転車が当たり前になった世界でも
かたくなに自分で運転し続けて大事故起こすタイプなんだろうな
0967デフォルトの名無しさん2016/03/20(日) 14:45:10.72ID:B3NGK1ug
>>966
ここだけの話だが,自動運転は実現しない,アレはすることがなくなった研究者がでっち上げたテーマ
0968デフォルトの名無しさん2016/03/20(日) 14:54:32.43ID:YlJ66Eyf
自動運転特区を作って歩行者のいない街で実験すればいい

中国の豪腕なら一気にトップに立てるかも知れん
0969デフォルトの名無しさん2016/03/20(日) 15:14:07.74ID:tOEh7O6K
>>968
アメリカにすでにあるけどな。トヨタとかも使ってる
0970デフォルトの名無しさん2016/03/20(日) 15:19:39.69ID:XtpsllkU
>>953
nilチェックを強制しチェック漏れを無くす事で馬鹿が書いてもnilクラッシュしないようになるのがメリットです
0971デフォルトの名無しさん2016/03/20(日) 15:28:41.75ID:Ad5KCdBQ
>>970
その仕組みをObjective-C 3.0としてではなく、わざわざSwiftとかいうよくわからない言語を作って導入するのはなぜですか?
09729532016/03/20(日) 15:31:32.56ID:/jOCO4OR
ありがとうございます。
Optional Bindingで書く場合ですが、煩雑に感じます。
ObjectiveーCだとタイプ量が一気に減るんですね...

if let procItemArrayData = userDefault.objectForKey("procItemArrayData") {
if let procItemArrayData = procItemArrayData as? NSData {
if let procItemArrayAnyObject = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(procItemArrayData) {
if let procItemArrayAnyObject = procItemArrayAnyObject as? [ProcItem] {
procItemArrayController.addObjects(procItemArrayAnyObject)
}
}
}
}
0973デフォルトの名無しさん2016/03/20(日) 15:42:48.41ID:tOEh7O6K
>>967
その書き方やめてguard let使って
guard let procItemArrayData = userDefault.objectForKey("procItemArrayData") else { return }

ネストを深くしないでー(T_T)
0974デフォルトの名無しさん2016/03/20(日) 15:58:35.72ID:XtpsllkU
>>972
if let 変数 = メソッド() as? 型
って同じ行に書けばそのコードの半分にはなると思う
0975デフォルトの名無しさん2016/03/20(日) 16:13:10.08ID:Nj6PSOwm
これはネタにしてもひどいな
Obj-C好きはこんなレベルがいるなら Swift は使わない方がいいな
0976デフォルトの名無しさん2016/03/20(日) 17:04:15.85ID:G5B0if3i
Objective-CでOSアプリビジネス市場がここまで大きく成長したという実績が
あるのに必死のSwift騒いでるやつらって>>965以外にいるのかね

まあ何れにしてもクリスのおっさんの優柔不断な仕様改定のしっぽ追いかけて
踊らされてることほど滑稽なものはないので、Swiftやるのは仕様が固まってからでいい
仕様策定に関わりたいというなら別だが
0977デフォルトの名無しさん2016/03/20(日) 17:50:49.39ID:EZrM2noc
>>972
これでいいんじゃない

if let procItemArrayData = 〜 as? NSData,
       procItemArray = (try? 〜) as? [ProcItem] {
    procItemArrayController.addObjects(procItemArray)
}

もちろんguardでもいいけど
0978デフォルトの名無しさん2016/03/20(日) 19:15:41.55ID:YJHgUsXC
try?って追加されたんだ
obj-cプログラマが使ったら危なそうな表記だな
分からず使ってプロセス落としそう
09799532016/03/20(日) 19:23:47.32ID:/jOCO4OR
>>974
有難うございます。
972書いた後にもしやと思って試したら通りました。
Optionalのある言語触るのは初めてで勝手が...

古いコードの移植から始めてますが、当分慣れるまで大変です。
09809532016/03/20(日) 19:41:39.59ID:/jOCO4OR
すみませんピントずれてて...
Xcodeも10.6ごろまでしかいじってないので、どうにも慣れないです。

しかし、cやobj-cで使えるNilチェックの方が個人的には楽に感じます。
if (var && a=func(var)) {...a...}
if (obj && a=[obj func]) {...a...}

見た感じGuard letも動き自体は
if (var = func(...)) {...(var)...} else return;
みたいな感じですよね。

今更流行らないのもわかるんですが、ついていくのが大変です。
0981デフォルトの名無しさん2016/03/20(日) 19:47:28.12ID:C/fknMSS
それ、これだけでよくね?
if (a=func(var)) {...a...}
if (a=[obj func]) {...a...}
0982デフォルトの名無しさん2016/03/20(日) 20:59:53.77ID:EZrM2noc
その例ならSwiftならそれぞれ

if let a = v.flatMap(fn) { }
if let a = o?.fn() { }

だな
0983デフォルトの名無しさん2016/03/20(日) 22:12:18.25ID:XtpsllkU
guard ~ else return は if (~) return とどこが違うんだろう
0984デフォルトの名無しさん2016/03/20(日) 22:50:18.40ID:wk9E8GIj
みんな凄いね。
初心者用のテキスト買って1からやってる俺にはまったくわからんや。
iPhoneでなんとなく便利なアプリ作ってみたくてはじめたんだけど、みんななにか目的あるの?
0985デフォルトの名無しさん2016/03/20(日) 23:19:38.61ID:tOEh7O6K
>>978
スコープが変わる

if let hogehoge = XXX {
//hogehogeはここでしか使えない
}

guard let hogehoge = XXX else { return }
//↓ずっとhogehoge使える
0986デフォルトの名無しさん2016/03/20(日) 23:28:57.03ID:tOEh7O6K
swiftのoptionalのメリットわからん人ってなんなの
delphi案件やってた頃どの引数にnullが入っているかわからんから
全部の関数の引数にnullチェックを入れるように
コード規約されていたことがあった。それでも忘れる奴がいたりとかして落ちまくっていた。
コンパイラがnullチェックするの本当にありがたい。

最もobj-cはnullに対してメソッド呼び出し(メッセージ式)でなんの反応もしないという対応をしたわけだが。
それはそれで地獄の先延ばし感。

現在はフレームワーク側が対応していないから面倒くさい事にはなっているけど。
!つけまくりなの早く何とかして。
0987デフォルトの名無しさん2016/03/20(日) 23:36:17.24ID:fK+nk82V
チェックの強制ってだけでしょ
でもこれからプログラマ人口が増えて全体の質も下がっていくとするとそういうのは大事なのかもね
0988デフォルトの名無しさん2016/03/20(日) 23:39:03.66ID:XtpsllkU
>>985
ごめん、俺が言ったのはObjCのif文でのnilチェックとやってる事は同じなんだよね?って意味。書き方が違うだけで。
0989デフォルトの名無しさん2016/03/21(月) 00:04:25.39ID:bbX9YEmL
swift覚えるよりiOSとUIKit覚えたほうが勝ちだぞ>初心者
今swiftでググってもカスみたいな情報しかないから
swiftは7.0あたりからやれ
0990デフォルトの名無しさん2016/03/21(月) 00:16:49.31ID:L0Gy7oHt
>>846
言語以前にまともな設計ができる人がいない。
Swiftのメジャーアップデートはさほど問題にならないな。
どうせ、OSのVer UPが発生すると全部見直さないといけないし。
0991デフォルトの名無しさん2016/03/21(月) 00:34:16.64ID:Dk9QPU4P
次スレとアンチ隔離スレ立てヨロ
0992デフォルトの名無しさん2016/03/21(月) 00:41:22.28ID:5/GZAGB7
Swiftは学習するだけ損をする。
0993デフォルトの名無しさん2016/03/21(月) 01:35:07.24ID:N7YCc9d1
次スレ
http://echo.2ch.net/test/read.cgi/tech/1458491528/

Swiftアンチスレ part1
http://echo.2ch.net/test/read.cgi/tech/1458491343/
0994デフォルトの名無しさん2016/03/21(月) 02:03:09.02ID:O7DG3syI
>>982
変数にnullが入っていないことが保証されてる。
つまり本当にnullチェックが必要なところしかnullチェックする必要が無い。
もちろんoptionalのまま取り回し続けたらnullチェックだらけのコードになるけど。
本来は極力optinalをアンラップしてnullじゃない変数に落とし込んでいく。
0995デフォルトの名無しさん2016/03/21(月) 03:27:41.89ID:Ua5URM48
>>993
乙
0996デフォルトの名無しさん2016/03/21(月) 03:52:53.05ID:Ua5URM48
>>994
if letで保証しなくても?でnilだったら無視な!
で良いケースも多い(?)んじゃない?
Obj-Cもnilへのメッセージ投げは無視するから同じように問題ない、、、?

obj-c含め、安全なコードになる気がしないので、?だらけになった
0997デフォルトの名無しさん2016/03/21(月) 03:59:59.45ID:bbX9YEmL
nullなんか自分でチェックすればいいし
0998デフォルトの名無しさん2016/03/21(月) 04:49:28.27ID:5/GZAGB7
optionalはnilより癌になる
09999532016/03/21(月) 07:12:21.90ID:JlG67S74
>>994
これ腑に落ちました。
チェック強制=決まった書き方に縛る
単純な移植はダメで、フローを言語に合わせるのですね。
1000デフォルトの名無しさん2016/03/21(月) 08:31:16.46ID:vdESVose
1000
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 47日 10時間 51分 8秒
10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/
http://pink-chan-store.myshopify.com/
レス数が1000を超えています。これ以上書き込みはできません。