■ このスレッドは過去ログ倉庫に格納されています
プログラミング言語Swift
- 1 :名称未設定:2014/06/03(火) 04:22:01.46 ID:bj7XakLp0.net
- 楽しみ(・ω・)
- 2 :名称未設定:2014/06/03(火) 04:49:46.82 ID:O9FEua1Q0.net
- うぉ〜
プログラミングの勉強しようと
Objective-Cの本を買いまくってたところなのに
- 3 :名称未設定:2014/06/03(火) 04:52:44.88 ID:ePUEj06J0.net
- 早く遊んでみたいねぇ。
- 4 :名称未設定:2014/06/03(火) 04:53:21.22 ID:BI62/oEs0.net
- 軽自動車?
- 5 :名称未設定:2014/06/03(火) 05:05:43.30 ID:ePUEj06J0.net
- あと入門本執筆のチャンスだよ。
出版社にコネある人は連絡急げ。
- 6 :名称未設定:2014/06/03(火) 05:12:56.59 ID:zVs/LLtK0.net
- 俺もObjective-Cを勉強しようかなとしているところなのに、
ここで新しいのが出てきたら、どっちのほうがいいんだって迷う
両方すると疲れるしな・・・
- 7 :名称未設定:2014/06/03(火) 05:25:26.98 ID:ePUEj06J0.net
- これ貼っとかなきゃ。
The Swift Programming Language
https://itunes.apple.com/us/book/id881256329
- 8 :名称未設定:2014/06/03(火) 05:33:33.55 ID:ePUEj06J0.net
- >>2>>6
“Swift is a new programming language for iOS and OS X app development. Nonetheless, many parts of Swift will be familiar from your experience of developing in C and Objective-C.”
だってさ。大丈夫、大丈夫、問題ない。
- 9 :名称未設定:2014/06/03(火) 06:29:44.19 ID:+Mi07RUb0.net
- まさかの新言語かw
- 10 :名称未設定:2014/06/03(火) 08:57:34.51 ID:ehw/FtOo0.net
- >>6
英語文献読めるならswiftから始めるのもいいんじゃない?
ユーザー少ないから重宝されるよ
ただトラブった時、情報なくて苦労するだろうけど
- 11 :名称未設定:2014/06/03(火) 09:03:57.52 ID:OxE3r+iQ0.net
- 英語読めないから、お前らが翻訳本出すまでお預け。
出版まで辿り着いたら寄付してやるわ
- 12 :名称未設定:2014/06/03(火) 09:04:53.91 ID:v7aj62lf0.net
- letを付けて代入なんてBASICかよ
- 13 :名称未設定:2014/06/03(火) 09:07:18.83 ID:v7aj62lf0.net
- 漢字の変数どころか絵文字にも代入出来るのか・・・
- 14 :名称未設定:2014/06/03(火) 09:27:21.20 ID:SACawKZT0.net
- >>12
どっちかって言うとmlだろ
- 15 :名称未設定:2014/06/03(火) 09:27:59.92 ID:SACawKZT0.net
- >>13
javaもできる
- 16 :名称未設定:2014/06/03(火) 11:04:41.01 ID:bj7XakLp0.net
- タートルLOGOみたいな?
- 17 :名称未設定:2014/06/03(火) 11:10:25.46 ID:SACawKZT0.net
- プログラミング言語swift公式ページ
http://swift-lang.org/
- 18 :名称未設定:2014/06/03(火) 11:14:58.58 ID:ehw/FtOo0.net
- >>17
なんだ、swiftってアップル製じゃなかったのか?
- 19 :名称未設定:2014/06/03(火) 11:15:54.76 ID:KHsaF5nz0.net
- >>2
買いまくっても「後で勉強しよう」なんだろう
どうせ、その「後で」は永遠に来ないんだから、関係ないだろ
- 20 :名称未設定:2014/06/03(火) 11:16:37.68 ID:SACawKZT0.net
- >>18
違う。
他所の会社が作った言語を会社ごとAppleが買収しただけ。
- 21 :名称未設定:2014/06/03(火) 11:18:46.00 ID:Jen1ydy30.net
- >>17
The Swift parallel scripting languageってあるだろ。
名前が同じだけど別物だよ。
- 22 :名称未設定:2014/06/03(火) 11:25:57.61 ID:SACawKZT0.net
- Appleマジうぜえ。
既存の言語と同じ名前かぶせて来やがって。
大企業様が後ろ盾になればどんなカス言語でも普及させられる、
大企業様が優先なんだから既存言語なんかどうでもいい、
っていう姿勢が気に食わんね。
- 23 :名称未設定:2014/06/03(火) 11:40:24.38 ID:vvQAQGCy0.net
- ムキになるなよ
- 24 :名称未設定:2014/06/03(火) 12:00:06.44 ID:8NS7mh6w0.net
- 間違いを認めることが出来ないのは病気ですよ
- 25 :名称未設定:2014/06/03(火) 12:20:19.83 ID:t6TC01Yb0.net
- >>22
Appleは名前に関しては特に強引だよな
- 26 :名称未設定:2014/06/03(火) 16:29:57.01 ID:pdA7nV3Q0.net
- このSWIFTの動画面白いな。
http://m.youtube.com/watch?v=cV7EmHHWeag
- 27 :名称未設定:2014/06/03(火) 22:55:21.65 ID:PuCVlbmB0.net
- >>26
おもしろくないよ
- 28 :名称未設定:2014/06/03(火) 23:04:50.19 ID:58MIUN/Q0.net
- 10年は消えない!方向転換もしない!って約束してくれよ...頼むよ...
- 29 :名称未設定:2014/06/04(水) 01:28:47.22 ID:Puq7Em3j0.net
- 3年くらいしたらSwift++が発表されるよ
- 30 :名称未設定:2014/06/04(水) 01:40:25.61 ID:jdkfgHei0.net
- ベテランプログラマーから見たら、どうなの?
わかりやすくなったの?
俺、鼻くそレベルのiOSアプリを作ってへらへらしてるレベルだけど、色んな記述が
簡素化されたんだなあ……っていう印象。騙されてる?
- 31 :名称未設定:2014/06/04(水) 01:52:36.41 ID:4CtXKQyw0.net
- まだざっとしか見てないけど、良い感じ
switch文が随分と使い勝手良くなってるw
- 32 :名称未設定:2014/06/04(水) 02:40:40.01 ID:aWHJkatZ0.net
- Swift++はともかくSwiftScriptは出そうな気がする
- 33 :名称未設定:2014/06/04(水) 09:14:35.87 ID:UtZJXpas0.net
- >>32
AppleがLLVM JITを使用してWebKitのJSエンジンをスピードアップ
http://www.infoq.com/jp/news/2014/05/safari-webkit-javascript-llvm?utm_reader=feedly
LLVMがキーワード
WebKitにLLVMが入る。
LLVMコンパイラインフラストラクチャの作成者であり開発リーダであるChris Lattner氏は現在,Appleの開発ツール部門のリーダを務めている。
動的言語のプロファイル指示型(profile-directed)コンパイルにLLVMが使用されたのは今回が初めてであり,LLVMの深部にまで変更が必要だった,とFilip Pizlo氏は述べている。
私たちの知る限りFTLは,ループ処理の実行中にLLVMでコンパイルされたコードへのOSRを行う初めてのコンパイラです。
<これがSwiftインタプリタへの第1段階だろう。 既にSwift中間コードは多分直接JITで実行できるはず>
- 34 :名称未設定:2014/06/04(水) 11:49:19.85 ID:quTx8dy20.net
- 次世代はDartかと思ってたけど、ウェブもネイティブもSwiftくるんじゃね
突然の大本命キタコレ
- 35 :名称未設定:2014/06/04(水) 12:01:48.58 ID:pbcg8M8y0.net
- ビルドバイナリの実行環境はiOS7以降でないとダメなんかね?
iOS5,6も少なからずいるので、UIKit使ってないライブラリ程度なら使えるといいんだが
- 36 :名称未設定:2014/06/04(水) 15:45:15.35 ID:UtZJXpas0.net
- >>35 そんなこと無いだろ。 言語自体は独立してるんだから。
- 37 :名称未設定:2014/06/04(水) 17:20:34.10 ID:gsmKfh6f0.net
- >>12
竹中直純さんもTwitterで
同じこと言ってたわw
- 38 :名称未設定:2014/06/04(水) 20:11:18.42 ID:X9s/fPFf0.net
- >>36
どこで見かけたか忘れたけど、iOS7の実機で動かした人がいて動くことは確認できた模様。けど現時点ではストアに提出してもRejectされるらしい。
- 39 :名称未設定:2014/06/05(木) 02:08:48.94 ID:hBZNAy0X0.net
- スイスポ欲しい
- 40 :名称未設定:2014/06/05(木) 11:19:26.86 ID:JEIAwuA90.net
- 発表されたばかりだというのにここは過疎スレですね
- 41 :名称未設定:2014/06/05(木) 11:32:46.40 ID:OXWZKSZv0.net
- 本スレがあるからな
- 42 :名称未設定:2014/06/05(木) 13:12:25.49 ID:1u+uwOdd0.net
- 本スレへ移動
新言語Swiftを語るスレ
http://anago.2ch.net/test/read.cgi/mac/1401736249/
- 43 :名称未設定:2014/06/05(木) 20:14:40.45 ID:hBZNAy0X0.net
- こちらは、ライトユーザー向け?
- 44 :名称未設定:2014/06/05(木) 23:00:59.17 ID:Txoy5MWd0.net
- >>43 You are not right
- 45 :名称未設定:2014/06/09(月) 15:31:53.54 ID:LdGhUDvn0.net
- スイスポ
- 46 :名称未設定:2014/06/13(金) 11:44:05.08 ID:pkDjY+UJ0.net
- iBooksの本の表紙が変わった。 6月2日第1版と有るから中身は変わっていないようだけど念の為ダウンロードし直し。
- 47 :名称未設定:2014/06/15(日) 08:47:57.68 ID:W4rIEOMf0.net
- >>20
昔TIで儲ける方法に、
ソフトを作って、Microsoftに買収されるのを待つ
というのがあった。
今はAppleに買収されるという手が加わったわけか。
- 48 :名称未設定:2014/06/15(日) 09:02:27.71 ID:Z85fSBsOO.net
- ( ゚∀゚)実行演算子\が存在している様ですが処理言語としての未来も期待できそう
( ゚∀゚)\記号を選んだ辺りも「処理」を考える上でお洒落ですね
- 49 :名称未設定:2014/06/15(日) 09:14:50.82 ID:Z85fSBsOO.net
- >>43 ( ゚∀゚)嘗てジョブズ氏の敗れた夢をMacVM/MacOSの形式で実現する機会が巡って来たからでSwiftにMacVMの処理言語としての性格も持たせたいからに違いない
Object-CやOpenCLじゃ事故が多発しそうw
- 50 :名称未設定:2014/06/15(日) 09:35:53.69 ID:Z85fSBsOO.net
- >>43 ( ゚∀゚)ばっちりポストCまで狙っていますしその辺りはC#より明々白々です
( ゚∀゚)\演算子は実行演算子且つ制御子であり
彼の有名な(;)(←Rob Pikeさんパクリましたごめんなさいw)をリプレイスする所までは行きませんが
サブルーチン実行呼び出し制御子としてどこまで新たな地平を切り拓くか
それとも既知の世界の調和を美しく執るか
将来が非常に楽しみです
- 51 :名称未設定:2014/06/15(日) 11:12:01.42 ID:hI0agQaB0.net
- >>50 ??マニュアルのどこにそんな事書いてある? 単なるエスケープ文字だろ?
サンプルコードを書いてみて。
- 52 :名称未設定:2014/06/15(日) 13:25:37.49 ID:+cmVTD6l0.net
- ちまちま記述するコンパイル言語に対して、
よく似たシンプル系の言語がセットになるのは当然の流れか
Java -> Scala
C++ -> Rust
ObjC -> Swift
- 53 :名称未設定:2014/06/15(日) 17:48:48.54 ID:UJvye7Dg0.net
- NGワードは( ゚∀゚)
- 54 :名称未設定:2014/06/15(日) 20:17:05.52 ID:AVuG0OsG0.net
- >>47
>20は元からあった同じ名前のやつと混同してるだけでそ?
- 55 :名称未設定:2014/06/15(日) 20:43:10.36 ID:JMdMMP4E0.net
- >>20-24の流れを読むだけで笑える
- 56 :名称未設定:2014/06/16(月) 00:11:57.57 ID:K1Q6tBXb0.net
- くだらない質問だけど
なんで極東の群島日本の円マークがここまで活躍してるの?
- 57 :名称未設定:2014/06/16(月) 00:55:19.60 ID:Kt3tJ/A00.net
- 日本円は影響力があるからな
- 58 :名称未設定:2014/06/16(月) 01:02:11.68 ID:1WeHfgv/0.net
- >>56 プログラムした事無いの? 本当はバックスラッシュ(\ の半角)なんだけど、日本では\表示になる事が多い。
ほぼ¥=\と思って良い。
- 59 :名称未設定:2014/06/16(月) 01:42:34.07 ID:5/7yS7Uh0.net
- \
- 60 :名称未設定:2014/06/16(月) 01:46:08.93 ID:xXWEpfIy0.net
- ¥
- 61 :名称未設定:2014/06/16(月) 01:49:27.17 ID:SMpIbCyP0.net
- perlでは、スラッシュがああいう感じになってるのかな
- 62 :名称未設定:2014/06/16(月) 02:24:40.81 ID:K1Q6tBXb0.net
- やべえマジレスもらえた
- 63 :名称未設定:2014/06/16(月) 03:49:15.17 ID:6oyUFqtr0.net
- \
↑文字化けするのか?
- 64 :名称未設定:2014/06/16(月) 03:49:59.01 ID:6oyUFqtr0.net
- うわバックスラッシュ打ったのに本当に文字化けした!
- 65 :名称未設定:2014/06/16(月) 04:11:52.45 ID:A5u8gIwl0.net
- 新参か?ブラウザによるよ
- 66 :名称未設定:2014/06/16(月) 04:50:52.59 ID:wSzyNiZl0.net
- 新スレここか
- 67 :新言語Swiftを語るスレ var2:2014/06/16(月) 07:18:15.05 ID:1WeHfgv/0.net
- 新言語Swiftを語るスレ var2
WWDC2014で発表されたAppleの新言語Swiftについて語りましょう。
今はbeta版のXcode 6がSwift対応でデベロッパーのみ試用出来る。
Introducing SWIFT
https://developer.apple.com/swift/
Welcome to Swift
https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/
iBooks: The Swift Programming Language
https://itunes.apple.com/jp/book/swift-programming-language/id881256329?mt=11
HTML: The Swift Programming Language
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Swift Standard Libraly Reference (pdf有)
https://developer.apple.com/library/prerelease/iOS/documentation/General/Reference/SwiftStandardLibraryReference/
(pdfで見た方が見やすい)
Using Swift with Cocoa and Objective-C
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Wikipedia
Swift (プログラミング言語)
https://ja.wikipedia.org/wiki/Swift_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)
- 68 :新言語Swiftを語るスレ var2:2014/06/16(月) 07:18:42.89 ID:1WeHfgv/0.net
- 前スレ:
新言語Swiftを語るスレ
http://anago.2ch.net/test/read.cgi/mac/1401736249/
関連スレ
Swift part2
http://peace.2ch.net/test/read.cgi/tech/1402465335/
Swiftスレ
http://peace.2ch.net/test/read.cgi/tech/1401736341/
- 69 :名称未設定:2014/06/16(月) 07:39:02.39 ID:1WeHfgv/0.net
- 新しいプログラミング言語 Swift
http://dev.classmethod.jp/smartphone/swift/
- 70 :名称未設定:2014/06/16(月) 08:08:13.36 ID:JLri8Ekv0.net
- var2 って何? もしかして ver のつもり?
- 71 :名称未設定:2014/06/16(月) 08:13:35.67 ID:1WeHfgv/0.net
- var swift = 2
- 72 :名称未設定:2014/06/16(月) 10:40:22.87 ID:BHqmhA7B0.net
- ブレース省略禁止はいいね
- 73 :名称未設定:2014/06/16(月) 10:46:25.21 ID:uOMRfXSG0.net
- ブレースって何だっけ?
- 74 :名称未設定:2014/06/16(月) 11:01:55.99 ID:1WeHfgv/0.net
- brace { } 中括弧
- 75 :名称未設定:2014/06/16(月) 11:05:46.05 ID:1WeHfgv/0.net
- コントロールフローのfor ループ等の本体をくくる中括弧は省略不可。
- 76 :名称未設定:2014/06/16(月) 11:19:33.39 ID:DTZofxgD0.net
- 省略でApple自身痛い目見てるしな
- 77 :名称未設定:2014/06/16(月) 11:19:51.80 ID:uOMRfXSG0.net
- あぁ中括弧ね
- 78 :名称未設定:2014/06/16(月) 12:13:30.86 ID:c96+7m1f0.net
- 2行で済むのが3行に、あるヤツは4行になるやん。どこがいいのだか
可読性という点においてさっぱりだな
- 79 :名称未設定:2014/06/16(月) 12:27:02.57 ID:ORct9htV0.net
- >>78
- 80 :名称未設定:2014/06/16(月) 13:07:24.42 ID:Pde2akN10.net
- 可読性で言えばインデントや改行で表現するpythonが一番読みやすいかな
- 81 :名称未設定:2014/06/16(月) 14:02:18.13 ID:VsUNPjvO0.net
- pythonは俺にとっては読みにくいし書きにくい
- 82 :名称未設定:2014/06/16(月) 14:22:46.13 ID:uOMRfXSG0.net
- Pythonは俺も好きだな
今まで触った言語の中で一番素直で自分のフィーリーングにもピタリと合う言語だわ
- 83 :名称未設定:2014/06/16(月) 14:28:01.35 ID:lXZ+t/c40.net
- ルックスが重要だよな
- 84 :名称未設定:2014/06/16(月) 14:28:32.21 ID:rbIlw6Z90.net
- 開発案件でPythonってのに携わったことがまだ無い…
出始めの頃にコレは流行すんな、と思って自前サイトでちょっとしたもの作って勉強してきたんだが
- 85 :名称未設定:2014/06/16(月) 14:45:41.78 ID:5/7yS7Uh0.net
- 国内ではPythonの案件なんてまずないだろうね
Pythonは海外で流行ってるから海外で仕事するなら覚えて損は無いけど
国内ならRuby使えた方が遥かに仕事に有りつけるし稼げるよ
- 86 :名称未設定:2014/06/16(月) 14:51:12.71 ID:VsUNPjvO0.net
- opencvとかnumpyとか色々便利なもの使えるから色々試すのは捗る
- 87 :名称未設定:2014/06/16(月) 15:02:19.38 ID:DTZofxgD0.net
- pythonの案件は無いが仕事で使うツール作るときに勝手にpython使ってる。
インデントで構文現すのはエディタ選ぶので嫌いだが使ってる
- 88 :名称未設定:2014/06/16(月) 15:03:21.18 ID:RTIADmm70.net
- そもそもRubyの案件だってあるのか?
- 89 :名称未設定:2014/06/16(月) 15:13:18.64 ID:rbIlw6Z90.net
- RubyはWebサービス系の小規模案件で幾度か。
- 90 :名称未設定:2014/06/16(月) 15:21:24.52 ID:5/7yS7Uh0.net
- Rubyの案件知らないとか個人のアプリ開発の人なん?
国で推してるような言語だから案件なんてそこかしこにあるよ
今なんて組み込みにまで触手伸ばしてるくらいだしw
- 91 :名称未設定:2014/06/16(月) 15:51:36.52 ID:RTIADmm70.net
- 知らんな。自社のパッケージソフト開発で委託開発は部署が違うんでね。
- 92 :名称未設定:2014/06/16(月) 16:52:43.66 ID:fqq6NxAV0.net
- 会社や業種によりけりでしょ
うちは順にC++,Java,Objective-C,Pythonかな
- 93 :名称未設定:2014/06/16(月) 18:13:55.22 ID:SMpIbCyP0.net
- pythonて、他で書いた断片を貼り付けた時に、インデント合わせ大変?
エディタが自動でするのかな。
- 94 :名称未設定:2014/06/16(月) 18:50:38.89 ID:VsUNPjvO0.net
- pythonをサポートするエディタじゃないと面倒だと思う。
スペースとタブが混ざったりしたらもうパニック。
- 95 :名称未設定:2014/06/16(月) 19:04:38.07 ID:uOMRfXSG0.net
- コヒペしたコードのインデントはどの言語でも必要でしょ
- 96 :名称未設定:2014/06/16(月) 20:41:24.77 ID:U9+W4XEr0.net
- >>95
括弧でスコープ区切る言語だったら後からでも一括でオートインデント出来るから。
>>94
pythonだとタブとスペースを見た目で区別出来るエディタじゃないとコピペなんて怖くて出来ないよな。
エディタの複数行を一括でインデント調整できる機能も使えないとストレスだし。
pythonサポートしつつ使い慣れたエディタじゃないと、pythonは書けない。
- 97 :名称未設定:2014/06/16(月) 21:03:05.34 ID:uOMRfXSG0.net
- Pythonを使う環境で字下げにタブとスペースが混在するような環境なんてないと思うんだが
いまどき字下げにタブ使うような設定もまれだし
つかそんな環境、他の言語でも環境が変われば字下げがめちゃくちゃな表示になるでしょ
- 98 :名称未設定:2014/06/16(月) 21:08:51.18 ID:SMpIbCyP0.net
- 他の言語はインデントむちゃくちゃでもちゃんと動くからいいです。
- 99 :名称未設定:2014/06/16(月) 21:25:39.07 ID:7Ea1addJI.net
- >>97
俺にはそのいまどきタブとういのもわからんがな
スペースにしたらShiftWidthが異なっていてもというだけじゃないの?
だったらあほな流れだな
- 100 :名称未設定:2014/06/16(月) 21:29:31.79 ID:uOMRfXSG0.net
- 動けばいいという発想か...
まずね、コピペ元のPyhhonのインデントがタブとスペース混じりになってるって想定がありえないし、
Pythonで開発してるような環境にコピーしてきた時にインデントがくずれるって事態もまずあり得ないから
よっぽど糞エディタでPython使ってる変人でもない限り
- 101 :名称未設定:2014/06/16(月) 21:32:20.41 ID:uOMRfXSG0.net
- vim使いってvim固有のワードをみんな知ってるとでも思ってんのか
- 102 :名称未設定:2014/06/16(月) 21:34:43.53 ID:A5u8gIwl0.net
- Pythonもブレース無しでインデント解釈は結果的に失敗だったと思ってるだろう。その失敗もSwiftに生きている。
Swiftは省略やらで何通りも書き方があるのがちょっと気になるけどな。自由と制限はバランスが大事だと思うんだ。
- 103 :名称未設定:2014/06/16(月) 21:36:45.86 ID:ZyVLo29c0.net
- >>100
だからpythonはエディタを選ぶって言ってんじゃん。
- 104 :名称未設定:2014/06/16(月) 21:40:05.66 ID:7Ea1addJI.net
- >>98
正確にはTabStopの方。まあ両方だけど
>>101
普通のエディタにもあるだろ。てか、そんなの気にしなきゃならないのは他人のコードをコピペするぐらいしか想像できないんだがな
- 105 :名称未設定:2014/06/16(月) 21:44:44.02 ID:uOMRfXSG0.net
- エディタを選んで何が悪いんだ
今時Pythonをサポートしないエディタを探してくる方が大変だろ
- 106 :名称未設定:2014/06/16(月) 22:00:01.15 ID:A5u8gIwl0.net
- ClangFormatみたいなのいいよね。ぐちゃぐちゃに書いてもきっちりフォーマットしてくれるの。個人の癖も出ないし他人のコードの可読性が上がる。
Pythonは文法に制限をかける事で同じ効果を得ようとしたわけだが。
- 107 :名称未設定:2014/06/16(月) 22:05:28.76 ID:VsUNPjvO0.net
- エディタのサポート必須でいいならgaucheとかに流行って欲しいな
- 108 :名称未設定:2014/06/17(火) 10:25:37.83 ID:yy8+fWAw0.net
- iBooksでマニュアル読むのはすごく良いな。 ハイライトは元より、メモが残せるのが良い。
コピペでPlaygroudsで試せるのは良いが、著作権表示がコピーに付いて回るのは何とかしてほしいな。
Playgroundsへのペースト時は削除してくれるとか、或はコメント表示にしてくれるとか。
- 109 :名称未設定:2014/06/17(火) 11:25:56.66 ID:wn/PB1NF0.net
- >>108
ひょっとしてわざわざSwift本からコピペしてんの?
なんでWebのリファレンスからコピペしないの?
バカなの?
- 110 :名称未設定:2014/06/17(火) 11:55:47.28 ID:yy8+fWAw0.net
- iBooks版が出た
Using Swift with Cocoa and Objective-C
https://itunes.apple.com/jp/book/using-swift-cocoa-objective/id888894773
Swift Xcodeプロジェクトの概要やObjective-CコードをSwiftに移行するための戦略などが掲載されている
HTML(pdf)版 は今まで通り
https://developer.apple.com/library/prerelease/ios/documentation/swift/conceptual/buildingcocoaapps/index.html
- 111 :名称未設定:2014/06/17(火) 12:07:00.33 ID:yy8+fWAw0.net
- >>109 iBooksの方がハイライトや、メモが書けるから便利なんだよ。 それに全文サーチも出来るから。
Webと両方開いておくのは面倒。
- 112 :名称未設定:2014/06/17(火) 12:23:06.31 ID:T3Gg8Iyz0.net
- webしかドキュメントないとき、自前でepub化する事あるな
ibooksは便利だよ
- 113 :名称未設定:2014/06/17(火) 13:49:17.55 ID:yROXIIiq0.net
- 安直に煽って論破される流れすき
- 114 :名称未設定:2014/06/17(火) 14:12:22.10 ID:gxWYA+b40.net
- wwwwwww
- 115 :名称未設定:2014/06/17(火) 14:19:46.12 ID:yy8+fWAw0.net
- Macで見ててそのまま外に出てもiPhoneでメモなどの状態をそのまま見れるのが便利、外でメモを入れていても同期されてるし。
iBooksが使えない人は PDFで読んだ方が良いだろうね。 目次と全文検索が使える。
Adobe Reader だとメモを入れたり、ハイライトさせたりできるね。 メモが邪魔な入り方をするけど。 デバイス間同期も出来るようだけど。
- 116 :名称未設定:2014/06/17(火) 14:26:30.26 ID:mM9SA75n0.net
- 【The Swift Programming Language】
ttps://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/
【Using Swift with Cocoa and Objective-C】
ttps://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/BuildingCocoaApps
- 117 :名称未設定:2014/06/17(火) 14:37:25.89 ID:xdVySFjQI.net
- もうobjcは覚えなくてもいいんすかねー
- 118 :名称未設定:2014/06/17(火) 14:49:11.79 ID:yy8+fWAw0.net
- Adobe Reader XI って注釈機能を始めかなり使いやすくなってるね。 気が付かなかった。
表面に見える注釈も良いかも。 デバイス間同期も出来るが保存タイミングを間違えると書いた注釈などが上書きされる。
- 119 :名称未設定:2014/06/17(火) 15:19:29.32 ID:+ud3Fr0Y0.net
- 俺も今回iBooksで読みつつメモする便利さを知った。
ドキュメントがアップデートされてメモ元の文章が変わったり無くなったりした時にメモがどう処理されるのかちょっと気になる。
- 120 :名称未設定:2014/06/18(水) 08:29:03.36 ID:vVKKHsNR0.net
- >>117
いずれObjCがSwiftで完全に置き換えられて、Cocoa/Cocoa Touchが全部Swiftで記述されて
今までのドキュメントも全部Swiftベースで書き直されれば覚える必要はなくなるんだろうね。
つか、ObjCでも文法そのものは覚えることなんてほとんどなくて、理解しなきゃならないことの大半は
Cocoa/Cocoa TouchのAPI、デザインパターンとかメモリ管理のあたりなんだが
これはSwiftでも全然変わらないわけだから、ObjCの文法ぐらいサッサと把握して
ドキュメントをどんどん読んでいった方がいいと思うけどな。
- 121 :名称未設定:2014/06/18(水) 08:39:51.53 ID:Dg/CJsnM0.net
- 文法だけならObjCよりSwiftの方がむしろ覚えること多いしw
- 122 :名称未設定:2014/06/18(水) 08:49:32.79 ID:rlhAoOAS0.net
- Playgroundやら裏で動いてるプロセスやら落ちまくるけど、
なんでWWDCのデモは一度もクラッシュせずにあんなに軽快に実演できたんだろ
デモ見ながら手打ちして確かめてる最中も落ちるまくるよ
英語環境でやってるから日本語フォントのせいじゃないとは思うんだが
- 123 :名称未設定:2014/06/18(水) 08:49:43.16 ID:TU/Um7WQ0.net
- >>120
すでにReferenceは両対応。WWDCでもSwiftのセッションじゃないのに、Swiftで説明したりしてる。
- 124 :名称未設定:2014/06/18(水) 09:17:05.06 ID:taYin95L0.net
- >>120
後半に大いに同意
アプリを書くには言語よりもデザインパターンやSDKを学習する時間の方がはるかに大きいよ
その意味ではObjCでアプリを書いた知識は大いに役立つよ
- 125 :名称未設定:2014/06/18(水) 09:54:02.81 ID:lXj4N2Fi0.net
- Objective-CはCを習得していれば一日で憶えられるくらいシンプルな言語だからな。
- 126 :名称未設定:2014/06/18(水) 10:08:08.20 ID:EChl2MGj0.net
- つまり、荻原本を一日で読み終えられると
- 127 :名称未設定:2014/06/18(水) 10:44:48.13 ID:lXj4N2Fi0.net
- >>126
普通にプログラミングする上ではあそこまで深くやる必要はない。
今の版は知らないけど、ヒレガス本に簡単なObjective-C入門の章と
カテゴリの章があったじゃない?あの程度で過不足なく使えるだろ。
- 128 :名称未設定:2014/06/18(水) 11:01:26.73 ID:EChl2MGj0.net
- クソゲーならね
- 129 :名称未設定:2014/06/18(水) 11:27:16.38 ID:C7bojRFO0.net
- コンパイル不要のインタプリタ言語として走らせられるようになるかな
- 130 :名称未設定:2014/06/18(水) 11:59:02.13 ID:3o9YdU/f0.net
- 誰か
var i: Int!
i = 100
if i {
println("i=¥(i)")
}
と
var i: Int?
i = 100
if i {
println("j=¥(i)")
}
の意味的な違いを教えてくれないか?
つか、?っていらなくね? !だけでよくね?
仕様的に被ってる気がするんだが
- 131 :名称未設定:2014/06/18(水) 12:13:40.20 ID:dQL2h+OE0.net
- タートルで操作したい
- 132 :名称未設定:2014/06/18(水) 12:14:14.20 ID:p3kng/rt0.net
- >>122
使ってるバージョンが配布されてるものとは違うんだろう。
いや、でもSwiftのセッションでは無かったかも知れないけどXcodeが死んでるセッションビデオはあったよ。
- 133 :名称未設定:2014/06/18(水) 12:15:24.75 ID:p3kng/rt0.net
- デモ中にXcodeがクラッシュしてたって意味ね。
- 134 :名称未設定:2014/06/18(水) 12:30:19.88 ID:3o9YdU/f0.net
- 誰も俺の質問に答えられないのか...
このスレも役立たずだな
- 135 :名称未設定:2014/06/18(水) 12:31:22.67 ID:3RuWMIgw0.net
- ImplicitlyUnwrappedOptional と Optional の違い
- 136 :名称未設定:2014/06/18(水) 12:34:18.35 ID:3o9YdU/f0.net
- いや、言葉の違いは分かってるからw
- 137 :名称未設定:2014/06/18(水) 12:37:54.60 ID:3o9YdU/f0.net
- 自己解決した。もうお前らには聞かねぇ
- 138 :名称未設定:2014/06/18(水) 13:09:20.80 ID:oemrhNGw0.net
- >>130
前者はOptionalじゃない引数が必要な関数、メソッドに渡す時に!を付けなくていい。
後者は引渡す時に!付ける必要がある。
ここのブログ読んで理解しただけで自分で実験した訳じゃないから間違ってても怒らないでね
ttp://blog.livedoor.jp/rapple_lab/archives/7720544.html
- 139 :名称未設定:2014/06/18(水) 13:15:32.45 ID:p3kng/rt0.net
- なんで仕様が被ってると思ったのかが謎だ
- 140 :名称未設定:2014/06/18(水) 13:50:28.91 ID:bvc7myBr0.net
- 糞みたいな質問、たった30分での回答を期待、自己解決したと書き解決法は書かず
良い反面教師だな
- 141 :名称未設定:2014/06/18(水) 14:01:19.23 ID:cegUZpnN0.net
- Object-CからCの要素を省いたって・・・オブジェクト指向理解できなかった俺はどうすんの?
- 142 :名称未設定:2014/06/18(水) 14:03:20.93 ID:cegUZpnN0.net
- カーニハンが怒ってるぞ!
- 143 :名称未設定:2014/06/18(水) 14:04:23.88 ID:lXj4N2Fi0.net
- RATFORを使えば許される
- 144 :名称未設定:2014/06/18(水) 14:05:06.93 ID:IU0PaHzu0.net
- オブジェクト指向が理解出来ないという事が理解出来ない。めっちゃ簡単な考え方なのに
- 145 :名称未設定:2014/06/18(水) 14:27:15.51 ID:R3y3VpzL0.net
- Closure理解できない。 かなり重要な基本みたいだけど。 何となく解るけど応用できない。
Closure を使った例誰か作って。 funcの入れ子とか.mapじゃない奴
{(parameter) -> Type in Statement}
をどう利用するのかわからない。
- 146 :名称未設定:2014/06/18(水) 14:39:33.38 ID:Dg/CJsnM0.net
- javascriptの勉強でもすればいい
- 147 :名称未設定:2014/06/18(水) 14:51:19.52 ID:s8WML8P70.net
- >>145
クロージャーを引数に取るメソッド作ってみたら分かる。
引数と結果の型だけ定義して、処理の内容は呼び出し元が決める事が出来るから抽象化が捗るのよ。
出先だからコード書けないけど、夜まで誰もコード上げなかったら何か書くわ
- 148 :名称未設定:2014/06/18(水) 14:55:12.65 ID:R3y3VpzL0.net
- >>146 javascript も少し検索したけど入れ子のサンプルとかごく当たり前の事しか書かれていない。
Swiftはもっと奥が深いように見える。
- 149 :名称未設定:2014/06/18(水) 14:56:51.54 ID:R3y3VpzL0.net
- >>147 そうそう、そんなサンプルを見たかった。 期待してます。
- 150 :名称未設定:2014/06/18(水) 15:00:40.10 ID:RqCUdIS00.net
- よく見るのはソートと受信周りだな
- 151 :名称未設定:2014/06/18(水) 16:24:19.00 ID:lXj4N2Fi0.net
- closureってblocksのこと?
以前はcall backで処理してたのを置き換えたものだろ。慣れるしかないな。
blocks使ったメソッドはcocoaに多いから避けて通れない道だな。
- 152 :新言語Swiftを語るスレ var2:2014/06/18(水) 17:32:17.16 ID:R3y3VpzL0.net
- sortのクロージャで使ってるs1,s2は何だともやもやしてました。
今外からで、何も試せないんだけど、sort の考え方はこんな風に考えて良いですか?
例題のsort基本構文
let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
sort(names, { (s1: String, s2: String) -> Bool in
return s1 > s2 })
(最終的には sort( names , > ) で良い。)
理解ここから---->
sortの中に {クロージャのメソッドがあり、それにsort内部で、s1,s2を渡し大小関係から交換してる} ?
s1,s2はsortロジックにより何を渡してるかわからないけど、例えば今までの最大/最小値と、次の値とか?
<-----理解ここまで
そんな内部処理なんか知ったこっちゃないから、クロージャ内第二パラメータが > だけと言うのは合理的。
と思うけどじゃ、
sort ( names , s1 > "C" ) とか
sort ( names , "C" > s2 ) とかしたら?
意味不明。 訳わかめ。
何を期待するのかも解ら無いけど。
わかったつもりで整理しようとしたら帰って混乱してきました。
クロージャのパラメータが何かが解らないのかも。
- 153 :名称未設定:2014/06/18(水) 17:45:42.69 ID:3RuWMIgw0.net
- それは比較関数の話だよね。
そこはあまりクロージャと関係ない部分なので
自前でソートする関数作ってみたほうがいいかも、、、
何がどう渡ってくるかはソートのアルゴリズム次第
最終的にはすべての要素が1回以上入るけどね
- 154 :名称未設定:2014/06/18(水) 18:01:08.47 ID:Dg/CJsnM0.net
- クロージャ以前の問題だな
- 155 :新言語Swiftを語るスレ var2:2014/06/18(水) 18:07:14.25 ID:R3y3VpzL0.net
- >>153 有難うございます。モヤモヤが段々晴れて来ました。
- 156 :147:2014/06/18(水) 18:49:24.44 ID:I/Z6I9uP0.net
- コード書いてみた。
func selectItem<T>(list: Array<T>, condition:(T) -> Bool) -> Array<T> {
var result = Array<T>()
for obj in list {
if (condition(obj)){
result.append(obj)
}
}
return result
}
let array1 = ["Hello", "Hello World", "World", "HogeHoge", "HogeFuga"]
let array2 = selectItem(array1, { item -> Bool in item.hasPrefix("Hello") })
// array2 の中身は["Hello", "Hello World"] になる
item.hasPrefix("Hello")の部分を好きな条件に置き換えたらその条件で配列から項目を取得出来る。
このサンプルはstring配列でやってるから単純だけど、例えば独自クラスで条件付けて配列を絞り込みたい場合でも
クロージャーとジェネリクスを使う事でこのselectItemを使う側が取得条件のコントロールを出来る。
こんな解説で分かるかな?
- 157 :147:2014/06/18(水) 18:52:34.59 ID:I/Z6I9uP0.net
- あ、ごめん。BathyScapheで書き込みしたらエラー出たから普通にブラウザに貼り付けたらインデント消えたわ…
- 158 :名称未設定:2014/06/18(水) 20:56:11.83 ID:R3y3VpzL0.net
- >>157 有難うございました。 じっくり追いかけてみます。
- 159 :名称未設定:2014/06/18(水) 22:44:10.73 ID:R3y3VpzL0.net ?2BP(1000)
-
>>157
済みません、見やすくするために全角空白を入れました。(コピペする人は全角空白を半角とかタブに変更してください)
func selectItem<T>(list: Array<T>, condition:(T) -> Bool) -> Array<T> {
var result = Array<T>()
for obj in list {
if (condition(obj)){
result.append(obj)
}
}
return result
}
let array1 = ["Hello", "Hello World", "World", "HogeHoge", "HogeFuga"]
let array2 = selectItem(array1, { item -> Bool in item.hasPrefix("Hello") })
println(array2)
質問
1) サンプルは殆どアレイの例ですが、アレイ以外ではあまり使わないのでしょうか?
2) selectItemのパラメータは、 Array<T> と condition:(T) -> Bool の二つで
呼び出し側のクロージャのパラメータ item が condition:(T) に対応?
3) condition:(T) は、itemをパラメータとする condition(item: String) 関数と見れば良いのでしょうか。
Closureまでとジェネリックの斜め読みしかしていないので頓珍漢な質問かもしれませんがお許しください。
何とか対応付けは出来たようですが、頭の中ですっきりと結びつきません。 自分で練習してみるしかありませんね。
有難うございました。
- 160 :名称未設定:2014/06/18(水) 23:13:52.66 ID:EChl2MGj0.net
- >>130
回答がここにあるんだが
ttp://stackoverflow.com/questions/24083842/what-is-the-difference-between-string-and-string-two-ways-of-creating-an-opti/24083994#24083994
多分、ここの住人は使い分けをよく理解していないと思う
まぁ俺も!だけでいいじゃんとは思うけど
最初に?を実装したけど、Obj-Cとの連携を実装してて後付けで!が必要になって?と!が混在することになったんじゃないかと邪推しなくもない
- 161 :名称未設定:2014/06/18(水) 23:23:43.15 ID:Dg/CJsnM0.net
- !だけでいいとか変なこと言うなよ
むしろほとんどの場合?を使うべきで!のほうがおまけだろ
- 162 :名称未設定:2014/06/18(水) 23:25:06.67 ID:bAvuAB/v0.net
- ?は無くしてデフォでnilを許容して欲しいってことなのか
- 163 :名称未設定:2014/06/18(水) 23:39:38.42 ID:EChl2MGj0.net
- !じゃなくて?でなければいけないケースなんてないだろ
?のメリットはアンラップ忘れによるケアレスミスをコンパイル時に防いでくれるぐらいのもんだろ
まぁそういう意味では基本?を使うってのは間違いではないが
- 164 :名称未設定:2014/06/19(木) 00:06:18.48 ID:NAtXci350.net
- 俺も ? が主だと思うな。つか ! は何であるのか分からんわ。
- 165 :名称未設定:2014/06/19(木) 00:13:35.87 ID:gv2v8HFg0.net
- >>163
メリット・デメリットだけじゃなくて、コードにどういう意味を持たせるかと言う視点で考えるべき
もしかしてOptionalがある世界でnilが入ってたら、それは必ず意味のあるnilだってことが分かってないんじゃないか
- 166 :名称未設定:2014/06/19(木) 00:27:16.36 ID:crKbTNiN0.net
- >>165
解釈ではそうだな。この変数は空もありうると
でも、?に持たせているその意味を、!に持たせようと思えばもたせられなくもないだろ、使う側の解釈次第で
?と!があってそれぞれに意味があるのは分かる
ただ、文法的には、!を?と同じように使えてしまうと言ってる
なんにしても、Swiftの!と?の使い分けは、初心者にとってはC言語の*(ポインタ)と&(参照)の使い分けに匹敵する紛らわしさがあるだろ
げんに、>>164が分からないと言ってるし
- 167 :名称未設定:2014/06/19(木) 00:35:31.52 ID:crKbTNiN0.net
- あ、参照はC++だったな
- 168 :名称未設定:2014/06/19(木) 00:36:20.22 ID:y0PaR5Jw0.net ?2BP(1000)
-
>>164 !が有れば実行時にnil チェックが省けるからスピード的に有利だからでは?
? だと都度 nil チェックの必要が出てくる.。
- 169 :名称未設定:2014/06/19(木) 00:44:07.31 ID:gv2v8HFg0.net
- >>168とか見てるとOptionalがあっても糞コードはなくならないんだろうなって悲しくなる
ふざけた理由でOptionalをスポイルするなよ
- 170 :147:2014/06/19(木) 08:15:14.85 ID:9MzOrLiY0.net
- >> 159
GenericsもArrayも使わないサンプル作ったよ
class ClosureSample{
let val1:Int
let val2:Int
init(val1:Int, val2:Int) {
self.val1 = val1
self.val2 = val2
}
func compute(operator:(val1:Int, val2:Int) -> Int) -> Int {
return operator(val1:self.val1, val2:self.val2)
}
}
let sample = ClosureSample(val1:9, val2:3)
println(sample.compute({(v1, v2) -> Int in v1 + v2} )) // 12
println(sample.compute({(v1, v2) -> Int in v1 - v2} )) // 6
println(sample.compute({(v1, v2) -> Int in v1 * v2} )) // 27
println(sample.compute({(v1, v2) -> Int in v1 / v2} )) // 3
> selectItemのパラメータは、 Array<T> と condition:(T) -> Bool の二つで
> 呼び出し側のクロージャのパラメータ item が condition:(T) に対応
{ item -> Bool in item.hasPrefix("Hello") } が conditionに対応
そもそも君はconditionの認識間違ってる。condition:(T)でワンセットではなくて、
「(T) -> Bool」部分がワンセットでそれに付けた名前がcondition。
つまり、selectItem関数は
「T型だけが入ったArray(list)とT型の引数を渡されてBoolの結果を返す関数(Bool)を渡してね。
そしたらcondition実行してtrueになったオブジェクトだけ入ったArray(result)を返すから。」という関数。
3は上記の説明を読んで理解出来たら自ずと理解出来るはず。頑張ってみて。
分からない事あったらまた質問してくれていーよー
- 171 :名称未設定:2014/06/19(木) 08:37:15.91 ID:2LIHAWoa0.net
- クロージャというより、ただの関数オブジェクトだな
- 172 :名称未設定:2014/06/19(木) 09:04:22.16 ID:XX4Rnwh+0.net
- >>171
クロージャの使い方の説明としては丁度いいんじゃね?
- 173 :名称未設定:2014/06/19(木) 09:16:27.18 ID:wdQM6CTF0.net
- ぼあどぺえぽ 魚おう
ノーファン伊豆のとファねべいば
安倍こべなんなのえべこめにゃの
- 174 :名称未設定:2014/06/19(木) 09:39:06.42 ID:un9YWNB90.net
- これでいいじゃん
func makeCalculator(val1: Int, val2: Int) -> (operator: (Int, Int) -> Int) -> Int {
func calculator(operator: (Int, Int) -> Int) -> Int {
return operator(val1, val2)
}
return calculator
}
var calc = makeCalculator(20, 10)
calc(+)
calc(-)
calc(*)
calc(/)
- 175 :147:2014/06/19(木) 09:49:26.36 ID:wD6/S3QT0.net
- >>174
最初そんな感じで書こうかと思ったけど、クロージャ良く分かってないって事だったから省略記法使うと余計混乱させるかと思って。
関数にせずにクラス作ったのもオブジェクト指向寄りの書き方した方がObjC使ってた人には分かり易いかなー?と思ったから。
- 176 :名称未設定:2014/06/19(木) 09:55:14.30 ID:un9YWNB90.net
- みそは、外側の関数の引数を内側の関数で使ってるところね
- 177 :名称未設定:2014/06/19(木) 10:01:05.28 ID:un9YWNB90.net
- よくみたら不要な記述がはいってた。
func makeCalculator(val1: Int, val2: Int) -> ((Int, Int) -> Int) -> Int {
func calculator(operator: (Int, Int) -> Int) -> Int {
return operator(val1, val2)
}
return calculator
}
- 178 :名称未設定:2014/06/19(木) 10:03:41.01 ID:un9YWNB90.net
- ついでに、ジエネリックス版
func makeCalculator<T>(val1: T, val2: T) -> ((T, T) -> T) -> T {
func calculator(operator: (T, T) -> T) -> T {
return operator(val1, val2)
}
return calculator
}
- 179 :147:2014/06/19(木) 10:37:10.77 ID:DQ1fbImk0.net
- ジェネリックス版作るならval1とval2の型が異なってても大丈夫なように作ろうぜ!
今実行環境無いからコード書けないけど…
- 180 :名称未設定:2014/06/19(木) 10:57:57.38 ID:un9YWNB90.net
- 異なる型を受け付けるには、どちらの型に合わせるか決める必要があるのと、型の変換が可能なことを保証する必要があるけど...
- 181 :147:2014/06/19(木) 11:10:46.57 ID:fAjAoq4b0.net
- >>180
こんな感じのイメージだったけどSwiftだとこれ出来ないっけ?
func makeCalculator<T1,T2,T3>(val1: T1, val2: T2) -> ((T1, T2) -> T3) -> T3 {
func calculator(operator: (T1, T2) -> T3) -> T3 {
return operator(val1, val2)
}
return calculator
}
- 182 :名称未設定:2014/06/19(木) 11:17:55.44 ID:un9YWNB90.net
- >>181
型に厳格なSwiftでそんな単純な記述じゃ無理
Int と Doubleの演算すらデフォじゃエラーになるし
- 183 :147:2014/06/19(木) 11:35:41.51 ID:Sj/GoPbH0.net
- >>182
呼び出し側の使い方が多分食い違ってるわ
// HogeとFugaはそれぞれvalというInt型プロパティを持ったクラス
// コンストラクタ引数はvalに設定する
let hoge = Hoge(1)
let fuga = Fuga(3)
var calc = makeCalculator(hoge, fuga)
calc($0.val + $1.val) // 4
こういうイメージ。文法合ってるかは分からんけど。
- 184 :名称未設定:2014/06/19(木) 11:41:33.23 ID:gv2v8HFg0.net
- その場合valというInt型のプロパティを持ってるっていうプロトコルに対して型パラメータ書かないとダメだろ
- 185 :名称未設定:2014/06/19(木) 11:44:47.25 ID:y0PaR5Jw0.net
- >>170 有難うございます。 解ってきた気がします。
funcのパラメータが val1,val2 とインスタンス名と同じで解りづらかったので別名p1 p2にしてみました。
更に >>176 さんのみそを付けて、省略形が使えるようにしてみました
class ClosureSample{
let val1:Int
let val2:Int
init(val1:Int, val2:Int) {
self.val1 = val1
self.val2 = val2
}
func compute(operator:(Int, Int) -> Int) -> Int { // <= func compute(operator:(p1:Int, p2:Int) -> Int) -> Int {
return operator(self.val1, self.val2) // <= return operator(p1:self.val1, p2:self.val2)
}
}
let sample = ClosureSample(val1:9, val2:3)
println(sample.compute({(v1, v2) -> Int in v1 + v2} )) // 12
println(sample.compute({(v1, v2) -> Int in v1 - v2} )) // 6
println(sample.compute({(v1, v2) -> Int in v1 * v2} )) // 27
println(sample.compute({(v1, v2) -> Int in v1 / v2} )) // 3
let c = sample.compute
c(+) // same as c( { (v1, v2) -> Int in v1 + v2 } )
c(-)
c(*)
c(/)
>>176 のヒントから引数省略
- 186 :名称未設定:2014/06/19(木) 11:48:07.73 ID:un9YWNB90.net
- だね、OperatableとかCastableとかそんなプロトコルを用意するとこからはじめないと
ただ、そこまで労力はらってまでやるようなことかという気もする
- 187 :名称未設定:2014/06/19(木) 11:53:47.45 ID:un9YWNB90.net
- >>185
いや、みそは省略形じゃないんだが...まいいや
- 188 :147:2014/06/19(木) 12:04:46.60 ID:lHhBuzGJ0.net
- いや、operatorはT1、T2の二つの型を引数に取ってT3を返すって事を定義してるだけだからプロトコル必要無いって。
省略記法のせいで演算子の両辺として成り立たないとダメって勘違いしてないか?
極端な話、
var calc = makeCalculator(hoge, fuga)
calc({ return 4})
って感じで引数全く使わない結果を返したっていいんだぞ。
HogeにFugaを受け取って何かいい感じに計算するメソッドが有ったとしたら
calc({
$0.addFuga($1)
return $0.val
})
でもいいし。
- 189 :名称未設定:2014/06/19(木) 12:06:37.45 ID:y0PaR5Jw0.net
- >>174 に >>177 の修正を加えました。 これもじっくり見させていただきます。
func makeCalculator(val1: Int, val2: Int) -> ((Int, Int) -> Int) -> Int {
func calculator(operator: (Int, Int) -> Int) -> Int {
return operator(val1, val2)
}
return calculator
}
var calc = makeCalculator(20, 10)
calc(+) // calc({(v1,v2) -> Int in v1 + v2}) と同じ
calc(-)
calc(*)
calc(/)
//>>176 >みそは、外側の関数の引数を内側の関数で使ってるところね
- 190 :名称未設定:2014/06/19(木) 12:09:59.83 ID:un9YWNB90.net
- >>188
それ、わざわざ、クロージャ使う意味も、ジェネリックス使う意味もないよね
無理矢理つかってみたました的な、手段が目的になってるパターン
- 191 :147:2014/06/19(木) 12:15:42.98 ID:NCI5HiYt0.net
- >>190
うん、それ言われると思ったけどそれを言い出すとそもそも今話し合ってる関数自体が別にクロージャもジェネリックスも使わなくていいものだよね?w
今進行中の話の要点はクロージャの使い方についてなんだから、さっきの書き方でプロトコルとかわざわざ使わなくても関数として成り立つよ、という事が説明したかったの
- 192 :名称未設定:2014/06/19(木) 12:46:07.44 ID:q8P3NwXS0.net
- これ、クロジャーを理解すると何が美味しくなりましか?
- 193 :145:2014/06/19(木) 12:46:30.97 ID:y0PaR5Jw0.net
- >>185 一応理解できました。 クロージャの練習にあえて function をクロージャにしてみました。
let makeCalculator = { (val1: Int, val2: Int) -> ((Int, Int) -> Int) -> Int in
let calculator = { (operator: (Int, Int) -> Int) -> Int in
return operator(val1,val2)
}
return calculator
}
var calc = makeCalculator(20, 10)
calc(+) //calc({(v1,v2) -> Int in v1 + v2})
calc(-)
calc(*)
calc(/)
あまり意味は有りませんが、function と closure が全く同じだと理解できてクロージャに有るパラメータの意味が理解できた気がします。
呼び出し側のパラメータに使うクロージャは、名前なしの関数だと理解すれば良いのでしょうか。
- 194 :145:2014/06/19(木) 12:50:29.60 ID:y0PaR5Jw0.net
- >>192 今私なりに理解できた範囲では、呼び出しパラメータにクロージャを使うとカメレオン的関数が使えると言う所でしょうか。
関数の動きを呼び出し側で変更できる。
もっと色々メリットが有るのでしょうが。
- 195 :名称未設定:2014/06/19(木) 12:54:27.61 ID:OrlxOj/Q0.net
- 高階関数でググればいいんじゃね
- 196 :147:2014/06/19(木) 12:56:49.15 ID:+vfsPjEG0.net
- >>193
>呼び出し側のパラメータに使うクロージャは、名前なしの関数だと理解すれば良いのでしょうか。
合ってる。クロージャは名前無し関数を定義する為の記法ってだけだからね。クロージャ単体で考えるとそう複雑な事は無い。
- 197 :名称未設定:2014/06/19(木) 14:31:28.44 ID:Sj/GoPbH0.net
- Swiftの公式ドキュメントのクロージャの章を英語の説明読まずにコードだけ追ってたら
確かにsort(>)とかcalc(+)とかみたいに演算子ありきの物だと勘違いしてもおかしくないかもな。
- 198 :名称未設定:2014/06/19(木) 15:23:08.56 ID:wdQM6CTF0.net
- WE ALL livin in american let maUSSA= { (val1: InAND OUt, val2: InORAUt0) -> ((Int, Int) -> Int) -> Int in
- 199 :名称未設定:2014/06/19(木) 20:57:42.89 ID:kN5R1myH0.net
- >>194
>>196が言うようにクロージャは名無しの関数の記法にすぎないんだけど、
関数(or 手続き)そのものをオブジェクトとして扱うことができると考えると、
その応用範囲の展望は大きく広がる
たとえば、SQL文字列をクエリ・オブジェクトとして組立てる C# の LINQ や
HTML/XML DOM操作手続きそのものをオブジェクトとして組立てる
JavaScript の jQuery が良く知られている
(おそらく Swift 公式リリースの数ヶ月後には、これらと類似の発想やスタイルによる
Swift プロジェクトが、GitHub 上で溢れるようになっていくと想像しています)
また非関数型言語によるクロージャ活用について、以下の文書には入門的な解説がある
・高階関数としてのブロック - Rubyによる関数型プログラミング
http://www.h6.dion.ne.jp/~machan/misc/FPwithRuby.html#Blocks_as_higher_order_functions
(Swift の「クロージャ」に相当する用語は、Ruby や Smalltalk だと「ブロック」になります )
こうした(ObjCでは取り残されていた)モダンな関数型プログラミング・スタイルが
Swift の登場によって OSX/iOS 上でも利用可能になる意義は大きいと思う
- 200 :名称未設定:2014/06/19(木) 21:22:16.97 ID:V2SHTmou0.net
- クロージャと、無名関数もしくは関数オブジェクトは狭義の意味ではイコールではないけどな
- 201 :名称未設定:2014/06/19(木) 21:22:57.85 ID:I9931p9r0.net
- しばらく見ないうちにすごい良スレになっとるw
- 202 :名称未設定:2014/06/19(木) 21:36:53.01 ID:NAtXci350.net
- 変数キャプチャして、とか奥が深い
- 203 :名称未設定:2014/06/20(金) 14:58:11.87 ID:KCGfHSkX0.net
- さっそくスイフトの本が出るようですよ。
ttp://www.amazon.co.jp/dp/B00L35LRPI
(アフィコード抜いてあるよ)
- 204 :新言語Swiftを語るスレ var2:2014/06/20(金) 15:10:23.99 ID:WGshGe230.net
- >>203 75ページで600円と言う中身スカスカの本ね。
- 205 :名称未設定:2014/06/20(金) 15:24:45.43 ID:+9DPJgz20.net
- 公式ドキュメントでも500ページあるのにね
- 206 :名称未設定:2014/06/20(金) 16:24:35.85 ID:JBP8jmqn0.net
- >>203
さて、Swift-jpを叩いてた意識の高い人達はどうするんですかね
- 207 :名称未設定:2014/06/20(金) 16:27:24.65 ID:JBP8jmqn0.net
- ああ、すまん
訳本じゃなくて解説本なのか
- 208 :名称未設定:2014/06/20(金) 16:29:13.87 ID:Xot+Uvbq0.net
- 誰が買うんだ、いやマジで
- 209 :名称未設定:2014/06/20(金) 16:36:34.42 ID:dI4aHvJM0.net
- 92ページとあるけど?なぜかベストセラー一位になってる。
早いもん勝ちか。
- 210 :名称未設定:2014/06/20(金) 16:39:48.44 ID:JBP8jmqn0.net
- クラスメソッドなら名前も売れてるし信用されてるんじゃね
- 211 :新言語Swiftを語るスレ var2:2014/06/20(金) 17:05:52.10 ID:WGshGe230.net
- >>92 epub で、75ページ、紙本で92ページ の 予定!
誰が買うんだ?
こんなので商売出来るんだったら楽だな。
- 212 :名称未設定:2014/06/20(金) 17:07:58.36 ID:8W7+Zcu20.net
- クラスメソッドって中身スカスカのブログ記事しか書いてないイメージなんだが…
- 213 :名称未設定:2014/06/20(金) 18:05:46.66 ID:uS8sFaAf0.net
- えw
紙でも出すんだアレでw
92ページって、マンガの単行本でも200ページぐらいあるのに、それの半分以下かよw
- 214 :名称未設定:2014/06/20(金) 18:33:27.74 ID:EZV9+dfk0.net
- JBP8jmqn0のようなおっちょこちょいか、なんでもいいから日本語のを待望しているのが買うんだろうな
- 215 :名称未設定:2014/06/20(金) 22:27:15.90 ID:d611jIOM0.net
- クラスメソッドって○○試してみた的な記事量産してるイメージだ
- 216 :名称未設定:2014/06/21(土) 00:35:15.82 ID:giNBtfrV0.net
- iOS7が一般リリースされた際にどこよりも早くiOS7記事を大量に投稿した会社か。
記事の内容は薄かったけど。
まあ名を売るにはアップル関連が一番だしね。
- 217 :名称未設定:2014/06/21(土) 05:09:42.02 ID:L8Hh//mI0.net
- 公式ドキュメント日本語訳きぼん
- 218 :名称未設定:2014/06/21(土) 05:13:11.37 ID:G12y9XnX0.net
- やでもこの人のうあたてんないほうそでよくきわあ
- 219 :名称未設定:2014/06/21(土) 05:18:53.94 ID:G12y9XnX0.net
- マジか藤田がまさか
ミッきゃんか
- 220 :新言語Swiftを語るスレ var2:2014/06/21(土) 05:59:01.61 ID:7hD2GAwt0.net
- >>217 公式で出てくるから焦んなさんな。9月には出せるのでは?
- 221 :名称未設定:2014/06/21(土) 13:15:54.01 ID:5R+zDWUk0.net
- swiftって関数内に関数定義しても大丈夫だよね
フィボナッチ数を求めるプログラムがコンパイルエラーだすんだけど何で?
import Foundation
func fib(n:Int) -> Int {
func fibiter(a:Int, b:Int, c:Int) -> Int {
if c == 0 {
return a
}
return fibiter(b, a + b, c - 1)
}
return fibiter(0, 1, n)
}
println(fib(5))
- 222 :名称未設定:2014/06/21(土) 14:03:39.77 ID:P6Fv9csS0.net
- func fib(n:Int) -> Int {
println("fib(¥(n))")
var fibiter: (Int, Int, Int) -> Int = {_, _, _ in return 0 }
fibiter = {a, b, c -> Int in
println("fibiter(¥(a),¥(b),¥(c))")
if c == 0 {
return a
}
return fibiter(b, a + b, c - 1)
}
return fibiter(0, 1, n)
}
println(fib(7))
// fib(7)
// fibiter(0,1,7)
// fibiter(1,1,6)
// fibiter(1,2,5)
// fibiter(2,3,4)
// fibiter(3,5,3)
// fibiter(5,8,2)
// fibiter(8,13,1)
// fibiter(13,21,0)
// 13
- 223 :名称未設定:2014/06/21(土) 18:59:54.20 ID:vdKwaCZk0.net
- Could not find an overload for '' that accepts the supplied arguments
うざすぎワロえない
直感的じゃないななんか
- 224 :名称未設定:2014/06/21(土) 19:09:16.02 ID:7hD2GAwt0.net
- >>223 シャーないな、まだ語彙が少ない赤ちゃんだから。
エラーメッセージは確かになれ無いと解りづらいが、慣れればなんとかなるレベルでは?
- 225 :名称未設定:2014/06/21(土) 19:21:26.37 ID:ReyER1zY0.net
- CPUの歓声が聞こえない奴が(Swiftを)使うのは難しい
- 226 :名称未設定:2014/06/21(土) 20:44:22.50 ID:puRJtG9q0.net
- AppleScriptとしても使えればいいのに
- 227 :名称未設定:2014/06/22(日) 00:23:47.16 ID:PFnDdri90.net
- >>221-222
関数内関数で自己呼び出しはエラーになるのか。
で222みたいに、関数を変数と宣言した後、最代入しなおすみたいなテクニックが必要になると。
まあその内修正されるよなコレ。
- 228 :名称未設定:2014/06/22(日) 01:43:35.17 ID:XCEVwA3k0.net
- >>221 は コンパイルエラーが出るんじゃなくて内部エラーが出たな。 多分バグだろう。
- 229 :名称未設定:2014/06/22(日) 01:55:38.72 ID:cC4kcWIk0.net
- Swiftで脱アルゴリズム!iOS開発を関数型(宣言型)プログラミングへパラダイムシフトしてみる【脱アルゴリズム宣言@】
http://qiita.com/kenokabe/items/41189c45001321c9e283
勉強になるな。作者もイケメンだし。
- 230 :名称未設定:2014/06/22(日) 02:00:53.59 ID:XCEVwA3k0.net
- struct Point {
var x = 0.0, y = 0.0
mutating func moveByX(deltaX: Double, y deltaY: Double) { // <<これ
x += deltaX ; y += deltaY
}
}
var somePoint = Point(x: 1.0, y: 1.0)
somePoint.moveByX(2.0, y: 3.0) // <<これ
こんなサンプルを何気なく見ていたけど、結構いやらしいんだね。
funcの外部パラメータ名 y を外しても deltaY が外部名となってしまう。
structやclass 内のfuncの時だけ例外的扱いになるみたいだね。
struct Point {
var x = 0.0, y = 0.0
mutating func moveByX(deltaX: Double, deltaY: Double) { // <<これ
x += deltaX ; y += deltaY
}
}
var somePoint = Point(x: 1.0, y: 1.0)
somePoint.moveByX(2.0, deltaY: 3.0) // <<これ
一般funcと混同しないためには、structやclass内funcには全て外部パラメータ名を与えた方が良いのかな?
struct Point {
var x = 0.0, y = 0.0
mutating func moveBy(x deltaX: Double, y deltaY: Double) { // <<これ
x += deltaX ; y += deltaY
}
}
var somePoint = Point(x: 1.0, y: 1.0)
somePoint.moveBy(x: 2.0, y: 3.0) // <<これ
- 231 :名称未設定:2014/06/22(日) 02:04:03.69 ID:PFnDdri90.net
- >>229
https://avatars2.githubusercontent.com/u/1316994?s=460
言ってやるなよ
- 232 :名称未設定:2014/06/22(日) 03:19:58.87 ID:XCEVwA3k0.net
- >>229 その1〜10まで足すと言うのをやってみた。
let numbers = [1,2,3,4,5,6,7,8,9,10]
let result = numbers.reduce(0){$0+$1}
println(result)
reduceは、Swift Standard Library に入っていた。
上の例は初期値 0 として、連続reduce加算
1〜10の配列を自動的に作るのはどうやる?
- 233 :名称未設定:2014/06/22(日) 04:00:02.88 ID:PFnDdri90.net
- Array<Int>(1..10)
- 234 :名称未設定:2014/06/22(日) 04:51:12.06 ID:XCEVwA3k0.net
- >>233 有難う。 Int[]を使って >>232 を書き直すと
println( Int[](1...10).reduce(0){$0+$1} )
- 235 :名称未設定:2014/06/22(日) 04:52:39.49 ID:bi1HHdpt0.net
- numbers.reduce(0, +)ってダメだっけ
- 236 :名称未設定:2014/06/22(日) 05:12:31.91 ID:XCEVwA3k0.net
- >>235 それでも行ける。
println( Int[](1...10).reduce(0,+) )
- 237 :名称未設定:2014/06/22(日) 05:53:35.27 ID:XCEVwA3k0.net
- こんなのが出来てた
ExSwift
https://github.com/pNre/ExSwift/blob/master/README.md
JavaScript (Lo-Dash, Underscore) & Ruby inspired set of Swift extensions for standard types and classes.
- 238 :名称未設定:2014/06/22(日) 08:04:24.28 ID:9d+4HjEn0.net
- なんでSwiftで脱アルゴリズムなんだ?
別に関数型の機能使ったってアルゴリズムはアルゴリズムなんだが。
forのループも再帰でループもアルゴリズムでしょ。
- 239 :名称未設定:2014/06/22(日) 09:51:49.32 ID:jHMOonT50.net
- なんかSwiftだとXcodeで書くよりもSublime Textで書くほうがなじむ
XcodeのSwiftの補完がまだ糞だってのもあるけど
- 240 :名称未設定:2014/06/22(日) 10:44:30.58 ID:oZ9P0wvG0.net
- 結局、1行プログラムを書くだけのマニアがそれを技術だと
勘違いしてるだけかよ。
- 241 :名称未設定:2014/06/22(日) 12:16:51.78 ID:S2bzozuR0.net
- わりとどうでもいい
- 242 :名称未設定:2014/06/22(日) 12:37:27.98 ID:jHMOonT50.net
- Swift書いててもCPUの歓声は聞こえてこないけど
代わりにSourceKitService暴走してファンの唸り声が聞こえてくるな
- 243 :名称未設定:2014/06/22(日) 12:55:56.16 ID:XCEVwA3k0.net
- let standardInput = NSFileHandle.fileHandleWithStandardInput()
let input = standardInput.availableData
Playgroudから標準入力を入れる方法教えて
- 244 :名称未設定:2014/06/22(日) 15:59:35.48 ID:XCEVwA3k0.net
- >>239 Sublime Text は、Swift プラグインをサポートしてるね。 早!
- 245 :名称未設定:2014/06/22(日) 19:43:05.74 ID:Q+sg5dqCI.net
- sublimeか…
未だに日本語の検索も出来ないのか?それじゃ誰も代金払いませんぜ
- 246 :名称未設定:2014/06/22(日) 22:31:51.74 ID:fsOaKeeU0.net
- すげえなswift
もうアルゴリズムいらないのか
- 247 :名称未設定:2014/06/22(日) 22:35:34.35 ID:msroa/yq0.net
- ?
- 248 :名称未設定:2014/06/22(日) 22:38:17.54 ID:XCEVwA3k0.net
- >>245 日本語の検索できるよ。 Sublime Text Build3059日本語パッケージ
UTFで試した。
- 249 :名称未設定:2014/06/22(日) 23:11:59.38 ID:msroa/yq0.net
- Sublime Textって、ShiftJISとか文字化けしなくなったの?
前一回使ってその辺がしょぼくて萎えて使わなくなったわ
- 250 :名称未設定:2014/06/22(日) 23:39:31.43 ID:jHMOonT50.net
- そもそもutf-8以外扱えないんじゃないっけ?
Sublimeはオープンソースじゃないから、これからはGitHubのAtom editorのほうが伸びるだろうな
- 251 :名称未設定:2014/06/23(月) 00:29:10.55 ID:F8Hk6XAO0.net
- >>249 UTF8に変換して編集し、元の文字コードに戻して保存と言うプラグインが出てるからそれを入れればShift-JISでも使える見たい。
- 252 :名称未設定:2014/06/23(月) 00:56:19.90 ID:4+EyYySl0.net
- ー>って矢印を模した表記は厨臭いからやめたほうがいいよ
ベータだしまだ仕様変えられるだろ
いちいちシフト打鍵が必要でタイプ数も増えるしいいこと無い
まあHaskellとかのマネしたかったんだろうけど
- 253 :名称未設定:2014/06/23(月) 01:15:41.70 ID:oebfO+Df0.net
- むしろ記号自体省略出来そうな気もする。
- 254 :名称未設定:2014/06/23(月) 01:18:04.64 ID:LTLXvXe+0.net
- 厨臭いほうが楽しくていい
- 255 :名称未設定:2014/06/23(月) 01:36:53.62 ID:oYW7BRWF0.net
- 矢印が無いと、こういうのが訳分かめになる
func memoize<T: Hashable, U>( body: ((T)->U, T)->U ) -> (T)->U {
var memo = Dictionary<T, U>()
var result: ((T)->U)!
result = { x in
if let q = memo[x] { return q }
let r = body(result, x)
memo[x] = r
return r
}
return result
}
- 256 :名称未設定:2014/06/23(月) 03:39:43.80 ID:sy2Tks0j0.net
- >>252
>この記法はボクが考えるに厨臭いからやめた方がいいな(特に根拠なし)
>まだベータ版だからアップルはボクの意見を2ちゃんねるから読み取って変えたまえ
>ボクはシフトキーを人差し指で押す派だからめんどくさいしね(みんなもそうだろ?)
>まぁアップルは(かっこいい)Haskellの記法をマネたかっただけだとボカァみてるけどね。
すべての行がむせかえるほど厨臭くて吹いたw
何歳だおまえw
- 257 :名称未設定:2014/06/23(月) 03:46:55.32 ID:O4wzsb7W0.net
- 改ざんした引用なんてして病気なのか?
- 258 :名称未設定:2014/06/23(月) 09:23:08.81 ID:JRVKk8Aq0.net
- 厨臭いってなんで?てのは俺も思った
用途は違うけどCでも出てくる形なのに。
- 259 :名称未設定:2014/06/23(月) 09:25:51.80 ID:F8Hk6XAO0.net
- ただのコピペアラシだからほっとけ。
- 260 :名称未設定:2014/06/23(月) 11:51:03.35 ID:pO/Do58O0.net
- さっき発見したのでメモ:
String(format:"%5.2f", 3.1415)
String(format:"dec is %d, hex is %4x", 42, 42)
NSStringをラップしているだけなんだろうけど。
- 261 :名称未設定:2014/06/23(月) 11:54:26.71 ID:pO/Do58O0.net
- もう一つメモ
var myArraySD: (String, Double)[] = []
let myTupleSD = ("hello",3.14)
myArraySD.append(myTupleSI)
ってやるとappendがエラー。
DoubleをIntにしたり変数経由しないで即値使ったりすればおkなんだけど
- 262 :名称未設定:2014/06/23(月) 12:16:49.16 ID:pGgSTzDJ0.net
- そら変数名間違ってるからエラーになるわ
あと、メモはメモ帳へ
- 263 :名称未設定:2014/06/23(月) 12:39:13.29 ID:pO/Do58O0.net
- >>262
恥ずかしい失敗ですまんかった。
Xcodeのプロジェクトでこれに近いことやったらSourceKitServiceがばりばり落ちるので
Playgroundで試してて勘違いしてしまった。もうすこし究明してみる。
- 264 :名称未設定:2014/06/23(月) 14:39:16.32 ID:F8Hk6XAO0.net
- >>260 の String(format:"dec is %d, hex is %4x", 42, 42)
の様に printf フォーマットを実現する printfはどう作ればよいんだろう。 変数は可変個
変数部分を可変個数パラメータにすると、アレイとみなされるので単純にはいかない。
%でフォーマットを分割して forで回せばできるけど美しくない。 他に何か方法有る?
- 265 :名称未設定:2014/06/23(月) 14:41:17.36 ID:F8Hk6XAO0.net
- >>264 printf("dec is %d, hex is %4x", 42, 42) と呼ぶものとする。
- 266 :名称未設定:2014/06/23(月) 14:42:55.17 ID:3GNiylwi0.net
- printf作ってどうすんだ?
NSLog使えば?
- 267 :名称未設定:2014/06/23(月) 14:56:38.74 ID:HvCrpF3g0.net
- Swiftでだけでってことでね?NSLogもprintfも元をたどれば、va_start, va_arg, va_endだろう
そんなのSwiftで提供されているのかね?
- 268 :名称未設定:2014/06/23(月) 15:48:16.75 ID:F8Hk6XAO0.net
- >>264
別の質問に言い換えると、可変個のパラメータを受け取って、別の関数を可変個のパラメータで呼ぶ方法が有るかどうか。
例
func fb<T>(v:T...){}
func fa<T>(p:T...){
fb(p1,p2,...) //入力パラメータ個数と同じだけカンマ区切りのパラメータで呼ぶ
}
fa(10,20,33) -> fb( v1,v2, v3)
fa(1,2) -> fb( v1,v2 )
- 269 :名称未設定:2014/06/23(月) 16:28:53.92 ID:pGgSTzDJ0.net
- ん?
普通にできるだろ
func fb<T>(v:T...){
}
func fa<T>(p:T...){
fb(p)
}
fa(10,20,33)
fa(1,2)
- 270 :名称未設定:2014/06/23(月) 16:37:29.01 ID:zPMmBuoC0.net
- 何の解決にもならんがwこれはできた。
func printf(f:String,args:CVarArg...) {
print(NSString(format:f, arguments:getVaList(args)));
}
printf("dec is %d, hex is %4x", 42, 42)
- 271 :名称未設定:2014/06/23(月) 16:51:25.55 ID:F8Hk6XAO0.net
- >>269 そう出来ると良いんだが、faの中から
fb(p) と呼ぶと
fb(pの配列一つ) となり、fbが受け取るパラメータは、配列一つだけとなる。
faは、呼び出し元の複数個のパラメータを受け取る事は出来るんだが、一つの配列とみなしてしか受け取れない所が味噌。
>>270 ほう素晴らしい、今出先なので戻ってやってみます。
なぜこれが出来るんでしょうね。 argsは元々script用なので文字列に逆変換するのでしょうかね。
汎用的に使える様であれば、一つの解になりそうですね。
- 272 :名称未設定:2014/06/23(月) 17:06:34.98 ID:zPMmBuoC0.net
- NSString+initWithFormat:arguments:の arguments は va_list で
可変個の引数じゃないからこれでできるんじゃないかと。
Arrayだからって直接argsを渡すと実行エラーになるけど、
getVaListでうまく取れちゃうとこがフシギと言えばフシギ。
- 273 :名称未設定:2014/06/23(月) 19:47:44.89 ID:n9N1K9XC0.net
- ラピュタの言語か。
バ●スは書いちゃダメとメモメモ
- 274 :名称未設定:2014/06/23(月) 20:36:06.80 ID:M3f4Kbq80.net
- 可変個引数をばらすことは(まだ)できないようだな
https://devforums.apple.com/message/970958
- 275 :名称未設定:2014/06/24(火) 09:22:22.16 ID:arJEab/f0.net
- 解決策ではないけどこんな事も出来るらしい。
(http://stackoverflow.com/questions/24024376/passing-an-array-to-a-function-with-variable-number-of-args-in-swift)
//Step 1: 可変個数パラメータの代わりに配列パラメータの物を作る
func sumOf(numbers: Int[]) -> Int {
var total = 0
for i in numbers {
total += i
}
return (total / numbers.count)
}
//Step 2: それを可変個パラメータから呼ぶ
func sumOf(numbers: Int...) -> Int {
return sumOf(numbers)
}
//Step 3: どちらの形式でも呼べる
var variadicSum = sumOf(1, 2, 3, 4, 5)
var arraySum = sumOf([1, 2, 3, 4, 5])
//Swiftでは、パラメータの形式毎に別関数として扱う様なので、呼ばれる側でこのように二つの入り口を作っておけば呼び出し側は気にしないで呼べる。
//Step 4. ネスティング呼び出し。
func printSum( v: Int... ){
println( sumOf( v ) )
}
printSum(1,2,3,4,5)
- 276 :名称未設定:2014/06/24(火) 09:35:18.51 ID:arJEab/f0.net
- >>275 でもこれはSwift内で閉じた自分の関数で有れば、最初から可変個パラメータを使わずに配列パラメータで作っておけば良い話だね。
- 277 :名称未設定:2014/06/24(火) 10:44:53.29 ID:7YX8iDs/0.net
- ぷれいぐらんど〜 へ、い、わ
- 278 :名称未設定:2014/06/24(火) 10:58:54.66 ID:DdCM3IZK0.net
- 関数名SumOfで平均値を返すのは命名センスがないな
SumOfなら合計値を返してくれ
- 279 :名称未設定:2014/06/24(火) 11:43:54.79 ID:4FQja0j60.net
- >>278
元スレ(stackoverflow)に書いて来い
- 280 :名称未設定:2014/06/24(火) 20:39:43.68 ID:jQ/hgW0/I.net
- クラス間のデータの受け渡しは楽になるのかな?
やっぱりappdelegateの世話になる?
- 281 :名称未設定:2014/06/24(火) 21:19:44.24 ID:wd1nWIeI0.net
- データの受け渡しにAppDelegateの世話になるのはObjCでもバッドプラクティスでしょ
- 282 :名称未設定:2014/06/24(火) 21:42:09.94 ID:tEXAMfyX0.net
- 委託先で色んなプロジェクト携わったけど、ランキングに入るようなアプリでも、
AppDelegateに@propertyの変数置いて受け渡しに使ってるプロジェクトは沢山あったよ
中には50近い変数おいてやっていたのもw
- 283 :名称未設定:2014/06/24(火) 23:37:20.25 ID:HzbMjPNk0.net
- おい、脱アルゴリズムの人の言い訳エントリ来たぞ
ttp://qiita.com/kenokabe/items/821ce4020644372b648c
- 284 :名称未設定:2014/06/24(火) 23:39:17.94 ID:k0FPwXTY0.net
- 一方俺はグローバル変数を使った。
- 285 :名称未設定:2014/06/25(水) 00:22:20.90 ID:jI7B7rWf0.net
- インスタンス変数に直接アクセスできないの気持ち悪い。
やるべきじゃないのかも知れないけど、Qiotaで誰かが書いてたみたいに
例えばゲッタを呼び出すたびにインクリメントされるプロパティとか書けない。
別途インスタンス変数を用意してcomputational propertyとして定義するとか、筋の悪い書き方になる。
そうやったとしてもアクセス指定子もないから元のプロパティに直接アクセスできちゃうし。
どうしてこんなことになったんだ
- 286 :名称未設定:2014/06/25(水) 00:33:17.11 ID:Kzol0JYq0.net
- >>285
アクセス修飾子は追加するってよ
http://qiita.com/daisy1754/items/1af9a474461a01c23aab
- 287 :名称未設定:2014/06/25(水) 01:01:29.93 ID:dZIpITLE0.net
- たびたびム板のレスをコピペする奴なんなの
- 288 :名称未設定:2014/06/25(水) 01:51:10.32 ID:vmaNErG80.net
- それは濱田さ
- 289 :名称未設定:2014/06/25(水) 02:00:24.46 ID:m8Hu/JCu0.net
- アルゴリズムなんてマイコン時代の用語だろw
なんでPCベースの近代プログラミングでこんな用語が
でてくるん?
OSすら無い様なマイコン炊飯器のアルゴリズムを
Swiftで記述するってか。なんか痛い人だな。
- 290 :名称未設定:2014/06/25(水) 02:28:48.61 ID:jI7B7rWf0.net
- 盛り上がってまいりました
- 291 :名称未設定:2014/06/25(水) 02:48:07.18 ID:UzvJRfaw0.net
- おっぱいーん\(^o^)/
- 292 :名称未設定:2014/06/25(水) 02:55:00.25 ID:jI7B7rWf0.net
- まあでも関数型言語って脳の違うところ使う感覚あるよね。
俺もHaskellやったことあるけど、再帰でハノイの塔とかエイトクイーン
やってるうちは面白かったけど、簡単なwebログフィルターとか作ろうと
思ったらめんどくさくて挫折した。
- 293 :名称未設定:2014/06/25(水) 03:29:35.48 ID:fhJz0D9U0.net
- それは関数型言語じゃなくてhaskellがめんどうなだけじゃね
- 294 :名称未設定:2014/06/25(水) 04:32:28.02 ID:JsZZQ5JD0.net
- Objective-Cでメッセージ送信型オブジェクト指向を再発見した側からすると
関数型プログラミングって奴がC++が嵌った泥沼にものすごく近いとこにいて
けっこうヤバい香りがするんだよなぁ…
いや、関数型プログラミング自体は望まないところに副作用が出ないという
まさに主張どおりの利点もあって、そこにはdイイネしてもいいんだけど、
些細なテクニカルな部分でのそれはたしかに利点だけど
最終的に最上位まではその考えは使えないよね?つうか。
我々がwaifuに「飯」と言ったとき、メッセージ送信型のオブジェクト指向では
waifuは使えるリソースを自分で判断してその時使える材料から作れるものを作って
出してくることが求められているわけで、
ここでの最重要ポイントは僕が冷蔵庫の中身を知る必要もない
ただwaifuの動作を信頼して"適切な出力が出てくること"を知っていればいいということで。
上位クラスは副作用もなんも「それはwaifuの管轄だろHAHAHA!」で
処理を委譲できる(考える必要がない)のが強みなんだよね。
関数型って奴はどうも同じことをするのに柔軟性はバグの元とみなして
"「飯」と言ったら常にカレーが出るなら問題は起きない"
"「飯」の引数としてカレー、ハンバーグ、トンカツと
常に上位側が必要な情報を指定すればおかしなことは起こらない"
ってガチガチに固める側から発想してるから、
むしろ最終的に現実のモデルとの間で齟齬が出るような気がする。
"ゆるい"のがメッセージ送信型オブジェクト指向のポイントなのに
関数型がまさに糾弾してる相手ってのが"ゆるさ"だからなぁ…
Swiftではレイヤーごとに特性がうまく混じって欲しいなぁ
waifuに冷蔵庫の中身を逐一レポートさせて一日の終わりに
これは切ってこれは煮てこういう料理にしろとか誰もやりたくないし
- 295 :名称未設定:2014/06/25(水) 05:21:44.42 ID:vmaNErG80.net
- 病院行って来い
- 296 :名称未設定:2014/06/25(水) 07:44:31.04 ID:zoyrU7Rz0.net
- >>294
>waifu
- 297 :名称未設定:2014/06/25(水) 07:56:37.91 ID:6CzNV4uW0.net
- >>294
例えがおかしい。現実の事象を再現するようなプログラムだったら元々それを目指したオブジェクト指向がしっくりくるのは当たり前。
関数型プログラミングを取り入れるのは、オブジェクト指向ではしっくりこないプログラム独特の処理を埋める目的だよ(元々の純粋関数型言語の成り立ちは異なるけど)
- 298 :名称未設定:2014/06/25(水) 08:50:06.83 ID:lwyBiHod0.net
- 外から手順全て渡す必要もないし。
料理名だけ受け取って中で料理名からレシピに変換して出来上がったものを返せばいい
- 299 :名称未設定:2014/06/25(水) 09:20:18.24 ID:1TOHcbYp0.net
- >>298
waifu(笑)クラスが持ってないレシピを関数化して、waifuクラスのcookByRecipeメソッドに渡すとかは有りかなと思った。
iPhoneからで面倒臭いから日本語名で書く
func 満漢全席 () -> 料理 {
// 満漢全席作る処理
}
class waifu {
func cookByRecipe(recipe:() -> 料理) -> 料理 {
var 完成品 = recipe()
完成品.append(マヨネーズ)
return 完成品
}
}
こんな感じで
- 300 :名称未設定:2014/06/25(水) 09:52:20.38 ID:aCGON/VA0.net
- Swiftの内容をブログに書く人は間違いを指摘できるようにコメントをONにしておいて下さい。間違った内容を広められると困るので。
- 301 :名称未設定:2014/06/25(水) 12:25:28.04 ID:3ICdKv+j0.net
- 了解しました。
- 302 :名称未設定:2014/06/25(水) 12:32:46.27 ID:os2Mr7em0.net
- コメント開放しててもコメント全然書いて貰えないや…
- 303 :名称未設定:2014/06/25(水) 14:00:13.57 ID:zoyrU7Rz0.net
- >>300
ここで晒しちゃえよ
- 304 :名称未設定:2014/06/25(水) 15:08:23.05 ID:hoTaqerk0.net
- >>296
ネタだろJK
- 305 :名称未設定:2014/06/25(水) 15:09:35.27 ID:7UNrhl5N0.net
- 別に取り繕うこともないんやで
- 306 :名称未設定:2014/06/25(水) 20:50:22.53 ID:6CzNV4uW0.net
- >>299
おいレシピ通り作れwwww
- 307 :名称未設定:2014/06/25(水) 21:42:15.37 ID:06IX6vgh0.net
- マヨラー嫁か
- 308 :名称未設定:2014/06/25(水) 21:49:07.37 ID:jI7B7rWf0.net
- >「アルゴリズム」とは「バズワード」であり、「一般的に命令型プログラミング
>パラダイムを指し示す」のであり、その他の使用は一般的ではない、ということです。
勉強になるな。
- 309 :名称未設定:2014/06/25(水) 22:46:02.42 ID:ceB4HC/N0.net
- マヨラーwaifuのサンプルプログラムで勉強するスレです。
- 310 :名称未設定:2014/06/25(水) 22:53:08.38 ID:3ICdKv+j0.net
- AnyとAnyObjectの違いは何ですか?
- 311 :名称未設定:2014/06/25(水) 23:03:48.67 ID:6CzNV4uW0.net
- >>310
Anyは何でも。AnyObjectはclassだけ。
- 312 :名称未設定:2014/06/25(水) 23:08:25.97 ID:0oPTe6cd0.net
- >>221 誰か フィボナッチ数を lazy
- 313 :名称未設定:2014/06/25(水) 23:11:05.67 ID:3ICdKv+j0.net
- >>311
レスありがとうございます。
classじゃないのって、structってことですか?
- 314 :名称未設定:2014/06/25(水) 23:25:11.78 ID:0oPTe6cd0.net
- ごめん
>>221 誰か フィボナッチ数を lazy を使って書いてくれない?
@lazy の配列に入れておいて最後に計算するような感じらしいけど。
「脱アルゴリズム」の人がjavascriptで書いてるけどちょっとわからん。
http://qiita.com/kenokabe/items/821ce4020644372b648c
OCamlでは-----この3番目
http://cubbi.com/fibonacci/ocaml.html
Haskelでは------
<<fibonacci.hs>>=
fibs :: [Integer]
fibs = 0 : 1 : zipWith (+) fibs (tail fibs)
fastfib n = fibs !! n
Juliaでは------------
# Fibonacci sequence defined in terms of itself:
fibs = @lazy 0:1:(fibs + drop(1, fibs));
take(20, fibs)
#=> (0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181)
Clojureでは-----------
(def fib-seq
((fn rfib [a b]
(lazy-seq (cons a (rfib b (+ a b)))))
0 1))
user> (take 20 fib-seq)
(0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181)
- 315 :名称未設定:2014/06/25(水) 23:32:03.33 ID:3ICdKv+j0.net
- >>314
フィボナッチなら、WWDCの「Advanced Swift」でやってたよ
- 316 :名称未設定:2014/06/25(水) 23:32:47.25 ID:6CzNV4uW0.net
- >>313
structもそうだし、enumもclosureもダメ
- 317 :名称未設定:2014/06/25(水) 23:41:27.81 ID:0oPTe6cd0.net
- >>314 このサイトの説明によると Lazy法とは。
ALGORITHM 2A: CACHED LINEAR RECURSION
http://cubbi.com/fibonacci.html
infinite lazy evaluated list.
1.Construct an infinite list F with F[0] equal 0 and F[1] equal 1
2.Define F[i] as the sum of F[n-1] and F[n-2].
3.Return the nth element of the list
In the languages that support lazy evaluation, either implicitly (like Hope or Haskell) or explicitly (like OCaml or Scheme),
it is possible to construct the data structure containing all Fibonacci numbers and simply return the nth element of the structure.
- 318 :名称未設定:2014/06/25(水) 23:43:23.11 ID:0oPTe6cd0.net
- >>315 有難う。 ビデオは残ってるかな? 調べてみる。
- 319 :名称未設定:2014/06/25(水) 23:53:03.03 ID:3ICdKv+j0.net
- >>316
ありがとう
Any型に関数を代入するとPlaygroundが落ちるんだけど俺の環境だけかな
func add(a: Int, b: Int) -> Int {
return a + b
}
let f: Any = add
>>318
残ってるよ wwdc2014で検索すれば
但し、Safariじゃないと見れない
- 320 :名称未設定:2014/06/25(水) 23:59:13.19 ID:0oPTe6cd0.net
- 有った
Advanced Swift - Apple WWDC 2014
https://www.youtube.com/watch?v=g44U1937o0g
35:48 位から普通のフィボナッチ
37:55 手動メモ法
38:48 オートマティックメモ法
- 321 :名称未設定:2014/06/26(木) 00:01:47.27 ID:0bX+B6J70.net
- >>319
Anyに何か入れると落ちるのはBeta1のバグ。Beta2にすべし
- 322 :名称未設定:2014/06/26(木) 00:06:30.63 ID:iN91op880.net
- 脱アルゴリズムの説明が何か色々と入り組んだ説明しておきながら、
説明してる内容が薄過ぎて笑えてきたけど著者が毛の壁だと知って納得。
アレな人が〜とか言ってる毛の壁自身がアレで有名な人じゃないか
- 323 :名称未設定:2014/06/26(木) 00:29:32.78 ID:txkqYcR30.net
- >>320 見たけど memorize法だけだった。
- 324 :名称未設定:2014/06/26(木) 01:30:51.35 ID:0bX+B6J70.net
- こんなんでええんか?
class Fib {
var val:Int = 0
@lazy var fibiter:Int = {
if self.val <= 1 {
return 1
}
return Fib(n: self.val - 1).fibiter + Fib(n: self.val - 2).fibiter
}()
init (n:Int) {
val = n
}
}
var fib = Fib(n: 10)
println(fib.fibiter)
- 325 :名称未設定:2014/06/26(木) 01:33:22.50 ID:0bX+B6J70.net
- あ、間違えた。
× if self.val <= 1
○if self.val <= 2
- 326 :名称未設定:2014/06/26(木) 01:50:57.32 ID:fDiIwkws0.net
- >>294メモ
- 327 :名称未設定:2014/06/26(木) 10:42:30.71 ID:txkqYcR30.net
- >>324 有難う、でも違うような気がする。 それだと再帰法のままだから全ての計算をするんじゃないのかな?
- 328 :名称未設定:2014/06/26(木) 14:21:59.36 ID:vCUmvtTZ0.net
- >>327
遅延評価とかよくわからんがこういうの考えたぜ
class Fib {
let n:Int
@lazy var seq:Int[] = {
if self.n < 2 {
return [1]
} else if self.n < 3 {
return [1, 1]
} else {
let s = Fib(n:self.n - 1).seq
return s + [s[self.n - 3] + s[self.n - 2]]
}
}()
init(n:Int) {
self.n = n
}
}
println(Fib(n:50).seq)
- 329 :名称未設定:2014/06/26(木) 14:46:51.49 ID:txkqYcR30.net
- >>327 出来たと思う。
この方法だと >>324 の方法より30倍は早い(正確には測定していない)
func farrayInit(n: Int)->Int64[]{
var ar: Int64[] = [0,1]
for i in 2...n {
ar += ar[i - 2] + ar[i - 1]
}
return ar
}
class Fib1 {
var n: Int = 2
@lazy var f: Int64[] = farrayInit( self.n )
}
//*******ここからテスト
var n=35 //テスト 用条件 n
println("Lazy START n=\(n) \(NSDate())")
var fib1 = Fib1()
fib1.n=n
println(fib1.f)
println("END 配列取り出し n=\(n) \(NSDate())")
- 330 :名称未設定:2014/06/26(木) 14:56:35.92 ID:txkqYcR30.net
- >>328 それで正解だと思う。
>>329 は配列をコピーしているせいか少し遅い。
- 331 :名称未設定:2014/06/26(木) 15:36:53.44 ID:86JFxnMJ0.net
- >>328も>>329も再帰方じゃなくてループ方になっただけで結局全ての計算してね?
- 332 :名称未設定:2014/06/26(木) 16:02:01.12 ID:txkqYcR30.net
- >>331 計算は一度はし無いといけ無いから仕方ないと思う。
再帰法はそれが指数関数的に増えるが、配列を使うと計算は1回で済むからnに比例したスピードとなる。
この例だと、lazy の効果が何処に出て来るかあまり解ら無い。
配列を取り出すまでは、計算されないのは解るがこの例ではあまり意味なさそう。
複雑な処理だとlazyの効果も出て来るかもしれ無いけどこの例だと何処で時間がかかろうが同じじゃないのかな。
- 333 :名称未設定:2014/06/26(木) 20:40:52.49 ID:vmnKjsNs0.net
- 初めから何回計算するのか分かってたら遅延評価する意味無いよな
- 334 :名称未設定:2014/06/27(金) 09:36:02.37 ID:MNFgHvHa0.net
- >>320 のAutomatic Memorization で紹介されてたものだが解らないし動かない。
//-------Auto Memorization
func memoize<T: Hashable, U>( body: (T)->U ) -> (T)->U {
var memo = Dictionary<T, U>()
return { x in
if let q = memo[x] { return q }
let r = body(x)
memo[x] = r
return r
}
}
//Return 0,1,1,2,3,5,8,13,21,
let fibonacci: (Int)->Double = memoize { // または let fibonacci = memoize {
fibonacci, n in
n < 2 ? Double(n) : fibonacci(n - 1) + fibonacci(n - 2)
}
/* 質問
1. memoizeの中の {x in .... let r = body(x)....return r} と言うのが解らない。 x in boby(x) ?
このbody は、下の memoize[ ....ここがbody?... ]
2. let fibonacciA: (Int)->Double = memoize { の 書き方の意味。 こういう文法どこかに書かれてる?
3. memoize { fibonacciA, n in 〜 クロージャだとするとパラメータは? 出力タイプは?
4. これを動かすと暴走したみたいになってハング状態になる。 どうして?
*/
- 335 :334:2014/06/27(金) 10:29:40.31 ID:MNFgHvHa0.net
- お騒がせしました、 間違ってたみたい。でも前の質問はそのまま疑問のままですのでどなたかよろしく。
>>334 ここにSwiftバージョンをC++バージョンにしたものも書かれている。
http://cpphappyfunhouse.com/posts/2014/6/memo-this.html
1行目とreturn が違ってた。
ビデオ/自分の (pdf p146)
func memoize<T: Hashable, U>( body: (T)->U ) -> (T)->U {
ここの
func memoize<T: Hashable, U>(body: ((T)->U, T) -> U) -> (T)->U {
ビデオを見直すと Take two に書かれている方は下の書きかただった。
WWDC 2014 の資料はここがまとまってる。 pdfとビデオのリンクがセッションごとに書かれている。
https://github.com/tonytamsf/wwdc-swift
Advanced Swift pdf
http://devstreaming.apple.com/videos/wwdc/2014/404xxdxsstkaqjb/404/404_advanced_swift.pdf?dl=1%22
pdf P140〜P146
pdf P165 で書き直してる
func memoize<T: Hashable, U>( body: ((T)->U, T)->U ) -> (T)->U {
var memo = Dictionary<T, U>()
var result: ((T)->U)!
result = { x in
if let q = memo[x] { return q }
let r = body(x)
memo[x] = r
return r
}
return result
}
!
let factorial = memoize { factorial, x in x == 0 ? 1 : x * factorial(x - 1) }
- 336 :名称未設定:2014/06/27(金) 10:45:30.97 ID:ueDBzZAb0.net
- コードまだ間違ってるし、
質問は全部 The Swift Programming Language に書いてることだろうが
- 337 :名称未設定:2014/06/27(金) 11:05:30.01 ID:ON7YoBfu0.net
- >>335
貼るときはコードをちゃんと確認してから貼れって
お前のせいで、マシンが固まったじゃねーかハゲ!
あと、再帰処理のコードを確認する時はなるべく小さい数で確認した方がいい
func memoize<T: Hashable, U>( body: ((T)->U, T)->U ) -> (T)->U {
var memo = Dictionary<T, U>()
var result: ((T)->U)!
result = { x in
if let q = memo[x] { return q }
let r = body(result, x)
memo[x] = r
return r
}
return result
}
let factorial = memoize{factorial, x in x == 0 ? 1 : x * factorial(x - 1)}
println(factorial(5))
println(factorial(3))
- 338 :334 改め 336:2014/06/27(金) 11:20:34.31 ID:MNFgHvHa0.net
- 最終的にこう書き直して通った。
func memoize<T: Hashable, U>(body: ((T)->U, T) -> U) -> (T)->U {
var memo = Dictionary<T, U>()
var result: ((T)->U)!
result = { x in
if let q = memo[x] { return q }
let r = body(result, x)
memo[x] = r
return r
}
return result
}
let fibonacciA: (Int)->Double = memoize {
//let fibonacciA = memoize {
fibonacciA, n in
return n < 2 ? Double(n) : fibonacciA(n - 2) + fibonacciA(n - 1)
}
/* 質問
1. memoizeの中の {x in .... let r = body(result, x)....return r} と言うのが解らない。 x in boby(result, x) ?
このbody は、下の memoize[ ....ここがbody?... ]
2. let fibonacciA: (Int)->Double = memoize { の 書き方の意味。 こういう文法どこかに書かれてる?
3. memoize { fibonacciA, n in 〜 クロージャだとするとパラメータは? 出力タイプは?
memoize(fibonacciA(n){ return ....} と同じ?
*/
- 339 :334 改め338:2014/06/27(金) 11:31:03.58 ID:MNFgHvHa0.net
- 皆さんごめんなさい。 n=92位までは配列法の奴も通ったけど100にすると配列法のは通らなかった。
>>336 = の書き方あった?
let a = { (param)-> Type in ... } なら func a(param)->Type{...} と解るけど
let a = b { a, x in ... } と言うのはどこかに書かれてる? この出力タイプは?
- 340 :名称未設定:2014/06/27(金) 11:40:23.15 ID:ON7YoBfu0.net
- >>338
1. bodyはmemoize関数の引数名
2. fibonacciAは型宣言に書いてある通り、Intを受け取り、Doubleを返す関数型
memoize関数は、T型を受け取りU型を返す関数と、T型を引数に、T型を受け取りU型を返す関数を返す関数
memoize関数の戻り値(T型を受け取りU型を返す関数)を、fibonacciAの型(Intを受け取り、Doubleを返す関数型)として代入している。
3. 質問の意味が分からない
a, b in 〜 ってのは無名関数の書き方。Swift本にもクロージャの説明のところで書かれてる
memoizeのbody引数が、(T)->Uと、Tという2つの引数をとるようになっているので、それに合わせて、fibonacciAとnを受け取って結果を返す関数をmemoizeのbody引数に渡してる
あ〜、めんどくさっ
俺もヒマだな...
- 341 :338:2014/06/27(金) 12:06:28.55 ID:MNFgHvHa0.net
- >>340 有難う。 ちょっと今からかみしめてみる。
Swift本読み返してたら返事が遅くなりそうだったから先ずは御礼まで。
- 342 :名称未設定:2014/06/27(金) 12:59:20.05 ID:ueDBzZAb0.net
- 十年ROMってろクズ
- 343 :338:2014/06/27(金) 14:45:29.40 ID:MNFgHvHa0.net
- {a,b in }は
sortの変形の説明の中に書かれてたね。 省略できる理由が解らなかったから読み飛ばしてた。
reversed = sort(names, { (s1: String, s2: String) -> Bool in return s1 > s2 } )
ここから
reversed = sort(names, { s1, s2 in return s1 > s2 } )
になるのは
Inferring Type From Context (文脈 からの推測型)の中で
「全てのタイプは推測できるから -> とパラメータ周りの( )は省略できる。」と有るね。
最初 sort の定義が解らなかったのでこれを見た時理由が解らなかった。
func sort<T>(var array: T[], pred: (T, T) -> Bool) -> T[]
これを見てやっとわかった。 names で型が特定できるからだね。
func memoize<T: Hashable, U>(body: ((T)->U, T) -> U) -> (T)->U {
分解すると
func memoize<T: Hashable, U>
( body:( (T)->U, T ) -> U )
-> (T)->U {
>>340 さんのアドバイスから自分の質問整理
1. body: は ((T)->U, T) -> U と等価
つまり、 func body( (T)->U, T ) -> U
2. a = b{a,x in 本文} は、
func b(a,x){ 本文} の結果(bの結果)が(T)->U なので これがa と等しくなる。
(再帰はもやもやしっぱなし)
3. 今までの理解で解決。 {a,b in ...} を a と b in ... と誤解してた。
有難うございました。
- 344 :338:2014/06/27(金) 19:51:38.65 ID:MNFgHvHa0.net
- >>343 補足
1)
body: は単純に2番目のパラメータ(関数)の名前だから2番目全体にかかる関数名。
sortのpred: と言う名前も、( T,T) だけにかかるのか、( T,T)->Bool までにかかるのか解らなくて今夜も眠れそうになかったけど、単純に2番目のパラメータ全体の名前と理解したらスッキリした。
2)
b{ パラメータ in } と言うのも、Swift本の Trailing Closure のNoteに書かれてた。
b( {... } ) 或いは、b( ){... } などのアーギュメントがクロージャだけの場合の省略形だとか。
b( { }, x ) や b( x ){ } などの x は省略出来ないのだから当然か。
- 345 :名称未設定:2014/06/28(土) 16:50:43.32 ID:wPTSE9yz0.net
- ターミナル上でスクリプトとして動かして何か面白いサンプル有る? 動くこと自体感動物だけど。
ターミナル上で
sudo xcode-select -s /Applications/Xcode6-Beta2.app
xcrun swift -h
//-h は、付け無いでコマンド :helpと同じ
var a=1
a
:quit
スクリプトとして動かした感じは、違和感無いね。
30 step mini webkit browser とかなんかそんな表題の奴やってみたけど途中でエラーが出た。 なんかファイルパスが違うみたいな。
URLは思い出せない。
そう言えば、Apple は、Apple Script から Javascripに変更しようとしてる様な記事をみたが、今だとそんなことせずに、Swift Script にして欲しいな。
Swiftのサブセットでも良いから。
- 346 :名称未設定:2014/06/28(土) 16:55:47.42 ID:4hnzlUZS0.net
- ちんこ
- 347 :名称未設定:2014/06/28(土) 21:46:56.43 ID:wPTSE9yz0.net
- >>345 動いた動いた
How to write a minimal WebKit browser in 30 lines of Swift
http://practicalswift.com/2014/06/27/a-minimal-webkit-browser-in-30-lines-of-swift/
This article shows how to write a minimal WebKit browser in 30 lines of Swift.
この通りのファイルを xxx.swift で作った。 最初sdkのパスが通っていなかったので
xcrun --show-sdk-path --sdk macosx
で表示されたパスを先頭行に付け加えた。
#!/usr/bin/env xcrun swift -i -sdk /Applications/Xcode6-Beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk
に変更した後、
chmod 755 xxx.swift
./xxx.swift
で動いて別ウインドーにミニブラウザが開いた。
- 348 :名称未設定:2014/06/30(月) 02:03:05.61 ID:Fj8RWCEf0.net
- なんでStringにlengthメソッドとかないんだろ
部分文字列の切り取りもやけにめんどくさい
糞すぎる
- 349 :名称未設定:2014/06/30(月) 03:40:43.51 ID:7mqp5nGd0.net
- >>348 取りあえずならこんなのは?
ExSwift
https://github.com/pNre/ExSwift#string
length も有れば、[x...y]も使える。
多分文字列関係は早急に仕様追加が有るのは間違いないだろう。
- 350 :名称未設定:2014/06/30(月) 05:44:43.79 ID:G479U/TE0.net
- typealias go = NSString
let Elsa = "Frozen"
let it: go = Elsa
let Anna: String = Elsa
"Frozen".length //6
it.length //6
countElements(Anna) //6
//Anna.length エラー。lengthプロパティはNSStringにしかない。
/*
この仕様の理由は、NSStringはユニコードUTF-16として計算しているが、Swiftでは他の文字エンコードでも正確に文字数で計算するようにしたためらしい。
公開されている The Swift Programming Languageの"Counting Characters"にこう書いてある:
Note also that the character count returned by countElements is not always the same as the length property of an NSString that contains the same characters.
The length of an NSString is based on the number of 16-bit code units within the string’s UTF-16 representation and not the number of Unicode characters within the string.
To reflect this fact, the length property from NSString is called utf16count when it is accessed on a Swift String value.
*/
- 351 :名称未設定:2014/06/30(月) 09:44:18.29 ID:7mqp5nGd0.net
- extension String {
var length: Int {
return countElements(self)
}
}
- 352 :名称未設定:2014/06/30(月) 10:11:21.59 ID:R5DpcWud0.net
- // 真似しちゃダメだゾ☆
@prefix func +(str: String) -> Int { return countElements(str) }
println(+"aaaaa") // 5
extension String {
subscript () -> Int { return countElements(self) }
}
println("aaaaa"[]) // 5
- 353 :名称未設定:2014/06/30(月) 11:42:40.86 ID:qspA4Ll90.net
- オープンソースのライブラリがこういう好き勝手なエクステンションを実装してくとヤバイことになりそうだなー
- 354 :名称未設定:2014/06/30(月) 15:53:40.20 ID:VAayfLiu0.net
- 完全に言語仕様も固まってないだろうに、オープンソースのライブラリに寄り掛かるのはちょっとね
俺の書き方が悪いのか as が必要になりまくって型推論のほうが記述が冗長になる
- 355 :名称未設定:2014/06/30(月) 17:31:30.90 ID:r5CW5WX30.net
- Objective-CはながらくNEXTSTEP/OSXの流れで
事実上、NeXT/Appleがライブラリ内製してたから
統一とれてたけどSwiftは自分の口で「Objective-Cは嫌いだけど〜」って
言っちゃうような層が飛びついて来てるので
書式的なことについてはAppleは早めになんらかの
ガイドライン出しとかないとヤバいんじゃね?とは思う。
- 356 :名称未設定:2014/06/30(月) 17:40:20.60 ID:5XoiVvoG0.net
- まあ飛びついて来たところでフレームワークは今のところC/Objective-Cですから。
割とどうでも良くないですか。
- 357 :名称未設定:2014/06/30(月) 20:07:57.95 ID:Vxo+lwka0.net
- 継承したプロトコルを持つdelegateプロパティを親クラスとサブクラスに持たせたい場合どうすりゃいいんだこれ
http://stackoverflow.com/questions/2859584/
こういうことがしたいんだが
UICollectionViewとUIScrollViewの関係をヘッダで見る限り
protocol FooDelegate : NSObjectProtocol {
}
protocol BarDelegate : FooDelegate, NSObjectProtocol {
}
class Foo : NSObject {
var delegate: FooDelegate
}
class Bar : Foo {
var delegate: BarDelegate
}
ってすれば良さそうなもんだが「Property 'delegate' with type 'BarDelegate' cannot override a property with type 'FooDelegate'」と言われて出来ない
- 358 :名称未設定:2014/06/30(月) 20:16:42.96 ID:4meMZGav0.net
- Swiftに変わったからって参入してくるような連中はiOSアプリを作りたくて参入してくるわけで
一から書き上げたクラスライブラリを公開してやろうなんて人はそうはいないと思うけどな。
- 359 :名称未設定:2014/06/30(月) 20:16:53.38 ID:Vxo+lwka0.net
- >>357
http://stackoverflow.com/questions/8850182/
URL間違えてた
これの二番目の回答
- 360 :名称未設定:2014/06/30(月) 20:46:18.54 ID:SmsVgZrC0.net
- そういう危ういのは排除するんじゃねえの
- 361 :名称未設定:2014/06/30(月) 21:09:47.55 ID:R5DpcWud0.net
- typealias 使って出来そう
でもこれが解決法として正しいかはあんまり自信ない
protocol FooDelegate { }
class Foo {
typealias DelegateType = FooDelegate
var delegate: DelegateType?
}
protocol BarDelegate : FooDelegate { }
class Bar : Foo {
typealias DelegateType = BarDelegate
}
- 362 :名称未設定:2014/06/30(月) 21:37:31.88 ID:R5DpcWud0.net
- >>361
あ、ごめん、全然ダメだった
これじゃ Bar のなかで self.delegate から BarDelegate のメソッドを呼べなかった
全然意味無かった…スマン…
- 363 :名称未設定:2014/06/30(月) 21:53:39.16 ID:7mqp5nGd0.net
- >>358 だから何? それでも公開する人は沢山居るんだから。
JSONライブラリなんか良いな。
learn-swift
https://github.com/nettlep/learn-swift
Swift本からサンプルコードを抜き出したもの。
SwiftRegex
https://github.com/kasei/SwiftRegex
Perl-like regex =~ operator for Swift
for match in "Hello World" =~ "\\w+" {
println("matched: \(match)")
}
// matched: Hello
// matched: World
- 364 :名称未設定:2014/06/30(月) 22:02:18.17 ID:Vxo+lwka0.net
- >>362
俺も出来るかと一瞬思ったけど出来たら出来たで少し危険だな
プロトコルを継承していないものでも出来ちゃう
もしかすると警告がまだきちんと動いてないのかもしれん
プロトコルBarを採用することでFooも採用できるというところまで追えてないのかも
- 365 :名称未設定:2014/07/01(火) 00:57:30.14 ID:ey2NMoHv0.net
- >>363
俺は>>355に対して書いただけ。アンカーつけてなかったのは悪かったけど。
元から公開している人の話なんかしてない。
- 366 :名称未設定:2014/07/01(火) 01:25:25.41 ID:sG4Ky2N60.net
- >>357
Barのプロパティにoverride付けりゃいいのでは?
- 367 :名称未設定:2014/07/01(火) 14:05:25.19 ID:6B8IfyYd0.net
- Swiftが寿司屋へ!?
ttp://www.hollywood-news.jp/news/%E6%B4%8B%E6%A5%BD/%E3%83%86%E3%82%A4%E3%83%A9%E3%83%BC%E3%83%BB%E3%82%B9%E3%82%A6%E3%82%A3%E3%83%95%E3%83%88%E3%81%A8%E5%AF%BF%E5%8F%B8%E5%B1%8B%E3%81%B8%EF%BC%81%EF%BC%9F%E6%9D%A5%E6%97%A5%E7%A7%98%E8%A9%B1.html
- 368 :名称未設定:2014/07/01(火) 15:42:21.02 ID:BwSd3wQw0.net
- Swiftの日本語情報はここを見ておけば大丈夫ってのを誰かまとめとけよ
- 369 :名称未設定:2014/07/01(火) 17:55:56.49 ID:37wKMvMS0.net
- 日本語でここ見ておけなんてところ無いよ
俺は公式フォーラムのChris Lattnerの書き込みがかなり参考になるから
書き込み履歴からストーキングしてる
https://devforums.apple.com/people/ChrisLattner
- 370 :名称未設定:2014/07/01(火) 23:18:43.13 ID:ih+2mxWS0.net
- >>366
無理だった
- 371 :名称未設定:2014/07/02(水) 00:07:53.53 ID:peve96If0.net
- 公式ドキュメントに沿って解説書いてるブログを読んでるけど、内容は分かり易いけど更新クソ遅くて人にオススメ出来ない。
- 372 :名称未設定:2014/07/02(水) 00:20:50.44 ID:LyXZrp/r0.net
- >>371
著作権違反だろ
つぶせ!密告しろ!
- 373 :名称未設定:2014/07/02(水) 00:38:46.91 ID:5iXVjcge0.net
- 濱ちゃん乙
- 374 :名称未設定:2014/07/02(水) 01:52:35.06 ID:wTHc4RlT0.net
- 解説の場合は引用になるから著作権の問題には引っかからないな。
ただし大部分が引用だけのような場合には引用として認められないけれど。
- 375 :名称未設定:2014/07/02(水) 09:25:10.64 ID:IC0moj0+0.net
- beta 3 はよ! はよ!
- 376 :名称未設定:2014/07/02(水) 12:40:14.66 ID:TOwfMaCf0.net
- Googleの自動翻訳は完全に違法
著作権者に断りもなく翻訳している
- 377 :名称未設定:2014/07/02(水) 12:43:42.80 ID:LyXZrp/r0.net
- 翻訳して個人で使う分にはいいんじゃないの?
翻訳結果を自分の著作物みたいにして公開したりするとダメなんだろうけど
- 378 :名称未設定:2014/07/02(水) 13:59:52.55 ID:yvYY5yC30.net
- >>372を書いたヤツとは思えない。二重人格か?w
- 379 :名称未設定:2014/07/02(水) 14:23:28.70 ID:Z3/35gG10.net
- ワロタ
- 380 :名称未設定:2014/07/02(水) 16:29:39.42 ID:LyXZrp/r0.net
- はぁ?言ってることは矛盾してないだろ
- 381 :名称未設定:2014/07/02(水) 17:18:46.48 ID:yvYY5yC30.net
- 自分で全く違和感がなかったとは…怖っw
- 382 :名称未設定:2014/07/02(水) 17:26:44.42 ID:Wfi8CN5W0.net
- こないだ英語アニメフォーラムの大量の投稿読むのに
Googleページ翻訳使ったけど「クソすげぇ」の意味のshitが
ぜんぶ「酷い」にされるのは笑った。Goddamnが糞白人野郎とか特定文脈訳語すぎるw
英語わかるやつの下訳にしか使えないよね>Google翻訳
- 383 :名称未設定:2014/07/02(水) 18:04:59.19 ID:iv4EVsnn0.net
- >>382 そんなん当たり前だろ、スラングじゃなくても、英語から日本語の翻訳はパズルみたいな物。
韓国語から日本語は文法が同じだから、あまり違和感がない。
中国語なんか、漢字のままみた方が解る。
下手に日本語にしたら何が何やら解ら無い。 むしろ英語に訳した方がよく解る。
ロシア語とかフランス語とか殆どの言語は日本語に翻訳するよりは英語に翻訳した方がはっきり解る。
- 384 :名称未設定:2014/07/02(水) 18:07:57.60 ID:iv4EVsnn0.net
- Swiftは、プログラミング言語の標準語に近いから誰でも理解しやすいね。
さしずめ、C言語が標準語かな。 その後の語彙の追加は仕方ない。
カタカナ英語が増えるのと同じ様に、そのまま覚えるしかない。
- 385 :名称未設定:2014/07/02(水) 18:16:39.28 ID:TOwfMaCf0.net
- ストリー民具
- 386 :名称未設定:2014/07/02(水) 23:26:52.11 ID:ggtfZID60.net
- Swiftの翻訳プロジェクトを潰した奴らってこういうページには文句言わないの?
http://econ101.jp/
どうせこういうページは褒めたりするんでしょ。
単に嫉妬してたんだろうな。Swift日本語かプロジェクトの人には。
- 387 :名称未設定:2014/07/02(水) 23:36:29.40 ID:tL2RvMBB0.net
- >>386
http://econ101.jp/organization/%E3%83%91%E3%83%BC%E3%83%88%E3%83%8A%E3%83%BC%E7%B4%B9%E4%BB%8B/
> 経済学101が提携し、翻訳権を取得している方をご紹介します。
> Paul Krugman (New York Times News Service and Syndicate)
- 388 :名称未設定:2014/07/02(水) 23:52:08.55 ID:IC0moj0+0.net
- コミュニティの自浄だろ
そんな開発と関係ないページ持ってこられても困る
- 389 :名称未設定:2014/07/03(木) 00:09:15.45 ID:YP5lY6T80.net
- よっぽど悔しかったんだなw
- 390 :名称未設定:2014/07/03(木) 00:21:44.08 ID:GpJ8Cor+0.net
- 本人だったらそうとしか思えないし、本人じゃなくてもそうなんだろなあ
- 391 :名称未設定:2014/07/03(木) 00:43:22.98 ID:XKBec37l0.net
- まるまる翻訳はダメだけど、引用しての解説は無問題ってことらしいけど、線引きがわからない
濱ちゃんも、まるまる翻訳じゃなくて、ちょっと解説とか感想とか入れとけばよかったのか
- 392 :名称未設定:2014/07/03(木) 01:05:25.33 ID:HB+MyTac0.net
- >>391
http://ja.wikipedia.org/wiki/%E5%BC%95%E7%94%A8
ただいくら解説を加えて主従関係を保っても
まるまる転載して解説を加えるのは引用として認められないだろうと思う
- 393 :名称未設定:2014/07/03(木) 01:06:18.50 ID:zon0i/M20.net
- >>391
WWDC2014へ行ってきた話
http://www.vagrantup.jp/entry/2014/06/10/003424
5日目
Q: 日本で下記のようなSwiftドキュメンテーションの日本語翻訳化の活動が始まろうとしているがApple的には著作権(翻訳権)の問題の観点からどう考えているか。
https://github.com/swift-jp/swift-guide
A: 公式には認めることはできない。 (ただし、仮にそれをしたからといって即、訴訟を起こすというアクションを取るかどうかはわからない)
ドキュメンテーションの他言語化のプロジェクトは存在しているのでそれを待ってもらうしかない。 (しかし、スケジュール感についてはまだ教えることはできない)
以上、結論としては「公式には認められない」ということでした。
- 394 :名称未設定:2014/07/03(木) 02:04:01.25 ID:o91g2VG/0.net
- つまり、非公式にはオッケーってことか!
濱ちゃんプロジェクトも第三者が口を挟んで大ごとにせずに自由にやらせて様子みればよかったのに
- 395 :名称未設定:2014/07/03(木) 02:28:47.56 ID:O2AZUe3O0.net
- そりゃまあ公式には認められないというのは当たり前だよな
- 396 :名称未設定:2014/07/03(木) 02:32:15.89 ID:LRq5CgZG0.net
- 空気読めるかどうか試されているみたいなもんだな
- 397 :名称未設定:2014/07/03(木) 03:25:50.11 ID:3HSTORRO0.net
- 大事にしたのは自分だろ、Wikipediaに自己紹介まで書いてさ。
自業自得。
- 398 :名称未設定:2014/07/03(木) 03:41:08.30 ID:o91g2VG/0.net
- 企業は、何かあった時のために一応規約を設けはするけど、実害が無い限りは基本放置だと思うけどね
- 399 :名称未設定:2014/07/03(木) 03:51:19.09 ID:YP5lY6T80.net
- そりゃそーだ
でも許諾取ってなければ、それはただ単に告訴されてないだけの限りなく黒に近いグレーだからな
- 400 :名称未設定:2014/07/03(木) 03:54:46.29 ID:OUF88Ydy0.net
- アホに優しいなw
- 401 :名称未設定:2014/07/03(木) 04:05:56.43 ID:JAE3jbsJ0.net
- そうそう、空気が読めるかどうかだと思う
儲けようとしなければOKだよ
公式見解としてOKといえないのも空気を読めって話だ
- 402 :名称未設定:2014/07/03(木) 04:13:13.08 ID:x/VF18zr0.net
- 濱ちゃんは翻訳募集しといて成果物の所有権は自分にあるとか思いっきり書いちゃったのがまずかった
そのへんも適当にしとくべきだったんだよ
- 403 :名称未設定:2014/07/03(木) 10:54:06.16 ID:zon0i/M20.net
- 自業自得と言うのが一番合ってる。
態度が横柄で、AppleのXHTMLからCSSから無断コピーしてしかも翻訳結果は自分が管理するだなんて人の成果を横取り見え見え、
誰が参加すると言うんだ。
全てが宣伝目的。 こんなずるくてバカな奴見た事無い。
- 404 :名称未設定:2014/07/03(木) 13:11:12.90 ID:OUF88Ydy0.net
- Appleから返事が来るまで停止と言っておきながら、あっさり削って終了/逃亡したんだからなあ
素質も責任感も何もなかったヤツだったんだろう。まったくもって>>402の言う通りと判断せざるを得ない
- 405 :名称未設定:2014/07/03(木) 13:25:51.22 ID:zon0i/M20.net
- >>403 そう言えば、表紙から何から全ての画像も無断コピーしてたな。
丸々コピーだから当然と言えば当然だがこんな無知な奴も珍しい。
- 406 :名称未設定:2014/07/03(木) 16:01:42.30 ID:J1LbmwGT0.net
- Swift-jpは、一人で訳して一人で公開してればいくら文句言われても自分がすべて責任を持つ、で終わりじゃん
あれがまずかったのは黒に近いグレーな案件に周りを巻き込もうとしたからじゃね
せめて半分くらい自分で訳してから公開すりゃよかったのに
- 407 :名称未設定:2014/07/03(木) 16:36:39.46 ID:9miDqeTs0.net
- お前らって他人の足を引っ張るのが本当に好きだよな
- 408 :名称未設定:2014/07/03(木) 17:05:06.89 ID:OUF88Ydy0.net
- >こんなずるくてバカな奴見た事無い
>こんな無知な奴も珍しい
かねがね同意。>>404の>>402はアンカーミスなんだが
>>407
アホを叩く?てか、嘲笑するのは他人の足を引っ張るのとは違うと思うぞ
まあ、ヤツじゃなく日本語欲しい他人のことを言っているなら、まあ同類と言わざるを得ず…w
Wikipediaのなんてちゃくちゃくと進んでるんじゃないの?誰も文句言ってないだろ?
- 409 :名称未設定:2014/07/03(木) 17:23:47.03 ID:dfr59P+80.net
- >>407
よお濱ちゃん
- 410 :名称未設定:2014/07/03(木) 19:11:46.08 ID:goDDgdZv0.net
- むかしからネットでコテハンよりコテハンを叩く奴の方がウザがられるのは
他人にとってはそんなやつどーでもいいからだってのを理解しろ。
ネットウォッチ板辺りにスレ立ててそこでやってろ。
- 411 :名称未設定:2014/07/03(木) 19:22:31.67 ID:HB+MyTac0.net
- そういうのはとっくに終わった話題を蒸し返しつつ盛大に自爆した>>386に言ってくれ
- 412 :名称未設定:2014/07/03(木) 20:04:58.73 ID:YP5lY6T80.net
- かわいそうにw
- 413 :名称未設定:2014/07/03(木) 22:24:13.79 ID:AwAd1enk0.net
- 話振ってきたのはあっちなんだよなあ・・・
- 414 :名称未設定:2014/07/04(金) 00:53:18.58 ID:PHpaLKOq0.net
- そろそろ脱アルゴリズムに話題変えようぜ
- 415 :名称未設定:2014/07/04(金) 00:55:15.72 ID:ahBL3fxZ0.net
- いいよ
- 416 :名称未設定:2014/07/04(金) 01:42:45.55 ID:akvSye0b0.net
- Swift書いてるとしだいにCPU使用率が天井に張り付いてファンが猛回転しだすんだが
これがCPUの歓声ってやつか
- 417 :名称未設定:2014/07/04(金) 01:58:55.45 ID:1eWBaRtF0.net
- 正解
- 418 :名称未設定:2014/07/04(金) 02:28:43.53 ID:Sw1ASnOu0.net
- Swift書いてるとしだいに天井に張り付いたファンが猛回転しだすんだが
これが怨霊の歓声ってやつか
- 419 :名称未設定:2014/07/04(金) 08:17:04.69 ID:ahBL3fxZ0.net
- いまいち
- 420 :名称未設定:2014/07/04(金) 09:31:59.33 ID:dbbYPYPd0.net
- 荒れてきたなww
- 421 :名称未設定:2014/07/04(金) 10:32:18.71 ID:akvSye0b0.net
- はやくBeta3来てくれないとろくにSwift書けないし
てかいろいろ秋に間に合うんだろうか
- 422 :名称未設定:2014/07/04(金) 11:13:30.95 ID:8iv3LwPq0.net
- 秋の時点ではまだだな
- 423 :名称未設定:2014/07/04(金) 11:14:31.94 ID:zB5b/t+d0.net
- iOS7の時はβ6か7ぐらいまで出てたと思う
安定はまだまだ先の話
- 424 :名称未設定:2014/07/04(金) 12:20:52.76 ID:LimePMev0.net
- ここはお前らのネタ発表会場じゃねえぞ
- 425 :名称未設定:2014/07/05(土) 04:33:44.28 ID:FDBnx/j40.net
- 浮動小数点の文字列の浮動小数点への変換は、自分で実装するんですか?
- 426 :名称未設定:2014/07/05(土) 08:52:22.35 ID:Wl+i7fBU0.net
- "3.14".doubleValue
- 427 :名称未設定:2014/07/05(土) 09:07:01.48 ID:aW6MbW/W0.net
- >>56
お前日本円が世界三大通貨に入るのを知らないのか?
- 428 :名称未設定:2014/07/05(土) 14:08:08.22 ID:b6BVGnkf0.net
- どんだけ前の話をホジクリ出しとんねや
- 429 :名称未設定:2014/07/05(土) 15:07:25.98 ID:GY64e+me0.net
- たまにこういう亀レスする奴いるよな
専ブラのバグで最新カキコがとれてないのか?
- 430 :名称未設定:2014/07/05(土) 15:23:50.07 ID:b00SBeBa0.net
- 初めてスレ開いて最初から読んでるだけだろ
- 431 :名称未設定:2014/07/05(土) 15:49:38.98 ID:lO0FNsBe0.net
- >>430 だと思うよ。 だからそんなのに反応するのはおかしいね。
- 432 :名称未設定:2014/07/05(土) 15:54:24.15 ID:FlSvdX3j0.net
- 三週間前の無意味な書き込みにいまさらレスして自己弁護とか…
黙って消えてりゃいいのに。
- 433 :名称未設定:2014/07/05(土) 16:36:54.36 ID:lO0FNsBe0.net
- 所で一通Swift本を読んだ人これの回答を考えてみて。
Swift part2
http://peace.2ch.net/test/read.cgi/tech/1402465335/379
http://peace.2ch.net/test/read.cgi/tech/1402465335/381
要は、TinySVGが有る事にして、それを利用してCubicBezierToを実行しろ と言う事みたい。
間で補間的に作る関数が、MoveTo, LineTo, QuadraticBezierTo , CubicBezierTo
- 434 :名称未設定:2014/07/05(土) 16:41:10.63 ID:3N1YZBeD0.net
- マルチしてまでどれだけ必死なんだコイツは。
- 435 :名称未設定:2014/07/05(土) 17:22:34.72 ID:b00SBeBa0.net
- >>432
自己弁護って、俺かID:lO0FNsBe0がその書き込みの奴と同一人物だと思ったのか?その思考は病気だな
- 436 :名称未設定:2014/07/05(土) 17:39:12.88 ID:lO0FNsBe0.net
- >>434 マルチってのは同じ物をいろんな所に貼ることだろ?
俺は2回貼った覚えは無いぞ。
俺はまだ自信が無いからこっちにも投げかけただけ。 調べると結構勉強になる。
- 437 :名称未設定:2014/07/05(土) 19:09:29.85 ID:Z26KDBIW0.net
- 変なやりとりw
- 438 :名称未設定:2014/07/05(土) 21:05:37.06 ID:PrMm7mBH0.net
- 2ch初心者だらけなんじゃないか
- 439 :名称未設定:2014/07/06(日) 11:09:18.20 ID:TMcCuesn0.net
- Xcodeが落ちた時に詳細情報を見ると、中にこんなのが見える。
VM Region Summary:
JS JIT generated code 8K
JS JIT generated code (reserved) 1.0G reserved VM address space (unallocated)
これって、一度JavascriptのJITが受け取れるJSバイトコードに変換して JS JIT(VM)が動いてるみたいだね。
何だかJavascriptの代わりにSwiftが動きそうな予感。
- 440 :名称未設定:2014/07/06(日) 11:20:19.06 ID:TMcCuesn0.net
- >>439
VM_ALLOCATE 16.5M
WebKit Malloc 1232K
こんなのも見えるから、WebKitのVMがそのまま動いてるみたい。
- 441 :名称未設定:2014/07/06(日) 11:38:23.59 ID:TMcCuesn0.net
- Appleはスクリプト言語をAppleScriptからJavascriptに変更すると言う話を聞いた覚えが有るがこれで全ての話が繋がった。
表面ではJavascriptと言いながら、本心はSwiftスクリプトにするつもりなんだろう。
WebKitにLLVMを入れてJSを高速化したと言う話もこれでつながってくる。
実はSwiftの為にLLVMを入れたんだと言う事になれば非常に話がすっきりする。
LLVMが入ったWebKitバージョンは、iOS8 とYosemiteから動き始めている。 Swiftのリリースと重なる。
つまりいつでもSwiftをWebkitで動かす下準備は整いつつある。
WebKit上でSwiftあるいは、SwiftのJS中間コード(Nitro bytecode)が動くことになれば、Google陣営のDartや、Emscripten陣営とも張り合う事が出来る。
WebKit上でも動きNativeアプリでもサーバサイドでも動く万能選手の姿が見えてきた。
SwiftのJS中間コードだけでなくJavascript のasm.jsも吐き出せるようにして他のブラウザでも動くようには考えてるだろう。
- 442 :名称未設定:2014/07/06(日) 12:04:44.76 ID:m0cdyxR90.net
- ドキュメントでクラッシュしているんじゃね?って思ってググってみたら
https://github.com/tomaz/appledoc/issues/386
XCode 4.6.3, with Mountain Lion 10.8.4 で同じようなクラッシュログあるみたいだけど
なんか妄想がたくましいなと思ったw
- 443 :名称未設定:2014/07/06(日) 12:29:29.19 ID:hURsttoD0.net
- ブラウザベンダーの協力無くして、他のブラウザでSwiftが動くことは無い。
そして、なんのメリットもない他社のマイナー言語をわざわざ自分とこのブラウザで動くようにする可能性は限りなくゼロに近いと言わざるをえまい。
- 444 :名称未設定:2014/07/06(日) 12:36:07.27 ID:TMcCuesn0.net
- >>441 >Appleはスクリプト言語をAppleScriptからJavascriptに変更すると言う話を聞いた覚えが有る
Release Notes This is a preliminary document
https://developer.apple.com/library/prerelease/mac/releasenotes/interapplicationcommunication/rn-javascriptforautomation/index.html
This article describes JavaScript for Automation, a new feature in OS X 10.10.
これもYosemiteからで話しが繋がった。
このリリースノートを見ると、当面はOSX用、 ObjC ブリッジも有るから当然Swiftとのブリッジも出来るだろう。
Script Editorでアプリケーションとして保存するとAppletとして実行できるらしいからNativeコードで保存?
先ずはJSのシステムユースと、Swiftをブラシアップして時を見て融合させるんだろう。 次期はかなり早そうに思える。
Javascriptが本当のスクリプトとして使えると言うだけでもインパクトが有るんじゃないかな。
- 445 :名称未設定:2014/07/06(日) 12:41:37.70 ID:TMcCuesn0.net
- >>442 当然前段階から準備してるだろう。 以前からREPLは動いてるけど今度みたいなリアルタイムなPlaygroundの動きではなかった。
そのログにはWebKLitが入っていない。
WebKitにLLVMが入ったのは、 iOS8 / Yosemiteから。
>>443 だから他社のブラウザ用にはJavascriptを吐き出すんだよ。
既にJavascriptはシステム用スクリプトに採用されるんだからお膳立ては整っている。
- 446 :名称未設定:2014/07/06(日) 17:39:41.92 ID:TMcCuesn0.net
- >>442 思い出した。XcodeにLLVM/ LLDBが入ったのはOSX10.8からだったと思う。
だから同じ様なログが見えても不思議では無い。
トレースを見るとJITが動いた痕跡が見えないから本当に動いてるのかどうかは解らないが、当たらずとも遠からずでは?
今はまだ動いていないが動く下地は出来てるとか。
何しろWebKitのJS JITが動き出すのは、iOS8 . OSX10.10 Yosemiteからなんだし、JavaScriptがOSXで動き始めるから、徐々にベールが剥がされて行くだろう。
Appleが目指す方向性は見えて来たんじゃ無いかな?
来年のWWDCが楽しみ。
---
Xcode β3 早く早く❗️
- 447 :名称未設定:2014/07/06(日) 18:02:48.31 ID:mh/ukNL+0.net
- お前の妄想はどうでもいいよ
- 448 :名称未設定:2014/07/06(日) 18:09:05.01 ID:cxsUvgrR0.net
- >>446
WebKitのJavaScriptエンジンはずっと昔からJITだぞ?何か勘違いしてない?
- 449 :名称未設定:2014/07/06(日) 20:06:46.37 ID:TMcCuesn0.net
- >>448 FTL最適化を行う LLVMのJITが入ったのが次のバージョン(iOS8 / Yosemite)から。
だからJSのスピードが30%アップした。
- 450 :名称未設定:2014/07/06(日) 20:23:35.14 ID:1Ft4CkYP0.net
- いい加減チラ裏に書いとくだけにしとけばいいのに
こんなに書いて他にリアルで聞いてくれる人いないのか。そんなに俺があと言いたいのならウェブログにでも書けばいいのに、それは恥ずかしいってか?
- 451 :名称未設定:2014/07/06(日) 20:24:25.40 ID:cxsUvgrR0.net
- >>449
そいで>>439のはLLVMのJITじゃなくて従来からJSのJITだろSwiftとか全然関係無いじゃん
- 452 :名称未設定:2014/07/06(日) 20:36:46.73 ID:fiLM7jF30.net
- LLVM/LLDBになったのはXCode4.2(=Snow Leopard)からで
OSかんけーねーしなんなんだ
- 453 :名称未設定:2014/07/06(日) 21:50:09.41 ID:jxlpDE9z0.net
- LLVMがOSに初めて入ったのは10.5のOpenGLのシェーダプログラム用じゃね
llvm-gccやclangはXcode 3.1 (10.5の時代) あたりから使えたはず
ID:TMcCuesn0は前々から変な妄想をスレに殴り書きする変な人だから...
- 454 :名称未設定:2014/07/06(日) 22:00:42.50 ID:ShIaIu7O0.net
- >>453
最初のレス見た瞬間にあぼーんにつっこんどいた
- 455 :名称未設定:2014/07/06(日) 22:03:04.93 ID:SJRu3PLK0.net
- 単にスルーすればいいのに俺はアボーンしてるっていちいち主張しないと気が済まない奴って不思議
- 456 :名称未設定:2014/07/06(日) 22:06:31.08 ID:ShIaIu7O0.net
- 俺のこともスルーしてええんやで?
- 457 :名称未設定:2014/07/06(日) 22:08:28.71 ID:bkwHebyT0.net
- にわとりが先か卵が先か
- 458 :名称未設定:2014/07/06(日) 22:23:53.30 ID:H08hC86k0.net
- 「あ、この人もう変なことしか書かない」と思ってNGするのが早いか遅いかだけの話なので
アピールもなんもないな。
「あんたNGされてるぜ?」というつぶやきなのだから
わざわざ「俺をNGしたとか報告しなくていい」なんて返事しなくていい。
- 459 :名称未設定:2014/07/06(日) 22:25:36.83 ID:exepJGxn0.net
- VM_ALLOCATEのVMをVirtual Machineだとでも勘違いしてるのかこの痛い子は
- 460 :名称未設定:2014/07/06(日) 22:42:12.79 ID:HC8HqcZR0.net
- いつ頃、Xcode6は公開されるんでしょうか?
早くSwift使いになって、アプリで一儲けしたいです。
- 461 :名称未設定:2014/07/06(日) 23:25:42.60 ID:wNUsHYK80.net
- 10月
- 462 :名称未設定:2014/07/08(火) 05:32:50.99 ID:1Zaeytda0.net
- >>458
それどっちもどっちじゃねw
- 463 :名称未設定:2014/07/08(火) 10:25:14.71 ID:P38nRP9U0.net
- Beta 3 来たけどやっぱり SourceKit 暴走しやがる
CPU の歓声ウェーーイ
- 464 :名称未設定:2014/07/08(火) 10:38:28.24 ID:DdVw2krr0.net
- 節子、それ歓声ちゃう、悲鳴や
- 465 :名称未設定:2014/07/08(火) 12:16:15.99 ID:azfQqctS0.net
- iPhoneのiBooksは、Storeで全てを見ると雲マークが付いてたのでダウンロードした。
巻末にRivision Historyが付いた。
Using Swiftの方も改定された様だがRivision Historyが付いていない。
両方ともダウンロードしたのに雲マークが外れない。 まだ改定予定?
Macの方のiBooksの方は雲マークがつかなくてまだできない。
- 466 :名称未設定:2014/07/08(火) 12:19:35.78 ID:azfQqctS0.net
- Apple’s new coding language Swift receives significant update for developers alongside new Yosemite and iOS seeds
http://9to5mac.com/2014/07/07/apples-new-coding-language-swift-receives-significant-update-for-developers-alongside-new-yosemite-and-ios-seeds/
1. Array in Swift has been completely redesigned to have full value semantics like Dictionary and String have always had in Swift. (17192555)
2. You now declare arrays as [Int] instead of as Int[], as shorthand for Array<Int>.
3. NSDictionary* is now imported from Objective-C APIs as [NSObject : AnyObject]. (16870626)
4. nil is now a literal in the language, not a global constant of _Nil type. (16951729)
5. The half-closed range operator has been changed from .. to ..< to (16951729)
6. APIs imported from C no longer use type aliases like CInt or CFloat, which obfuscated the underlying type.
They are now imported as Int32 and Float, etc.
7. APIs imported from C that use C pointers are now imported with a much simpler API type structure
- 467 :名称未設定:2014/07/08(火) 13:41:25.54 ID:609pai870.net
- Xcode-beta3で関数内関数の再帰書くとPlaygoundが落ちちゃう
- 468 :名称未設定:2014/07/08(火) 15:31:07.42 ID:7zGAKL6N0.net
- emplateはひな形でいいんじゃないかと思う。
virtualは何がいいんだろう? 実質か?
- 469 :名称未設定:2014/07/08(火) 16:23:25.31 ID:LMKu8KMz0.net
- >>468
それなんのネタ?
- 470 :名称未設定:2014/07/08(火) 16:26:39.78 ID:rWyLbMmu0.net
- 訳語ネタ振るとスレが荒れるよネタ
- 471 :名称未設定:2014/07/08(火) 17:20:11.76 ID:j0tky0ik0.net
- いつものコピペ君がコピペ失敗してるw
- 472 :名称未設定:2014/07/08(火) 18:28:03.28 ID:6A8Y5Wqp0.net
- 配列のシンタックスシュガー
[type]
ここまで変えるかね、まあ嫌いじゃないけどw
- 473 :名称未設定:2014/07/08(火) 18:33:27.65 ID:DdVw2krr0.net
- ディクショナリのリテラル表記は、[ ] じゃなくて、 { } を使って欲しかった。JSONに合わせて。
じゃないと、Array<String>と、Dictionary<Int, String> の区別が紛らわしいんだけど
- 474 :名称未設定:2014/07/08(火) 19:46:12.73 ID:1Zaeytda0.net
- >>473
Objective-C 2.0のリテラルと同じで良かった
- 475 :名称未設定:2014/07/08(火) 19:50:02.99 ID:P38nRP9U0.net
- [ ]はコレクション、{ }はコードブロックで統一したんじゃよ
ってクリスじっちゃが言ってた
- 476 :名称未設定:2014/07/08(火) 20:02:33.44 ID:azfQqctS0.net
- >>473 [ String ] [ Int : String ] と書けるようになったんだから解り安くなって良い。
- 477 :名称未設定:2014/07/08(火) 21:12:53.41 ID:WejH0YTM0.net
- Swiftって、KVOとかKVCはどうするつもりなんだろ
あくまでCocoa Touchを主眼に置いてて、Cocoaは無視なのかな
- 478 :名称未設定:2014/07/08(火) 21:58:52.73 ID:OqR+wORh0.net
- Unmanaged<CGImage>!からUIImageを作成する方法を教えて下さい。
以下の様なコードを書いてみましたが、img2,img3はmissing argumentと言われビルドできず、
filename()では一応ファイル名がとれているのですが、img1はnilが帰ってきてしまいます。
リファレンスを見てinit(CGImage CGImage: CGImage!)を使えるかと思ったのですが…
var img1 = UIImage(named:r.defaultRepresentation().filename())
var img2 = UIImage(CGImage:r.defaultRepresentation().fullResolutionImage())
var img3 = UIImage(CGImage:r.thumbnail())
xcodeはbeta3を使用していて、実行はシミュレータでの結果になります。
-- 該当部分の全コード(改行を減らすため一部{}等をまとめています)
@IBAction func onClick(sender : AnyObject) {
let block2: ALAssetsGroupEnumerationResultsBlock =
{(r,i,s) in
if(r) {
var img1 = UIImage(named:r.defaultRepresentation().filename())
var img2 = UIImage(CGImage:r.defaultRepresentation().fullResolutionImage())
var img3 = UIImage(CGImage:r.thumbnail())
println("¥(r.defaultRepresentation().filename())")
}}
let block1:ALAssetsLibraryGroupsEnumerationResultsBlock =
{(g,p) in if(g) {g.enumerateAssetsUsingBlock(block2)}}
let l = ALAssetsLibrary()
l.enumerateGroupsWithTypes(ALAssetsGroupType(ALAssetsGroupAll)
,usingBlock:block1
,failureBlock:{(error) in println("Problem loading albums: ¥(error)")})}
- 479 :名称未設定:2014/07/08(火) 22:04:37.94 ID:WejH0YTM0.net
- これはOK
let x = [1,2,3].map({ String($0) })
let x:[String] = [1,2,3].map({ return String($0) })
↓これだと型推論きかない
let x = [1,2,3].map({ return String($0) })
なんで?
- 480 :名称未設定:2014/07/08(火) 22:54:08.91 ID:lzrguOrB0.net
- ガイキチ
- 481 :名称未設定:2014/07/09(水) 06:08:04.61 ID:bvkvbacm0.net
- []はコレクション統一で小気味いいね
ラトナーはいいセンスしてる
JSONもこの記法に変えた方がいいぐらいだw
- 482 :名称未設定:2014/07/09(水) 08:32:37.83 ID:5Pq+jnWr0.net
- そもそもJSONはソースの一部になるんだから
javascriptに言ってくれ
- 483 :名称未設定:2014/07/09(水) 08:42:32.10 ID:QBK7MgZv0.net
- JSONはキー文字列の" "をオプションにするのとコメント書けるようにするのが先だ
- 484 :名称未設定:2014/07/09(水) 13:04:37.71 ID:WEISP8U20.net
- 静的言語はオブジェクト指向的な動作をしないからイライラするんだよね。
Aを継承してBを作って
Bの変数に入れてBのメソッド起動すればBのメソッドが実行されるのは当たり前だけど
Aの変数に入れて同じメソッドを実行するとなぜかスーパークラス(A)の方が呼ばれるという。
あれ?お前Bじゃなかったん?っていう。
実行オーバーヘッド無くすために、それが実際に何のオブジェクトかはガン無視して、変数の型で呼ばれる関数が決まるんだと。
なのでObjective-Cのプロトコルみたいなことができない。
むかしC++でそういう訳わからない目にあって、それ以来、静的言語が大嫌いになった。
- 485 :名称未設定:2014/07/09(水) 13:22:59.34 ID:woCt+qtX0.net
- ?
- 486 :名称未設定:2014/07/09(水) 13:23:16.86 ID:xAo2YaqL0.net
- 静的言語って何指してるのか分かんないし無知なので勝手に嫌いになりましたにしか読めないのん
- 487 :名称未設定:2014/07/09(水) 13:36:13.15 ID:QBK7MgZv0.net
- マルチ釣りだから相手しなくていいよ
- 488 :名称未設定:2014/07/09(水) 17:05:21.01 ID:tPeRJazy0.net
- Beta3入れてみたけど、配列の型宣言、例えば
Array<Int> のシンタックスシュガーが Int[] だったのが [Int] に変更されてる。
この書き方はキモい。
- 489 :名称未設定:2014/07/09(水) 17:26:15.20 ID:D+V+Cl0s0.net
- >>488
おい、それ俺が別スレに書いたレスじゃねーか。
無断転載するなバカヤロー
- 490 :名称未設定:2014/07/09(水) 17:28:35.79 ID:tPeRJazy0.net
- 俺は合理的だと思うぜ
辞書の糖衣構文を[Int: String]にしたら、配列を[Int]にするのは自然だろ?
- 491 :名称未設定:2014/07/09(水) 17:32:57.68 ID:qoziCoX50.net
- なんだかわからんがム板のswiftスレと相互に書き込みを勝手コピペする
あたまおかしいのがいるからな。
- 492 :名称未設定:2014/07/09(水) 17:41:37.17 ID:YMWz3wkG0.net
- 何が目的なのかわからんからキチガイだなあと思うが、こういう反応が楽してだとしたら真性なんだろうと薄ら寒くなるな
- 493 :名称未設定:2014/07/09(水) 17:59:41.67 ID:WVhDlQZe0.net
- あぁそういえば俺のカキコも昔コピペされてたわ
あん時は、あれ?俺こっちに書いたっけ?と思ったが
そういうことか
キモい奴がいるもんだな
- 494 :名称未設定:2014/07/09(水) 18:38:20.64 ID:qv3BPzLZ0.net
- 反応を楽しんでるならまだ救いがある
ID:tPeRJazy0 はたぶんSwift布教に貢献してる俺様正義とか思っちゃってる
- 495 :名称未設定:2014/07/11(金) 01:26:24.80 ID:zMD2bpUO0.net
- swiftがメイン開発言語になっていったら、Mac名物メモリリークするアプリも減って行くの?
iTunesでさえやらかすからほんと困る。
- 496 :名称未設定:2014/07/11(金) 08:14:05.04 ID:bi7LqKoE0.net
- >>495
お前さん「アプリを終了してもメモリが解放されない」とか言ってるレベルだろ。
- 497 :名称未設定:2014/07/11(金) 08:20:44.56 ID:4hDbT0LL0.net
- そうだけど何か?
- 498 :名称未設定:2014/07/11(金) 08:52:06.78 ID:OBM9ehRZ0.net
- そりゃOSが悪いw
- 499 :名称未設定:2014/07/11(金) 09:03:35.30 ID:bi7LqKoE0.net
- >>498
それも仮想記憶やUnified Buffer Cacheを理解していない発言だから同類。
- 500 :名称未設定:2014/07/11(金) 09:11:12.89 ID:ThjUDLfd0.net
- 門外漢が紛れ込んでいるだけだからあまりマジに相手にしても
まあ、プログラミングしていてもそういうの理解してないヤツもいることにはいるけどw
- 501 :名称未設定:2014/07/11(金) 09:16:47.59 ID:bi7LqKoE0.net
- >>500
残念ながら、実メモリ容量超えたり。仮想記憶に負荷かける様なファイル扱う時はmmap使ったり、
明示的にcache切るっての知らないプログラマは多いでしょ。
- 502 :名称未設定:2014/07/11(金) 09:18:53.34 ID:ThjUDLfd0.net
- だから、それを知らないプログラマを相手にしてもっていう
教育したいんだったら別だけどw
- 503 :名称未設定:2014/07/11(金) 09:55:43.09 ID:AHSr8Xq10.net
- おまいら、MacOSXが初めて公開された頃にもAPIの翻訳をする/しない、Appleに許可をもらう・もらわない、etcでごたごたしてた時と全然進歩がないなw
Appleが公式に許可出す分けねーじゃん、そんなわかりきった事でごたごたするんじゃねーよw
Apple(Japan)が出来る事って行ったら黙認する事、それぐらいしか出来ねー事はわかりきってるだろ?
- 504 :名称未設定:2014/07/11(金) 10:14:30.67 ID:ThjUDLfd0.net
- 仮にその時にそういうことがあったとして、それから進歩していないのはってのは、
いまさら終わったことをまた蒸し返してって「俺が日本語版が必要」と言っているにしか見えない
ので、お前だろっwていう結論
- 505 :名称未設定:2014/07/11(金) 11:54:03.21 ID:WRt550cn0.net
- Swiftは簡単。。だが奥が深い。
LispのS式: 50行
Ruby: 392行
Phyton 3.0: 442行
Swift言語: 559行。★
JavaScript(入門向け定義):270行
JavaScript:A complete ECMAScript 3 grammar for ANTLR 3:1500行
PHP : 590行
Java JDK1.6 : 2000行
C言語のプリプロセッサ : 1440行
Objective-C :476 +1440= 1916行
C言語の全体 :4907(本体) +1440(プリプロセッサ)= 6347行
- 506 :名称未設定:2014/07/11(金) 12:06:44.00 ID:WRt550cn0.net
- >>505 下記忘れた。 行数は、BNF行数。バッカス・ナウア記法(英: Backus-Naur form)
- 507 :名称未設定:2014/07/11(金) 20:45:32.94 ID:zNYFGLfNi.net
- >>503
つまりAppleも進歩していないと
- 508 :名称未設定:2014/07/12(土) 00:41:27.62 ID:yUzl8nsU0.net
- SmalltalkやApple以外のObjective-CだったらObjectを作るときはInstaece creatonを使う方法が一般的だったんだが、なんで初期化子を直呼びする様になったんだ。
不便極まりない。
- 509 :名称未設定:2014/07/12(土) 02:57:08.80 ID:bBwmNMAm0.net
- https://developer.apple.com/swift/blog/
- 510 :名称未設定:2014/07/12(土) 09:12:28.57 ID:RTE4GvDoi.net
- >>508
変更を言語仕様で吸収するのではなく
ファクトリクラスの変更で吸収するため。
言語仕様の増築のもたらす混乱については
C++の変遷が対照的な反面教師
swiftはいま作ってるから仕方ないとはいえ
Objective-Cがやってきた"そこ"を理解してて
くれなかったら怖いな〜と思ってる。
- 511 :名称未設定:2014/07/12(土) 09:37:48.36 ID:/X7U68R70.net
- >>508
よくわからんけど、例えばNSStringだとstringWithFormatとinitWithFormat両方あるじゃんとかそういう話ではない?
>>510
具体的にどんな?
- 512 :名称未設定:2014/07/12(土) 13:48:35.84 ID:dhpnRf5M0.net
- >>509
公式ブログってApple史上初じゃね?
WebkitとかLLVMもブログあるけど、apple.comでブログやるのは初めて見た気がする
- 513 :名称未設定:2014/07/12(土) 15:17:24.65 ID:yUzl8nsU0.net
- タダでも使えるようになったな
- 514 :名称未設定:2014/07/12(土) 15:31:04.03 ID:56W7P3Wa0.net
- マルチ乙
- 515 :名称未設定:2014/07/12(土) 15:57:23.56 ID:+khmFk6l0.net
- >>509
you can target back to OS X Mavericks or iOS 7 with that same app.
This is possible because Xcode embeds a small Swift runtime library within your app's bundle.
ランタイムライブラリって、直接バイナリーでアプリに組み込まれるんじゃ無くて、OSの一部に組み込まれて使われることになる見たいだね。
それだと過去、将来に渡って動作が保障されると言う話も納得。
Binary Compatibility and Frameworks
the Swift runtime will become part of the host OS and this limitation will no longer exist.
- 516 :名称未設定:2014/07/12(土) 16:14:24.52 ID:+khmFk6l0.net
- >>515
We have big plans for the Swift language, including improvements to syntax, and powerful new features.
楽しみだね。 この辺は先にアドバルーンを上げる他社とは大きく違うね。
- 517 :名称未設定:2014/07/12(土) 16:26:43.98 ID:+khmFk6l0.net
- Appleがプログラミング言語Swiftに関する一般公開のブログを開設
http://m.jp.techcrunch.com/2014/07/12/20140711apple-opens-up-with-a-new-blog-about-swift-its-new-programming-language/
・[これはSwiftのニュースではなくて、Appleが公開ブログを設けたことがニュースなのだ。]
簡単に申し上げると、あなたが今日書いたSwiftのアプリケーションを、iOS 8とOS X Yosemiteがリリースされるこの秋にApp Storeに提出されたならば、そのアプリケーションが未来においても完動することを信用できます。
それだけでなく、同じアプリケーションをOS X MavericksやiOS 7の上で動かすこともできます。
それが可能なのは、Xcodeが小さなSwifitランタイムライブラリをあなたのアプリケーションのバンドル内に埋め込むからです。
そのライブラリが埋め込まれていれば、あなたのアプリケーションのひとつのバージョンが、過去と現在と未来のOSリリースの上で動きます。
- 518 :名称未設定:2014/07/12(土) 16:38:01.43 ID:+khmFk6l0.net
- アップル、「Swift」ブログを開始―「Xcode 6 beta 3」無償配布
http://ascii.jp/elem/000/000/913/913395/
Xcode 6 beta 3は、Apple Developer Programに登録すれば、無料で入手できる。
- 519 :名称未設定:2014/07/12(土) 17:56:40.33 ID:yUzl8nsU0.net
- >>515
>This is possible because Xcode embeds a small Swift runtime library within your app's bundle.
>
>ランタイムライブラリって、直接バイナリーでアプリに組み込まれるんじゃ無くて、OSの一部に組み込まれて使われることになる見たいだね。
>それだと過去、将来に渡って動作が保障されると言う話も納得。
意味不明
- 520 :名称未設定:2014/07/12(土) 18:10:08.27 ID:cFiN59en0.net
- 意味不明はおめーだよっww
まあ、それも意味不明だが
- 521 :名称未設定:2014/07/12(土) 18:16:35.84 ID:+khmFk6l0.net
- 昔ブログはなかったが、ガイ・カワサキ と言うエバンジェリストが布教活動に熱心だったな。
https://ja.m.wikipedia.org/wiki/ガイ・カワサキ
え〜〜! 去年Googleに入ったって?
- 522 :名称未設定:2014/07/12(土) 18:43:39.37 ID:cFiN59en0.net
- 誰やねんって、誰やねん。おっさん元気だな
もちとおっさんらしく落ち着いたレスしてくれよw
- 523 :名称未設定:2014/07/12(土) 20:07:34.44 ID:EBCfNtJt0.net
- Swiftをシェルスクリプトみたいにインタープリタ実行出来ればいいのに
- 524 :名称未設定:2014/07/12(土) 22:12:22.80 ID:+khmFk6l0.net
- >>523 ターミナルで
xcrun swift または swift
- 525 :名称未設定:2014/07/12(土) 22:34:16.45 ID:SYIrYtAp0.net
- >ランタイムライブラリって、直接バイナリーでアプリに組み込まれるんじゃ無くて、OSの一部に組み込まれて使われることになる見たいだね。
>それだと過去、将来に渡って動作が保障されると言う話も納得。
アプリのパッケージ内にランタイムが組み込まれるからMavericksでもiOS 7でも動くって言ってるのに
何を言ってるのか
- 526 :名称未設定:2014/07/13(日) 01:02:37.81 ID:NQ4IPb1L0.net
- どーでもいいけどSwiftのソースファイルの拡張子って.swiftなのね…。
アップルはすぐ長ったらしい拡張子つけるよね。xcworkspaceとか。
swfとかでいいのにね。
- 527 :名称未設定:2014/07/13(日) 01:29:29.46 ID:lqjzTrfs0.net
- ショックウェーブフラーッシュ!
- 528 :名称未設定:2014/07/13(日) 02:17:39.09 ID:FIC/0VQI0.net
- 短くて他と被る糞より数倍マシ
- 529 :名称未設定:2014/07/13(日) 09:09:03.67 ID:92T29s3ai.net
- β3どうなん?
めんどくさくてまだ入れてないんだが
- 530 :名称未設定:2014/07/13(日) 09:23:10.35 ID:RGCqehOq0.net
- いまどき8.3形式にこだわる必要もないし
拡張子が5桁ならまだ許せる方だ
- 531 :名称未設定:2014/07/13(日) 12:12:46.81 ID:6QUhnDER0.net
- >>526
拡張子なんて自動でつくもんだし、長くて困ることあるか?
- 532 :名称未設定:2014/07/13(日) 12:15:09.35 ID:NyB18B5+0.net
- ちなみに>>526はこぴぺ
- 533 :名称未設定:2014/07/14(月) 13:59:11.27 ID:MFMMxwDl0.net
- 今からiPhoneのゲーム作る勉強するつもりなんだけどどうしたらいいですかね
タイミング最悪のような気がしてます...
- 534 :名称未設定:2014/07/14(月) 14:04:11.88 ID:APSDVcBA0.net
- 普通に環境揃えてやってみりゃいいじゃん
Xcode beta3 は金払わなくてもインストールできるようになったぜ
- 535 :名称未設定:2014/07/14(月) 14:13:44.11 ID:WNqD1v4F0.net
- >>533 勉強するんだったらSwiftの方が効率よいと思うよ。 本格的にアプリを開発するにはまだ時期尚早だが。
日本語の解説が無いとだめと言うんだったらObjective-Cでやってればよい。
- 536 :名称未設定:2014/07/14(月) 14:34:16.63 ID:fPOLuQc40.net
- 初めてならSwiftはちょっと試してみるのも時期尚早だと思うぞ
- 537 :名称未設定:2014/07/14(月) 14:47:05.56 ID:MFMMxwDl0.net
- >>534,535,536
どうもありがとう
やっぱり勉強始める時期がちょっと早かったかな
英語は読むの遅いけど少しずつでもSwiftやってみます
- 538 :名称未設定:2014/07/14(月) 15:12:34.70 ID:UbHQXD910.net
- Swiftでやりたいというなら止めはしないけど、
サンプルコードがまだ全然無いぞ。
言語だけじゃなくてAPIの使い方も理解しないといけないし。
- 539 :名称未設定:2014/07/14(月) 16:36:48.96 ID:V3Z8MHuX0.net
- IT速報転載禁止
- 540 :名称未設定:2014/07/14(月) 16:55:19.85 ID:MFMMxwDl0.net
- >>538
確かにそうですよね
しばらくは泥メインにします
スレ汚し失礼しました
>>539
ちなみに僕はアフィじゃないです
- 541 :名称未設定:2014/07/14(月) 17:09:57.23 ID:PVcwHIAci.net
- >>539
Safariで開けないような異常なスクリプトにしたのには
なにか裏があるのかと勘ぐっちゃうよなw
- 542 :名称未設定:2014/07/15(火) 21:44:35.00 ID:vQJNY+sM0.net
- swiftがmac以外のサーバOSで動くようにしてくれ!
railsクローンみたいなののswift版がlinuxで動いたら流行るって。
- 543 :名称未設定:2014/07/15(火) 21:53:36.63 ID:/v+G4qp20.net
- まだswiftの言語仕様もかたまってないうちから気が早すぎるって
- 544 :名称未設定:2014/07/15(火) 21:53:55.58 ID:UTRb/ZIa0.net
- たぶんすぐできるようになるよ
- 545 :名称未設定:2014/07/15(火) 22:11:17.20 ID:S/BsgP0c0.net
- Swift自体のクロスプラットフォームかはすぐできるんだろうけど、
Cocoaは、OSXやiOSへの依存部分が大きそうだから難しそうだよね
そして、Swiftは正規表現とか便利な文字列処理も実装できておらず、それらのほとんどをCocoaに依存しているから結局当分先になりそう
- 546 :名称未設定:2014/07/15(火) 22:17:45.81 ID:tmVjziL70.net
- 正規表現とかはCocoaじゃなくてFoundationだけどな
- 547 :名称未設定:2014/07/15(火) 22:32:20.11 ID:S/BsgP0c0.net
- >>546
FoundationはCocoaの一部でしょ
SwiftってファイルIO関連処理もCocoa頼みだよね
ここら辺も言語自体に実装されない限り、若しくは標準ライブラリが用意されない限り、
今の状態でクロスプラットフォーム化しても使えない言語というレッテルを貼られることになる。
- 548 :名称未設定:2014/07/15(火) 22:52:52.50 ID:YaVehgKB0.net
- Swiftは言語でしかないので、言語でできないのはライブラリでってのは、まあ普通でしょ
ライブラリがCocoaなのか他のなのかは特にいままでの他の言語と同じかと。Cocoaが無いからってのは特に問題にならないような。CocoaじゃないOSでも似たようなライブラリがあるだろうし、同じように呼べるだろうし
- 549 :名称未設定:2014/07/15(火) 23:04:26.57 ID:S/BsgP0c0.net
- PerlもRubyもJavascriptも素で正規表現が使える。特に何かのライブラリが必要なわけではない。
ライブラリを用意するにしても、異なるプラットフォームでも、同じ仕様、同じ名前のものが、
別に正規表現に限らず標準で用意されないと、クロスフラットフォーム化のメリットの大部分が損なわれる。
- 550 :名称未設定:2014/07/15(火) 23:24:54.09 ID:cqBJESkH0.net
- swiftから直接win32apiでも呼ぶ気なのん
- 551 :名称未設定:2014/07/15(火) 23:50:10.82 ID:EYlwZ+iy0.net
- 正規表現くらいないとサンプルコード書くのも面倒だな。
- 552 :名称未設定:2014/07/15(火) 23:52:18.62 ID:YaVehgKB0.net
- >>549
正規表現を言語でサポートしているそれらを上げられてもなあ。なんか違う
俺が想定しているのはC/C++あたりのクロスプラットフォームだなあ。俺からしたらPerlもRubyもJavascriptもスクリプトでしかないので、Swiftはそれとはまた別次元(?)なので
言語としてクロスプラットフォームであれば、それぞれのOSで使えるだろうという話でしかない。ソースコードをクロスプラットフォームにするかしないかはまた別の話だろうと思うんだがな
クロスプラットフォームの/じゃないOSSがあるように
- 553 :名称未設定:2014/07/16(水) 00:19:32.22 ID:5GG+eE+F0.net
- C/C++はファイルIOについては標準ライブラリがあるし、正規表現についても定番と呼べるライブラリがある。
Swiftは、まだそれすらない状態。果たしてAppleがCocoaをWindowsに移植してくれるだろうか? そこまで手間かけるメリットがAppleにあるだろうか?
Qt辺りのバインディングが提供されればまだなんとかなるかもしれないけど、今の状態では他のプラットフォームにもってっても中途半端すぎて何に使うの?って感じ
- 554 :名称未設定:2014/07/16(水) 00:26:13.71 ID:kkOr+6cX0.net
- Swiftでは普通なら言語仕様となるものも標準ライブラリに追い出してる
とかラトナーが言ってなかったか
標準ライブラリぐらいはどのプラットフォームでも動くようになるでしょう
そこに正規表現が入るかどうかは知らないけど
俺は正規表現が仕様になってるような言語は軽い虫酸が走る、かな
- 555 :名称未設定:2014/07/16(水) 00:48:50.72 ID:6XGdzuLw0.net
- >>553
Windows版Safariにはあというのは、まあどうでもいいことで
で、なんでSwiftはCocoaなのか。なるほど、SwiftはC標準ライブラリは使えないのか。あほか…
- 556 :名称未設定:2014/07/16(水) 00:59:03.25 ID:POj4lh8L0.net
- Cの標準ライブラリなんて貧弱なもの誰も欲しがらないだろ…
- 557 :名称未設定:2014/07/16(水) 01:08:08.86 ID:6XGdzuLw0.net
- クロスプラットフォームなOSSはいまだCの標準ライブラリであり、また、あんたが使っているそのOSのカーネルとかツールとかはCの標準ライブラリでありの
クロスプラットフォームなソースはCの標準ライブラリがほぼデフォなわけ
ニーズがあればCの標準ライブラリをベースにSwiftのフレームワークが作られてもおかしくはない。OSSとしてでも
そういえば、Objective-Cでも実はCの標準ライブラリがベースだったり
- 558 :名称未設定:2014/07/16(水) 01:36:41.69 ID:5GG+eE+F0.net
- Windowsには、Visualなんとかとか他の開発系とか積極的に入れないとCコンパイラははいらんいんじゃないの?
Swiftをつかうために、わざわざそんなものをインストールさせるのもどうだかなぁと思うけどね
Swiftを別環境に移植するならその辺の敷居は低くしといた方がよくね?
やっぱ、Swift自体に実装されるか、専用の標準ライブラリが提供されるのが理想じゃない?
言語の基本部分だけSwift使って、その他はCのライブラリ使ってねって、なんのためにそこだけSwift使うの?もう全部C/C++でよくね?
って話になるでしょ
- 559 :名称未設定:2014/07/16(水) 01:44:09.33 ID:POj4lh8L0.net
- それはC言語の上の標準ライブラリだから価値があるんであって、別の言語にCの標準ライブラリがのっても誰得になるだけ。
Cの標準ライブラリはユーザーランドの物でカーネルはそれを使えんよ。
一部をカーネル内で実装してるかもしれないけどね。
俺の使ってるWindowsのカーネルでどれだけCの標準ライブラリと同じものが実装されてるのかは知らんけどあんたは知ってんの?
- 560 :名称未設定:2014/07/16(水) 01:56:16.39 ID:5GG+eE+F0.net
- >>559
話ずれてんだけど? なんでいきなりカーネルの話が...Swiftでカーネル書きたいって話なの?
まぁSwiftでインラインアセンブラが使えるようになると書けるんじゃね?
つか、他のプラットフォームに移植するなら、せめて正規表現やファイルI/O用の標準的な関数やクラスぐらいSwiftで提供してくれてもいいでしょ?って話なんだけど
プリミティブなファイル操作するのに、わざわざSwftでfopenとか書きたい?
- 561 :名称未設定:2014/07/16(水) 02:06:00.70 ID:POj4lh8L0.net
- >>560
上のは >>557 宛な
- 562 :名称未設定:2014/07/16(水) 02:18:05.13 ID:5GG+eE+F0.net
- >>561
あぁスマソ
つか、紛らわしいからアンカーつけようね
- 563 :名称未設定:2014/07/16(水) 02:24:48.05 ID:HeCU1lVy0.net
- なんだか、言語とライブラリをごっちゃにしてる奴がいるな。
- 564 :名称未設定:2014/07/16(水) 03:00:04.61 ID:B8a7X+SI0.net
- swiftから標準Cライブラリの関数は呼べるので
使いたい奴は使えばいいというだけ
- 565 :名称未設定:2014/07/16(水) 10:04:14.47 ID:6XGdzuLw0.net
- >>559
だから、ソースをクロスプラットフォームにするならって話じゃん
Windowsは確かにほとんどない。クロスプラットフォームのOSSでもWindowsではあと別にifdefしているしな。他にもWindowsに限らずOSXだったらもしている
Cの標準ライブラリなんて最大公約数ではないのが、最大公約数でも間に合うのもありーので、ソースをクロスプラットフォームにしなければならないなら第1の選択になってんだろって話
そもそもは、>>552が発端なんだがなあ。
Swiftを言語として他の環境で使いたければ使えばいいし、それはCocoaがあるかないかなんて関係ない
ソースをクロスプラットフォームで使いたければ、C/C++と同じように使えばいいだけじゃんっつー
まあ、>>564の短いのが結論ではある
- 566 :名称未設定:2014/07/16(水) 10:05:43.76 ID:6XGdzuLw0.net
- >>565
×そもそもは、>>552が発端なんだがなあ
○そもそもは、>>553が発端なんだがなあ
- 567 :名称未設定:2014/07/16(水) 10:06:48.60 ID:cWqItx0R0.net
- IronSwiftとかあったらいいね
- 568 :名称未設定:2014/07/16(水) 10:18:57.97 ID:lLUbqFjl0.net
- Iron*は死屍累々じゃないのか
- 569 :名称未設定:2014/07/16(水) 13:45:16.11 ID:56Ly9NYg0.net
- >>555 Cの標準ライブラリを使えないと思ってる奴多過ぎ。
696 名前:デフォルトの名無しさん[sage] 投稿日:2014/07/12(土) 01:43:26.47 ID:pUnCThIk
ためしにSwiftからシステムコール呼んだりしてみてるけど、
C言語との連携は結構よくできてるわ
698 名前:デフォルトの名無しさん[sage] 投稿日:2014/07/12(土) 02:42:46.74 ID:pUnCThIk
mmapでバイナリファイル読む例
http://codepad.org/SQH29SHl
- 570 :名称未設定:2014/07/16(水) 15:16:21.75 ID:FUt0e+qL0.net
- 俺は>>555とは違う意味でCの標準ライブラリなんて使えないと主張してる。
Cで書くより冗長にしてC標準ライブラリ程度の物を使うメリットがない
システムコールや各プラットフォームのAPI(posixとか)とC標準ライブラリをごっちゃにしてる>>565みたいなのもいるけどそんなやつは知らん。
- 571 :名称未設定:2014/07/16(水) 15:37:56.57 ID:o6WTe5B00.net
- >>569
SwiftでCの標準ライブラリを使えないようなこと言うので、アホかと。いちおうw
- 572 :名称未設定:2014/07/16(水) 16:11:33.73 ID:56Ly9NYg0.net
- Windows で、Objective-CのFoundationなどのライブラリを使ってコンパイル実行が出来るのにSwiftが出来無いなんて考える方がどうかしてるだろ。
http://qiita.com/monpoco/items/776c5fc497fd3585a055#4-5
すぐに出来る様になるだろ。
ま、そんな使い方するやつはあまりい無いだろうが、言語の勉強位は出来るな。
- 573 :名称未設定:2014/07/16(水) 17:42:23.91 ID:BAjTL/vX0.net
- Swiftコンパイラって、Swiftで書かれてるのかな
- 574 :名称未設定:2014/07/16(水) 17:52:38.10 ID:dpk4ip7ri.net
- >>573 そんな事は無いよ。 どんな言語でも最初から自分で書く様なことはし無いし、出来ない。
言語が固まってきたら有り得るけど。
特にSwiftは、プリコンパイラを省いたから小手先の誤魔化しは出来無い。
Swiftは、C++で書いている。
- 575 :名称未設定:2014/07/16(水) 18:24:36.55 ID:qB8tPli90.net
- 初心者でもわかるSWIFT本まだですかーー
- 576 :名称未設定:2014/07/16(水) 18:37:21.58 ID:dpk4ip7ri.net
- >>575 公式本が今までに無い位分かり易い。Xcodeを使ってサンプル動かすのが最も良い。
日本語しか受け付けなければ、ネットを漁った方が良い。 最近出た日本語の本なんて内容が無くぼったくりだから避けた方が良い。
- 577 :名称未設定:2014/07/17(木) 00:01:46.71 ID:/NSYRMD00.net
- ブログからXcode6βダウンロードしてみた。
IDあるけれど有料の開発プログラムには加入していないから、
使えるのはXcode6のコンパイラ+Swift +10.9までのライブラリなんだね。
Cの初歩レベルしかわからないけれど、これから勉強してみるよ。
Objective-C より覚えやすいと良いなあ。
アップルの冊子を使ってテキスト文をいじりながら試しているけれど、
Xcodeのエラー説明はObjective-Cのクラスを知らないと難しそう。
何か良い手はあるのでしょうか?
- 578 :名称未設定:2014/07/17(木) 00:35:54.96 ID:VCLLe9BL0.net
- 顔文字プラスというアプリが、ずうっとライフスタイルカテゴリで1位〜2位にいるんだけど、今度これの無料版が出た。
http://iphone.ascii.jp/2014/07/11/9347234899/
それで無料版による有料版への影響がわかるかと思ってウォッチして見たんだけど、いつまでたっても無料版はランキングに上がってこない。
でも、無料版のランキングには他の顔文字アプリはいるから、需要がないわけじゃない。
なんで有料版で1位〜2位のアプリの無料版は全く見向きもされないのだろう?
- 579 :名称未設定:2014/07/17(木) 00:37:48.76 ID:VCLLe9BL0.net
- >>578
誤爆した。
ゴメン。
- 580 :名称未設定:2014/07/17(木) 02:46:17.86 ID:EIw1NArA0.net
- Toru Sato
@torusato8
Swift開発秘話がすごい。Chris LattnerがAppleに参加してLLVMの導入と猛烈な効率化を進めた結果であることがよくわかる。Chris Lattnerの本人ブログの方が事実を淡々とまとめてあってわかりやすい。... http://fb.me/1mKmgL61A
- 581 :名称未設定:2014/07/17(木) 09:12:26.65 ID:ZbMDIik+0.net
- クリスのホームページとか発表翌日には話題になってたから今更
- 582 :名称未設定:2014/07/17(木) 11:28:53.78 ID:NjnheYvv0.net
- >>581 良いじゃないか。 Wiredを見てからの感想なんだから。
Wiredの記事も良く書けてると思う。
Google Goはもたついてるけど、Swiftは急速に普及するとか。
Goにはユーザにとって使うインセンティブが無いが、Swiftはインセンティブをもたらすとか。
Lattner は。Light Tableの作成者の一人だって。
この言葉が一番好きだな。
‘I HOPE THAT BY MAKING PROGRAMMING MORE APPROACHABLE AND FUN,
WE’LL APPEAL TO THE NEXT GENERATION OF PROGRAMMERS AND TO HELP REDEFINE HOW COMPUTER SCIENCE IS TAUGHT.’
Wiredは持ち上げ過ぎと思える位だが事実
But even if Swift remains an Apple-only thing, it’s impact could be greater than any other language that has sprung up in recent years,
and it may achieve mass adoption faster than any language in modern history.
- 583 :名称未設定:2014/07/17(木) 12:00:45.26 ID:NjnheYvv0.net
- >>577 >Xcodeのエラー説明はObjective-Cのクラスを知らないと難しそう。
ViewでAssistant Editorを Show Assistant Editor として開いてご覧。
詳細な解りやすいエラーメッセージが見れるよ。
また、Console output も見れるようになるからprint結果も見れるよ。
- 584 :名称未設定:2014/07/17(木) 12:03:57.20 ID:z0VeR3kr0.net
- 日本語でおk
- 585 :名称未設定:2014/07/17(木) 12:07:13.36 ID:j4dS3Mjh0.net
- 文系はここにいらんよw
- 586 :名称未設定:2014/07/17(木) 12:31:23.53 ID:e0jPikBe0.net
- 文系なら英語もわかってほしいなあw
- 587 :名称未設定:2014/07/17(木) 20:41:56.07 ID:Rt58V/+Z0.net
- >>582
Smalltalk が使用者に与えたような体験を
与えられればたいしたもんだけど、PlayGround + Swift はそこまでの物ではないと思う
と書いてて思ったけど Obj-C without C なら素直に
モダン化した Smalltalk で良かった
- 588 :名称未設定:2014/07/17(木) 22:58:39.52 ID:NjnheYvv0.net
- >>587 今風なスタンダードな文法がとっつきやすいんだよ。 Swiftは誰もが見てわかる文法を採用した。
- 589 :名称未設定:2014/07/17(木) 23:21:29.63 ID:kUyhuDGi0.net
- セレクターの仕組みはいい感じに残してくれたからな。あれが無いと意味が
分かりにくい。
あと、クラス名の前に付けるプレフィックスは言語仕様的に外せない事は
無いと思うが。。。なんで残しているのだろう?
- 590 :名称未設定:2014/07/17(木) 23:38:12.30 ID:da+oD6Og0.net
- Swift 無償配布されるようになってNDAも緩くなったのかな?もう人に話しても大丈夫?
- 591 :名称未設定:2014/07/17(木) 23:38:14.54 ID:j4dS3Mjh0.net
- なんのこと?まさかCocoaのフレームワークを使う場合のこと?
- 592 :名称未設定:2014/07/17(木) 23:39:12.48 ID:j4dS3Mjh0.net
- >>590
ドキュメントがiBooksにあるんだからいいんじゃないの。Xcode6-Beta固有のなにか?
- 593 :590:2014/07/18(金) 00:30:17.48 ID:g+TTZE1j0.net
- Release Note見てみたけどYosemiteの注意書きみたいにConfidentialにしろとかunder non-desclosureだとか
書いてないからいろいろ公開してもおkのようですね。先週以前からそうだったのかどうかもはや確認できないけど
- 594 :名称未設定:2014/07/18(金) 08:17:45.31 ID:EERlKPLQ0.net
- 早速β3ダウンロードして、iOSアプリを制作開始。儲けるぞ。
- 595 :名称未設定:2014/07/18(金) 08:33:19.79 ID:EERlKPLQ0.net
- >>590
正式リリースまではダメだお
- 596 :名称未設定:2014/07/18(金) 09:44:50.50 ID:DTclVqnji.net
- >>595 Swift本は正式リリースだべ。
- 597 :名称未設定:2014/07/18(金) 09:48:05.54 ID:DTclVqnji.net
- >>594 儲けろ儲けろ。チャンスだぞ。
- 598 :名称未設定:2014/07/18(金) 10:25:57.66 ID:5TZNUkM1i.net
- >>594
早速って、いつ出たと思ってるんだ
- 599 :名称未設定:2014/07/18(金) 12:04:44.57 ID:EFrshz5I0.net
- >>596
Swiftで書いたアプリはまだリリースできないということだろ。
- 600 :名称未設定:2014/07/18(金) 15:24:15.42 ID:/5KxOJTF0.net
- >>587
smalltalkって動的言語だよね。
静的言語にすることによって速度を出すようにしたのがSwiftじゃないの?
- 601 :名称未設定:2014/07/18(金) 20:12:01.35 ID:lnDSxrq7i.net
- もともとObjective-Cもクラス内はただのCモジュールだから
速くしたいならクラス内完結でCでがっちり書けば
動的静的もなんもないんやで?
- 602 :名称未設定:2014/07/19(土) 01:45:38.75 ID:JVxF3uHx0.net
- String渡したらシェルコマンドを実行するお手軽な命令無いのかな。python のos.system('ls')みたいなの。
見つからないのでcでsystem()呼ぶ関数を書いてこれをswiftから呼んでるけど
- 603 :名称未設定:2014/07/19(土) 08:09:32.57 ID:yvkLlRK3i.net
- >>602 こんなのは?
UNIXコマンドを実行する(同期)
http://qiita.com/takoyakushi@github/items/9ad2db54ccaaca8cc603
- 604 :名称未設定:2014/07/19(土) 13:29:47.04 ID:zpebo0710.net
- いや普通に直接system("ls")で実行できるから
- 605 :602:2014/07/19(土) 22:48:20.62 ID:LsYqm5O70.net
- >>603
さんくす。Objective-Cで調べてたらこういうのしか見つからなくて、もしくは
Cのsystem()使えってどこかに書いてあってswiftではどうするんだろうと思ってたところでした。
>>604
なんと!ありがとうです。たしかに使えました。お騒がせしてすみませんでした
- 606 :名称未設定:2014/07/19(土) 23:31:09.16 ID:LdSQxHfF0.net
- >>604-605 暫くSwiftが使えない環境で確かめられないんだけど、直接 system("ls") が呼べるってこと?
- 607 :名称未設定:2014/07/19(土) 23:37:42.76 ID:GQng8kd60.net
- もち
func system(_: CString) -> Int32
- 608 :名称未設定:2014/07/20(日) 00:05:12.35 ID:IHmrPJe80.net
- >>607 有難う。これが使える事は何処に書いて有るの?
例は見つけたけど、公式ドキュメントが見つからない。
system() command with a variable in swift
http://stackoverflow.com/questions/24166413/system-command-with-a-variable-in-swift
- 609 :名称未設定:2014/07/20(日) 00:18:19.72 ID:w1J4P84H0.net
- >>608
質問の意味が分からないな。
http://up3.viploader.net/omoshiro/src/vlomoshiro037672.png
- 610 :名称未設定:2014/07/20(日) 01:03:46.73 ID:IHmrPJe80.net
- >>609 有難う見つかった。C の標準関数その物と言う話ね。
https://developer.apple.com/library/ios/documentation/System/Conceptual/ManPages_iPhoneOS/man3/system.3.html
検索するのが難しいね。
- 611 :名称未設定:2014/07/21(月) 21:33:07.74 ID:bvYVTy4y0.net
- math libraly (math.h) も難なく使えるんだね。
https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/math.3.html
var cs0 = cos( 0.0 ) // theCosOfZero equals 1.0
var sq4 = sqrt( 4.0 ) // square root 4 squals 2.0
- 612 :名称未設定:2014/07/21(月) 21:37:22.46 ID:wBYyResU0.net
- 寧ろなんで使えないと思った
- 613 :名称未設定:2014/07/21(月) 22:00:35.25 ID:GrotAgVW0.net
- 散々Cの関数は直接呼べると言われてるのに公式ドキュメントとか何を言ってるのか
- 614 :名称未設定:2014/07/21(月) 22:25:32.42 ID:LiJu/Tfm0.net
- 610=611はちょっと抜けてる奴なんで許してやって
- 615 :名称未設定:2014/07/21(月) 23:03:18.45 ID:GR9uoLzG0.net
- >>609 これって、stdlib.h っていうCのヘッダーファイルを表示上だけSwiftに変換して表示しているの?
var stdin: UnsafePointer<FILE>
って、定義されていてーの、FILEを巡るとstdio.hが同じように見えはするけど、使い方がわからんな
いまいちヘッダーの取り扱いがわからん
- 616 :名称未設定:2014/07/21(月) 23:12:32.78 ID:GR9uoLzG0.net
- ああ、巡って見たstdio.hはCのstdio.hじゃないのか??
fprintf がエラるからstdioをimportしていないんだと思ったら、fprintfがSwiftから見たなにものかのstdioには定義されていないだけだった。fopenとかふつーにあるしエラーにはならんのね
あーるのかなーいのかどっちやねんって、隠されたヘッダー(?)見るしか無いのか
- 617 :名称未設定:2014/07/22(火) 10:41:19.27 ID:Npjb6G6g0.net
- 基本的に可変長引数のものはバッサリないな
ラッパー必要なのかも
- 618 :名称未設定:2014/07/22(火) 13:11:51.39 ID:PsKCjaVk0.net
- ああ、なるほどっ!
- 619 :名称未設定:2014/07/22(火) 15:56:00.28 ID:VC8J3qWQ0.net
- Swiftやってみようかと思ったけどバックドアが怖いからやめとくわ
【IT】AppleのiOSにユーザー監視用のバックドアが秘密裏に設けられていたことが判明
http://daily.2ch.net/test/read.cgi/newsplus/1406004765/
- 620 :名称未設定:2014/07/22(火) 16:37:12.19 ID:lHu6WKfU0.net
- おう、やめときや
- 621 :名称未設定:2014/07/22(火) 18:12:37.59 ID:ckFCNGLH0.net
- IT速報転載禁止
- 622 :名称未設定:2014/07/23(水) 11:35:13.88 ID:+oIkS8aC0.net
- test
- 623 :名称未設定:2014/07/23(水) 13:20:01.10 ID:ga/dyfBN0.net
- iBooksの本が改定された。 7/21版
- 624 :名称未設定:2014/07/23(水) 16:24:58.13 ID:PLaiMrq/0.net
- >>623
ibookも差分アップデートされたらいいのに。
- 625 :名称未設定:2014/07/27(日) 18:36:35.88 ID:0WxT7WO80.net
- 静的言語になったという事はObjCに比べて解析処理が作りやすいから、
リファクタリング機能の充実はもとより、Xcode3でサポートしていた
クラス図ビューワーがより強力になって再実装されるかもね。
- 626 :名称未設定:2014/07/27(日) 22:03:48.36 ID:oaAkhhpm0.net
- いるか? >クラス図ビューワー
- 627 :名称未設定:2014/07/27(日) 23:24:07.03 ID:0WxT7WO80.net
- >>626
よっぽどの物を作らない限り、クラス図まで起こす必要は無いな。
ただ、現状の変数の様子をオブジェクト図で表示する機能は欲しい。
- 628 :名称未設定:2014/07/28(月) 02:32:20.56 ID:ggiiSBSv0.net
- 静的言語になったというか強い静的型付けがデフォルトになっただけで
オブジェクトをAnyObject型に入れて実行時までシンボル解決しないプログラミングスタイルも許されている
Obj-Cと互換性がある以上これは切り捨てられない
- 629 :名称未設定:2014/07/28(月) 11:02:59.63 ID:DQn8yzjB0.net
- しょせんObjective-Cの負債をひきずった言語
- 630 :名称未設定:2014/07/28(月) 12:16:45.10 ID:T06/euOi0.net
- >>629 いい所取りしてるだけだろ。 負の資産等ない。 負の資産を切り捨てて作り上げた物だから。
例えば何が負の資産だ?
- 631 :名称未設定:2014/07/28(月) 12:21:09.22 ID:PmEm911f0.net
- 相手にしても意味無し
- 632 :名称未設定:2014/07/28(月) 13:19:12.97 ID:0a1pg9480.net
- 負の遺産といえばCocoaだろうな
Cocoaのクラスや関数のネーミングに合わせるためにシグネチャが気持ち悪いことになってる
文字列や配列も混在具合が気持ち悪い
どうせなら全部Swift用に作りなおして欲しい
- 633 :名称未設定:2014/07/28(月) 13:33:14.43 ID:d3Xd92BE0.net
- >>632 ネーミングは確かにそうだがそれは一時的な物だろう。 そのうち一掃されると思う。
ネーミングを使いやすいものにしていかないと生産性は上がらないからね。
その昔カーボンやココアを作った時の生みの苦しみがしばらく続くだろうが今回は楽しい作業だろう。
Swiftは本当に成長が楽しみ。
- 634 :名称未設定:2014/07/28(月) 13:54:35.14 ID:6ynQe2zi0.net
- ObjCからコンバートされたAPIのImplicitly Unwrapped Optional型がウザくてしょうがない
暗黙的にアンラップされるからといって生の型と同じように扱ってると不意にnilが渡ってきて実行時に爆発する
- 635 :名称未設定:2014/07/28(月) 13:58:32.92 ID:CL2ALDUA0.net
- 過去のメンテでいまだにCOBOLやPerl使ってる人がいるけど、Objective-Cもメンテ需要はしばらくありそうだな
もともと言語人口も少ないし、IBMとの提携でBtoBに用途拡大していくし
SwiftとObjective-C両刀使いの未来は明るい
- 636 :名称未設定:2014/07/28(月) 14:22:58.32 ID:0a1pg9480.net
- ァ 彡⌒ミ ァ,、
,、'` 。゚( ゚^∀^゚)゚。,、'`
'` ( ⊃ ⊂)
- 637 :名称未設定:2014/07/29(火) 00:18:24.05 ID:NdidNSuS0.net
- お客さん、Appleの作法は〜とか言ってるキミは
どうせ遠からず脱落するのがみんなわかってるんだから
はやく諦めたがいいよ。
ほらWindows9も来年発売だよ?巣が呼んでるよ?
- 638 :名称未設定:2014/07/29(火) 00:31:09.18 ID:JPC0NHsI0.net
- >>637 それって美味しいの?
- 639 :名称未設定:2014/07/29(火) 00:37:03.97 ID:JPC0NHsI0.net
- ObjCからswiftへの変換プログラムを提供すると言ってたよね。
いつ頃リリースされるんだろ。
- 640 :名称未設定:2014/07/29(火) 08:31:43.93 ID:JPC0NHsI0.net
- https://developer.apple.com/swift/blog/?id=6
Jul 28, 2014
Interacting with C Pointers
Pointers as In/Out Parameters
Pointers as Array Parameters
Pointers as String Parameters
Safety with Pointer Argument Conversions
- 641 :名称未設定:2014/07/29(火) 09:47:17.04 ID:k+q+nXe70.net
- >>639
まだ仕様が固まってないからGMくらいまで待たないといけないんじゃね
- 642 :名称未設定:2014/07/29(火) 10:53:51.08 ID:JPC0NHsI0.net
- >>641 そんなに早くは無いだろ。 早くて来春頃では?
- 643 :名称未設定:2014/07/29(火) 15:11:49.90 ID:E31UXZF/i.net
- ObjCから変換して数%でも早くなったら変換が進むだろうね。
その前にSwiftの最適化やライブラリの整備が山積みされてるんだろうけど。
- 644 :名称未設定:2014/07/29(火) 15:51:12.61 ID:E31UXZF/i.net
- ClangにIntel版OpenMP が入り並列化が出来る様になったから、それをベースにSwift の並列化仕様を入れ込むんじゃ無いかな。
Swift並列化が完了してObjCの変換開始みたいな気がする。iPhoneでさえDual Coreだから。
- 645 :名称未設定:2014/07/29(火) 18:03:23.82 ID:3Sno/BeO0.net
- すでにGCDがあるのに、ナゼわざわざOpenMPという茨の道を選ぶのか?
OpenMPの目的も知らないバカだろ
- 646 :名称未設定:2014/07/29(火) 18:13:32.14 ID:E31UXZF/i.net
- >>645 ごめん、何も知ら無い。
ベンチマークでOpenMP用のプログラムでは結果が良く無いのがOpenMP対応でクリアされたから自由に動けると思った。
GCD対応してたってOpenMPベンチマークじゃ不利になるからね。
いずれにしろ、並行処理についてSwiftが口をつぐんでいる理由を知りたい。
- 647 :名称未設定:2014/07/29(火) 18:28:39.66 ID:laTACDWl0.net
- 並行処理はNSOperationQueueを使えばいいんでないの
- 648 :名称未設定:2014/07/29(火) 18:41:25.01 ID:E31UXZF/i.net
- >>647 並行処理がライブラリーで出来る事は当然なんだけど、誰でも簡単に出来る言語仕様が望まれると思う。
シングルコアのCPUなんて殆ど無いんだから。
何のための新言語なんだか。
Go にしろRustにしろ重要項目にあげている。
- 649 :名称未設定:2014/07/29(火) 18:45:52.93 ID:c6svqQLI0.net
- >何のための新言語なんだか
お前のような知ったかでも高説垂れれる為にとか?
言語どうとか細々文句言うヤツってどうプログラミングしているの?あの言語だったらこうなのにとか文句言いながら?
- 650 :名称未設定:2014/07/29(火) 18:46:54.49 ID:E31UXZF/i.net
- 将来的には高度な最適化で自動的に並行処理が出来る様にしたいのかもしれ無いけど、最低CPU構成をコンパイル条件に与える必要は有るよね?
- 651 :名称未設定:2014/07/29(火) 18:48:01.77 ID:c6svqQLI0.net
- もうチラ裏かブログにしてくれないかなあ
- 652 :名称未設定:2014/07/29(火) 19:41:11.10 ID:WAgfF5AN0.net
- >>648
言語仕様による並列化機能はほしい。
マルチcore化を進めて、1coreあたりの消費電力を下げて、よりバッテリーライフが長くなったりすれば、iosとしてのアドバンテージも増えるだろうし。
Goのchannelみたいなの希望
>>650
それは、コンパイル時じゃなくて動的に見る部分だよね。
- 653 :名称未設定:2014/07/29(火) 20:04:46.53 ID:H6yJU8/L0.net
- ライブラリレベルで十分だと思うけどね
言語仕様はなるべく小さい方が後々いい
- 654 :名称未設定:2014/07/29(火) 20:48:05.22 ID:T6KehX720.net
- (バカだから並列処理は言語におまかせだお)
- 655 :名称未設定:2014/07/29(火) 21:45:04.16 ID:laTACDWl0.net
- Apple専用言語なんだし仕様はミニマムであとはココアに任せる方針なんじゃないのかな
既存の強力なGCDやOperationQueueがあるんだし
言語に不満があっても結局今ある環境でアプリを書かないといけないし、目的はアプリであって言語は単なる手段やで
- 656 :名称未設定:2014/07/29(火) 22:50:49.22 ID:1On54UGV0.net
- >>655
別にシンタックスシュガー的な感じで裏でGCDとかOperationQueを使う感じで構わないのよ。
アホの子が作っても、UI描画系だけMainスレッドで動くようにしたほうがいい気がするんだよね。
なんか副作用あるかな?
- 657 :名称未設定:2014/07/29(火) 23:20:12.90 ID:JPC0NHsI0.net
- >>656 俺もそう思う。 自分で作れと言われればその通りだが皆が作る様な物は共通にしておいて欲しい。
今のGCDのネーミングのまま使うのは無駄が多くSwiftの良さを殺してしまうだろ。
- 658 :名称未設定:2014/07/30(水) 00:15:33.47 ID:I1OuNyZm0.net
- >>656,657
心情的にはすごく理解できるけど、並列化(parallelization)は
並行化(concurrency)以上に難しい技術的課題なんだ
これまで並列化の実用化に成功した言語は FORTRAN だけなのが現実
(しかもベクトルプロセッサ上の数値計算限定で、なおかつ IBM 等のメンフレーマ達による
苛烈な競争による巨大投資があったから実用化にこぎつけた
汎用的な並列化技術は、日本の ICOT(第五世代コンピュータプロジェクト) が
実験室レベルではあったけれど、世界的に大きな成果をあげていた)
おそらく Apple も並列化の(フレームワークレベルではなく)言語レベルでの実現を研究している
はずだと思うけど、現在の4コア8コア程度の並列度では明らかな費用対効果は得られない
もしもアムダールの法則が現実的な壁となる32コアやら256コアの時代が訪れれば、
Apple も対応した言語を迷わず投入すると思う(それが Swift なのかどうかは分からないが....)
- 659 :名称未設定:2014/07/30(水) 01:02:43.39 ID:YTEwmsLL0.net
- >>658 8コア有ると倍のスレッドを動かせるのでは?
16スレッドも動くとその効果は大きいと思うよ。
ましてやサーバーならマルチCPUもありだろうし。
IBM Power8だと24Core4Way?だから96スレッド?。
さらに実際はIO待ちなども間に入るだろうからコントロールしたいスレッド数はもっと多くなるはず。
- 660 :名称未設定:2014/07/30(水) 01:15:59.51 ID:t2ekkj8d0.net
- >>659
ほんとにお前はわかってないなあ
- 661 :名称未設定:2014/07/30(水) 01:44:21.83 ID:PVBpv/ad0.net
- Xcode 6 ベータ4にしたらoutletとかの変数型が
@IBOutlet var field : NSTextField
というのから!マーク付きになってた。
@IBOutlet var field : NSTextField!
nilな可能性もあるからこっちの方がすっきりするけど。
ベータ3では配列宣言の書き方が変更されたしいろいろ変わるね
- 662 :名称未設定:2014/07/30(水) 04:06:27.82 ID:qzSvLoiw0.net
- SwiftでCUDAとかOpenCLとか使えるの?
- 663 :名称未設定:2014/07/30(水) 12:40:49.73 ID:YTEwmsLL0.net
- >>662 今まで使えてるのが使えなくなる理由が無い。 OpenCLはSwiftで動かしてるのを見た。 import Cocoa; import OpenCL
- 664 :名称未設定:2014/07/30(水) 16:50:48.14 ID:NS9xmx3u0.net
- まぁC言語やObjective-Cと互換性あるうちはいいけど、
互換性なくなったら大変だよなぁ。特にC言語は
- 665 :名称未設定:2014/07/30(水) 16:53:59.98 ID:t2ekkj8d0.net
- 互換性を無くすという発想がどこから出て来たのやら
- 666 :名称未設定:2014/07/30(水) 16:56:52.98 ID:NS9xmx3u0.net
- >>665
C/ObjCからの移行をスムーズにするために互換性があるだけで
いつまでも互換性なんか残しておくわけないでしょ
1〜2年したらSwiftネイティブなフレームワークも出てくるだろうし、
ある程度移行が進んだら互換性は切り捨てじゃないか?
- 667 :名称未設定:2014/07/30(水) 17:00:18.17 ID:t2ekkj8d0.net
- >>666
お前自身で
>互換性なくなったら大変
って言っているんだけど。お前の「いつまでも互換性なんか残しておくわけない」って時はは、大変じゃなくなった時じゃないの?やっぱりどういう発想なのかわからん
まあそもそも>>666自体が妄想にしか見えないがなw
- 668 :名称未設定:2014/07/30(水) 17:04:43.45 ID:FyN0GbPi0.net
- 互換性ってなんだよ
関数呼び出し規約が変わらなければずっと使えるだろう
- 669 :名称未設定:2014/07/30(水) 17:08:12.03 ID:Zl5ejAEui.net
- >>666 何も知ら無いな、Appleは互換性と戦い続けて来てる歴史が有る。
PowerPCからIntel に乗り換える時苦しい思いをしたが、Object-Cで乗り越えずっと昔の資産を引き継いでいる。
だからC言語を今でもサポートしてるんだよ。 その互換性がなくなることはあり得無い。
Swiftはその全資産を引き継ぐからこそ存在価値が有る。
互換性がなくなる時はObjective-Cを捨て去る時。当面心配する必要は無いだろ。
- 670 :名称未設定:2014/07/30(水) 17:16:18.61 ID:Zl5ejAEui.net
- >>669 IBMを切り捨てた歴史が有るにもかかわらず、IBMには沢山のObjective-Cエンジニアがいる。
そう言うつながりが有るから今回の提携もすんなり言ったんじゃ無いかな。
結構期待してる。
- 671 :名称未設定:2014/07/30(水) 17:17:34.70 ID:t2ekkj8d0.net
- Objective-Cが呼び出せなくなるようなことが後々後々仮にあったとしても、Cもは無いわなあ
OS Xだってシステム関連はCなんだし、そういうのを使うには何らかのブリッジが必要になるし。で、Javaのnativeみないなのを言語仕様に入れるなら、いまのほうがすっきり簡単直接で何も問題ないしな
- 672 :名称未設定:2014/07/30(水) 17:32:23.54 ID:IgmKi8qF0.net
- そもそもNeXTがオブジェクト指向にObjective-Cを使った時点で
いまもiOSでつかわれてるNSプリフィクス群でわかるように
オブジェクトクラスはいったん作ったらずっと使える思想がこっちは徹底してるからなぁ…
機能の整理で使用をこちらへ切り替えてーってのはあるけど
アンチの連呼と反対に"ハイ終わりー!"って「切り捨て」は他の環境ほど酷くない。
Windowsみたいな設計だったらPPC->Intelの時に大混乱じゃ済まなかっただろうし
そもそも過去環境の即死意味するからあんなことできないし。
- 673 :名称未設定:2014/07/30(水) 18:18:06.26 ID:JKGiO4QL0.net
- Swiftが成熟したらObjective-Cはさっさと捨ててかまわないけど
CはPOSIXの関係もあるしこの先も捨てられんわな
- 674 :名称未設定:2014/07/31(木) 00:25:04.21 ID:E1Za7bMZ0.net
- >>672
方々でよく使われる文字列やコレクションはSwift独自とか、CocoaとCocoa Touchでもビジャルパーツ等はNSからUI他に新しく書いているってのはあるな
でもまあ、なんかCocoa/Cocoa Touchの「全て」を文字列やコレクションと同じようにSwiftフレームワークとして整備するはずだと思っているヤツの多いのはなんだかなあ
- 675 :名称未設定:2014/07/31(木) 00:41:54.79 ID:N3z7jgzo0.net
- >>674
>でもまあ、なんかCocoa/Cocoa Touchの「全て」を文字列やコレクションと同じようにSwiftフレームワークとして整備するはずだと思っているヤツの多いのはなんだかなあ
ObjCやCocoaを毛嫌いしている人達だと思う。
別の言い方をすれば、過去にOSX/iOSプログラミングに挑戦したけど挫折した人達の一部で、
挫折した理由が自身の技術力不足であるという現実を認める事ができず、
ObjCやCocoaの仕様に問題があるからだと逃避するプライド(だけ)が高い人達。
以前からObjCやCocoaで普通にプログラミングしていた人達にとって、
Swiftの誕生は歓迎こそすれ、すでにそこにあるCocoaを今さら嫌う理由は無い訳だから。
- 676 :名称未設定:2014/07/31(木) 01:06:49.66 ID:Fm3Xhxq+0.net
- Acition ScriptやJava Scrpit系言語と勘違いしてるのかな?
Obj-Cはもちろんの事、MSでいうC#と同じくアップルに都合のよい仕様に
するためのオレオレ言語だと思うが。となるとC言語ブリッジの廃止なんて
既存資産やパフォーマンスが気になる画像処理や音楽アプリの事を考えると絶対あり得ないわ。
- 677 :名称未設定:2014/07/31(木) 01:07:48.93 ID:g34uQKTX0.net
- いやいやいやどう考えてもSwift用にAPI整備し直さないと今のCocoa x Swiftはいびつだよ
1本2本ある程度のサンプルアプリ書いてみなよ
このままだと辛いわー、Swiftのよさ活かされないわー、この先もこのままだったらObjCで書いた方がずっとマシだわー
ってなるよ
- 678 :名称未設定:2014/07/31(木) 01:21:54.11 ID:E1Za7bMZ0.net
- そんなことないけどな
Cocoa/Cocoa Touchは所詮フレームワークだろ。Objevtive-CでだってCore使うとなったらCだろ
言語とフレームワークを一緒くたにするからおかしい。そしてフレームワークを整備するのはAppleでだってそう簡単ではないのは目に見えているだろうし、全てを整備するほどかっていうw
無理してSwift使わないでObjective-Cで書きゃいいやん。お前が利点が無いと思うなら
- 679 :名称未設定:2014/07/31(木) 01:27:39.74 ID:B+fOF6MG0.net
- VisualBASIC程度の楽さが必要っすよ
- 680 :名称未設定:2014/07/31(木) 01:59:01.55 ID:xe2zMf0m0.net
- 俺の周りではVBなんて覚えてもOLのお手伝いしか出来ない
- 681 :名称未設定:2014/07/31(木) 03:02:37.08 ID:lKnSxmX70.net
- つまり俺が辛いのはcocoa×swiftが歪なせいだって言いたいだけなのん
- 682 :名称未設定:2014/07/31(木) 06:45:24.37 ID:Js6zYh3w0.net
- 嫌いならやらなくええやん。開発者人口が増えると単価が下がる。
- 683 :名称未設定:2014/07/31(木) 06:47:18.23 ID:dVszvT+a0.net
- アプリを実際に書けばわけると思うけど、大半がSDK関連だからObjcとSwiftの差なんてどうでもいいレベル
- 684 :名称未設定:2014/07/31(木) 06:58:12.61 ID:8auTcPAr0.net
- マックでjavaドトールでjava
スタバでjava
- 685 :名称未設定:2014/07/31(木) 10:04:00.01 ID:kEbr1TwR0.net
- hot moca java
- 686 :名称未設定:2014/08/01(金) 17:07:47.62 ID:ehoLyjIy0.net
- ココイチでjava
- 687 :名称未設定:2014/08/01(金) 17:18:36.39 ID:e9mOKnT00.net
- すき家でjava
- 688 :名称未設定:2014/08/02(土) 22:05:53.72 ID:jNtkcT2/0.net
- core dataのNSManagedObjectのサブクラスってObjective-Cで書かないといけ無いんやな。
- 689 :名称未設定:2014/08/02(土) 22:19:11.80 ID:L4rNK0AP0.net
- >>688
そんなことはないでしょ
- 690 :名称未設定:2014/08/03(日) 01:37:42.93 ID:aNn78GgR0.net
- >>689
できない事もないが、プロパティメソッドの動的生成ができない。
- 691 :名称未設定:2014/08/03(日) 07:35:19.51 ID:SqCZV+nm0.net
- >>690
@NSManagedつけてもだめ?
- 692 :名称未設定:2014/08/03(日) 15:23:55.03 ID:WeA2/xCM0.net
- 暇だからObjective-Cスレ荒らしてこようと思ったらすでになかったでござる
- 693 :名称未設定:2014/08/03(日) 18:12:52.40 ID:l130u11I0.net
- >>691
Objective-C互換系の機能を調べてなかったわ。
- 694 :名称未設定:2014/08/04(月) 07:29:24.77 ID:lwUqbfGT0.net
- 今からiOSアプリ開発勉強するなら
Objective-Cはスルーしてもよいでござるか?
- 695 :名称未設定:2014/08/04(月) 07:32:35.44 ID:CbjdrLvN0.net
- >>694
少なくとも向う3〜5年は無視できないと思う。
この言語って、JavaScriptやActionScriptじゃないから。
GCがないからオブジェクトグラフを意識して設計/実装しないとメモリリークするし。
- 696 :名称未設定:2014/08/04(月) 09:39:38.96 ID:Yr82yIL10.net
- >>695 SwiftにもARCが有るけど? Swiftにかけてる機能が有るの?
- 697 :名称未設定:2014/08/04(月) 09:47:12.48 ID:FDlpFbR7i.net
- かけてる機能ならいっぱい有るだろ
- 698 :名称未設定:2014/08/04(月) 13:04:45.43 ID:VFIqwxKx0.net
- >>696
Arcとgcの違いをちゃんと理解してる?
- 699 :名称未設定:2014/08/04(月) 13:15:27.58 ID:gIhlesQ30.net
- プログラミングしていたらわかると思うけど、大した違いは無い。プログラミング上では
Arcが円弧の意味なら全然違うけど
- 700 :名称未設定:2014/08/04(月) 14:51:17.60 ID:dUgcDYjh0.net
- >>694
今からiOS開発始めるならObjective-Cは教養として知っておいた方がいい。
ネットにあるiOSの情報のほとんどがObjective-Cだし、ライブラリもObjective-Cで作られてる。
Objective-Cを知らないiOS開発者なんて話にならないよ。
- 701 :名称未設定:2014/08/04(月) 18:54:51.97 ID:/aOJJYn4i.net
- いいえ。
- 702 :名称未設定:2014/08/04(月) 19:24:08.06 ID:eYsDhwg20.net
- ObjCのgcは既にサポート外れてるだろ。
- 703 :名称未設定:2014/08/05(火) 21:41:01.30 ID:Vu4T0gtV0.net
- ObjectC、メモリリークするのはプログラマのせい、とか擁護する奴が昔
いたけど、そりゃそうかもしれんが、言語としてそのあたりミスが出やすすぎ
るのはどうなの、と思うな。
実際未だにiOSのアプリとかでメモリリークして落ちる奴多いし。
- 704 :名称未設定:2014/08/05(火) 21:56:51.17 ID:4f6Folz40.net
- 落ちる原因は皆メモリリークの所為にしたがるが他の原因のバグのほうが多いだろ
- 705 :名称未設定:2014/08/05(火) 22:25:40.31 ID:8eV8zwjV0.net
- >>703
objcはCを拡張したものなんだから、メモリリークに気をつけないでプログラムするヤツが悪い。
- 706 :名称未設定:2014/08/05(火) 22:34:59.78 ID:ggBlIiq60.net
- つかメモリリークじゃ普通落ちない。
余程でかい垂れ流しでワーニングもすっとばしてんなら別だが。
- 707 :名称未設定:2014/08/05(火) 22:43:41.58 ID:4f6Folz40.net
- ARCがフルサポートされたのは最近だからそれ以降は多少マシになってるだろ。
もっともARCを使い切って居ないプログラマも多いだろうが。
- 708 :名称未設定:2014/08/05(火) 23:14:23.03 ID:XedqCudn0.net
- >>706
落ちるよ
何言ってんだ
- 709 :名称未設定:2014/08/05(火) 23:17:26.44 ID:CFMzpdMri.net
- >>706
ふっ...俺の手にかかって落ちなかった奴(アプリ)など未だかつていないわけだが
- 710 :名称未設定:2014/08/05(火) 23:23:16.92 ID:ggBlIiq60.net
- >>708,709
だからそれmemory warningもすっ飛ばしてんだろ?
- 711 :名称未設定:2014/08/05(火) 23:35:09.38 ID:XedqCudn0.net
- >>710
メモリリークは手の届かないところにいってるからリーク、お漏らしなんだよ
memory warningは関係無い
リークはwarning以前の問題
- 712 :名称未設定:2014/08/05(火) 23:48:36.47 ID:3LotHxw90.net
- beta5が出たのはスルーですか
- 713 :名称未設定:2014/08/06(水) 00:49:14.23 ID:eKIbzCRf0.net
- beta3以前でオプショナル配列(たとえば[Int]?)が有効なのかチェックするのに
if x != nil {なんとか}
って書いてたのがbeta4ではエラーになって
if x {なんとか}
って書くとおkになってたけど、beta5ではもとに戻って
if x != nil {なんとか}
って書かないとおkにならない。どっちもおkにしてほしい
- 714 :名称未設定:2014/08/06(水) 01:45:46.13 ID:zWRd37P/0.net
- ID:XedqCudn0 がアホだな
- 715 :名称未設定:2014/08/06(水) 03:05:55.55 ID:mpZ36iIe0.net
- ARCでメモリリークってCoreFoundationやCを使わない限り起きない気がするけど、逆にどうやってリークさせるの?
- 716 :名称未設定:2014/08/06(水) 03:53:55.07 ID:y+aZaeG70.net
- blocksでがんばる
- 717 :名称未設定:2014/08/06(水) 04:27:17.47 ID:Qvk/6rEB0.net
- 循環参照
- 718 :名称未設定:2014/08/06(水) 05:05:07.58 ID:mpZ36iIe0.net
- >>717
循環参照はメモリリークとは別物だよね。
- 719 :名称未設定:2014/08/06(水) 05:09:14.64 ID:qPxDmBVF0.net
- お百度参り
- 720 :名称未設定:2014/08/06(水) 08:17:00.48 ID:gyokwlvw0.net
- 他の誰からも参照されない孤立した循環参照はリークじゃない?
メモリ確保してるのに何の動作もせず解放もできないんだから
- 721 :名称未設定:2014/08/06(水) 08:25:32.40 ID:q0MAhVeD0.net
- 他の誰からも気が付かれていない所で互いにずっぽしくわえ込んでるってちょっとエッチな感じだよね
- 722 :名称未設定:2014/08/06(水) 08:31:16.79 ID:tIRBLkh50.net
- そういう発想をする方がちょっとエッチです。
- 723 :名称未設定:2014/08/06(水) 14:34:04.71 ID:wSBUuNLw0.net
- >>707
使い切るどころか全然使ってないわ。
- 724 :名称未設定:2014/08/06(水) 15:02:42.82 ID:PJTr05Gii.net
- 1..5 って書き方はできなくなったんだっけ?
1...5は書けるけど...
- 725 :名称未設定:2014/08/06(水) 15:07:12.97 ID:PJTr05Gii.net
- あぁスマソ
1..<5 ってなったのね
- 726 :名称未設定:2014/08/06(水) 22:21:03.49 ID:rS5Nf+RW0.net
- 他の文と見間違えそうだが意味はわかるな
どっちだったっけ、、が無くなる
a..=5表記もありか、、、しかし 1…5 のがいいか
- 727 :名称未設定:2014/08/07(木) 11:59:42.11 ID:U/CBmwmo0.net
- ~= の意味と使い方が解らない。 RANGE内かどうかをチェックできるように書いてあるけど使い方が解らない。
== と同じみたいなんだけど。
- 728 :名称未設定:2014/08/07(木) 12:13:45.88 ID:U/CBmwmo0.net
- >>727 ごめん解った
2.1...5.4 ~= 2 //false
2.1...5.4 ~= 3 //true
- 729 :名称未設定:2014/08/07(木) 12:16:36.07 ID:z9C3B9DL0.net
- 素直に n in [a,b) とかでいいだろ
教養のないやつはプログラミング禁止
- 730 :名称未設定:2014/08/07(木) 12:27:27.78 ID:U/CBmwmo0.net
- >>729 >>728 へのコメント? なんで ~= が出来たか読んだ?
var ir = 2...5
var i = 1
if ir ~= i {}
と言う事をしたいと言う事だよ? 意味が全く違う
話しは変わるがこんな事も出来るんだね
for z in lazy(5...8).reverse(){
println(z)
}
- 731 :名称未設定:2014/08/07(木) 12:30:39.73 ID:cHlwmsfJ0.net
- >>729
数学のように書けたらいいけど、閉区間が配列のシンタックスと被るからなぁ
- 732 :名称未設定:2014/08/07(木) 12:48:46.40 ID:U/CBmwmo0.net
- >>729 何だ、意味を理解せずに脳髄反射してしかも 「a,b] を間違えて [a,b) と書いた単純バカだったのか
バカはプログラミング禁止
- 733 :名称未設定:2014/08/07(木) 13:19:44.26 ID:oga6BS8c0.net
- >>732
「a,b] っておい…人にバカとか言うなら自分は間違えちゃいかんだろ
- 734 :名称未設定:2014/08/07(木) 13:20:45.51 ID:U/CBmwmo0.net
- >>733 だよね。 スマン
- 735 :名称未設定:2014/08/07(木) 13:27:02.94 ID:C5NF/6XU0.net
- いいってことよ、気にすんな
- 736 :名称未設定:2014/08/07(木) 14:11:35.50 ID:cHlwmsfJ0.net
- >>732
>>729は>>728へのコメントじゃないでしょ
..とかのシンタックスをどうするかっていう話題について
数学の区間のように書けたらいいのにってことでしょ
数学の区間を知らないようだけど、
[a, b)は[a, b]の間違いじゃない
a ≦ x < b を意味する数学の記法
- 737 :名称未設定:2014/08/07(木) 14:25:32.37 ID:U/CBmwmo0.net
- >>736 [a,b) と言う記法が有るのは知らなかった。 でも>>729 は何に対してコメントしてるんだ?
2..<5 より [2,5) の方が良いとでも思ったと言う事か? 意味ないんじゃない?
その論で行くと 2...5 は [2,5] となるだろ。 これで良いと思うなんてどうかしてる。
プログラムを知らないんじゃないの?
- 738 :名称未設定:2014/08/07(木) 15:24:57.35 ID:U/CBmwmo0.net
- Swiftでこんな事も出来るね
var myArray = [ 100 , 200 , 300 , 400 ]
myArray[ 1...2 ] = [ 500 , 600 ] // [ 100 , 500 , 600 , 400 ]
- 739 :名称未設定:2014/08/07(木) 16:04:13.13 ID:nJB2UhSs0.net
- 数学の区間も知らん奴とは話がかみ合わんだろうな
- 740 :名称未設定:2014/08/07(木) 17:08:43.25 ID:Q7m5apt4i.net
- 数学記法とSwiftのプログラム記法をごっちゃに考えるほうがおかしいだろ
>>729 はAppleに対してプログラム禁止と言ってるのか? アホちゃうか?
関数型プログラムと汎用型プログラムでは自ずから伝統的な記法が違う
- 741 :名称未設定:2014/08/07(木) 19:32:01.66 ID:Vg9e59aV0.net
- [a,b)の意味がわからないID:U/CBmwmo0みたいなアホに対して禁止と言ってるだけだよ
- 742 :名称未設定:2014/08/07(木) 22:23:35.05 ID:NnbkNqrp0.net
- [a,b) こんな書き方したがるやつは、まず構文解析パーサーを実装してみような。
そして、数学の区間は連続数を定義していることもしっかり勉強しような。
- 743 :名称未設定:2014/08/07(木) 23:15:28.42 ID:+0n+PRV90.net
- この流れでプログラマは文系という言葉の意味がよくわかったわ
- 744 :名称未設定:2014/08/08(金) 14:16:01.78 ID:kiF1jOrj0.net
- ニューロコンピュータなら問題ないな
- 745 :名称未設定:2014/08/08(金) 15:30:10.31 ID:Pa1Jjk4bi.net
- >>743 [ a , b ) と言う記法を見たことが無いと言うのがいたからか?
そんな数学記法はごく最近のPCが普及し始めた後だと思う。
少なくとも半世紀前の高校、大学では使って居なかった。
いつから使い始めたのかは知らないが、
知らないから文系と言うのは間違い。 今の学生で知らなければおかしいのだろうが。
と、ソフトウエアと言ったら布団屋さんだと間違われてた時代の理系爺さんの弁明でした
- 746 :名称未設定:2014/08/08(金) 16:24:05.59 ID:BZ6+nqjSi.net
- /ヽ ヘ
/"ヽ| iィ"ヽ
| || || |
| ||―|| |
/>ッ゙゙ヽノ""ッハ\
// ミ \\
彡 ヽミ
彡 ミ|
イ _ヽ ii ノ_ ミ|
ハ ヽ9\))((/9/ ハ|
ヽ(( ⌒ミV彡⌒ ))/ |
\ヽ )( /_/ |
Y 〈二〉 〉 ミ |
彡 \_人_/ 从 |
彳 |VwwV 从 ノ
ノ从リ ヽムニム/ ノノ ノノ|
\___ ̄ ̄ ノ ノ /
ミ \ソノノ 彳" ̄ヽ
∧∧∧∧∧∧∧ |
< 黙れ爺ぃ!!! >
VVVVVVV
- 747 :名称未設定:2014/08/08(金) 17:09:37.68 ID:59vbJZMd0.net
- トンデモwww
- 748 :名称未設定:2014/08/08(金) 17:25:48.76 ID:UofhQo9P0.net
- 軽く 「"half bounded" interval」 でGoogle Books を検索したら 1969年の本には既に出てた。
> そんな数学記法はごく最近のPCが普及し始めた後だと思う。
www
- 749 :名称未設定:2014/08/08(金) 17:29:14.79 ID:+WPPjg1N0.net
- 半世紀前が1964年だからあながち爺さんが間違ってるとも言えんがね
- 750 :名称未設定:2014/08/08(金) 17:44:42.31 ID:vWbHgfcz0.net
- じじいが知っているかどうかなんてどうでもいい
これから数十年を生きる言語の話をしているのに、
じじいが「わしは知らん、その書き方はナシだ」と言われてもな
ローガイ・J・ヒルベルトとはこのことだ
- 751 :名称未設定:2014/08/08(金) 18:38:01.08 ID:PXUbb8eq0.net
- 俺の予想ではSwift製アプリをApp Storeに提出できるようになるのはiOS 8.1まで遅れるな
- 752 :名称未設定:2014/08/08(金) 18:43:48.43 ID:vhNFyqN50.net
- 開区間,閉区間とそれを表現する記法ということで普通に高校受験ぐらいで習った気がするぞ...
- 753 :名称未設定:2014/08/08(金) 21:26:58.41 ID:e1kNG09/0.net
- 閉集合開集合もやったな
- 754 :名称未設定:2014/08/08(金) 22:43:53.31 ID:OB+BwjoV0.net
- 8時だよ全員集合いったお
- 755 :名称未設定:2014/08/09(土) 21:57:22.23 ID:MN2hcHl90.net
- JavaScriptCoreみたいなかんじでSwiftCore用意してくんないかな
- 756 :名称未設定:2014/08/10(日) 00:36:33.24 ID:6Vh0g7ot0.net
- >>751 現実的にはそうだろうけど評価用リリースとしてだけで受付が有るかも
- 757 :名称未設定:2014/08/10(日) 02:34:49.47 ID:IkbOSBQN0.net
- Macの例で言うと、Cocoa+Objective-Cの移行も5年ぐらいかかったしな。まあ焦ってやる必要はない。
- 758 :名称未設定:2014/08/10(日) 09:25:35.71 ID:w6mB/oXpi.net
- これが警告すら無いなんて、やっぱり糞言語だな
var price = 300
var priceWithTax = price * 1.08
println(priceWithTax)
- 759 :名称未設定:2014/08/10(日) 11:25:49.07 ID:O1X6X/QW0.net
- いや、警告なんていらん
普通の言語は浮動小数点の方が偉いのにってとこじゃないの、責めるならば
- 760 :名称未設定:2014/08/10(日) 11:35:27.09 ID:O1X6X/QW0.net
- ああ、暗黙的型変換が無いのか
元々エラるようだったようだけど、なんかいろいろコロコロ変えている最中でミスったかなんかじゃね
- 761 :名称未設定:2014/08/10(日) 11:54:18.96 ID:6Vh0g7ot0.net
- >>758 今のバージョンは浮動小数点のリテラルを浮動小数点とみなさないバグが有る。
func fn(a: Int) -> Int {
return a
}
fn(5.3) // => 5
let num = 5.3
fn(num) // Error: "Double" is not convertible to 'Int'
fn(Int(num)) // => 5
- 762 :名称未設定:2014/08/10(日) 14:25:10.47 ID:w6mB/oXpi.net
- >>761
どこ情報か知らないけど、もし浮動小数点のリテラルを浮動小数点とみなさいないなら、これも正しく動かないと思うけど...
func fn(a: Double) -> Double {
return a
}
fn(5.3)
- 763 :名称未設定:2014/08/10(日) 14:31:38.82 ID:TffTDlP90.net
- 浮動小数点リテラルが勝手にIntにキャストされるバグ、でしょ
let num: Int = 3.14
Javaですらこれはコンパイルエラー出るのに
int num = 3.14;
Test.java:3: エラー: 精度が低下している可能性
int num = 3.14;
^
期待値: int
検出値: double
エラー1個
- 764 :名称未設定:2014/08/10(日) 19:14:37.67 ID:O1X6X/QW0.net
- 当初はエラーのようだったようだけど。まあバグだよなあとしか思えない動きだわな
- 765 :名称未設定:2014/08/10(日) 19:18:17.59 ID:O1X6X/QW0.net
- >>761
それは暗黙的型変換(?)しない当初のエラーのままだと思うけど
>var priceWithTax = price * 1.08
これもエラーだったのが今のはエラーにならないのがおかしいってのでは
- 766 :名称未設定:2014/08/10(日) 19:21:02.06 ID:O1X6X/QW0.net
- >>761,765
ああ、
fn(5.3) // => 5
これが問題ってことか。だったら、同じようなミス(?)だろうなあ。暗黙的型変換しないなんてヘンテコなことしようとするからだろうになあ
- 767 :名称未設定:2014/08/10(日) 19:57:22.27 ID:qdGEcRFPi.net
- リテラルは動的型変換に出来るだけ近づけたいのかもしれないけどね。
それならそれでこれが仕様だと言ってしまえばお終いだけど
- 768 :名称未設定:2014/08/11(月) 10:34:59.70 ID:YUT0nOA/0.net
- この言語バグと仕様変更ばかりだけど大丈夫なのか。
下手したら死人が出るぞ。
しばらくはObjective-Cで様子見するからいいけど。
- 769 :名称未設定:2014/08/11(月) 10:59:24.17 ID:fFZUv/iq0.net
- >>768
現状、人柱上等な人しかやってないから大丈夫かと。
- 770 :名称未設定:2014/08/11(月) 11:32:08.14 ID:HfA28yJNi.net
- バグはあって当たり前
まだ正式リリースして居ないんだからどうだって良いよ。
仕様変更は良くなるんだからどんどんやって欲しい
やりたいけどまだ入れて居ない仕様は沢山有ると思うよ
- 771 :名称未設定:2014/08/11(月) 12:02:33.16 ID:o4FMHWa+0.net
- いやいや、ios8リリースと合わせてSwift版を出したいとか、解説本出したいと考えてる人にとっては
そろそろ仕様もバグもフィックスしてもらわんと手直しの手間とかいろいろ困るだろ
つか、ここまで開発者を不安にさせる言語もめずらしい
- 772 :名称未設定:2014/08/11(月) 12:05:19.16 ID:sX4yLTr90.net
- WWDCのときは、まさかSwift自体がベータ版だとは思わなかった。
- 773 :名称未設定:2014/08/11(月) 12:07:41.83 ID:gV/lTREJ0.net
- http://itpro.nikkeibp.co.jp/atcl/news/14/080600391/
>Swiftを使って開発
>iOS 8の正式リリースに合わせて公開したい
素直にObjCで開発しとけばいいのに、Appleの新しいものは
地雷付きなんだから、リスク高すぎ。
- 774 :名称未設定:2014/08/11(月) 12:10:33.22 ID:rwZXRW5s0.net
- >>771
そんなやつおらんやろw
少なくとも2年ぐらいAppleのプラットフォームで仕事してたら、この現状ぐらいWWDCで発表された時点で想定できるはずだろ
そんなんで困るとか言っても自業自得としか
ガチで困るならApple相手に訴訟でも起こせばw
- 775 :名称未設定:2014/08/11(月) 12:12:25.90 ID:qJFKweAw0.net
- >>771
バカなんだなあ、お前
- 776 :名称未設定:2014/08/11(月) 12:18:17.69 ID:HfA28yJNi.net
- >>771 Apple Developer以外には関係無い話。 Developer だったら誰もそんなこと思っていないよ
- 777 :名称未設定:2014/08/11(月) 12:58:36.38 ID:o4FMHWa+0.net
- 喜んでブログ書いてた連中も仕様変更への追随に疲れちゃったのか
今ですら仕様変更前の情報と変更後の情報が混在してカオス状態になってるのに
Appleってその辺がホント下手糞だよな昔から
- 778 :名称未設定:2014/08/11(月) 13:09:08.59 ID:afMgrKSm0.net
- なんで ID:o4FMHWa+0 はそんなことばっかり考え気にしているのか理解できないな
喜んで飛びついたヤツだってしばらくしたら様子見だなとわかったことだろうし。まあ>>776の言う通りで開発しているヤツにとっては、いまAppleがあーだこーだしていることは別に気にすることでもないよな
- 779 :名称未設定:2014/08/11(月) 16:20:46.54 ID:RxApjyRg0.net
- むしろ他の言語登場時の5倍の速度で物事が進んでいる。
- 780 :名称未設定:2014/08/11(月) 19:55:41.92 ID:tREZMBj00.net
- むしろAutolayout対応を気にした方がいいね。やってないとiPhone6が出た時に
阿鼻叫喚する。
SwiftなんてO'Reillyやピアソン辺りからでた分厚い洋書の翻訳本が出たあたりからでいい。
- 781 :名称未設定:2014/08/11(月) 20:01:14.29 ID:GBDvC0Fni.net
- お前らがのんびり構えてちんたらやったる間に俺は先を行く
- 782 :名称未設定:2014/08/11(月) 20:08:01.26 ID:U7EG/LOC0.net
- ノシ
- 783 :名称未設定:2014/08/12(火) 00:58:37.42 ID:RsIvlssY0.net
- 既存言語の拡張かラップで十分なのに、何で新しいの作ろうとするのかね
- 784 :名称未設定:2014/08/12(火) 08:38:29.24 ID:C/SG8TtP0.net
- >>783 既存言語に継ぎ足しして行った結果が、C++やC# 、Objective-Cで複雑になりすぎた反省からスッキリした新しい言語を作ろうと言う流れが出来て来たんだよ
- 785 :名称未設定:2014/08/12(火) 09:07:13.22 ID:fZLx+doO0.net
- そしてベータのうちにどんどん複雑になっていくというw
- 786 :名称未設定:2014/08/12(火) 09:14:14.50 ID:Luxl/nK/0.net
- C#のどこが既存の継ぎ足しなんだよ
- 787 :名称未設定:2014/08/12(火) 09:36:02.14 ID:zzCkwgOC0.net
- Wkipediaより抜粋
C#は共通言語基盤(共通言語ランタイムなど)が解釈する共通中間言語にコンパイルされて実行される。
基本的な書式がC言語風になっているため、初見の構文はサン・マイクロシステムズ社によるJavaに近い
と言われるが、実際の構文はDelphiに準じており、C言語風ということもありC++ Builderの独自拡張構文
に極めて近い内容となっている。
またプロパティやデリゲートなどDelphiの構文そのまま、もしくは名称変更しただけの機能となっている
ものが多い。
- 788 :名称未設定:2014/08/12(火) 11:23:16.78 ID:5XFCCtOV0.net
- >>784
llvmで効率上げる為では?
- 789 :名称未設定:2014/08/12(火) 12:35:56.75 ID:V1fIN7yo0.net
- Blocksの記述が無理矢理すぎたからじゃ。
- 790 :名称未設定:2014/08/12(火) 13:43:55.95 ID:Luxl/nK/0.net
- >>787
全然注ぎ足しじゃないねえ
- 791 :名称未設定:2014/08/12(火) 14:12:16.48 ID:zzCkwgOC0.net
- あぁ継ぎ足しじゃなかった。ただのパクリだった。
- 792 :名称未設定:2014/08/12(火) 14:20:41.01 ID:xY8k0F2n0.net
- アホは無理するな
- 793 :名称未設定:2014/08/12(火) 14:36:57.27 ID:G+s23K5c0.net
- それを言ったらObjecitve-C自体、Smalltalkのインスパイア言語
- 794 :名称未設定:2014/08/12(火) 19:24:16.77 ID:hV6cdPlB0.net
- 主題と違うとこに注目するアホ
- 795 :名称未設定:2014/08/13(水) 02:21:12.51 ID:QpttHP1e0.net
- OS Xアプリの開発もSwiftになっていくの?
- 796 :名称未設定:2014/08/13(水) 03:08:06.85 ID:s/nXX1Rd0.net
- >>795 話ではOS X/IOSアプリの開発ではSwiftがよく使われる様になるとかなんとか。
つい最近Macを使い初めて迷わずXcodeをダウンロードし、
Obj-Cの本を購入したけど、Swiftが主流になる事忘れてて無駄に金使ってしもうた。....
- 797 :名称未設定:2014/08/13(水) 03:23:49.42 ID:SXAjOGd60.net
- 別に無駄じゃないんだけど使い始めかあ。自分がモノになる/モノが作れるようになるには2年後3年後と?
今はSwiftもObjective-Cもがだけど。2年後3年後どうなってるかわからんけど
- 798 :名称未設定:2014/08/13(水) 09:32:02.53 ID:GGWFAN3G0.net
- >>797
iOSの作り方わかるといつの間にかMacアプリも作れるようになっているお得感
- 799 :名称未設定:2014/08/13(水) 10:04:33.83 ID:4J4KnbIp0.net
- これからiOSプログラミング始める予定のプログラミング初心者だけど、いきなりSwiftから始めてもいいのかな?
Swift関連の書籍出るであろう秋頃まではObjective-Cの方がいい?
つかObjective-Cを触っとくべきなのかスルーしてSwiftから始めても良いのか知りたい
- 800 :名称未設定:2014/08/13(水) 10:16:16.05 ID:TwLrhlL10.net
- 正式リリースされるまではSwiftなんてこの世に存在しないと思っておけばいい
- 801 :名称未設定:2014/08/13(水) 10:19:06.93 ID:Xu9EnGuni.net
- まずアセンブラやって、次にC言語やって、Objective-Cやって、最後にSwiftに手を出すのが王道
- 802 :名称未設定:2014/08/13(水) 10:26:08.94 ID:Zlx4HHAoi.net
- >>799
しばらくの間、いきなりSwiftから勉強してもバグや仕様変更に振り回される。
ObjCからSwiftへ移行する際の学習コストはそれほどでもないので、今から始めるならObjCで始めた方がいい。
- 803 :名称未設定:2014/08/13(水) 10:30:25.17 ID:r9GsiKbP0.net
- どうせSwiftから呼ぶライブラリはObjective-Cのやつなので
ObjCそのものより、ObjC使ってライブラリの使い方覚えとけば
- 804 :名称未設定:2014/08/13(水) 10:31:02.62 ID:d0SXlKPe0.net
- >>799
英語が普通に読めるなら、Swiftからでもイイんじゃない? 必要になってからObj-Cも並行して覚えれば良かんべ。
- 805 :名称未設定:2014/08/13(水) 10:42:02.08 ID:uqSLnMLW0.net
- >>799
和書のSwift本が出そろって、ネットに情報が出回るであろう来年の秋ぐらいまで
待った方がいいんじゃない?C/C++/Objective-Cなんか1行も見たくないというのであ
れば、ほぼ移行が終ってAPIもSwiftより最適化されるであろう2020年ぐらいまでまった
方がいいかも?
言語って、登場から普及までは最低5年ぐらいは掛かる。
- 806 :名称未設定:2014/08/13(水) 11:21:02.59 ID:RZK+y2wY0.net
- >言語って、登場から普及までは最低5年ぐらいは掛かる。
"Objective-Cは、1983年にブラッド・コックスによって開発され"だもんなー
10年前もMac使ってたけどObjective-Cがこんなメジャー言語になるなんて
思ってもいなかったし。
- 807 :名称未設定:2014/08/13(水) 11:31:41.80 ID:Xu9EnGuni.net
- 1983年とかよく覚えてたな、すごいなー
Wikipedia見たらその通りだったよ
- 808 :名称未設定:2014/08/13(水) 11:44:13.02 ID:GGWFAN3G0.net
- 結構Objective-Cも好きだけどなぁ。
確かにSwiftと比べてタイプ量は増えるしBlocks構文も解りづらいかもしんないが、
実際はxcodeの補完が効くからさほど気にならないし。
シンタックスシュガー追加による進化で、使いやすさも向上してるし。
Swiftが主体になってくるとObjective-cの進化は止まっちゃうんだろうか・・・。
- 809 :名称未設定:2014/08/13(水) 11:56:19.98 ID:uqSLnMLW0.net
- >>806
当時で実用的なオブジェクト指向開発環境という事で90年代初
頭にちょいブレイクしたんやけどな。
ブレイクを2度経験したという点でプログラミング言語界のみのもんた
みたいなもん。
- 810 :名称未設定:2014/08/13(水) 12:02:46.73 ID:+U7J8u6c0.net
- 家を壊すぜ 橋を壊すぜ
ビルを壊すぜ 東へ西へ
- 811 :名称未設定:2014/08/13(水) 13:13:42.40 ID:jFMnUk8Q0.net
- >>799
詳細Objective-Cを読むことをお勧めする
Swiftの言語仕様を読んでもiOSアプリはたぶん書けない
- 812 :名称未設定:2014/08/13(水) 13:52:49.83 ID:Hu6jADbB0.net
- 詳解読んでもいきなりiOSアプリ作れるようにはなれんのは同じだけどな
- 813 :名称未設定:2014/08/13(水) 14:43:03.64 ID:SXAjOGd60.net
- 他人にどうしたらいいのか聞いているようなのはそうかもな。てか、いつまでたってもなにを読んでものような気もするけど
- 814 :名称未設定:2014/08/13(水) 14:46:48.75 ID:4J4KnbIp0.net
- >>802
了解^^
>>811
今図書館に行ってきて別の本借りてもうた
xcodeではじめるObjective-Cプログラミングという本
詳細Objective-Cもあってアマゾンの評価良さ気だったから迷たが、借りてきた本が分かり辛かったらそれ借り直すわ
- 815 :名称未設定:2014/08/13(水) 15:09:57.75 ID:SQ9wfQ2V0.net
- 図書館で本借りるとか貧乏くさい真似すんなよ…
図書館にある本なんてどうせ古くてそのXcodeではじめる〜もXcode4とか
詳解Objective-Cも第2版とか新板とかだろ?
- 816 :名称未設定:2014/08/13(水) 15:46:58.79 ID:oZfS/5RP0.net
- >>805 明確なターゲットが無い言語の場合はそうだけど、Swiftの場合iOSアプリ開発と言うハッキリしたターゲットが有るから1年もかからないで主要言語の座に躍り出るよ。
言語として成熟するには2〜3年は最低かかるだろうけど。その頃にオープンソースかな
- 817 :名称未設定:2014/08/13(水) 16:25:44.73 ID:ThTwWYOf0.net
- そういう断言っぽい予想はどうか記名で行っていただきたいものだ
外れたら笑えるし当たったらほーっと思えるし、どっちにしても外野からはおもしろい
無名で外れてもなんのリスクもないのは妄言みたいで開陳されても面白くもなんともない
- 818 :名称未設定:2014/08/13(水) 16:27:55.51 ID:4J4KnbIp0.net
- >>815
いんや両方とも最新版だよ^^
本好きだし他分野の勉学も兼ねて良く図書館利用するけど毎週常に最新の本を仕入れてるよ図書館
知的好奇心旺盛で学問に励むものとしては図書館ほど利便性のある公共施設はない^^
- 819 :名称未設定:2014/08/13(水) 17:29:54.08 ID:0adUyo0r0.net
- >>791
ぱくりってかDelphi作った人が作ってる。
- 820 :名称未設定:2014/08/13(水) 23:09:57.00 ID:tA5Sjiyoi.net
- なんか未だにあからさまなバグ多いし、エラーメッセージは頓珍漢なの出すし、こりゃ、iPhone6の発表までには間に合わないとみた。
- 821 :名称未設定:2014/08/14(木) 04:36:18.75 ID:5b+3TTVc0.net
- >>819
へじたん、LOVE!
- 822 :名称未設定:2014/08/14(木) 12:14:22.05 ID:8I8hhRKV0.net
- 言語仕様Fixは9月に間に合わせるだろうけど
バグが落ち着くのは11月の新型iPad発売/iOS8.1リリースのタイミングまでずれ込むだろうね
で、そのあとはWWDC2015まで諸々おあずけのパターン
いまバグレポ送っとかないと、8.1に間に合わなかったら一年そのままやぞー
- 823 :名称未設定:2014/08/14(木) 12:19:48.41 ID:D1O7dhSV0.net
- 人柱は世界どころか日本にも腐る程いるんで気にする必要はないな。
手をだすのはXCode7ぐらいからでいいと思う。
- 824 :名称未設定:2014/08/15(金) 10:14:02.78 ID:DBAIxjYd0.net
- Swiftだけでメタプログラミングってどの程度出来るようにするつもりなんかな
- 825 :名称未設定:2014/08/17(日) 22:46:22.22 ID:4fEXnuPm0.net
- はぁ、一々プラットフォーム毎に開発環境やらプログラミング言語やら周辺技術追っかけるの疲れたのでUnityに移行しますさようなら^^
- 826 :名称未設定:2014/08/17(日) 23:22:16.85 ID:Gyrh4TK90.net
- ゲームアプリだけ作るならUnityやCocos2d-Xだけやればいいかもね。
というかそっちの方が潰しが効く。
ただUnityで普通のスマホアプリは作れない?と思う。
- 827 :名称未設定:2014/08/17(日) 23:54:00.90 ID:LZdoZcWC0.net
- そこで、Coronaでつよ
- 828 :名称未設定:2014/08/18(月) 03:05:37.09 ID:9smszrdmi.net
- Unity, Corona(Lua), MobiRuby(Ruby), Kivy(Python), Titanium(JS), Cordova(HTML5) 好きなのでどうぞwww
結局ネイティブに勝ることはないし、趣味なら好きな言語で作れば良いよ
- 829 :名称未設定:2014/08/18(月) 03:19:44.91 ID:ezNS8MWV0.net
- でもさあ、ガンホーやコロプラのゲームって良質じゃん?
ネイティブと何ら変わらない出来だし
- 830 :名称未設定:2014/08/18(月) 03:22:22.50 ID:ezNS8MWV0.net
- 1番ネイティブ度合いで質が問われるゲームでここまでネイティブと遜色ない完成度なら他のジャンルのアプリなんてそれこそネイティブじゃなくて良くね?となるよね
- 831 :名称未設定:2014/08/18(月) 03:26:47.26 ID:4PxTBM6I0.net
- ネイティブと遜色なくするだけのコストを無視しすぎじゃね
そりゃそのコストが低いってならネイティブじゃなくて良くね?となるけど
- 832 :名称未設定:2014/08/18(月) 03:48:42.52 ID:9smszrdmi.net
- Unityなんかでガリガリとゲームを作るのはまだ良いよ
どうぜネイティブ(Obj-C, Swift)で書いてもGL使ってガリガリやらされるし
むしろUnityくらいの方が開発環境は断然優れてると思うし
ただ、他の言語で中途半端なアプリ作ったり、Unityで不向きなツール系を作るのは、どうやったって品質悪いのよ
- 833 :名称未設定:2014/08/18(月) 06:36:11.14 ID:sxcfaH050.net
- ゲームアプリって、基本、独自UIで作成してでグラフィックを動かすだけだからな。
なんでクロスプラットホームで全然問題ない。
- 834 :名称未設定:2014/08/18(月) 07:03:30.79 ID:9smszrdmi.net
- 「1番ネイティブ度合いで質が問われるゲームで」じゃなく
「唯一ネイティブ同等の動作速度だけが問われるゲームで」だからなぁ
ゲーム以外ではiOSらしいUI/UXが問われるからUnityじゃムリゲ
フツーのアプリは、フツーに Storyboard + Swift を習得して楽して良いものを書きたいネ
- 835 :名称未設定:2014/08/18(月) 11:49:33.19 ID:hYyzjPbu0.net
- 複数キーの辞書ってどう作るのが効率的?
[キー1:値]
[キー2:キー1]
var dt=["XBC" : 100 , "EFG" : 200]
var dtk2=["C":"XBC","G":"EFG"]
dt[dtk2["C"]!] //100
dt[dtk2["G"]!] //200
- 836 :名称未設定:2014/08/18(月) 12:20:18.54 ID:Rd0mIpid0.net
- 何がしたいのかよく分からん
["C": 100, "G": 200] でええやん
- 837 :名称未設定:2014/08/18(月) 12:42:29.12 ID:IDSmpV2z0.net
- >>832
ハイエンドはMetalに移るからなぁ。
Androidじゃ真似できないし、
ポータブル専用機も終了。
- 838 :名称未設定:2014/08/18(月) 12:43:55.19 ID:IDSmpV2z0.net
- UnityとかCocosもiOSだと下回りがMetalになるんで、プラットフォームで差がつきすぎる。
- 839 :名称未設定:2014/08/18(月) 13:06:01.19 ID:Xav/oqGX0.net
- iOS8最大の目玉はMetalだよなあ
- 840 :名称未設定:2014/08/18(月) 13:12:30.60 ID:F7w4COBZ0.net
- メダマとメタルって似てるよね
- 841 :名称未設定:2014/08/18(月) 13:23:06.39 ID:hYyzjPbu0.net
- >>836 データ部がや配列で大きくなったらキー毎にデータを再度持つのは不合理だし、アップデートも両方しないといけなくなり間違いの元となる。
氏名、自宅電話、住所、生年月日、性別、出身校、勤務先、勤務先住所、勤務先電話
氏名と、自宅電話の2つで検索したい場合
データが大きくなるようだったらSQLLiteでも使えば良いのだろうが。
- 842 :名称未設定:2014/08/18(月) 13:27:02.09 ID:ezNS8MWV0.net
- Metalつっても結局のところは今のスマホゲー環境鑑みるにUnityちゃん一択なのかなぁと思ふ(´・ω・`)
スマホで果たして重長厚大なクオリティゲーが必要かと問われればまあ幾分か一部の方面に需要はあるかもだが、まあ殆どが無いよねってなるし(´・ω・`)
そもそもがスマホというゲームの操作性として致命的欠陥があるハード、3DSなどの社会現象を起こせるコンテンツを生み出すのはいささか難しいのかなと(´・ω・`)
妖怪ウォッチ然り、ポケモンなんて世界年間累計市場4兆円にもなる世界最強最高のコンテンツ(´・ω・`)
これがスマホゲーから生まれるなんて妄想自体甚だしいよね(´・ω・`)
ゲームってさ、子供に夢を与えるコンテンツでありだからこそ誇れる仕事なんよな(´・ω・`)
ちなオイラは現在スマホゲー最前線の激戦区で戦ってるエンジニアソルジャーだけどやっぱりここには限界がある(´・ω・`)
沢山の未来ある子供たちに最高のエンターテイメントを笑顔を届けたいと思うとどうしてもコンソール回帰に繋がる(´・ω・`)
何故か?それはやはりゲーム専用ハードとそうでないものとの違いこれが大きいと思われ(´・ω・`)
まあ賢い人ならすぐピンと来たと思うから皆まで言わんけども、国内No.1のスマホゲーをガンホーが何故3DSに出したのか?
後は分かるよね(´・ω・`)
苛烈極まる最前線に身を置く者達だけが感じる限界説故のコンソール回帰現象、次の潮流だよ(´・ω・`)
- 843 :名称未設定:2014/08/18(月) 13:39:19.58 ID:ezNS8MWV0.net
- Metalでスマホゲーらしからぬ大作リリース→アプリがんがん落ちまくるでござる
容易に想像できまする未来(´・ω・`)
リソースを他に取られるハード故のジレンマそしてこれは現在回避不可(´・ω・`)
- 844 :名称未設定:2014/08/18(月) 13:51:29.08 ID:hYyzjPbu0.net
- RubyMotionなんて使ってる奴いるのかな? これでアプリ開発が出来る事を今日知ったけど使いたいとは思わないな
- 845 :名称未設定:2014/08/18(月) 13:55:33.74 ID:rJG7wSA20.net
- で、ID:ezNS8MWV0 は Swift とどうっての?ちょこちょこならまだしも長文ってw
- 846 :名称未設定:2014/08/18(月) 15:06:00.07 ID:IDSmpV2z0.net
- >>843
MetalはA7以降だから旧機種は関係無い。
GungHoは任天堂にお願いされたんだろ。Zでスマホ上回る売り上げあがると思う?
- 847 :名称未設定:2014/08/18(月) 15:20:06.20 ID:ezNS8MWV0.net
- 逆にスマホゲーで妖怪ウォッチやポケモンやコンソール機の大作洋ゲー、PCゲーに売り上げで勝てると思う?(´・ω・`)
世界のマリオに勝てる?(´・ω・`)
どれも年間単体で数百億〜千億単位だけど(´・ω・`)
- 848 :名称未設定:2014/08/18(月) 15:27:04.12 ID:IB9YNpPS0.net
- 今日のNGID:ezNS8MWV0
- 849 :名称未設定:2014/08/18(月) 15:29:00.84 ID:ezNS8MWV0.net
- ふぅ、ちと熱くなりすぎたかな(´・ω・`)
すまんこ(´・ω・`)
ただ最後に一言、スマホゲーのS級ソルジャー達はみな遥か先のある一方向を目指し始めてる(´・ω・`)
- 850 :名称未設定:2014/08/18(月) 15:38:56.02 ID:rJG7wSA20.net
- 結局Swiftに何も関係ない話「だけ」でおわりかw
- 851 :名称未設定:2014/08/18(月) 15:52:11.52 ID:SimdOPHU0.net
- 顔文字使う奴は例外なくアホ
- 852 :名称未設定:2014/08/18(月) 16:15:53.16 ID:wMwvk4e0i.net
- >>841 こんな感じにするのが良いのかな?
データ=[[...],[...]...] //nカラムの2次元配列にデータを入れる
var dict = CreateDictionary( データ, カラム番号 )
適当にFunctionを作ったが
これでカラム番号の内容をキーとする辞書を作る、キーに対応する値はデータ配列の番号
これだと後から自由なキーを作れる
- 853 :名称未設定:2014/08/18(月) 17:02:44.11 ID:IDSmpV2z0.net
- >>849
ポケモンのiPad版発表で任天堂の株価が上がってるよ。
- 854 :名称未設定:2014/08/18(月) 17:53:25.96 ID:R3nlvzqQ0.net
- Metalはハイエンドというよりも消費電力を減らすのに使われそう。
- 855 :名称未設定:2014/08/18(月) 19:26:35.01 ID:IDSmpV2z0.net
- >>847
去年一番売れたポケモンxyが売上で1600億、パズドラは2000億こえてるけど?
- 856 :名称未設定:2014/08/18(月) 19:57:29.05 ID:4e1hVAT60.net
- >>855
アイテム課金はゲームの売り上げじゃねーからwwwww
とか言いそう
- 857 :名称未設定:2014/08/18(月) 22:06:26.90 ID:ezNS8MWV0.net
- >>855
【ガンホ連結売上高】
2012年度連結売上高258億2100万円
http://www.gungho.co.jp/ir/uploads/irs20130218.pdf
2013年度連結売上高1630億6000万円
http://www.gungho.co.jp/ir/uploads/irs20140204.pdf
2014年度12月期連結売上高 Q1~Q2
943億3300万円
http://www.gungho.co.jp/ir/uploads/irs20140428.pdf
http://www.gungho.co.jp/ir/uploads/irs20140729.pdf
2012年度12月期~2014年度12月期第2四半期までのガンホー、子会社、関連会社、その他全事業含む連結売上高が2832億1400万円
そのうちパズドラアプリ単体の売上高が2000億円を占めるということでよろしいかな?(´・ω・`)
稚拙如何せん疎いもの故、是非ともオイラにパズドラアプリ単体で売上高2000億円というソースを見せ給なりて(´・ω・`)
- 858 :名称未設定:2014/08/18(月) 23:05:56.31 ID:ezNS8MWV0.net
- >>855
ソースまだかな?眠いのだけど(´・ω・`)
- 859 :名称未設定:2014/08/18(月) 23:27:29.66 ID:7XZwI8Qv0.net
- また出てきやがったよ、こいつw
最前線で奮戦していれよw Swiftに興味ないんだからいいかげん他行けよと思わざるを得ない
- 860 :名称未設定:2014/08/18(月) 23:34:45.54 ID:IDSmpV2z0.net
- >>858
>是非ともオイラにパズドラアプリ単体で売上高2000億円というソースを見せ給なりて
2013前半だけだけど、後半に新作当たってないし。
ガンホー・オンライン・エンターテイメントが29日発表した2013年1〜6月期の連結営業利益は前年同期比44倍の451億円と過去最高になった。
スマートフォン(スマホ)向けゲーム「パズル&ドラゴンズ」(パズドラ)の利用が拡大した。
7月も「利用ペースは非常によい」(森下一喜社長)といい、2013年12月通期も前期比で大幅な増収増益になりそうだ。
売上高は10倍強の746億円。4〜6月の月間売上高平均は145億円と1〜3月の103億円から4割増えた。
けん引するのは累計ダウンロード数が7月下旬に1700万件を超えたパズドラで、売上高比率は「9割以上」(同)。
ゲームを効率よく進めるのに必要な1個85円の「魔法石」と呼ぶアイテムの課金収入が拡大した。
http://www.nikkei.com/markets/kigyo/gyoseki.aspx?g=DGXNZO5788137029072013DT1000
- 861 :名称未設定:2014/08/19(火) 00:06:55.15 ID:Uhk25n8j0.net
- AppStoreは30%Appleが持ってくから、アプリとしての売り上げは0.7で割ってね。
- 862 :名称未設定:2014/08/19(火) 00:08:31.99 ID:Uhk25n8j0.net
- 1630億6000万円 x .9 / .7 = 2096億円
- 863 :名称未設定:2014/08/19(火) 00:17:19.47 ID:06gEmE9N0.net
- >>860
あのぉ連結決算はオイラが既に示してるので2013年前半の売上高とか要らないでござるよ(´・ω・`)
それよりもパズドラの売上高2000億円のソースを示して欲しいのだけれど(´・ω・`)
- 864 :名称未設定:2014/08/19(火) 00:19:09.72 ID:Uhk25n8j0.net
- >>863
売上の9割がパズドラだよって所ね。
- 865 :名称未設定:2014/08/19(火) 00:33:25.65 ID:MLCsN8gO0.net
- >>863
こいつまだいたのか
- 866 :名称未設定:2014/08/19(火) 00:36:37.12 ID:OCQz1Tkb0.net
- 本日のNGID:06gEmE9N0
- 867 :名称未設定:2014/08/19(火) 00:38:27.53 ID:06gEmE9N0.net
- あのぉだからパズドラの売上高2000億円の確固たるソースだけをぷりず(´・ω・`)
>>855でハッキリと2000億超えてると言い切ってるのだからちゃんとした決算資料なりなんなり見ての発言でそ?(´・ω・`)
無いなら無いでそれでいいし、ただの憶測や妄想ならそれでもいいんだけどもそれならそうと言ってくれないかな(´・ω・`)
別にパズドラ貶すつもりもないしスマホゲー最前線で戦うS級ソルジャーとしても本当にアプリ単体で売上高2000億超えてるというのは励みにもなるわけで(´・ω・`)
パズドラIP関連累計売上高なら2000億ならもあり得なくもないとは思うけど...因みにポケモンは世界でしかも年間累計が4兆円という化け物(´・ω・`)
- 868 :名称未設定:2014/08/19(火) 00:42:22.35 ID:06gEmE9N0.net
- 別にソースは決算資料なんかじゃなくてもガンホーが2000億超えてると言ってるとか、公式HPにそれらしきものが記載されてるとかそんなんでもいいのよ?(´・ω・`)
大事なのは憶測や妄想ではなくちゃんとガンホーが発言もしくはそれについて発信してるかどうかということ、オケ?(´・ω・`)
- 869 :名称未設定:2014/08/19(火) 01:35:04.80 ID:s+0+Aumk0.net
- NGにして相手にすんなよ、こんなゴミ
- 870 :名称未設定:2014/08/19(火) 09:34:32.74 ID:An/d2nWGi.net
- >>824
swiftで脱アルゴリズム(ボソッ
- 871 :名称未設定:2014/08/19(火) 10:12:21.23 ID:3iDo43cM0.net
- >>835
DBのインデックスに相当するものを自前で作りたいって話に見えるから
素直にSQLiteでも使うのがよいだろう
- 872 :名称未設定:2014/08/19(火) 10:39:19.87 ID:ve57xXHp0.net
- 外部キーかと
- 873 :名称未設定:2014/08/19(火) 13:48:08.36 ID:06gEmE9N0.net
- さてそろそろ出社するかな(´・ω・`)
ふぅ、今日も今日とて最高のエンターテイメントコンテンツ創造に向けて邁進するのみ(´・ω・`)
「上を目指すのではなく前に進んでいくだけ」
- 874 :名称未設定:2014/08/19(火) 14:16:47.18 ID:s+0+Aumk0.net
- Swift - Xcode 6 Beta 6 における変更点
http://qiita.com/dankogai/items/9058a8d4209cf59580db
Optional型に関するさらなる改良
??の改良
RawOptionSetTypeにおけるBitwiseOperationsTypeの実装
RawOptionSetTypeはBitwiseOperationsTypeとして実装されました。これによりimportされたNS_OPTIONSでも|=、 &=および^=が利用可能となりました。
StringとCharacterの首尾一貫性
void* -> UnsafePointer<Void>
Cのvoid*をimportする際、()ではなくVoidタイプエイリアスが用いられるようになりました。
- 875 :名称未設定:2014/08/19(火) 16:47:46.26 ID:HfXlBIVy0.net
- まじでStringとCharacterの連結ができなくなってる
let s1: String = "abcdefg"
let s2: Character = "h"
let s3 = s1 + s2 // エラー
こっちはおっけー
let s1: String = "abcdefg"
let s2: Character = "h"
let s3 = s1 + String(s2)
これもおっけー
let s1 = "abcdefg"
let s2 = "h"
let s3 = s1 + s2
- 876 :名称未設定:2014/08/19(火) 17:57:45.51 ID:OhCGr893i.net
- >>875 そう言う解りやすい仕様にしたんだから良いじゃん
- 877 :名称未設定:2014/08/19(火) 18:51:48.61 ID:fJ8sVUDxi.net
- 連結できる: 流石アポー、型を意識させない、賢い
連結できない: 流石アポー、型違いの連結を阻止してバグを抑制、賢い
- 878 :名称未設定:2014/08/19(火) 18:59:52.04 ID:9ZnjTy5A0.net
- まだどっちでもいいことだな
Swiftをすでにバリバリ使っているヤツにはってのぐらいか
- 879 :名称未設定:2014/08/19(火) 19:46:35.21 ID:F1sBDJ8pi.net
- これもおk
var s1: String = "abcdefg"
let s2: Character = "h"
s1.append(s2)
- 880 :名称未設定:2014/08/19(火) 20:03:21.30 ID:0aSFxh9I0.net
- Character型じたい滅多に使うことない
Stringだけで十分
- 881 :名称未設定:2014/08/19(火) 20:11:09.07 ID:fJ8sVUDxi.net
- 個人的には型を人に意識させる今の仕様は swift の理念から外れる気がするが
まぁ、教祖様に逆らう理由もないし、何でも良いや(思考停止
- 882 :名称未設定:2014/08/19(火) 20:18:19.60 ID:9ZnjTy5A0.net
- いろいろ悩み不満自分の好み理想言ったって、何もならんからな。考えるだけ無駄ともいう
- 883 :名称未設定:2014/08/19(火) 20:29:42.18 ID:5QmEMaxe0.net
- 文句あるなら自分で仕様つくれってことになるから言語仕様はある程度思考停止にならざるを得ない
- 884 :名称未設定:2014/08/19(火) 20:46:32.59 ID:9ZnjTy5A0.net
- 言語仕様というか開発はほとんどそじゃね。己が作る/作った部分じゃないものは理解しどう応用するかでしかない
いちいち自分の好みでこれじゃないあれじゃないなんて邪魔でしかないだろうw
- 885 :名称未設定:2014/08/19(火) 22:18:38.43 ID:ID/x+L100.net
- そういう訳でRuby Motionとかに手を出したりするのか。素直にObj-Cで書けばいいのに。
- 886 :名称未設定:2014/08/20(水) 09:44:04.42 ID:h7y2ATZli.net
- obj-c, swift, ruby ... Cocoa.Framework が叩けるなら何の言語でも良いな
というか、枯れてるobj-cが一番マシと言いたい所だが、あれは接木だらけで混沌としてるから問題児
swiftも同じ運命を辿るのかねぇ
- 887 :名称未設定:2014/08/20(水) 09:49:03.88 ID:1grXGZXq0.net
- ObjC全然混沌としてないぞ
- 888 :名称未設定:2014/08/20(水) 09:52:57.85 ID:njg5TxIKi.net
- バックグラウンド処理の記述はCocoaAPI叩くしかないのか
Swiftの構文として提供してくれないもんか
- 889 :名称未設定:2014/08/20(水) 10:37:24.69 ID:jjyMB+0A0.net
- >>887
いや、混沌とはしているw 混沌としているのはあくまでも見た目だけでしかないがな
使いこなせていれば特に混沌とは思わないだろうし、問題児でもなんでもないけどな
- 890 :名称未設定:2014/08/20(水) 11:23:32.42 ID:h7y2ATZli.net
- >>889
バックエンドを見るならそりゃ一定だろうよw
フロントの言語仕様、APIをコロコロ変えるから混沌なんだ
そして、そこに振り回されないとiOS Appは作れない
- 891 :名称未設定:2014/08/20(水) 12:03:53.86 ID:jjyMB+0A0.net
- >>890
言語仕様の変更は使いやすいに 進歩 しているとしか思わないな。それによって見た目だけの混沌化がましてはいるが
APIが変わるのはそりゃAppleだからな。Objective-Cに限ったことではないし、APIが変わっても変わった直後にちょっとめんどくさいだけで、混沌とは別だな
そういうのが混沌で問題児ならお前にとってはSwiftもだろうな
- 892 :名称未設定:2014/08/20(水) 12:26:28.07 ID:u7GkvrdY0.net
- サーバーサイドみたいに流行りのフレームワークが変わるのに比べたら
- 893 :名称未設定:2014/08/20(水) 12:43:22.99 ID:h7y2ATZli.net
- >>891
Apple的にはAPIも使いやすいように変えてる(進歩)んだから区別してあげなさんな
- 894 :名称未設定:2014/08/20(水) 12:57:42.18 ID:jjyMB+0A0.net
- >>893
なに言っているのかわけわからんなw
混沌に対してなんだが。お前の混沌はお前が付いていけないってだけか?それなら一緒なんだろうな
- 895 :名称未設定:2014/08/20(水) 13:04:27.59 ID:h7y2ATZli.net
- >>894
ワケワカランか、、、仕方ないな
- 896 :名称未設定:2014/08/20(水) 13:08:46.33 ID:FZmG1jHC0.net
- 新しいBeta入れるたびにビルドエラーが出て面倒だったけど、beta 6 はスルーされてこのままGMなのかな?
- 897 :名称未設定:2014/08/20(水) 13:10:27.10 ID:jjyMB+0A0.net
- >>895
>枯れてるobj-cが一番マシと言いたい所だが、あれは接木だらけで混沌としてるから問題児
言語の表記の問題かと思ったら
>フロントの言語仕様、APIをコロコロ変えるから混沌なんだ
と、言い出し、それに対して、表記は混沌、APIは混沌とは別と言ったら、
>区別してあげなさんな
と言う。
たぶんもしかしたら「進歩」が気に食わなかったのか?違うのかな?というのでワケワカランだよ
結局
>そこに振り回されない
に集約されている、お前が付いていけないってだけ だろってことか?ってことで締めてみたんだがなあ
まあ、このレスもアホくさい(でもせっかく書いたからw)ので、もういいや。俺は勝手に納得したから
- 898 :名称未設定:2014/08/20(水) 15:51:31.88 ID:TQFgJl/l0.net
- 木だけを見るな森も見よ(´・ω・`)
おまいらにも成し遂げたい何か大きな目標や夢があったのではないかい?(´・ω・`)
なら細かいことは気にせずそれに向かってただひたすら突き進めばいいさね(´・ω・`)
- 899 :名称未設定:2014/08/20(水) 15:56:04.07 ID:njg5TxIKi.net
- 日付型はとっととサポートして欲しいな
- 900 :名称未設定:2014/08/20(水) 16:47:12.64 ID:1UoH05fxi.net
- >>898 森を見てたら樹海に迷い込んでしまった
>>899 確かにその辺りや文字列関係は早めに整備して欲しいね
- 901 :名称未設定:2014/08/20(水) 17:00:12.37 ID:h7y2ATZli.net
- こんなことになったが回避策はないものか
1ラインでスマートに書けるぜ、ヒャッハー!!!と謳ってたんじゃなかったのかよぉ
var str: String? = "Hello World"
// Beta 5 まで
if str?.hasPrefix("Hello") {
println("Hi")
)
// Beta 6 から
if (str != nil && str!.hasPrefix("Hello")) {
println("Hi")
}
- 902 :名称未設定:2014/08/20(水) 17:05:55.80 ID:TQFgJl/l0.net
- >>900
前だけを見な(´・ω・`)
- 903 :名称未設定:2014/08/20(水) 17:30:25.13 ID:njg5TxIKi.net
- >>901
些末な事を気にするんじゃない
森を見ろよ、森を!
- 904 :名称未設定:2014/08/20(水) 17:42:57.21 ID:MRxFipEf0.net
- 中学の時に好きだった娘が森って名字で
なんか心が痛むからこのへんにしてくれ…
- 905 :名称未設定:2014/08/20(水) 18:25:16.79 ID:1grXGZXq0.net
- >>901
if str?.hasPrefix("Hello") ?? false {}
でいいんじゃない
- 906 :名称未設定:2014/08/21(木) 03:47:01.82 ID:MFlOWKfR0.net
- Swift来年には手を出すか
- 907 :名称未設定:2014/08/21(木) 08:01:11.81 ID:5pxYsuZZi.net
- 足も出せ
- 908 :名称未設定:2014/08/21(木) 08:18:34.35 ID:Xh57bv+Y0.net
- 結論 Objective-Cでもよかった
- 909 :名称未設定:2014/08/21(木) 08:19:33.35 ID:JidTJCPg0.net
- >>908 勝手に使い続けろ、止めやしない
- 910 :名称未設定:2014/08/21(木) 09:00:35.07 ID:wt+qzAyJ0.net
- 何でおこなの?教祖様の新言語を蔑ろにされたから?
- 911 :名称未設定:2014/08/21(木) 09:10:04.11 ID:2hA5BAPq0.net
- 普通にスレチだからだろ
- 912 :名称未設定:2014/08/21(木) 09:10:45.57 ID:wrXcb/zBi.net
- Objective-C 3.0みたいなのでも良かったとは思うけどな。Swiftは入り口は簡単そうに見えて実は簡単ではない。
- 913 :名称未設定:2014/08/21(木) 09:10:59.78 ID:y4tcfSjo0.net
- 角出せ槍出せ
- 914 :名称未設定:2014/08/21(木) 09:12:43.98 ID:wrXcb/zBi.net
- いやしかし、簡単にして新規参入を増やすのが目的では無いから別に簡単じゃなくていいのか。
- 915 :名称未設定:2014/08/21(木) 09:32:26.87 ID:5pxYsuZZi.net
- いや、新規参入を増やすのが目的だろ
- 916 :名称未設定:2014/08/21(木) 09:54:00.85 ID:+1tcACys0.net
- 別に言語や仕様を崇拝したりDISったりするのは勝手だけど
他人に押しつけようとしたりするのは勘弁
- 917 :名称未設定:2014/08/21(木) 10:34:44.95 ID:JidTJCPg0.net
- >>915 それが第一目的ではないだろうが確実に新規参入は増えるね。 参入障壁が格段に低くなった
>>916 誰もそんな人はいないから自分の好きな言語を使えば良い
でもSwiftがこなれて行って当初のもくろみ通りのパフォーマンスが出る事が確認できればひとりでに移行は進むだろう
- 918 :名称未設定:2014/08/21(木) 13:22:31.44 ID:TH0CjTlzi.net
- 今や言語にパフォーマンス期待する人は少ないと思う
ランタイムやハードには期待するけど
どっちかっつーと、生産性じゃないかな期待すべきは
- 919 :名称未設定:2014/08/21(木) 13:48:01.65 ID:/YoxOgpZ0.net
- まあ速いにこしたことは無い
Appleもそれをいちおうひとつに挙げたのだし、バッテリー持ちに対しては未だにだし
- 920 :名称未設定:2014/08/21(木) 14:41:18.62 ID:JidTJCPg0.net
- WWDCの時のデモソフト Baloons.playground が公開されてるけど Yosemite を入れてないと動かないらしいね
それはそうとこれのコードとドキュメントが混在できてるのはどうして? どうしたらこんな事出来るの?
- 921 :名称未設定:2014/08/21(木) 15:02:06.43 ID:sjC5LW5c0.net
- >>920
EditメニューのFormatで装飾してるだけでは?
Yosemite入れてないから分からんけど
- 922 :名称未設定:2014/08/21(木) 15:14:30.82 ID:JidTJCPg0.net
- >>921 見るのはMarvericks+ Xcode6 でも見れるよ Formatにそれらしい項目は無いけど
- 923 :名称未設定:2014/08/21(木) 15:20:31.38 ID:wMcQwu6U0.net
- >>920
Finderで.playgroundファイルを右クリックして「パッケージの内容を表示」してみ
ちな、こんなのもあるで
http://jasonsandmeyer.com/playgrounds/
- 924 :名称未設定:2014/08/21(木) 15:25:50.13 ID:JidTJCPg0.net
- 解った。 Baloons.playgroundを Sublime textで見てみた
ソースは普通の swiftファイルがドキュメントごとに細かなソースファイルになっていて、ドキュメント部分は細切れのhtmlになっている
contents.xcplayground ファイルでswift とhtmlを交互に指定してその順に表示させてる
ドキュメントの作り方としては面白いけど、こういうソースを編集するのはどうやるんだろ?
Xcodeには編集機能はなさそうに見えるけど?
- 925 :名称未設定:2014/08/21(木) 15:46:13.47 ID:KLL5Z2dPi.net
- 中々良い作り方だと思う、しっかりしたドキュメントの中のコードがそのまま実行出来るんだから
この形式はEPUBに取り入れて標準化して欲しいな
iBooksで購入した本がそのまま実行できたりしたら面白い
- 926 :名称未設定:2014/08/21(木) 15:58:32.64 ID:KLL5Z2dPi.net
- ドキュメントやソースコードが細切れのファイルに分かれるのは保守性が悪いから、
一つのHTMLファイルと一つのswiftソースファイルにして、HTMLの方は id 名を指定し、ソースの方には新しくドキュメントブロック番号とか追加して、
それらをcontentsで指定して行けばその通りに表示されるようになれば完璧
ソースの中のドキュメントブロックに書かれた文章は、自動的にHTMLに書き出すようにすればXCodeで編集出来る
多分今作成中なんだろうな
- 927 :名称未設定:2014/08/21(木) 16:26:45.27 ID:TH0CjTlzi.net
- そういう Apple 仕様は一般化しないでiBooksの中だけでどうぞ
- 928 :名称未設定:2014/08/21(木) 17:04:45.29 ID:Gu5a+nIa0.net
- >>927
これに似た形式は既に音声の同期表示を定めたEPUB3規格に有る。
Media Overlay 3.0
音声ファイルがプログラムソースコードに入れ替わるだけだから規格としては採用しやすい
ソースを実行させる所まで共通化するのは無理だがEPUBリーダは表示だけにとどめて、ソースの利用はコンパイラやIDEに任せてしまえば良い
Javadoc もHTMLだし、もうそろそろ言語間のドキュメントの標準化をしても良い時期だろう
EPUBは十分な表現力を持つようになった
Swiftはコンピュータ教育を強く意識しているから、この形式は結構早く普及するかもよ
今までpdfやHTMLのドキュメントからコピべでソースを持ってくるのを面倒臭いと思わない人はいなかったんじゃ無い?
- 929 :名称未設定:2014/08/21(木) 17:23:59.09 ID:cc9TDgKFi.net
- デベロッパの仕事が増えるから却下で
開発環境も限定されてしまうし
- 930 :名称未設定:2014/08/21(木) 17:28:53.41 ID:hJNHHrIX0.net
- 普段使ってるWinでダウンロードしたら普通にzip だった
appとかわらんのだな
- 931 :名称未設定:2014/08/21(木) 17:33:27.61 ID:KLL5Z2dPi.net
- >>929 ま、普通の開発ではドキュメントの体裁とか余り考えなくても良いだろうけど、この形式が有効なのは人に伝えるコードの場合だよね。
サンプルとか仕様とか教科書とか
普通の開発者は単に、
ブロックコメント/* */ を書いておけば良い( 体裁を整えたければhtmlタグを入れても良い ) 程度にしておけば、自分の裁量でコメントをかける
Javadocだってそれなりに負担だけど最低限の記述は必要だからね
書かなければ書かないでも済むんだから勝手にすれば良い
- 932 :名称未設定:2014/08/21(木) 18:18:23.60 ID:KLL5Z2dPi.net
- >>930 そう、EPUBも単なるzipだから解凍したらそこに有るのは普通のファイルでしか無い
この形式で書かれた本を買ってきて解凍したらそこにいつものソースファイルが有るだけなんだからこんなに便利なことは無いと思うんだけどな
何十年前のコンパイラでも実行出来る
- 933 :名称未設定:2014/08/21(木) 19:44:54.46 ID:TH0CjTlzi.net
- Apple謹製のドキュメント生成ツールは期待出来ず
swiftの仕様はいつまで変わるか分からず
頼むから Apple 帝国から出て来ないで欲しい
その中でやってる分には便利だが、周りを巻き込まないで
- 934 :名称未設定:2014/08/21(木) 19:49:36.97 ID:/YoxOgpZ0.net
- お前がこのスレにいるくせに何言ってんだ?まずはお前からこのスレから失せるのが先だろ
- 935 :名称未設定:2014/08/21(木) 19:57:36.03 ID:qnzn3yFk0.net
- アップルの都合で好き勝手に作り込みたいから、RubyやScalaやC#や、JSや
Action Scriptような既存の言語を採用せずに独自に言語を作った訳で、心配
しなくてもよその会社を巻き込む事は無い。
- 936 :名称未設定:2014/08/21(木) 20:15:58.97 ID:TH0CjTlzi.net
- 周りを巻き込むのはepub云々言ってる子くらいか
Appleと生粋の教徒は基本方針籠るから
- 937 :名称未設定:2014/08/21(木) 20:23:33.98 ID:/YoxOgpZ0.net
- いやいや、なんでお前の好き好みで排除したいなら、お前がこのスレから出て行くべきだろっていう
単純に帝国だの教徒だのが見えるorそれを口に出さないとお前の思いが話せないならお前の根本的な問題があるのだろ?ってこと
- 938 :名称未設定:2014/08/21(木) 20:25:47.89 ID:wMcQwu6U0.net
- この糞暑いのに熱くなるなやお前ら
- 939 :名称未設定:2014/08/21(木) 20:26:42.65 ID:/YoxOgpZ0.net
- いや、涼しいからw
- 940 :名称未設定:2014/08/21(木) 20:49:31.69 ID:cc9TDgKFi.net
- 北海道民乙
- 941 :名称未設定:2014/08/21(木) 21:19:04.80 ID:TH0CjTlzi.net
- なんか面白いヤツがいるなw
信者もアンチもいるのは仕方ない
追い出そうなんて茶がヘソで沸かせるぜ?
そんなことより swift の話をしよう
(お前が反らしてるるんだろ、とか言い出さないように)
- 942 :名称未設定:2014/08/21(木) 21:20:45.83 ID:gHRnBFoX0.net
- サーバーサイドswiftてのが出来るといいんだがなw
MacOS X Serverだいかつやく
- 943 :名称未設定:2014/08/21(木) 21:25:31.17 ID:wMcQwu6U0.net
- iCloudがSwiftのIaaSになるとかw
要望が多ければ普通にありえそうだ
- 944 :名称未設定:2014/08/21(木) 21:27:02.24 ID:/YoxOgpZ0.net
- >>941
いや、別にお前を排除しようとはしていない。薦めているがなw
なにかを排除したがるヤツってのは自分では逆のときには絶対に従わないってのを確認・おちょくってみる一環だよ
まあ、Swiftの話をするのは言う通りだな(汚ねーと思うがわかってるならマシだなw)
- 945 :名称未設定:2014/08/21(木) 21:35:12.99 ID:TH0CjTlzi.net
- Appleの?aaSは未だないから出て欲しいな
Mac OSも3rdはホント指折り数えるくらいだよな
- 946 :名称未設定:2014/08/21(木) 21:51:50.49 ID:JidTJCPg0.net
- iCloud アプリケーションをiOS8経由で開発できるんだからSwiftが活躍するだろ
- 947 :名称未設定:2014/08/21(木) 22:30:09.47 ID:qnzn3yFk0.net
- >>942
WebObjects On Swiftか。。。有るかもなw。
- 948 :名称未設定:2014/08/21(木) 23:30:15.02 ID:XsNwmxoI0.net
- わざわざベンダーロックインしてまで使う言語か?
- 949 :名称未設定:2014/08/21(木) 23:37:16.03 ID:/YoxOgpZ0.net
- ニッチでもニーズがあることには間違いないだろ。OS X Server だっていまだに提供しているんだしな
- 950 :名称未設定:2014/08/21(木) 23:41:03.92 ID:cc9TDgKFi.net
- ニーズがあるのか...
- 951 :名称未設定:2014/08/21(木) 23:41:51.33 ID:JidTJCPg0.net
- >>948 今のデベロッパID登録だってそれだけなら金を出す必要もないし
正式リリースになればそれすら必要なく誰でもタダで使える
- 952 :名称未設定:2014/08/21(木) 23:46:09.77 ID:/YoxOgpZ0.net
- 知らんけどw
まあ、Swiftに手をつけて、サーバもやっている/やることになるのだったら、Swiftでってのは考えられるんじゃね
てか、まだ正式なものでないこれからどうなるかわからんものに、否定から入るのがわからんってだけ
LLVM/clangならもしかしたらLinuxとかでもおにもなるかもしれないし、そうなったとしても大きく普及するかどうかなんてどうだかなあでもあるし
成り行きを見るだけで、否定する意味がわからんなw
- 953 :名称未設定:2014/08/21(木) 23:49:57.99 ID:TH0CjTlzi.net
- むしろ製品になったら、ディベロッパー登録しないと使えなくなりそう
もしくは、色々制限がつきそう
アプリ開発にiOS, Mac, Safariの開発者登録(有料)、なんだかんだで必要だし
- 954 :名称未設定:2014/08/21(木) 23:51:24.83 ID:/YoxOgpZ0.net
- それはいろいろ勘違いしているよ
- 955 :名称未設定:2014/08/21(木) 23:52:35.78 ID:JidTJCPg0.net
- 別にAppleローカル言語としてだけでもプログラマ人口はそれなりに大きいだろ。
他へ広まるかどうかなんてオープンソースになってからの話。 それにはまだ時間がかかる 2年後くらい?
- 956 :名称未設定:2014/08/21(木) 23:54:17.34 ID:/YoxOgpZ0.net
- どうだろうなあ。サーバサイドの話じゃないの?
- 957 :名称未設定:2014/08/21(木) 23:55:40.56 ID:XsNwmxoI0.net
- 正式なものでもないしAppleが主導する限りOSX以外にまともに移植されるとも思えないのにここまで肯定的になれるのはなんでなん?って話。
- 958 :名称未設定:2014/08/21(木) 23:58:55.46 ID:/YoxOgpZ0.net
- んー?
http://ja.wikipedia.org/wiki/Clang
Swiftをclangに入れないの?ってのがそこ(こみゅにてぃ?)で話されていたような
選択肢が増えるのはおもろいやん。別に増えても困らないし。使わなかったら無いのと同じだが、使いたくなったらあったらええやん?
- 959 :名称未設定:2014/08/22(金) 00:01:56.02 ID:JidTJCPg0.net
- >>953 何言ってんのいまのObjective-Cと同じ扱いだよ。 Xcodeはタダで使えるだろ
iOSアプリ開発登録とごっちゃにするなよ。 金を払っても開発ツールがタダなんだから物凄くお安いだろ
そりゃMacも持っていなければ手を出しづらいのも解らんでもないがお試しならVMwareと言う手も有る
- 960 :名称未設定:2014/08/22(金) 00:02:36.19 ID:TH0CjTlzi.net
- monaみたいなのが出るだろうけど、 Apple OS以外で使う気にはならぬよな
その中での覇権は取るだろうけど
- 961 :名称未設定:2014/08/22(金) 00:06:01.93 ID:twspjQyii.net
- >>959
obj-c, swift関係なく開発者登録しないと色々アレなんだよ
Mac OSアプリ作った、が署名なくて色々できねーって
- 962 :名称未設定:2014/08/22(金) 00:08:15.28 ID:AAxJeZjz0.net
- >>961
覇権って。なんか気にしているのが別にあるな。プログラマじゃないの?
SwiftはApple内部のclangに実装されているんだぜ(たしか)。「Swiftをclangに入れないの?」ってのは、オープンにしないの?っていう
なんかこれまたいろいろ勘違いされていまへんのかね?
- 963 :名称未設定:2014/08/22(金) 00:09:29.48 ID:AAxJeZjz0.net
- >>962
×>>961
○>>960
>>961
ついでなんで、色々って?Appleのサーバサービス使うのじゃなく?
- 964 :名称未設定:2014/08/22(金) 00:09:52.99 ID:TOnljR7m0.net
- Monoのミゲル・デ・イカザみたいなスーパープログラマ−が入れば、他環境へ移植されるやろうね。
現状はCocotronもGNUSTEPも挫折気味だし。
- 965 :名称未設定:2014/08/22(金) 00:23:56.60 ID:5Dw8T0pe0.net
- >>964 移植も何も LLVMで動いてるんだからオープンにするだけの話だよ
ま、Objective-Cと同じでCocoaライブラリ等が無いとあまり使い物にならないだろうけど
- 966 :名称未設定:2014/08/22(金) 00:26:33.76 ID:twspjQyii.net
- オープンにしないと思うの、 appleは
- 967 :名称未設定:2014/08/22(金) 00:27:24.56 ID:AAxJeZjz0.net
- で、色々って?w
- 968 :名称未設定:2014/08/22(金) 00:35:05.87 ID:5Dw8T0pe0.net
- >>966 なんで? Objective-Cですらオープンにしてるんだよ 元々LLVMのClangはAppleがObjective-Cのコンパイラとして開発した物だよ
しかもSwiftの開発責任者がLLVMの中心人物だよ
オープンにしない確率の方がずっと低いと思うけどな
- 969 :名称未設定:2014/08/22(金) 00:38:09.73 ID:TOnljR7m0.net
- オープンにしてもしなくてもどっちでもいいちゅう感じやね。見られて困るノウハウはフレームワークやライブラリだし。
- 970 :名称未設定:2014/08/22(金) 00:53:32.25 ID:twspjQyii.net
- コンパイラの解析、最適化ロジックは gnu や Oracle, Microsoft に易々と盗まれるのは嫌だろうけどなぁ
せっかく CPU の歓声が聞ける言語仕様とコンパイラ作ったのに
- 971 :名称未設定:2014/08/22(金) 01:00:02.83 ID:5Dw8T0pe0.net
- >>970 そんなみみっちいこと考える訳が無い 既にClangをオープンにしてるし言語仕様はオープンにしてるんだから誰だってコンパイラ位すぐに作れる
最適化ロジックの肝はLLVMだしね たんにSwiftはLLVMと相性が良いような言語仕様にしていると言うだけの話だろ
コンピュータ教育普及のためには良い言語なんだし
Appleは設立当時から教育には最高に力を入れてるんだよ
- 972 :名称未設定:2014/08/22(金) 01:06:14.01 ID:AAxJeZjz0.net
- >>971
なんかいろいろ余計w
Appleもオープンソースを利用しそれなりに貢献しているんだから、オープンソースの意味(住人?)がわかってるだろうし、Clangをオープンソースにしたのにいまさらって感があるな
ID:twspjQyii は WebKit は Google に盗まれたwとでもか?w
- 973 :名称未設定:2014/08/22(金) 07:29:28.26 ID:XPbChsW40.net
- お前も余計
- 974 :名称未設定:2014/08/22(金) 08:41:21.07 ID:r+cYgxvEi.net
- 俺も余計
- 975 :名称未設定:2014/08/22(金) 09:14:41.79 ID:twspjQyii.net
- 自分も余計
- 976 :名称未設定:2014/08/22(金) 09:43:41.10 ID:ZAMLRv6g0.net
- DevPro買わないとicloudのapiが使えない。pushとかも。
- 977 :名称未設定:2014/08/22(金) 12:34:19.53 ID:VzfeEkmv0.net
- 読みやすい柔らかいドキュメントは整備されてるけど、
誰かがオリジナル処理系を作れるぐらいにカッチリとした「仕様書」は公開してくれないのかな
- 978 :名称未設定:2014/08/22(金) 14:19:11.68 ID:kY9b7Xpo0.net
- 俺もオライリーやピアソンから出るような1000ページぐらいの本がないとダメやわ。
- 979 :名称未設定:2014/08/22(金) 14:30:23.84 ID:IpX9cao60.net
- >>978
iBooksのSwift本、2冊合わせて1000ページぐらいあるぞ
- 980 :名称未設定:2014/08/22(金) 14:53:19.18 ID:5Dw8T0pe0.net
- iOS Developer library も有るよ
- 981 :名称未設定:2014/08/22(金) 14:58:00.78 ID:5Dw8T0pe0.net
- >>977 文法的には Grammerが全てじゃないかな
“Summary of the Grammar”
抜粋:: Apple Inc. “The Swift Programming Language”。 iBooks. https://itun.es/jp/jEUH0.l
- 982 :名称未設定:2014/08/22(金) 15:07:45.12 ID:twspjQyii.net
- まだ仕様がフラフラしてるから今書いたら誤情報だらけになりそう
iOS 8とペアで fix してから欲しい、 fixするか分からないけど
- 983 :名称未設定:2014/08/22(金) 19:14:02.65 ID:MaKO+mes0.net
- >>979
フォントデカめで英語だから、実質300ページぐらいじゃない?
- 984 :名称未設定:2014/08/22(金) 19:44:27.42 ID:kcBFPxZei.net
- 1000ベージを超えるような本など、米アマゾンの予約版にもまだ無い
- 985 :名称未設定:2014/08/22(金) 19:47:14.76 ID:kcBFPxZei.net
- つか、たかが1つの言語の解説で1000ページも必要か?
- 986 :名称未設定:2014/08/22(金) 20:19:52.73 ID:MaKO+mes0.net
- 開発者本人が書いたJavaの本が英語で928ページ
O'ReillyのC#の本が英語で886ページ
やな。
>>985
なぜこう動くのかをきちんと調べようとすると日本語で200〜300ページぐらいしかない入門書
じゃとても役に立たない。理屈はしらんが動けばいいやというならそれでもいいかもしれないが。
- 987 :名称未設定:2014/08/22(金) 20:35:33.87 ID:5Dw8T0pe0.net
- The Swift Programing Language : 500page
Using Swift with Cocoa and Objective-c : 100page
言語のコンパクトさから見ると適正なサイズだろ
実際は言語仕様じゃなくライブラリの方が膨大だからせめて iOS Developer Library まで合わせて考えた方が良いだろう
このサイズは解らないが合わせたら言語仕様なんて大した事無いだろ
- 988 :名称未設定:2014/08/22(金) 22:37:55.10 ID:5Dw8T0pe0.net
- >>986 BNF行数で比較すると
Swift 560
Java JDK1.6 約1500
C# 4907(本体)+1440(プリプロセッサ) 約6千行
つまりJavaの1/3 C#の1/10の説明でも済むはず だからSwift本は馬鹿丁寧に感じて当然
- 989 :名称未設定:2014/08/22(金) 22:43:29.07 ID:RxBtf1Ul0.net
- へーBNF行数とページ数って線形なんだ
- 990 :名称未設定:2014/08/23(土) 05:13:59.96 ID:5EQZjBV80.net
- 次スレテンプレどうする?
- 991 :名称未設定:2014/08/23(土) 06:53:52.67 ID:vUov9+yQ0.net
- Appleの新言語Swiftについて語りましょう
Apple Developer
https://developer.apple.com/swift/
Welcome to Swift
https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/
iBooks: The Swift Programming Language
https://itunes.apple.com/jp/book/swift-programming-language/id881256329?mt=11
書籍の形にはなってないけどドキュメント
The Swift Programming Language
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Using Swift with Cocoa and Objective-C
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Swift Standard Library Reference
https://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/
Swift Blog
https://developer.apple.com/swift/blog/
Resources (Xcode 6が無料でダウンロードできる)
https://developer.apple.com/swift/resources/
関連スレ
Swift part3
http://peace.2ch.net/test/read.cgi/tech/1406083608/
前スレ
- 992 :名称未設定:2014/08/23(土) 06:55:02.29 ID:vUov9+yQ0.net
- 前スレに追加
プログラミング言語Swift
http://anago.2ch.net/test/read.cgi/mac/1401736921/
- 993 :名称未設定:2014/08/23(土) 07:01:45.12 ID:vUov9+yQ0.net
- Appleの新言語Swiftについて語りましょう
Apple Developer
https://developer.apple.com/swift/
Welcome to Swift
https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/
書籍iBooks:
The Swift Programming Language
https://itunes.apple.com/jp/book/swift-programming-language/id881256329?mt=11
Using Swift with Cocoa and Objective-C
https://itunes.apple.com/jp/book/using-swift-cocoa-objective/id888894773?mt=11
書籍の形にはなってないけどドキュメント
The Swift Programming Language
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Using Swift with Cocoa and Objective-C
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Swift Standard Library Reference
https://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/
Swift Blog
https://developer.apple.com/swift/blog/
Resources (Xcode 6が無料でダウンロードできる)
https://developer.apple.com/swift/resources/
関連スレ
Swift part3
http://peace.2ch.net/test/read.cgi/tech/1406083608/
前スレ
プログラミング言語Swift
http://anago.2ch.net/test/read.cgi/mac/1401736921/
- 994 :名称未設定:2014/08/23(土) 07:07:31.76 ID:vUov9+yQ0.net
- Appleの新言語Swiftについて語りましょう
Apple Developer
https://developer.apple.com/swift/
Welcome to Swift
https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/
書籍iBooks:
The Swift Programming Language
https://itunes.apple.com/jp/book/swift-programming-language/id881256329?mt=11
Using Swift with Cocoa and Objective-C
https://itunes.apple.com/jp/book/using-swift-cocoa-objective/id888894773?mt=11
書籍の形にはなってないけどドキュメント
The Swift Programming Language
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Using Swift with Cocoa and Objective-C
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/index.html#//apple_ref/doc/uid/TP40014097
Swift Standard Library Reference
https://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/
Swift Blog
https://developer.apple.com/swift/blog/
Resources (Xcode 6が無料でダウンロードできる)
https://developer.apple.com/swift/resources/
関連スレ
Swift part3
http://peace.2ch.net/test/read.cgi/tech/1406083608/
前スレ
プログラミング言語Swift
http://anago.2ch.net/test/read.cgi/mac/1401736921/
- 995 :名称未設定:2014/08/23(土) 08:00:22.20 ID:vUov9+yQ0.net
- ゴメン、BB2Cでアラシと誤認されて見えなかったので2度投稿してしまった
なんでアラシ認定されたのかな
校正& スレ立てお願いします
- 996 :名称未設定:2014/08/23(土) 08:02:25.66 ID:Ua4T37dc0.net
- Swift終了のお知らせ
未来では全てのプログラミング言語が1つになる?
http://www.gizmodo.jp/2014/08/1_189.html
- 997 :名称未設定:2014/08/23(土) 08:09:35.98 ID:X079YDx+0.net
- Javaやhtml、JSみたいに政治闘争に利用されて終わりだと思う。
後、CやC++みたいにプラットホーム事にライブラリやフレームワークが全然違うとか。
- 998 :名称未設定:2014/08/23(土) 08:27:55.61 ID:vQdcSMFci.net
- PL/Iと同じ運命たどりそうだな
- 999 :名称未設定:2014/08/23(土) 09:04:19.64 ID:RsBCZu5Z0.net
- >>996
NSAが関わってるって時点で嫌って人めちゃくちゃ多そうw
- 1000 :名称未設定:2014/08/23(土) 09:36:16.23 ID:Ua4LMA5ui.net
- >>997
それらの言語はまだ終わってない方じゃねーか
- 1001 :2ch.net投稿限界:Over 1000 Thread
- 2ch.netからのレス数が1000に到達しました。
総レス数 1001
253 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★