新言語Swiftを語るスレ

このエントリーをはてなブックマークに追加
1名称未設定
とりあえず立てました
2名称未設定:2014/06/03(火) 04:15:27.05 ID:GBmOUrN50
OpenCVとTesseract OCRを使ってる俺は、Objective-C++から離れなさそうだorz..
3名称未設定:2014/06/03(火) 04:15:44.87 ID:0SJ2IVCS0
4名称未設定:2014/06/03(火) 04:20:38.71 ID:RJzwudSo0
つい先日勉強始めたばっかりなんだよなー
新しい方に乗り換えるかなー
5名称未設定:2014/06/03(火) 04:24:29.73 ID:jtxZLRyP0
ちょっと見た限りではObjCの構文をモダンにしたついでに名前を変えてみた、という感じだね
ObjCより高速というのはLLVMのオプティマイザが優秀、ということなのかな
6名称未設定:2014/06/03(火) 04:39:46.45 ID:jtxZLRyP0
ObjCの最大の利点は個人的にはソースレベルでCやC++を混ぜられるフリーダムさだと思うのだけどね
7名称未設定:2014/06/03(火) 04:44:27.00 ID:qQqHwfmZ0
既に勉強会イベント告知あってワロタw
8名称未設定:2014/06/03(火) 04:48:40.13 ID:Y4q2G8UW0
ガリバーの作者名って何でとはもちろん思わなかったよもちろん
9名称未設定:2014/06/03(火) 04:51:11.79 ID:bVMD3cp40
とりあえずObjective-C2の本、ゴミ箱捨てていいですかね
10名称未設定:2014/06/03(火) 04:53:17.50 ID:ozHFe2Ev0
当分はobj-cでいくわ
11名称未設定:2014/06/03(火) 04:53:30.90 ID:LSaGIpUg0
JavaScriptとかPHPみたいにロジックだけで書ける言語だといいんだけどな。
メモリ管理とか気にせずに。
12名称未設定:2014/06/03(火) 04:54:23.38 ID:BI62/oEs0
世良公則のグループ?
13名称未設定:2014/06/03(火) 05:15:30.30 ID:zVs/LLtK0
Objective-Cとどっちを覚えればいいですか?
両方は勘弁して
14名称未設定:2014/06/03(火) 05:20:53.37 ID:htngcLSR0
>>7
kwsk
15名称未設定:2014/06/03(火) 05:22:23.68 ID:htngcLSR0
新しいプログラミング言語 Swift
http://dev.classmethod.jp/smartphone/swift/
16名称未設定:2014/06/03(火) 05:27:24.87 ID:LFzfpZHU0
>>15
めっちゃ簡単やん
17名称未設定:2014/06/03(火) 05:33:33.29 ID:htngcLSR0
私がui_nyanだ@ui_nyan
きょうのアップルの発表会で公開された新言語Swiftがどれくらいのインパクトか、
開発者じゃない人にわかりやすく解説すると、「いままで最寄のコンビニが徒歩30分で19時に閉店するデイリーヤマザキだったのに、今日いきなり家の目の前に24時間営業のセブンイレブンができた」
感じです
18名称未設定:2014/06/03(火) 05:36:23.19 ID:bVMD3cp40
でもそのセブン、店員がオープニングスタッフで教育不足なんだ
19名称未設定:2014/06/03(火) 05:37:20.87 ID:auJDpnJ60
>>17
>>18
徹夜で草不可避
20名称未設定:2014/06/03(火) 05:37:54.35 ID:ybgZ4t4N0
まだSwift使ったことないくせにわかったように言うのやめてほしい
21名称未設定:2014/06/03(火) 05:39:20.85 ID:7lviANPn0
やっべえObj-C殺しにきた
そこは盲点だった
22名称未設定:2014/06/03(火) 05:55:42.98 ID:pdA7nV3Q0
let people = ["Anna": 67, "Beto": 8, "Jack": 33, "Sam": 25]
for (name, age) in people {
println("\(name) is \(age) years old.")
}
23名称未設定:2014/06/03(火) 06:21:41.77 ID:pdA7nV3Q0
米アップル、iOSアプリの新開発言語にSwiftを導入
http://ggsoku.com/2014/06/ios-8-swift/
米アップルは2日(現地時間)、iOS 8に新開発言語「Swift」を導入すると発表した。

Swiftは非常に軽快に動くことが特徴であり、Objective-CとC言語の中間に位置するようなイメージであるという。
コード体系はC言語を踏襲。
CocoaやCocoa Touchに対応することはもちろん、LLVMコンパイラを利用してビルドされる。

LLVM
http://ja.wikipedia.org/wiki/LLVM
LLVM とは、コンパイル時、リンク時、実行時などあらゆる時点でプログラムを最適化するよう設計された、任意のプログラミング言語に対応可能なコンパイラ基盤である。

LLVM は、JavaとJava VMの関係のように、まず仮想機械をターゲットとした中間コード(ビットコード)を生成し、その仮想機械向けコードを特定のマシンの機械語に変換する。
24名称未設定:2014/06/03(火) 06:24:47.04 ID:eOgEoXM70
仕様記述言語とか証明支援とかモデルベース開発とか
自動コード生成とかに行って欲しいんだが、
結局既存の言語の焼き増しでしかないのか。

ソフトウェア開発って90年代から進歩しないね。
25名称未設定:2014/06/03(火) 06:27:35.67 ID:pdA7nV3Q0
26名称未設定:2014/06/03(火) 06:33:10.02 ID:+Mi07RUb0
>>24
あんまり進歩しすぎると、プログラマが着いて来れない
27名称未設定:2014/06/03(火) 06:44:22.74 ID:A2z4GzPj0
シンタックスみたらこれLLじゃない・・・
とどのつまりjsやPythonでCocoa/Cocoa Touch利用できるってことだよ
こりゃーiOS開発はSwiftが主流になるわ絶対
だってiOSってObjectiv-Cで開発するほどのプラットホームじゃないってずっと思ってたんだよな
28名称未設定:2014/06/03(火) 06:46:13.09 ID:pdA7nV3Q0
LLVM Compiler Overview

Important:
This is a preliminary document for an API or technology in development.

Apple is supplying this information to help you plan for the adoption of the technologies and programming interfaces described herein for use on Apple-branded products.
This information is subject to change, and software implemented according to this document should be tested with final operating system software and final documentation.
Newer versions of this document may be provided with future seeds of the API or technology.

The LLVM compiler is the next-generation compiler, introduced in Xcode 3.2 for Snow Leopard, based on the open source LLVM.org project.
The LLVM.org project employs a unique approach of building compiler technologies as a set of libraries.
Capable of working together or independently, these libraries enable rapid innovation and the ability to attack problems never before solved by compilers.
Multiple technology groups within Apple are active contributors within the LLVM.org community, and they use LLVM technology to make Apple platforms faster and more secure.

In Xcode, the LLVM compiler uses the Clang front end (a C-based languages project on LLVM.org) to parse source code and turn it into an interim format.
Then the LLVM code generation layer (back end) turns that interim format into final machine code.
Xcode also includes the LLVM GCC compiler, which uses the GCC compiler front end for maximum compatibility, and the LLVM back end, which takes advantage of LLVM's advanced code generator.
This shows the flexibility of a library-based approach to compiler development.
There are many other features, such as link-time optimization, more detailed diagnostic information, and even static analysis, that are made available to Xcode due to the adoption of LLVM.
29名称未設定:2014/06/03(火) 06:51:32.97 ID:N/V+u7vC0
これTypeScriptににてるね。
30名称未設定:2014/06/03(火) 06:54:50.28 ID:SzaQxGWf0
Cベースとか言ってるけど、関数の引数に型あるし、
クラスやインターフェースもあるし、これ明らかに
TypeScriptを意識してるよな。
31名称未設定:2014/06/03(火) 06:55:46.82 ID:oQKxHh990
Rust言語?
32名称未設定:2014/06/03(火) 07:01:06.66 ID:+AmdW8rr0
うん、全くわからん
33名称未設定:2014/06/03(火) 07:24:34.07 ID:7QOuQ+kO0
これ覚えやすい?
CとC++しかやったことないけど、すげーコードが見にくい
Objectiv-Cよりはマシになったようだけど
34名称未設定:2014/06/03(火) 07:30:16.83 ID:SzaQxGWf0
>>33
JavaScriptとその派生であるTypeScriptやCoffeeScriptなんかを
知っていれば、読みやすいというか、ほぼまんまw
35名称未設定:2014/06/03(火) 07:37:57.88 ID:mm8XPtUD0
対話型によく似てんだよなあ
36名称未設定:2014/06/03(火) 07:41:44.04 ID:oQKxHh990
めっちゃ既視感のある文法なんで学習コストは小さいな。
37名称未設定:2014/06/03(火) 07:46:07.56 ID:xzn9poZL0
新しい発想とかいってるけど、
これTypeScriptだな。
MSのパクリかw
38名称未設定:2014/06/03(火) 07:54:39.12 ID:UdS/za7A0
ObjCは要らない子なん?
39名称未設定:2014/06/03(火) 07:58:54.15 ID:En29ftJB0
Swiftで作ったアプリはiphon5で動かないんだろ?
40名称未設定:2014/06/03(火) 08:11:40.19 ID:t3x64aTM0
>>6
>ObjCの最大の利点は個人的にはソースレベルでCやC++を混ぜられるフリーダムさだと思うのだけどね

それが欠点でもある。メモリーリークとかが見逃されて製品版出荷される最大の理由だろう。
41名称未設定:2014/06/03(火) 08:14:13.27 ID:nqXPethp0
>>40
何にも知らないのにね。
42名称未設定:2014/06/03(火) 08:17:57.41 ID:pdA7nV3Q0
>>39 どれでだって動くよ。 少なくとも4S以降は動く筈。 iOS8が4S以降対応だから。
元々LLVMはマシンに依存しないし。
43名称未設定:2014/06/03(火) 08:19:42.41 ID:SrU1E7QU0
44名称未設定:2014/06/03(火) 08:20:18.79 ID:nqXPethp0
構ってIDコロ助。
45名称未設定:2014/06/03(火) 08:29:41.96 ID:hJ4yHIUY0
なるほどまったくわからん
46名称未設定:2014/06/03(火) 08:32:44.17 ID:xzn9poZL0
1レスでマスターできるSwift言語入門
他言語のよせあつめだから、マスターするにはこれだけで十分w
(まあざっとしか見てないから間違ってたらすまん)

タイプセーフ言語。全般的に型ある。型キャストもある。
Generics搭載、アトリビュートあり

var(変数)とlet(定数)。変数・引数の定義は「名前: 型」の順番
文字列リテラル = よくある文字列クラス。文字列の中で変数展開や関数実行可能
for、for in、while、do while、if、swtchがある。
ループ系はラベルが使えてbreak、continueできるタイプ
switchは、caseにそこそこ色んなモノが使えてFallthroughキーワードでフォールするタイプ

関数はfuncで定義。デフォルト引数と名前付き引数が使える。
可変引数は...、inoutキーワードで引数で戻り値を返せる。クロージャある。アロー演算子もある。

タイプセーフEnum。おなじみのclassとstruct。thisはself。
(たぶん)単一実装継承。インターフェース(protocols)継承は複数可能
overrideキーワード、プロパティ(set、getキーワード)あり
コンストラクタ=init、デストラクタ=deinit。
自動リファレンスカウンタ方式。Weak Referencesあり
extensionで既存クラス拡張可能

例外、try-catchは不明(なし?)
47名称未設定:2014/06/03(火) 08:34:07.78 ID:nqXPethp0
何も知らないのにね。
48名称未設定:2014/06/03(火) 08:40:05.68 ID:6Hf0uyCc0
CocoaもSwift/ObjCダブル記法になってる
かつてのJavaが復活したようだ。そのうちObjC対応しないクラスとか
出てくるんだろうな。。。
49名称未設定:2014/06/03(火) 08:42:14.40 ID:MCNeO7aH0
謎のEmoji押し
50名称未設定:2014/06/03(火) 08:42:42.75 ID:4iDr/JNx0
今objective-C覚えながらソフト作ってるところだけどこっちの方が覚えやすいのかぁ
もっとも英語が読めない身としてはまだobjecの方が情報探せるからすぐには使えなそうだけど
51名称未設定:2014/06/03(火) 08:42:47.64 ID:ehw/FtOo0
言語仕様を見た感じ割と楽そう
ただちょっと普及しなさそうだな
どの新言語も出た直後は盛り上がるけど、半年も経つと失速してるし…

アップルがどれだけ本気かによる気がする
ObjCからの段階的移行でも発表すれば広がるんだろうが…
52名称未設定:2014/06/03(火) 08:47:06.92 ID:KWemsD+z0
まあ、Objective-CとSwiftで
どちらもアップル専用言語って
扱いになるだろうね。

あとはどっちの言語がアップル専用言語として
使われていくかでしょう。
それ以外の用途では使われない。
53名称未設定:2014/06/03(火) 09:05:41.78 ID:htngcLSR0
54名称未設定:2014/06/03(火) 09:25:40.69 ID:rZX1JbaV0
コピペでできたようなリファレンスだな
55名称未設定:2014/06/03(火) 09:42:31.28 ID:A2z4GzPj0
>>53
早速遊んでるけど今のところiOSでしか動かない模様www
新規プロジェクトでSwift選択できるがCocoaだとObjective-Cのプロジェクトになる
iOSでSwift触ってるけどめちゃくちゃ簡単wwww
iOSアプリなんて軽いものつくるのにObjective-Cなんて重たい言語いらんかったんや!!www
56名称未設定:2014/06/03(火) 09:53:29.47 ID:RjMq8yJA0
機能紹介で namespacesって言ったときに聴衆がすげぇ湧いたけどどういうことなの?
57名称未設定:2014/06/03(火) 09:53:43.19 ID:wB7NpNuW0
つかクソ言語でやらされてたことについて謝れや
58名称未設定:2014/06/03(火) 10:00:32.39 ID:A2z4GzPj0
アクセス修飾子のないJsへnamespaceでスコープを制限できる機能を追加したのと同じだから
59名称未設定:2014/06/03(火) 10:03:06.50 ID:6Hf0uyCc0
()地獄
[]地獄
block地獄 からは抜け出せそうな
60名称未設定:2014/06/03(火) 10:21:55.72 ID:Zh5hS1970
似たような言語は幾つもあるけど、Xcodeの支援を全力に受けられるのが一番の強みかな
61名称未設定:2014/06/03(火) 10:26:10.02 ID:A2z4GzPj0
XcodeというかiOS開発で避けて通れない唯一の選択肢だからだよ
であればこそObjective-Cなんてレガシーな言語がここまで普及したわけで
言語の筋で言えばC#が一番優れてると思うし好きだな
TypeScript作ったのもM$の人だしSwiftはまんまTypeScriptだし
開発環境や言語に関してはM$たいしたもんだよ
62名称未設定:2014/06/03(火) 10:35:07.92 ID:umhEmf0x0
>>43
>at 05:26

>AnonymousJune 3, 2014 at 5:37 AM
>iBooks版は読んでないので知りませんが、おそらくこちらのHTML版と同等だと思います。
>https://developer.apple.com/lib....

たった10分で論破されてるw クズすぎるなwww
63名称未設定:2014/06/03(火) 10:55:19.60 ID:FXF8pHvX0
>>43
こういう頭の硬いおっさんは一生C++使ってりゃいいんだよ
64名称未設定:2014/06/03(火) 10:56:24.11 ID:8NS7mh6w0
>>62
ドワンゴこんな奴雇ってるんだぜ
65名称未設定:2014/06/03(火) 11:01:54.34 ID:eOgEoXM70
まあドワンゴだし

LLVMって言葉が上の方にあるけど、これってLLっぽいけどインタープリタでもなく
その場コンパイルでもなく、コンパイルしてアセンブラを出力してバイナリ作成する
従来型のコンパイラという認識でいいんだよね? VMが解釈するわけでなく。
66名称未設定:2014/06/03(火) 11:09:51.72 ID:SACawKZT0
プログラミング言語swift公式ページ
http://swift-lang.org/
67名称未設定:2014/06/03(火) 11:12:48.07 ID:LSaGIpUg0
>>61
開発環境に関してはMSは優れてるけど、ユーザー環境についてはどうかと思う。
ランタイムとか.Net Frameworkのバージョンがいろいろあって、ユーザーがそれを
一々インストールしなきゃ使えないというのはイマイチ。
68名称未設定:2014/06/03(火) 11:13:32.83 ID:tIh9Y4KQ0
とりあえず今はswiftって奴が熱いよねとか言っとけば通ぶれるんだろ?
69名称未設定:2014/06/03(火) 11:15:13.98 ID:NCwMf3oR0
AppleScriptObjCとかどうなるんだよ

AppleScriptSwiftとか生まれるのか
70名称未設定:2014/06/03(火) 11:17:19.08 ID:Jen1ydy30
>>66
それ、名前が同じだけど別のSwift
71名称未設定:2014/06/03(火) 11:20:56.81 ID:Jen1ydy30
変数名にUnicode文字が使えるのか。
最近の言語ではあたりまえだけど。
72名称未設定:2014/06/03(火) 11:22:25.48 ID:jtxZLRyP0
>>67
最新OS以外に最新のランタイムを提供しないAppleよりはマトモだと思うけど...
73名称未設定:2014/06/03(火) 11:25:17.35 ID:rZX1JbaV0
これでできたバイナリはiOS8以降用になんの?
74名称未設定:2014/06/03(火) 11:45:05.15 ID:FTVS2+ez0
75名称未設定:2014/06/03(火) 11:47:40.91 ID:Zh5hS1970
>>66
それ別の言語じゃね?
76名称未設定:2014/06/03(火) 11:48:18.35 ID:6Ccrq/7s0
?の意味が今一わからない
C#のNullableみたいなもんなのか
77名称未設定:2014/06/03(火) 11:57:09.92 ID:6Ccrq/7s0
拡張子がまんま.swift って言語史上最長じゃないの?
78名称未設定:2014/06/03(火) 11:58:37.37 ID:SACawKZT0
そもそも拡張子文化を無くしたい
79名称未設定:2014/06/03(火) 12:05:24.82 ID:ehw/FtOo0
>>77
.coffee
80名称未設定:2014/06/03(火) 12:07:23.50 ID:oQKxHh990
>>77
.cikernel
81名称未設定:2014/06/03(火) 12:12:18.11 ID:6Ccrq/7s0
82名称未設定:2014/06/03(火) 12:16:09.29 ID:Am3GtPWL0
>>78
rm *.obj の代わりに
rm --type=obj って書きたいってこと?

拡張子は便利だから無くなることはないよ。

CLIが存在しないMacではたまたま拡張子が
あってもなくても違いを感じられなかっただけ。
83名称未設定:2014/06/03(火) 12:31:37.61 ID:umhEmf0x0
txt開いたらwordが起動されたんだが。
84名称未設定:2014/06/03(火) 12:36:56.69 ID:Am3GtPWL0
>>83
それは何も間違ってない。

HTMLファイルを何で開くかと考えたら
ファイルによって開くアプリが決まるわけじゃないと
理解できるだろう。
85名称未設定:2014/06/03(火) 12:41:22.56 ID:hZ+cOFwY0
まだあえて追加した拡張子を廃止とか言ってる奴いたのかよ
せめてファイルをなくせかファイル名をなくせと主張してほしいわ
86名称未設定:2014/06/03(火) 12:42:12.44 ID:UrrOCx1o0
もうObjective-Cは覚えなくていいの?代替になるの?
87名称未設定:2014/06/03(火) 12:44:51.53 ID:8NS7mh6w0
>>85
実身/仮身モデルを採用しろ!とかですね
88名称未設定:2014/06/03(火) 12:45:28.58 ID:CkliHqbW0
ObjeC書けるってドヤ顔してた先行者も一緒にヨーイドンでSwift始めるのかあ胸熱
89名称未設定:2014/06/03(火) 12:54:30.79 ID:6GeahuVL0
この、変数が絵文字でもいいってのは珍しいの?
他の言語ではどう?

http://i.imgur.com/Z73qpVJ.jpg
90名称未設定:2014/06/03(火) 12:56:13.23 ID:Zh5hS1970
名前付けwhileとかは嬉しいな。break や continue が分かりやすくなる。
91名称未設定:2014/06/03(火) 12:56:22.09 ID:1Kic3/wp0
>>89
普通はできないな。
顔文字なんて使いたいって思う奴も少ないが。
ただ、2バイトコード対応したのはそれなりに意味はあるかも。
92名称未設定:2014/06/03(火) 12:58:54.26 ID:Am3GtPWL0
>>89
絵文字と言っても只のUnicode文字列
変数名として絵文字を使うことは珍しいが
絵文字を含むUnicode文字を変数名に使える言語は珍しくない。
JavaとかJavaScriptとか。
変数名に漢字が使えるというだけならVBやVBAでも使えた。
93名称未設定:2014/06/03(火) 13:00:22.96 ID:7Ev7OmPK0
まぁさわやかで悪くないんじゃないでしょうか
あくまで悪くないだけで最近の言語としてはふつーだけど
ただなんでこんなググラビリティ低そうな言語名なんだよ
94名称未設定:2014/06/03(火) 13:04:40.78 ID:Am3GtPWL0
やってみたらPHPでも絵文字変数使えた。
Perlはだめだった

ここらへんに乗っている言語なら出来るかもね。
http://rosettacode.org/wiki/Unicode_variable_names
95名称未設定:2014/06/03(火) 13:05:41.49 ID:jtxZLRyP0
A6 SoCのCPUコアのコードネームもSwiftだしなw
96名称未設定:2014/06/03(火) 13:15:20.99 ID:pdA7nV3Q0
>>86 多分完全に置き換わるだろう。 すぐになくなる訳ではないが、開発者の負担がSwiftの方が少ないし早いスピードのコードが書けるんだから。
97名称未設定:2014/06/03(火) 13:29:47.16 ID:jtxZLRyP0
Cの関数を呼ぶのにObjCのラッパーにお世話になる必要があるようでは
置き換わることはないと思うが
98名称未設定:2014/06/03(火) 13:36:07.89 ID:GNTUNvjK0
>>12
ツイスト
99名称未設定:2014/06/03(火) 14:16:25.84 ID:I4aC7NLC0
テイラー?
100名称未設定:2014/06/03(火) 14:27:34.38 ID:ehw/FtOo0
swiftもいいけど、cloudkitの方が期待してる
サーバーサイドを書かずにswiftだけで完結できるって事だよね
101名称未設定:2014/06/03(火) 14:35:52.56 ID:umhEmf0x0
>>91
漢字変数名なら、COBOLであるよ。絵文字は知らないが。
顔文字変数名も、一部の変態が使っているよ。
102名称未設定:2014/06/03(火) 15:28:29.25 ID:pdA7nV3Q0
アップル、新しいプログラミング言語「Swift」を発表
2014/06/03 10:13
http://m.japan.cnet.com/#story,35048822

他の言語がこれまでに勢いを失った分野でSwiftが成功するということを示す指標となる可能性がある。
Appleは実質的に、同社の熱烈なファンである開発者層を抱えているからだ。
103名称未設定:2014/06/03(火) 15:40:52.57 ID:pdA7nV3Q0
>>97 いろんなとこで粘着してるな。

こう書かれてるから、C互換性は失われないはず。 C言語用の専用型もあるし。
“Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility.”

抜粋: : Inc、Apple. “The Swift Programming Language.” Apple Inc., 2014-05-27T07:00:00Z. iBooks.
この素材は著作権で保護されている可能性があります。

iBooks Storeでこのブックをご覧ください: https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewBook?id=881256329
104名称未設定:2014/06/03(火) 15:51:23.15 ID:wrTE8Cfs0
Swift はLLな人達にも取っ付きやすい構文だから、ライトなアプリは競争が激しくなりそうだなー
105名称未設定:2014/06/03(火) 16:09:09.87 ID:OA7HFAyG0
>>103
without the constraints of C compatibility
Cとの互換性に縛られること無く

とまさに書いてあるのにどう読んだら互換性は失われないとなるのか
106名称未設定:2014/06/03(火) 16:13:37.83 ID:pdA7nV3Q0
>>97 WWDC の中で、SwiftはOBJCと、Cと同じアプリケーションの中で混在出来ると言ってる。
しかもその中間に位置すると言ってるからわざわざOBJCまで遡る必要があるとは思えない。 直接Cの型を扱えるのがその証拠では?
http://i.imgur.com/zXuh9hi.jpg
107名称未設定:2014/06/03(火) 16:17:52.28 ID:OA7HFAyG0
Objective-CがCを呼べる以上は
Objective-Cのクラスをそのまま使えるSwiftがCの型を扱えなきゃ困るだろう
108名称未設定:2014/06/03(火) 16:18:30.82 ID:t6TC01Yb0
Objective-C++はどうなるんだべ
109名称未設定:2014/06/03(火) 16:20:54.68 ID:R8T413E50
俺もCやC++はいったんObj-Cのラッパー介さないとアクセス出来ない気がするんだが
できると言う人はコードで示してほしいな
110名称未設定:2014/06/03(火) 16:21:15.69 ID:lDZ9/Z2e0
まだ読んでないが、.swiftの中でCと混在できるのけ?
つか、たんまりある既存APIが一遍には置き換わらんだろ。
かなり時間がかかるんじゃね?
111名称未設定:2014/06/03(火) 16:22:44.90 ID:OA7HFAyG0
http://developers.slashdot.org/comments.pl?sid=5232847&cid=47151309

>From what I can tell (I just got out of WWDC and am reading through the docs)
>it can be bridged to, but not directly called. You can directly call Obj-C methods
>through the bridge, but not C methods. You'd have to bridge to the Obj-C methods which then call C methods.
112名称未設定:2014/06/03(火) 16:27:37.64 ID:R8T413E50
Swift のプロジェクトに .c ファイル作ると Projectname-Bridging-Header.h ってのが作られて
そこで #include すれば C の関数呼べたわ
スマソ
113名称未設定:2014/06/03(火) 16:33:06.92 ID:JN3cNUBn0
自分のプロジェクトじゃなくて、外部のライブラリの関数も呼べるん?
114名称未設定:2014/06/03(火) 16:38:19.46 ID:lDZ9/Z2e0
考えてみりゃ、呼べなきゃ使い物にならんわなw
しゃべってねえでさっさと使ってみろってことか。はいわかりました。
115名称未設定:2014/06/03(火) 16:40:16.76 ID:hO8Ulhcf0
>>108
Using Swift with Cocoa and Objective-C
では
You cannot import C++ code directly into Swift. Instead, create an Objective-C or C wrapper for C++ code.
らしいよ
116名称未設定:2014/06/03(火) 16:43:18.42 ID:odw4DC1bI
swiftためすにはxcode6betaが必要なんだよね?

あと90分早く過ぎろ帰って試したーい
117名称未設定:2014/06/03(火) 16:45:46.04 ID:NTf/WpNx0
うむ
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/BuildingCocoaApps/index.html
>Any Objective-C framework (or C library) that's accessible as a module can be imported directly into Swift.
>This includes all of the Objective-C system frameworks—such as Foundation, UIKit, and SpriteKit—as well as common C libraries supplied with the system.
118名称未設定:2014/06/03(火) 17:03:45.88 ID:umhEmf0x0
JavaやC#とは違うところかい。
119名称未設定:2014/06/03(火) 17:06:52.74 ID:hO8Ulhcf0
>>56
Objective-Cにとても欲しかったからじゃね。違ったけどw

http://qiita.com/nori0620/items/cf956fea84e82ec2aee5
この今日半日以下で読み応えのあるまとめ。すっごいなあ
>>76
ほぼ正解。なのかな?
120名称未設定:2014/06/03(火) 17:15:41.99 ID:7EB6t1+T0
let it go

だぜ
セミコロンがいらないのは違和感あるな
121名称未設定:2014/06/03(火) 17:19:21.63 ID:htngcLSR0
>>104
プログラミング言語は単なる手段であってアプリの成功の可否はアイデアでしょ
122名称未設定:2014/06/03(火) 17:23:45.81 ID:8NS7mh6w0
アイデアはあるがObj-Cはなあ‥‥って人の参入障壁が下がって
競争激化って話でしょう
123名称未設定:2014/06/03(火) 17:25:01.76 ID:hO8Ulhcf0
let = C/Objective-Cでのconst付き変数
かあ

let lastRefreshDate: AnyObject? = userDefaults.objectForKey("LastRefreshDate")
if let date = lastRefreshDate as? NSDate {
println("¥(date.timeIntervalSinceReferenceDate)")

なんじゃ、これはと思ったが、if文で変数宣言できてーのか
if lastRefreshDate {
とは書けないのか??
println("¥(NSDate(lastRefreshDate).timeIntervalSinceReferenceDate)")
と書けそうだが、ダメだから宣言してーのかな??NSDateはDateじゃないのねえ
124名称未設定:2014/06/03(火) 17:42:44.86 ID:NTf/WpNx0
>>120
れりごー♪
125名称未設定:2014/06/03(火) 17:47:04.48 ID:2ueiRg5v0
>>119
なあに英語とプログラムができる人なら単に公開されてる文章を斜め読みして半日で書けるよ。俺は無理だけど。
英語得意な人はSwift本で一儲けできそうですな。
人口の多いRubyやC#あたりからも参入してくるぞー。
126名称未設定:2014/06/03(火) 17:50:57.34 ID:hO8Ulhcf0
なんか上にあった調べも読みもせずに脳内妄想垂れ流しのブログのに対してのってもありのw
127名称未設定:2014/06/03(火) 18:11:07.41 ID:j8NitFld0
>>122
ActionScript触ってたFlasherあたりが入ってきやすいんじゃないかな
128名称未設定:2014/06/03(火) 18:31:34.30 ID:pdA7nV3Q0
>>127 それの関連は多そう。
javascriptしか知らないWebプログラマ達ね。 彼らはあまり深入りはしないだろうけど単純なデザイン重視なのには強い。

Perl, PHP プログラマも参入して来るな。

なんだかSwiftを見てるとHTML5を意識してるんじゃ無いのかなと言う気がする。

Swift中間コードが直接Javascriptで実行出来るんじゃ無いのかな。ブラウザが直接認識すればJITとして高速に動けるはずだし。
129名称未設定:2014/06/03(火) 18:38:19.33 ID:2ueiRg5v0
むしろネイティブとウェブをSwiftに統一させたいのかもね
130名称未設定:2014/06/03(火) 19:17:33.55 ID:+IJzOaSj0
>>128
> なんだかSwiftを見てるとHTML5を意識してるんじゃ無いのかなと言う気がする。

どう見ても仕様がTypeScriptのパクリじゃんw
131名称未設定:2014/06/03(火) 19:25:33.82 ID:R8T413E50
いや何のパクリとかじゃなく今イケてる言語作るなら誰が作っても大体こうなるってだけだろ
132名称未設定:2014/06/03(火) 19:30:39.11 ID:hO8Ulhcf0
あっち系の人だと思うからかまわない方がいいと思うよ。なにも得ることはないだろう
暇つぶしにはなるだろうけどw
133名称未設定:2014/06/03(火) 19:34:27.04 ID:NTf/WpNx0
TypeScriptのパクリとか言ってるやつは
ActionScriptとか没になったECMAScript4とかを知らないんだろうな
134名称未設定:2014/06/03(火) 19:38:03.95 ID:6Ccrq/7s0
>>131
俺が作っても大体こうなるわ
135名称未設定:2014/06/03(火) 19:52:58.66 ID:R8T413E50
サーバサイドこれで書きたい
136名称未設定:2014/06/03(火) 20:04:54.13 ID:58MIUN/Q0
ActionScriptの恨みをついにはらす時が来たか!!
137名称未設定:2014/06/03(火) 20:25:28.38 ID:A2z4GzPj0
いやーObjective-Cより100倍書きやすいけどそれでも満足か?と問われればベースをTypeScriptにしたのは不満だけどねwww
俺はやっぱベースは静的言語がよかったな、言語の筋や理解しやすさ・扱いやすさ等々C#をそのままパクればよかったのに
Xamarinの人気もC#でコーディングできるからであって、ライブラリを共有できるとかぶっちゃけかんけーねぇよ
138名称未設定:2014/06/03(火) 20:27:56.25 ID:A2z4GzPj0
インターフェースやクラス定義でアクセス修飾子ないのイライラするわ
JSとかコーディングしててもスケールアップしてくるとイミフになるからな
139名称未設定:2014/06/03(火) 20:51:42.49 ID:aGJKkOoI0
文字列をdoubleとかに変換するにはどうしたらいいんだろう?
let str = "123"
var num = str.toInt()
これは通るのに、
let str = "123.45"
var num = str.toDouble()
var num = Double(str)
var num = str.doubleValue()
var num = str.toFloat()
いろいろやったけど通らない。
140名称未設定:2014/06/03(火) 20:55:23.79 ID:7lviANPn0
やっぱり慣れ親しんだ.hは欲しいなぁ
141名称未設定:2014/06/03(火) 20:56:12.38 ID:86oAbQE50
swiftってuiのマークアップはxmlだったりするの?
142名称未設定:2014/06/03(火) 21:01:28.78 ID:hO8Ulhcf0
@IBOutlet, @IBActionってあるらしいぞ。てか、そんなアレみたくなるわけないじゃん
143名称未設定:2014/06/03(火) 21:01:49.04 ID:7EB6t1+T0
今Objective-Cの解説本を書いてる人は涙目?
144名称未設定:2014/06/03(火) 21:08:47.09 ID:hO8Ulhcf0
既存クラスへのメソッドの追加、プリプロセッサ無しだったら嫌だなあと思ったが、共にあるので安心した
145名称未設定:2014/06/03(火) 21:13:10.24 ID:k4IYCbux0
>>139 これで一応いけた

let str = "123.45"
var num: Double = Double(str.bridgeToObjectiveC().doubleValue)

正しいかは知らない
Extensionを使ってtoDouble()とか実装した方がいいのかも
146名称未設定:2014/06/03(火) 21:14:30.52 ID:7lviANPn0
xibの直書き、まるでandroidやwindowsのような悪夢だ
147名称未設定:2014/06/03(火) 21:15:53.84 ID:oQKxHh990
extension String { func toInt() -> Int? }
があるのに toFloat や toDouble が無いのは変だね
148名称未設定:2014/06/03(火) 21:45:39.26 ID:RJzwudSo0
今読み始めたけど、面白いね。
149名称未設定:2014/06/03(火) 22:05:18.62 ID:FkfMqvhZ0
どれをやればいいの?
って聞いている人が居るみたいだけど、全部やればいいよ
CもObjective-CもSwiftも全部ね
知っておいて損はないよ
150名称未設定:2014/06/03(火) 22:08:26.82 ID:nEwLVDiH0
とりあえず、jsやっとけば間違い無いだろ
151名称未設定:2014/06/03(火) 22:12:53.35 ID:k4IYCbux0
?の意味は大体分かったけど、!の意味が今いち分からん
!って別にいらなくね?
152名称未設定:2014/06/03(火) 22:15:14.26 ID:pdA7nV3Q0
153名称未設定:2014/06/03(火) 22:36:58.06 ID:k4IYCbux0
Swiftの英語の意味的には形容詞か副詞の方の意味だと思うけど
154名称未設定:2014/06/03(火) 22:41:35.01 ID:UVHXiAai0
いや、ガリバーの作者の方に違いない
155名称未設定:2014/06/03(火) 22:41:58.29 ID:pdA7nV3Q0
>>153 いや、WWDCの画面にもアマツバメのシンボルが描かれてたから間違いないよ。
http://i.imgur.com/zXuh9hi.jpg
156名称未設定:2014/06/03(火) 22:45:30.22 ID:DjAW4MIG0
SwiftでiTunes Connectにアプリ申請できるのはいつ頃?
157名称未設定:2014/06/03(火) 22:45:58.76 ID:k4IYCbux0
なるほど
158名称未設定:2014/06/03(火) 22:59:31.44 ID:fTG86OG70
>>155
それ、三日月、二枚舌でぺろぺろ
っていう画像じゃなかったの?
159名称未設定:2014/06/03(火) 23:02:57.10 ID:UGFsXXcC0
触ってみた感じ良い言語だと思う
Objective-C大好きな俺からすれば少し寂しいけど
プライベートAPIとかは触れないっぽいし共存出来るならいいや
160名称未設定:2014/06/03(火) 23:10:44.42 ID:pdA7nV3Q0
>>156 iOS8が正式リリースされた後だろうから、8〜9月以降だろうな。

http://i.imgur.com/zXuh9hi.jpg
161名称未設定:2014/06/03(火) 23:11:39.74 ID:pdA7nV3Q0
アップ間違えた。 こっち
http://i.imgur.com/ZtVto4d.jpg
162名称未設定:2014/06/03(火) 23:16:13.61 ID:aGJKkOoI0
>>145
ありがとう。
どうも、それでしか出来なさそうだね。
なんで実装してないんだろう?意図的に実装してないのか?それとも開発が間に合ってないのか?
例外処理もなさそうだし。
163名称未設定:2014/06/04(水) 00:34:43.08 ID:quTx8dy20
ドキュメント読んでるけど、この言語なかなか面白いね
普段モダン言語に触れてないから新鮮
164名称未設定:2014/06/04(水) 00:42:20.72 ID:4ufdrZKa0
今playgroundで遊んでみてるけど
これからはXcode自体もちゃんと学習しようかなぁ 
とちょっと思いますね。
165名称未設定:2014/06/04(水) 01:00:17.90 ID:CfdAL5vD0
SwiftってMavericksでも使えるのね
Playgroundモードが楽しい
166名称未設定:2014/06/04(水) 01:18:45.15 ID:Puq7Em3j0
SwiftからObjective-CのAPIが呼べるし、Objective-CからSwiftのAPIが呼べる
こんな嬉しいことはない
167名称未設定:2014/06/04(水) 01:22:39.43 ID:pmXBqkj60
とりあえずiOS8が出てから触り始めるかあ、それまではObjective-Cよろしくな
168名称未設定:2014/06/04(水) 01:24:23.42 ID:v2nx5joP0
Objective-C「私の役目は、それまで・・・なんですね。」
169名称未設定:2014/06/04(水) 01:56:23.17 ID:ynU4Bpnb0
>>166
>Objective-CからSwiftのAPI
ほーほーそっちもできるか。さすがだなw
170名称未設定:2014/06/04(水) 02:15:49.01 ID:tawCB+VM0
もうswiftで動画音楽の再生とかデータの保存ってできる?
171名称未設定:2014/06/04(水) 02:17:35.82 ID:ouEyBN370
>>170
Xcode 6入れればSwiftでCocoaアプリが作れるよ
172名称未設定:2014/06/04(水) 03:08:38.53 ID:cYhz7q8A0
>>119

情報ありがとう
ObjCからプログラミングしだした自分にとっては慣れない書き方多くて困惑中だな
173名称未設定:2014/06/04(水) 03:19:53.32 ID:6lqYUfnP0
言語が変わるだけでフレームワークは同じなんだから、慣れりゃいつものCocoaだよ。
ObjCもそんなすぐに死ぬとは思えないから、今はSwiftの解析は偉い人たちに任せておくのがいいな。
174名称未設定:2014/06/04(水) 04:08:02.52 ID:LPTCiVKi0
LLをやってきた人には取っつきやすい言語だけど、ObjCだけの世界でやってきた人は
新鮮だったり困惑するのか。>>163とか>>172みたいに。
そういう人もいるのかぁって思った。
175名称未設定:2014/06/04(水) 06:38:09.25 ID:dxSaq+Vp0
セミコロンからの卒業
176名称未設定:2014/06/04(水) 07:41:02.56 ID:quTx8dy20
ネイティブのiOSやAndroidアプリばかり書いてたきた人にはフリーダムで取っつきにくいかもね
セミコロンが無いだけでも違和感・・・
177名称未設定:2014/06/04(水) 07:41:41.07 ID:FEEW2zSA0
一番怖いのはユーザー増えないのでswift終了しますってパターンだな
アップルだけにありそう
178名称未設定:2014/06/04(水) 07:44:48.33 ID:4Z+5Cq+L0
>>54
リファレンス作れもしない
人生コピペで作られてるお前よりマシだよボケ
179名称未設定:2014/06/04(水) 07:45:59.98 ID:4Z+5Cq+L0
>>55
もともと制限が厳しい上にリソースも厳しいiosのためだったから仕方ない。
180名称未設定:2014/06/04(水) 08:11:27.73 ID:1pmXXAKf0
アップルがSwiftって言い出したんなら、それに逆らわない方が吉。
変にObjective-Cに固執してると、ドンドン肩身が狭くなっていくと思われ。
181名称未設定:2014/06/04(水) 08:46:09.77 ID:/1Tul4Ft0
OpenDocって昔あったな。
182名称未設定:2014/06/04(水) 09:09:15.09 ID:eSGwl77v0
プライベートでiPhoneアプリ開発してて仕事ではJavaかC#ばかりやってる俺にはまさに理想とする言語だわ。すんごい取っ付き易い
183名称未設定:2014/06/04(水) 09:24:42.18 ID:LPTCiVKi0
LLなのにネイティブコンパイルができるって凄いよな。
そういう言語って他に無いんじゃない?
どこかのサードパーティがSwiftのAndroid版とか作りそう。
184名称未設定:2014/06/04(水) 09:31:06.89 ID:veeRuBQf0
>>181
Cyberdog以外にコレといったソフトが思い浮かばない。
開発中のものはスゴいと思わせるものがあったのだが、リリースされた時には
ガッカリなものになっていた。

QuickDrawGXと共に時代の徒花で終わった
185名称未設定:2014/06/04(水) 09:37:12.58 ID:yVLdPYTe0
SwiftでHTML/CSSの邪悪な仕様から解放される日も近いか?
186名称未設定:2014/06/04(水) 09:47:35.37 ID:UtZJXpas0
>>185 それは話が別だろ。 別次元の話。 むしろJavascriptから解放される可能性が高い。

WebkitにLLVMコンパイラを実装するそうだからSwift中間言語を直接Webきt上で動かせる日は近い。 
HTML標準になるには遠い話かもしれないがその時はjavascriptコンバータを通してやればよい。
187名称未設定:2014/06/04(水) 09:57:50.15 ID:UtZJXpas0
誰か Hello World を見せてくれと言う書き込みが有ったが、回答としてこんなのが有った。 解りやすいかも

1. 一番簡単な例
println("Hello, world")

2. 変数も使った例
var announcement = "Hello, world"
println("announcement")

或は定数をつかって
let announcement = "Hello, world"
println("announcement")

まるでBASIC見たい
188名称未設定:2014/06/04(水) 10:13:05.27 ID:U34X4BEo0
× println("announcement")

正しくは
println(announcement)
または
println("¥(announcement)")
189名称未設定:2014/06/04(水) 10:18:17.73 ID:yHz/dF5u0
Swiftで魅力的な7つの機能
ttp://blog.livedoor.jp/rapple_lab/archives/7650765.html

この記事のBMI計算のところ、インスタンス生成しまくってるけどこんな書き方しか出来ないもんなの?キャスト無いの?
190名称未設定:2014/06/04(水) 10:44:11.40 ID:nbfIC9vm0
>>189
キャストはない
BMIの計算はもっと簡素にかけるはずw
191名称未設定:2014/06/04(水) 10:50:44.96 ID:yHz/dF5u0
>>190
身長体重Doubleで宣言して身長100じゃなくて計算結果に対して×10000でいいだろとは思ったw

weight / (height * height) *10000

こっちの方が分かり易い気がする。
192名称未設定:2014/06/04(水) 10:52:11.66 ID:aezWlisd0
もともとDouble型のheightやweightをDouble型にいちいちキャストしてるのが意味不明だな?
193名称未設定:2014/06/04(水) 10:54:24.55 ID:U34X4BEo0
heightはDoubleなんだからDouble(height)にする必要ないとおもうけど
Intにキャストしないと小数点がでちゃうよね。
小数点ださない
[NSString stringWithFormat:@"私のBMIは%.0dです", weight / ((height / 100) * (height / 100))];

の方が簡単で自由度が高いように思えるのは俺だけ?
変数を含む文字列のローカライズはどうすんだろ。したのようにローカライズ文章を変数前後で
細切れにしないとだめとか??

Objective-C:
NSString* myBmiString = [NSString stringWithFormat: NSLocalizedString(@"My BMI is %.0d.", @""), bmi];

Swift:
let string1 = NSLocalizedString("My BMI is ", comment: "")
let string2 = NSLocalizedString(".", comment: "")
let myBmiString = string1 + String(Int(bmi)) + string2
194名称未設定:2014/06/04(水) 10:57:15.10 ID:yHz/dF5u0
あ、本当だ。
キャストしてるからIntで宣言してるのかと思い込んでた。
195名称未設定:2014/06/04(水) 11:11:11.04 ID:KMMPjnSu0
よくよく見たらDoubleじゃなくてDobleとか書いてるしこのコード実行してねぇなコイツ…
196名称未設定:2014/06/04(水) 11:31:12.51 ID:MxE084r00
で、初心者の俺でも使えるのかね?諸君。
197名称未設定:2014/06/04(水) 11:34:27.33 ID:jDyx10Al0
メソッドの戻り値見にくくね?
funcの場所じゃだめだったのか
198名称未設定:2014/06/04(水) 11:36:39.48 ID:U34X4BEo0
ドキュメントの Implicitly Unwrapped Optionals
型宣言のところにびっくりマーク付きで String! と書いとけば、
値がないときにエラーを出しますよ、という風に書かれてるけど

var assumedString: String! = "An implicitly unwrapped optional string."
assumedString = nil
println(assumedString)

がエラー無く実行できてしまうな。なんでだ。
199名称未設定:2014/06/04(水) 11:36:51.41 ID:FEEW2zSA0
>>196
どんな言語でもそうだが、プログラミングが楽になっても簡単になるわけではない
200名称未設定:2014/06/04(水) 11:37:10.83 ID:RhOKr07n0
>>196
プログラムのプの字もわからないなら、おそらく無理。
最低限、PHP程度は使えないと無理じゃね?っていうか、
フロチャぐらい書けないと土台にも乗れない。
201名称未設定:2014/06/04(水) 11:39:23.65 ID:Fr8ZVTfR0
『Surface Pro 3』、91,800円から…  こりゃノートPCを駆逐できませんわ…
http://asaru233.blog.fc2.com/blog-entry-72.html
202名称未設定:2014/06/04(水) 11:44:58.73 ID:jDyx10Al0
>>198
それprintln内でも明示的に「!」つける必要があるんじゃ?
203名称未設定:2014/06/04(水) 11:46:35.92 ID:KnG+vhV/0
>>198
型宣言でのエラーって関数の引数じゃ無かった?
func printFoo(assumedString:String!)
println(assumedString)
}

もしくは変数使用時に指定
println(assumedString!)

その例だと、変数宣言の時にnilを初期値として与えられないnil許可String型って宣言になる。
nil入れたくないなら?も!も付けずに宣言するといいよ。
出先で、コード走らせてはないから書き方ちよっと間違ってるかもしれんが
204名称未設定:2014/06/04(水) 11:48:26.45 ID:w3XhVGjE0
ポインターを知らなくてもコードの読み書きができる
型セーフでタイポにも強い
オブジェクトとプリミティブ型の区別しら意識しなくていい
サンドボックスでコンパイル無しでトライアンドエラーで確認できる

こりゃ、初心者プログラマやVBあがり、PHPerが大量参入してくるぞ
Appleはそれを受け入れる覚悟は出来ているのか
リンゴがアマツベメに啄まれたなんてシャレにならんぞ
205名称未設定:2014/06/04(水) 11:49:39.55 ID:fMqwqjFp0
構ってちゃん。
206名称未設定:2014/06/04(水) 11:57:30.78 ID:U34X4BEo0
>>202
>>203
宣言時に「!」付けておけば、使うときにいちいち「!」を付けておかなくていい(implicit)タイプの
Optionals となる、とドキュメントには説明されてるんだが。まあいいや。

func printFoo(assumedString:String!){
println(assumedString)
}

printFoo(nil)

もエラーはでない。まあいいか。
207名称未設定:2014/06/04(水) 12:23:37.89 ID:Puq7Em3j0
/* コメント */ がネストできるのは地味にありがたいな
208名称未設定:2014/06/04(水) 12:24:00.04 ID:PYxX33Gt0
そこでエラーを出したいのなら、やはり
println(!assumedString)
とするしかないよ
209名称未設定:2014/06/04(水) 12:34:38.68 ID:Puq7Em3j0
>>206
これはエラーになった

func printFoo(assumedString: String?){
println(assumedString!)
}

printFoo(nil);
210名称未設定:2014/06/04(水) 12:40:05.84 ID:xdz8YSAb0
println が nil も受けとるからじゃないの

func myprintln(str: String) { println(str) }

var s: String! = "abc"
s = nil

myprintln(s)
>> fatal error: Can't unwrap Optional.None
211名称未設定:2014/06/04(水) 12:41:35.11 ID:xdz8YSAb0
func println<T>(object: T)

nil が NilType だから受けとれる??
212名称未設定:2014/06/04(水) 12:43:28.78 ID:Puq7Em3j0
俺的メモ

var fruits = ["Apple", "Orange"];
fruits[1] = "Banana"

これが出来るのは当然として、

let fruits = ["Apple", "Orange"];
fruits[1] = "Banana" // エラーにならない

これも出来ちゃうんだな
constantな配列でも値の変更はできるらしい
追加や削除はダメ

ディクショナリの方はちゃんとエラーになる
let fruits = [0: "Apple", 1: "Orange"];
fruits[1] = "Banana" // エラーになる

これならOK
var fruits = [0: "Apple", 1: "Orange"];
fruits[1] = "Banana" // エラーにならない
213名称未設定:2014/06/04(水) 12:52:28.69 ID:MxE084r00
>>199
>>200
そうか、それはすまなかった・・・。
214名称未設定:2014/06/04(水) 12:55:46.47 ID:Puq7Em3j0
あれ? でも>>209のコードを実際のプロジェクトで実行しても特に落ちたりとかしないんだな
間違いに気づかない可能性なくね?
215名称未設定:2014/06/04(水) 12:59:47.39 ID:6RWFR9Ln0
>>212
Arrayは言語仕様的なものだから、入れ物部分だけ不変になって中身は問わない→中身は編集出来る。そのletで定義した変数に他のArray入れようとするとダメなはず。

Dictionaryはクラスだから不変にするとオブジェクトの状態を変える事が出来ない→中身編集出来ない。
216名称未設定:2014/06/04(水) 13:53:36.99 ID:Puq7Em3j0
Swift本のWhile文の説明の所でいきなり蛇と梯子のゲームの話が出てくるがウザいことこの上ない
しかし、メーカからこんだけ丁寧に書かれた本が出て出てるなら解説本なんていらないな
但し英語圏に限るけど
まだ全部読んでないけどこの本の和訳が出たら日本でもこれだけでいいような気がする
217名称未設定:2014/06/04(水) 13:59:12.51 ID:aNoCZzgF0
偉い方お邪魔します
この言語、ゲーム以外にもいい感じなんでしょうか?
CADとか3DCGとかDTM、DTV、画像編集、化学計算
ただ気になる素人です。。
218名称未設定:2014/06/04(水) 14:01:26.91 ID:jDyx10Al0
>>216
まぁこれから解説本書くやつもこれ読んで学んでるだろうしな
219名称未設定:2014/06/04(水) 14:03:21.71 ID:UtZJXpas0
>>217 当たり前。 汎用言語。
220名称未設定:2014/06/04(水) 14:04:12.56 ID:aNoCZzgF0
>>219
あざーす!
221名称未設定:2014/06/04(水) 14:04:55.86 ID:MrtmSJmB0
>>217
アプリの上位レイヤーではいい感じでしょう。
そこに上げたジャンルはどれも低レベルのパフォーマンス重視の処理がメインなので、
そういう処理は相変わらずCがメインです。
222名称未設定:2014/06/04(水) 14:09:21.73 ID:aNoCZzgF0
>>221
ありがとうございます!!
「低レベル」で一瞬ビビりましたが、意味を理解しました!
調子に乗って解った気にならないように今後気をつけます!
223名称未設定:2014/06/04(水) 14:12:03.94 ID:FEEW2zSA0
>>217
そういうジャンルは独自のCコード使ってる事あるけど、現状Cを混在させるのが面倒らしいし、向いてるかどうかで言えば向いてないと思う
224名称未設定:2014/06/04(水) 14:12:09.75 ID:jDyx10Al0
overrideとか暗黙でも良かった気がするが
この方が可読性良いのか?
225名称未設定:2014/06/04(水) 14:18:32.22 ID:UtZJXpas0
>>223 混在できるよ。 C専用の型も扱える。
そもそも今はCも Clang/LLVMでコンパイルするからSwift/LLVMのバイトコードも同じ物だだろうし。
アセンブラに落とした後でも手作業ですら最適化も可能だし。 LLDBでデバッグできるし。
226名称未設定:2014/06/04(水) 14:18:59.31 ID:aNoCZzgF0
>>223
ういっす!
実は一番期待していたVectorworksおちうCADのグダグダ感解消ですが
あきらめました。
増築改築の廃墟的なソフトなので無理っぽいですね!

ありがとうございます!
227名称未設定:2014/06/04(水) 14:22:04.95 ID:v0ULla7U0
他人が作る時の話なのかよ
228名称未設定:2014/06/04(水) 14:27:19.60 ID:Puq7Em3j0
>>224
自作のメソッド名が継承元と被ってしまって意図せずオーバーライドしてしまうのを避けるためでしょ
229名称未設定:2014/06/04(水) 14:32:13.90 ID:aezWlisd0
可読性だけならIDEがoverrideしてる旨を自動検知して表示してくれるだけでもいいけど、
意図しないoverrideをコンパイラがきっちりエラーだしてくれるほうがいいからね
230名称未設定:2014/06/04(水) 14:32:38.13 ID:jDyx10Al0
>>228
継承元に同名のメソッドがあると警告出てるから結局意図せずオーバーライドすることは出来なくね?
231名称未設定:2014/06/04(水) 14:33:12.13 ID:jDyx10Al0
>>229
あぁ、コンパイラ側では出ないのか
納得
232名称未設定:2014/06/04(水) 14:34:41.29 ID:MkIpqMLw0
そういやこれstaticメンバとかstaticメソッドって作れないの?
233名称未設定:2014/06/04(水) 14:40:36.19 ID:xdz8YSAb0
作れるよ
Language Guide読めよw
234名称未設定:2014/06/04(水) 14:55:11.55 ID:pwaFMd720
>>233
Classes and Structuresの項だけ読んで早とちりしてたw
PropertiesにもMethodsにもちゃんと書いてたね、サンクス!
235名称未設定:2014/06/04(水) 15:04:29.14 ID:quTx8dy20
これ、アップルより先に日本語訳出したら売れるだろうなー
半年後くらいはSwift初心者本が大量に出るな

しかしiPadのiBookで読むとすごく捗る
236名称未設定:2014/06/04(水) 15:11:25.08 ID:Puq7Em3j0
switch文がかなり便利になってるな
237名称未設定:2014/06/04(水) 15:22:11.96 ID:2NC6Oo/v0
Language Guideの各項の日本語解説でブログ書いたら需要あるかな?
全文翻訳は無理だけど、コードを元に解説くらいならイケる
238名称未設定:2014/06/04(水) 15:23:06.79 ID:Puq7Em3j0
しかし、オプション変数のif文が今一ピンとこないな

var i: Int?

if i {
println("i = \(i).")
}

でもコンパイル通るのに、なんで

if let j = i {
println("j = \(j).")
}

みたいにわざわざ別の変数に代入する書き方が必要なんだろ?
239名称未設定:2014/06/04(水) 15:28:55.06 ID:2NC6Oo/v0
>>238
iを変更したくない場合じゃね?
特殊なループ開始インデックス持ってる場合とか。
240名称未設定:2014/06/04(水) 15:30:49.22 ID:jDyx10Al0
bool値以外がコンパイルエラー吐くのも慣れないと厳しい
241名称未設定:2014/06/04(水) 15:35:12.81 ID:UtZJXpas0
>>237 早い者勝ち。 一部でも早く出せば以後注目を持ち続けられる。
やって。
何処かから執筆依頼が来るかもよ。

来年早々には公式日本語版も出るだろうから早いに越したことは無い。
242名称未設定:2014/06/04(水) 15:37:36.81 ID:aezWlisd0
>>238
ブロック内の処理はブロック外の処理となるべく関連が浅い方が見通しがいいし、
値が変わる変数よりも値が変わらない定数をなるべく使うようにしたほうが間違いが少ない
243名称未設定:2014/06/04(水) 15:41:35.66 ID:ynU4Bpnb0
まあ、あのサンプルだったらどっちでも同じなわけで
まあ、サンプルだから単にこうもできますよ的に意味なくても示すこともあるわけで
244名称未設定:2014/06/04(水) 15:43:00.88 ID:Puq7Em3j0
>>242
たんにスコープを局所化したいって話なのか...
245名称未設定:2014/06/04(水) 15:43:37.05 ID:xdz8YSAb0
>>238
if let j = i {
}



if i {
var j: Int = i!
}

だよ
246名称未設定:2014/06/04(水) 15:51:51.41 ID:Puq7Em3j0
そういえば、if分は条件にBooleanだけ指定できるって書いてあったけど、オプション変数だと数値でもエラーにならないんだよな
var i: Int? = 100
if i {
println("i = \(i).")
}
247名称未設定:2014/06/04(水) 15:52:26.86 ID:aezWlisd0
>>245
jが定数じゃなくて変数になるの?
248名称未設定:2014/06/04(水) 15:54:08.02 ID:jDyx10Al0
>>246
まじだ
よくわからんな
249名称未設定:2014/06/04(水) 15:55:21.43 ID:Puq7Em3j0
>>245
letは不変で、varは可変だからちょっと違うと思う
250名称未設定:2014/06/04(水) 15:57:11.12 ID:xdz8YSAb0
func increment(val: Int) -> Int { return val + 1 }

var i: Int? = 5

//increment(i) // Int 型引数に Int? 型は渡せない

//increment(i!) // i! にすれば渡せるが、i が nil の場合は実行時エラーになる危険なコード

if i {
increment(i!) // OK
// 非オプショナルな Int が欲しいとき毎回ビックリマークつけないといけない
}

if i {
let j: Int = i! // nil 判定すれば安全に Int? → Int キャストできる
increment(j) // OK
}

if let j:Int = i { // どうせなら nil 判定といっしょにしちゃえ
increment(j) //OK
}
251名称未設定:2014/06/04(水) 16:00:24.09 ID:Puq7Em3j0
>>250 なるほど! Thx
252名称未設定:2014/06/04(水) 16:03:45.14 ID:6m0aBT8M0
>>250
分かり易い!
253名称未設定:2014/06/04(水) 16:08:24.24 ID:aezWlisd0
ブロック内では値検証済みの値で処理するってのを明示できることになるのか
なるほどなあ
254名称未設定:2014/06/04(水) 17:43:57.35 ID:SPI8F/Az0
Cの関数呼べるんだけど、よほどうまく設計されてないと
外部のCのライブラリを直接扱うのは難しいな
C構造体まわりの挙動が意味不明で手に負えない
255名称未設定:2014/06/04(水) 18:19:02.38 ID:Puq7Em3j0
Cの関数呼べるのか
じゃぁOpenGLのAPIも直接呼べそうだね
OpenCVはC++ベースが主流だからちと厳しいか
256名称未設定:2014/06/04(水) 19:05:46.36 ID:hhxdbKM00
俺は1980年ごろ、小学生だったが、MSXとかPC8801でBASICという言語でプログラムを書いてた。
こんな言語。

10 for a=1 to 10
20 print"こんにちは";a;"回目"
30 next a
40 goto 10

もちろんオブジェクト指向なんてのは無かったし俺も知らない。
そんな俺が30年ぶりにプログラムを学ぼうと思ったらSwiftが来た。
30年間、プログラムにはノータッチ。
職業はコンピュータとは無関係のパティシエで、
そこそこ成功して一生分の生活費はたまったので、
40歳になった今、趣味でiPhoneプログラムをやろうと思うんだが、
こんなスキルの俺に理解できるだろうか。
Swiftって簡単?
257名称未設定:2014/06/04(水) 19:07:14.68 ID:quTx8dy20
パティシエってそんなに儲かるのか・・・
258名称未設定:2014/06/04(水) 19:14:43.05 ID:Puq7Em3j0
デフォルト引数を途中の引数だけに指定できるのも地味にありがたいな
259名称未設定:2014/06/04(水) 19:17:24.38 ID:SPI8F/Az0
とりあえずわかったこと

C構造体は定義からstructを取り除いたものがswiftでの型となるっぽい。
直接自動変数として確保できるようだけど、メンバへのアクセス方法が不明。初期化方法も不明。
構造体のポインタであれば
ptr.memory.member
の形式でアクセスできるので、とりあえずmallocで確保してキャストして...という方法ならOK。

mallocとかで確保したCOpaquePointerを他の型のポインタにキャストするには
var ptr = malloc(1000)
var castPtr = UnsafePointer<TYPE>(ptr)
とするらしい
260名称未設定:2014/06/04(水) 19:17:25.89 ID:PYxX33Gt0
Swift標準ライブラリの一覧はないのか
261名称未設定:2014/06/04(水) 19:17:31.93 ID:4ufdrZKa0
このスイーツが…(*ノノ)キャッ
262名称未設定:2014/06/04(水) 19:22:21.10 ID:nbfIC9vm0
>>256
情報が集積されるまで当分時間かかるから
Mac持ってるならRubyでもいじってれば
263名称未設定:2014/06/04(水) 19:29:02.94 ID:LPTCiVKi0
>>250
初心者なんだけど、Int? → Intにキャストした時、
nilはゼロとかになるの?
264名称未設定:2014/06/04(水) 19:31:07.46 ID:PYxX33Gt0
Swift標準ライブラリのドキュメント、あったし
file:///Applications/Xcode6-Beta.app/Contents/Developer/Documentation/DocSets/com.apple.ADC_Reference_Library.DeveloperTools.6_0.docset/Contents/Resources/Documents/documentation/General/Reference/SwiftStandardLibraryReference/index.html
265名称未設定:2014/06/04(水) 19:32:13.96 ID:FEEW2zSA0
>>256
英語読めるなら2ヶ月学べば書けると思うよ
読めないならObjCでいいんじゃないかな?

iphoneアプリに拘らなければrubyやpythonも取っつきやすくて面白いよ
266名称未設定:2014/06/04(水) 19:38:21.77 ID:Puq7Em3j0
>>263
未定義値(nil)をInt型に代入はできない。実行時エラーになる
267名称未設定:2014/06/04(水) 19:39:10.92 ID:jDyx10Al0
やってみて簡単かは人によるが、ここにいる人間はほとんどの人間は簡単だっていうだろう
なぜならObjective-Cのとっつきにくさを知っており、かつそれを理解した上だから
ただオブジェクト指向分からないまま簡単だからっていう理由でプログラミングするのは厳しいと思うがまぁ個人でやる分には構わないんじゃない
一緒に開発したいとは思わないけど
268名称未設定:2014/06/04(水) 19:42:41.56 ID:lHQR7J6i0
Mac OSXでperlを10年以上使い、2、3
年前にpythonに乗り換えました。主に
大量のファイルから文字列を抜き出して
数を数えたり、htmlファイルを生成した
りしています。このような用途で、Swift
に乗り換えるのは、効率的でしょうか?
269名称未設定:2014/06/04(水) 19:44:54.70 ID:jDyx10Al0
>>268
効率以前に乗り換える必要あるか?
たしかに同じことは出来るだろうけど俺は簡単なスクリプトならこれからもPythonで書くよ
270名称未設定:2014/06/04(水) 19:46:34.58 ID:FEEW2zSA0
>>268
乗り換える必要性が分からん
271名称未設定:2014/06/04(水) 19:50:21.02 ID:Puq7Em3j0
Swiftはスクリプト言語じゃないし
コンパイルしないと走らない
272名称未設定:2014/06/04(水) 19:51:39.63 ID:SPI8F/Az0
まあAppleのことだから
いつObjCのサポートがドロップしてもいいような覚悟は必要だろうね

新規に開発するものでどちらを選ぶかはともかく
既存のプロジェクトを今すぐ変える必要性はないんじゃない
見たところlibswift_で始まるライブラリに動的リンクされてて、これらが最新OS以外に提供されるかは不透明だし。
273名称未設定:2014/06/04(水) 20:02:04.57 ID:quTx8dy20
今からObjCベースの書籍を出そうとしてたところは今頃変な汗かいてそう
274名称未設定:2014/06/04(水) 20:04:04.18 ID:PYxX33Gt0
Obj-Cの本なんて萩原本だけで充分なのに
275名称未設定:2014/06/04(水) 20:06:50.49 ID:Puq7Em3j0
2つのタプルが同じかどうかの比較って一発でできないのかな
276名称未設定:2014/06/04(水) 20:08:51.14 ID:Puq7Em3j0
しかし、Swift弄ってるからかしらんがXCode6立ち上げっぱなしだとどんどんメモリを食いつぶしていくな
277名称未設定:2014/06/04(水) 20:10:40.42 ID:Fd3xI5/u0
AppleがSwiftの紹介でPythonと比較したからこういう質問が出るんだろね。
構文は似て無くもないけど、インタプリタと比較したのはどうかと思う。
278名称未設定:2014/06/04(水) 20:12:16.88 ID:Puq7Em3j0
今んところ、Swift本は萩原本より読みやすい
279名称未設定:2014/06/04(水) 20:18:31.18 ID:Q+U5fNdw0
>>183
そうなると
Swift一つで両方作れそうだな
280名称未設定:2014/06/04(水) 20:21:09.79 ID:xdz8YSAb0
正規表現リテラル欲しかった
281名称未設定:2014/06/04(水) 20:32:19.08 ID:Puq7Em3j0
関数内に関数を定義出来るのが地味に便利だな
282名称未設定:2014/06/04(水) 20:44:35.10 ID:3W1kpYhr0
>>12

わかりにきーwww
283名称未設定:2014/06/04(水) 20:51:46.02 ID:PVyKDWQk0
>>267
お前一言多い奴だよね。
多分お前の周りもお前に対してそう思ってるよきっと。
284名称未設定:2014/06/04(水) 20:54:53.90 ID:G21O1uJ+0
>>271
http://qiita.com/smurakami/items/a11643cf2cb93df27720
インタプリタもあるってよ
285名称未設定:2014/06/04(水) 20:58:20.78 ID:Puq7Em3j0
Emacsのswift-modeをgithubにあげてる人がいるな
286名称未設定:2014/06/04(水) 21:00:54.83 ID:Puq7Em3j0
>>284
Oh!
287名称未設定:2014/06/04(水) 21:08:17.38 ID:jDyx10Al0
あとは対話型シェルがあれば
288名称未設定:2014/06/04(水) 21:08:50.60 ID:lkHsWcxf0
>>281
Blocksででもできるじゃん?使ってるし
289名称未設定:2014/06/04(水) 21:11:36.58 ID:jDyx10Al0
というかPlayGroundがあるならターミナルで動かせるような対話シェルもあるのかな
290名称未設定:2014/06/04(水) 21:14:22.62 ID:quTx8dy20
>>284
NDA房じゃないけど、これXcode6の機能だからまずくね?
291名称未設定:2014/06/04(水) 21:26:47.62 ID:nC4ZJLN+0
クロージャの記述がわかりにくいな
なんで in なんだろ
292名称未設定:2014/06/04(水) 21:36:28.47 ID:Puq7Em3j0
>>288
あぁ、そだね
293名称未設定:2014/06/04(水) 21:41:52.32 ID:Puq7Em3j0
関数型を返す関数のシグネチャがぱっと見分かりにくいな
まぁ慣れなんだろうけど
294名称未設定:2014/06/04(水) 21:54:43.83 ID:aezWlisd0
>>289
https://developer.apple.com/swift/
このSwiftのページの下の方に Read-Eval-Print-Loop (REPL)とか書いてあるぞ
> The debugging console in Xcode includes an interactive version of the Swift language built right in.
> Use Swift syntax to evaluate and interact with your running app, or write new code to see how it works in a script-like environment.
> Available from within the Xcode console, or in Terminal.
295名称未設定:2014/06/04(水) 21:58:24.00 ID:gLPYpdOW0
VBとC#しか知らないオレが通りますよっと
296名称未設定:2014/06/04(水) 22:42:28.25 ID:5+rILBjw0
jsとかActionScriptしかやったことないけど
なんか馴染みのある感じだなこれ。
Obj-Cはカッコばっかで何書いてあるのか意味不明だったわ
297名称未設定:2014/06/04(水) 22:51:00.38 ID:jDyx10Al0
>>294
おー素晴らしいな
298名称未設定:2014/06/04(水) 23:15:45.05 ID:pX8zvdlO0
>>257
ほとんどのパティシエは貧乏。
俺の場合はたまたま成功した。
と言っても20年以上かかったけど。
299名称未設定:2014/06/04(水) 23:18:26.64 ID:jDyx10Al0
ワロタ
ID変えてまでってそんなに悔しかったのかよ
句読点も取っとけよw
300名称未設定:2014/06/04(水) 23:18:33.68 ID:gLPYpdOW0
知人に元パティシエいるよ
今タクシーの運転手やってるけど
301名称未設定:2014/06/04(水) 23:46:26.56 ID:+Lw0TqoI0
PythonとかRubyじゃだめだったのか。
また似たようなLL言語風味の文法を覚えるのは脳細胞の無駄
302名称未設定:2014/06/04(水) 23:49:00.47 ID:nBv3ncoE0
http://togetter.com/li/675599
お前らもうCPUの歓声聞いた?
303名称未設定:2014/06/04(水) 23:59:29.28 ID:TV0LBjUC0
なんだこのクソ難しい言語は
日本語で作りなさい
304名称未設定:2014/06/04(水) 23:59:32.53 ID:jDyx10Al0
Haskell風の意味がわからない
305名称未設定:2014/06/05(木) 00:09:46.48 ID:yQ2lfWtx0
CPUの歓声っつうか冷却ファンのうなり音なら聞こえるが
306名称未設定:2014/06/05(木) 00:15:36.03 ID:k19ITZ+Z0
Haskell風?
引数と戻値が整数の関数の型が Int -> Int だったりするとことか?
let 〜 in 〜 の構文がなんとなく似た風味を醸す?
セミコロンがいらなかったり
関数自体の宣言には型を書くけど、関数の中で使ってる変数とかは推論に頼って型宣言省略するとことか?!
307名称未設定:2014/06/05(木) 00:26:14.75 ID:IA5RN5T90
>>237
プログラミングの基本みたいなことは要らないから、リファレンス的にサクッと検索できると嬉しいな
308名称未設定:2014/06/05(木) 00:34:53.18 ID:g68GAQou0
普通に需要ある
309名称未設定:2014/06/05(木) 01:00:39.27 ID:qMTe6v/x0
翻訳の著作権ってどうなるんだっけ
310名称未設定:2014/06/05(木) 01:07:46.29 ID:bSlBKDBb0
清水は黙ってろ。
311名称未設定:2014/06/05(木) 01:08:11.20 ID:yQ2lfWtx0
Enumが高機能なんだけど使いどころが今一ピンとこない
312名称未設定:2014/06/05(木) 01:19:44.95 ID:8k78IFIX0
>>306
リファレンスか〜。一通りドキュメント解説書いた後に書こうかね。その頃にはXCode6正式リリースされてNDA気にしなくて良くなりそうだし。
313307:2014/06/05(木) 01:37:03.39 ID:IA5RN5T90
>>312
安価ミスられてるけど、期待してます(*^^*)
314名称未設定:2014/06/05(木) 01:41:31.86 ID:8k78IFIX0
>>313
すまぬ…orz
315307:2014/06/05(木) 01:47:04.90 ID:IA5RN5T90
ドンマイp(^_^)q
316名称未設定:2014/06/05(木) 02:57:09.48 ID:jHC8y/Ho0
StringはNSStringとして扱えるけど
NSStringのメソッド使いたかったらbridgeToObjectiveC()挟むかキャストするかしなきゃならんのか
317名称未設定:2014/06/05(木) 03:08:25.02 ID:JEIAwuA90
>>284
インタプリタ環境でCocoaやCのAPI呼べたら最強なんだけど、無理なお願いだよね
318名称未設定:2014/06/05(木) 03:40:02.73 ID:oS4TNPjp0
>>317
AppleScriptObjCで既にやってるけど。
319名称未設定:2014/06/05(木) 04:42:18.81 ID:1u+uwOdd0
>>289 LLDBがターミナルで動くらしい。
320名称未設定:2014/06/05(木) 04:54:47.52 ID:zotO6CY20
なぁ、なんでconstがletなんだ?
321名称未設定:2014/06/05(木) 05:44:36.12 ID:1axRdSG50
>>301
ほんとこれ
どこもかしこも独自の言語作りすぎ
既に普及してる言語を踏襲して欲しい
322名称未設定:2014/06/05(木) 06:31:17.60 ID:h6wexABD0
既存の言語使い回しても独自拡張とか言い始める未来しか見えない
323名称未設定:2014/06/05(木) 06:59:51.96 ID:LSsfJryj0
>>317
出来るじゃん
324名称未設定:2014/06/05(木) 08:12:16.94 ID:d0sftJHO0
例外もアクセス修飾子もないし名前空間も期待してたのと違う
どうしてこうなった
325名称未設定:2014/06/05(木) 08:29:50.02 ID:OT6vh16X0
例外はいらん

アクセス修飾子はデベロッパフォーラムでAppleの中の人がはっきりこう言ってる
We don't usually promise anything for the future, but in this case we are making an exception. Swift will have access control mechanisms.

ネームスペースはモジュールごと(コンパイルターゲットごと)に分けられる
Apple的にはモジュールが即ちネームスペースだと考えてるみたい
326名称未設定:2014/06/05(木) 08:40:00.48 ID:k19ITZ+Z0
>>325
Xcode関連は詳しくないんだけど、
そのモジュールにはユニーク名前を付けられるのかね?
いろんなとこからモジュールを持ち寄ったときに名前がぶつからないように
327名称未設定:2014/06/05(木) 08:51:39.04 ID:1u+uwOdd0
407 名前:名称未設定[sage] 投稿日:2014/06/05(木) 04:53:53.36 ID:1u+uwOdd0
Swiftでコマンドライン引数を取る
http://oropon.hatenablog.com/entry/2014/06/05/025326

408 名前:名称未設定[sage] 投稿日:2014/06/05(木) 05:23:18.93 ID:1u+uwOdd0
2014-06-04
Swiftを触ってみた
http://hotchemi.hateblo.jp/entry/2014/06/04/084737
Swiftの基本を学習したメモ

ざっと全体を眺められる。

410 名前:名称未設定[sage] 投稿日:2014/06/05(木) 08:15:32.65 ID:1u+uwOdd0
Apple's top secret Swift language grew from work to sustain Objective C, which it now aims to replace

http://appleinsider.com/articles/14/06/04/apples-top-secret-swift-language-grew-from-work-to-sustain-objective-c-which-it-now-aims-to-replace

Swift の考案者は、LLVM創設者の Chris Lattner だそうだ。

documentation guru と同様に compiler optimization ninja と言う言葉が使われてるのは面白い。 それと dogfooding group
(テストグループ)とか、いつも内部で使ってるんだろうな。

すごく面白いから一読を勧める。
特に
Swift's Interactive Playgrounds & REPL

"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," Lattner stated.

Apple notes that the REPL debugging console in Xcode "includes an interactive version of the Swift language built right in.
Use Swift syntax to evaluate and interact with your running app, or write new code to see how it works in a script-like environment."
328名称未設定:2014/06/05(木) 08:57:42.41 ID:d0sftJHO0
>>325
なるほど、でもモジュールによる名前空間分離って前からあったよな?
WWDCじゃSwiftの機能としてnamespaceが挙げられてたと思うんだが…
いずれにしてもアクセス修飾子の件を見るに、
まだ言語仕様のレベルで未完成だと思ってたほうがいいのか

例外についてはassertionとoptionalとかでなんとかしろってことらしいが
既存のライブラリで例外吐くやつ使うときはどうするんだろう
329名称未設定:2014/06/05(木) 09:37:24.88 ID:l56hqAFP0
>>301 >>321
はいはい、流れについてくのに疲れて愚痴る
老害はとっとと退場してください 邪魔邪魔
330名称未設定:2014/06/05(木) 09:41:21.22 ID:1u+uwOdd0
>>328 >既存のライブラリで例外吐くやつ使うときはどうするんだろう
https://developer.apple.com/library/prerelease/ios/documentation/Cocoa/Conceptual/Exceptions/Exceptions.html#//apple_ref/doc/uid/10000012i
Instead of exceptions, error objects (NSError) and the Cocoa error-delivery mechanism are the recommended way to communicate expected errors in Cocoa applications.
For further information, see Error Handling Programming Guide.
331名称未設定:2014/06/05(木) 10:10:55.33 ID:OT6vh16X0
>>328
Obj-CのコードからNSException投げられると落ちるだけ

関係ないけどこれまでNSErrorのポインタ渡してたのは、これからはタプルにして返すのが主流になったりするかな?
Obj-Cからの流れで今こうなってるのが
class func sendSynchronousRequest(_ request: NSURLRequest!, returningResponse response: AutoreleasingUnsafePointer<NSURLResponse?>, error error: NSErrorPointer) -> NSData!
こんな感じになっていったり
class func sendSynchronousRequest(_ request: NSURLRequest!) -> (NSData?, NSURLResponse, NSError?)
332名称未設定:2014/06/05(木) 10:12:48.09 ID:0ePhuvKy0
>>327
これ見ると、たかだか数ページの公式のSwift Tourを日本語訳するだけでも需要があるのな
SwiftのiBookを全訳すると間違いなく売れるな
333名称未設定:2014/06/05(木) 10:18:24.56 ID:OT6vh16X0
まだAPIがObj-Cに引っ張られていて、というか機械的に置き換えてるだけで、Swiftの良さを全然活かせてないから
これから来年のWWDCまで一年かけてAPIもSwift向けにがらっと変えられそう
334名称未設定:2014/06/05(木) 10:25:29.06 ID:LSsfJryj0
>>331
エラーをタプルで返すのは俺好みで嬉しいかも
335名称未設定:2014/06/05(木) 10:35:56.22 ID:d0sftJHO0
>>331
落ちるだけって、それでいいのかよw
まあ元々あんまり推奨されてなかったみたいだし
どうしても問題になるライブラリがあるならObjCでラップすれば済むってことかな
336名称未設定:2014/06/05(木) 11:24:40.08 ID:VUEADFHD0
swiftでiPhoneアプリ開発デビューしよう
早く正式版出して
337名称未設定:2014/06/05(木) 11:29:06.40 ID:0ePhuvKy0
もうObjective-CはPythonやRubyに対するPerlみたいなポジションになっていくんだろうな
338名称未設定:2014/06/05(木) 11:53:00.32 ID:1u+uwOdd0
Appleの新プログラミング言語、Swiftを使って半日くらいでFlappy Birdのクローンが書けた
http://jp.techcrunch.com/2014/06/05/20140604a-developer-cloned-flappy-bird-using-apples-new-programming-language-swift-in-a-matter-of-hours/
以前の開発言語、Objective-Cに比べて、Swiftに新たに備えられた高度な機能がデベロッパーの生産性を大きく向上させるだろうという予測が実証されたかたちだ。

Murrayは実際に使ってみて「新しくiOSアプリの開発に取り組むプログラマーに対してハードルを下げる「というAppleの目標は達成されたと考えている。
Murrayによれば、Swiftの大きなメリットの一つはPlaygroundsと呼ばれる機能だという。
ここではコードを編集しながら、それが実際にどう動作するかをリアルタイムで見ることができる。

「4時間よりはかかったが9時間まではかかっていない。ログによると空のフォルダーからデモが作動するようになるまで9時間近くかかっているが、その間に食事もしたし、子供を寝かしつけたりしていたのでね」と語った。
339名称未設定:2014/06/05(木) 11:56:35.90 ID:1u+uwOdd0
340名称未設定:2014/06/05(木) 11:57:21.14 ID:yQ2lfWtx0
Objective-Cプログラマが1行書く間にSwiftフログラマは10行ぐらい書いちゃうからね
しかもその10行で、Objective-Cの100倍ぐらいの処理が記述できるからね
こりゃ、石頭頑固保守派のObjective-CプログラマはほっといてSwiftに移行しない手はないね
341名称未設定:2014/06/05(木) 12:00:19.53 ID:lAPr+aPr0
Playgroundsは確かに便利なんだけと、コード補完があまり賢くないんだよな
342名称未設定:2014/06/05(木) 12:07:30.81 ID:0ePhuvKy0
>>340
Swiftとストーリーボードを使わない人は完全にオールドタイプになっていくわね
343名称未設定:2014/06/05(木) 12:12:19.43 ID:OJ6auZXk0
俺もアプリ開発して一攫千金


無理だな
344名称未設定:2014/06/05(木) 12:22:26.38 ID:73kcUow/0
Swiftを21世紀の現代を縦横無尽に飛び回るアマツバメに例えると、Objective-Cは原始時代を鈍重な足取りでのそのそ歩く恐竜だね
345名称未設定:2014/06/05(木) 12:39:32.17 ID:IV9dQrjk0
初心者も熟練も一斉にゼロからのプログラミング学習か。
って思ったらCやObjective-C知ってるやつとでないやつとでは大違いなんだな
346名称未設定:2014/06/05(木) 13:38:38.39 ID:Txoy5MWd0
配列のコピーはくせがあるな
サイズが変わる時だけコピーされるってのは意識しとかないとバグの元になりそうだ
347名称未設定:2014/06/05(木) 13:45:35.58 ID:Txoy5MWd0
ディクショナリはデフォが値渡しなんだけど、でかいディクショナリとかパフォーマンス的に大丈夫なんだろうか
関数の引数にする時は inout指定すればいいのか
348名称未設定:2014/06/05(木) 14:12:18.45 ID:XXXxtOx70
Swiftでアイポンアプリを作ったら年収1000万超えて身長5cm伸びて可愛い彼女まで出来て人生逆転できました
どれもSiwft様々です
349名称未設定:2014/06/05(木) 14:16:33.25 ID:Txoy5MWd0
>>348
Swiftで作ってもまだ申請できないはずなんだが
350名称未設定:2014/06/05(木) 14:41:46.08 ID:8k78IFIX0
>>349
事前申請は受け付けてるはず。リリースはまだ出来ないけど。
351名称未設定:2014/06/05(木) 14:46:51.90 ID:Txoy5MWd0
>>350
マジで!?
XCode6のベータで作った奴でいいの?
352名称未設定:2014/06/05(木) 14:54:10.89 ID:1u+uwOdd0
WWDCアプリはSwiftで作ったらしいね。 実験的に出したんだろうけど。
353名称未設定:2014/06/05(木) 14:54:15.59 ID:OXWZKSZv0
いつもと同じだとしたら、XcodeのGM以降じゃないとValidateされないとおもうが。
それにiOS8対応版の事前受け付けはiOS8正式版リリース2週間くらい前のGM版リリースから可能。
354名称未設定:2014/06/05(木) 15:17:09.28 ID:8k78IFIX0
あ、ゴメン。今確認したらまだだったわ。
Swift発表時の勘違い記事見て騙されてた。
355名称未設定:2014/06/05(木) 15:42:13.02 ID:zotO6CY20
ライセンス無料にしろよ
356名称未設定:2014/06/05(木) 15:57:08.02 ID:R+CNgE8/0
smalltalk風のメッセージ送信は残して欲しかった
あれがobj-cの一番の魅力なのになんで不人気なんだろう
357名称未設定:2014/06/05(木) 16:10:36.52 ID:Txoy5MWd0
メッセージ送信なんて聞こえはいいけどただしのメソッド呼び出しだしね
358名称未設定:2014/06/05(木) 16:19:18.61 ID:IA5RN5T90
ただしって誰?
359名称未設定:2014/06/05(木) 16:20:21.94 ID:OT6vh16X0
ただしのメソッド呼び出し
「ただし〜!ご飯よ〜〜〜!!」
360名称未設定:2014/06/05(木) 16:20:28.14 ID:YeQzZzQf0
まさかMessage Forwardingができなくなったとか?
361名称未設定:2014/06/05(木) 16:21:30.41 ID:QoFErOZP0
個人的には、単純にTABだけでインデントできるC系の構文のなかに、
そういうわけにもいかないのが混ざるのが不便といえば不便だった。
362名称未設定:2014/06/05(木) 16:22:59.54 ID:zsq6ttyD0
内部はobjc_msgSendにセレクタ投げる形で実装されてるのは変わってないので
書き方が変わっただけ
363名称未設定:2014/06/05(木) 16:24:54.65 ID:+LFAKE3b0
>>359
あーもー、テレビの音録音中だったのにー
364名称未設定:2014/06/05(木) 16:42:28.74 ID:3LNayI3t0
旦那がタダシだからやめてくれ(´Д`)
365名称未設定:2014/06/05(木) 16:50:04.40 ID:dEQLZJt00
swiftでMacOSXのアプリもかけるの?
366名称未設定:2014/06/05(木) 16:57:09.93 ID:0ePhuvKy0
もちろん
367名称未設定:2014/06/05(木) 17:08:25.80 ID:kO+FiiAL0
>>363
イヤホンからライン入力すればいいのに
368名称未設定:2014/06/05(木) 17:09:55.44 ID:6El045gx0
たかしはラジカセしか持ってないよ
369名称未設定:2014/06/05(木) 17:22:02.40 ID:Txoy5MWd0
Swiftスレがム板とこっちと両方あるからどっちかに統一して欲しい
370名称未設定:2014/06/05(木) 17:27:22.69 ID:cBnhjMij0
なんか両方にマルチポストしてる変なのもいるしね
371名称未設定:2014/06/05(木) 17:30:27.65 ID:bZNsvE9m0
ム板は基本的にAppleアンチの巣だから…
Swiftに釣られて来てObjective-Cの悪口連呼とか
キモくてレスする気にもなんねぇわ
372名称未設定:2014/06/05(木) 17:37:38.34 ID:N6KMtSL40
どうもたかしです
373名称未設定:2014/06/05(木) 17:44:50.59 ID:6El045gx0
とはいえ、iphoneプログラミングにも頻用されるであろう言語を新・macでってのも何か違う気がするよな
いや、xcodeはmacで走ると考えれば問題ないか?
374名称未設定:2014/06/05(木) 17:49:01.51 ID:YeQzZzQf0
[SDK]iPhoneアプリ開発初心者質問箱38[touch][iPad]
っていう続いているスレがすでにあったりするけど?
375名称未設定:2014/06/05(木) 18:02:21.75 ID:6El045gx0
>>374
それはアプリ開発だから完全にxcodeだけど、こっちは言語スレじゃん?
objective-cスレはマ板にあってここにはない
swiftスレはム板とここ
……マ板に立てた方がいい気がしてきた
376名称未設定:2014/06/05(木) 18:27:17.67 ID:Txoy5MWd0
参ったな
377名称未設定:2014/06/05(木) 18:57:05.87 ID:Txoy5MWd0
クラス変数(タイププロパティ?)の仕様が若干キモいな
378名称未設定:2014/06/05(木) 19:22:47.51 ID:dEQLZJt00
>>366
ゼロからでも覚えやすい言語ですか?
379名称未設定:2014/06/05(木) 19:43:26.35 ID:2xlZK1k+0
それは"ゼロから覚えやすい言語"というのをどう定義するかしだいだな。
よく練られた文法となにより書く側から即実行テストができる環境で
21世紀のBASIC言語と言って差し支えないぐらい
プログラミング初心者教育に最適な言語である一方、
ぶち込まれてる概念はここ十年間最前線のプログラマーの間で
議論が交わされていた最先端の代物てんこ盛りだから
いま全部本当に使いこなせる奴いんのか?ってぐらい
高度なものが詰まっていたりもする。

まあ、そんなん。
んで、世界のみんな昨日からヨーイドンでゼロからスタート中。
380名称未設定:2014/06/05(木) 19:54:23.57 ID:QCKccWKV0
Appleの新プログラミング言語Swiftは、4年前の1人プロジェクトから始まった
http://jp.techcrunch.com/2014/06/05/20140604apples-new-programming-language-has-been-in-development-for-nearly-four-years/
381名称未設定:2014/06/05(木) 20:06:32.80 ID:dEQLZJt00
>>379
頑張って日曜プログラマ目指してみます!
382名称未設定:2014/06/05(木) 20:12:06.60 ID:AReEa1ik0
>>379
取り敢えずXcodeをローカライズして欲しいの(´・ω・`)
383名称未設定:2014/06/05(木) 20:21:43.90 ID:UDh+7G2m0
簡単にアプリが開発できるとか、おまえら考え甘すぎw
384名称未設定:2014/06/05(木) 20:27:51.19 ID:1u+uwOdd0
>>383 色んな人が居るから単に勉強用として触るだけも有りだろ。

本当にこの言語はプログラム教育に良い。 タイムシェアリングでダートマスBASICを新入社員教育でやった事を思い出した。
早くSwiftコンパイラ/REPLをオープンソースにした方が良い。
最近のAppleはオープンソースに熱心だからLLVMコンパイラとして搭載されるのも早いと思う。
385名称未設定:2014/06/05(木) 20:40:47.67 ID:Txoy5MWd0
Swiftについては今の所概ね好印象なんだが1つだけ不満がある
それは、
if a < b < c {
:
}

という書き方が出来ないところだ
Pythonを意識したなら、これは取り込んで欲しかったなぁ
386名称未設定:2014/06/05(木) 21:13:11.52 ID:0ePhuvKy0
>>379
ほんと、モダン言語の良いとこどり
最新の言語で最新のデバイスのプログラミングできる面白さ
387名称未設定:2014/06/05(木) 21:18:44.34 ID:IV9dQrjk0
なんかこう、みんな一斉にヨーイどんってのがいいね。
388名称未設定:2014/06/05(木) 21:19:52.68 ID:1u+uwOdd0
>>385 if b in a+1..c {
となるのかな?
389名称未設定:2014/06/05(木) 21:21:20.33 ID:Diolk3Ji0
>>388
すげー!
これありなの?
390名称未設定:2014/06/05(木) 21:27:49.80 ID:Txoy5MWd0
できないだろ
試してから書いてくれ
391名称未設定:2014/06/05(木) 21:29:18.83 ID:4ywkeYI00
RubyやPythonとくらべてどっちがわかりやすいですか?
392名称未設定:2014/06/05(木) 21:29:25.97 ID:OT6vh16X0
>>388
もしこれがアリだとしても整数でしかつかえないしaがcより大きかったらどうなるのとか

ふと気になって
for i in 5...1 { println(i) }
ってやったらエラーや逆順にはならずに無限ループになったよ
範囲に変数使うのは注意しないと行けないな
393名称未設定:2014/06/05(木) 21:49:56.08 ID:Diolk3Ji0
まあそれはCのforだって無限になるんじゃないか
394名称未設定:2014/06/05(木) 21:52:56.27 ID:Txoy5MWd0
Cに for in あったっけ?
395名称未設定:2014/06/05(木) 21:54:32.80 ID:IV9dQrjk0
新Mac版勢い一位がプログラミング言語てw
396名称未設定:2014/06/05(木) 22:12:38.15 ID:kOnMBRGa0
まぁ変態言語からの脱却は喜ばしい限り
しかも処理速度アップって言う事なし
397名称未設定:2014/06/05(木) 22:19:21.36 ID:NYLUnUtg0
printfは何処…
398名称未設定:2014/06/05(木) 22:20:51.37 ID:pXqLyWGB0
List型、cons、car、cdr、末尾再帰最適化があれば言うこと無かったのに。
399名称未設定:2014/06/05(木) 22:25:06.03 ID:Txoy5MWd0
それはLispで
400名称未設定:2014/06/05(木) 22:50:23.92 ID:pXqLyWGB0
>>399
現状lispやhaskellでやれてることが、新しいswiftでもできると嬉しかった。
401名称未設定:2014/06/05(木) 22:59:59.96 ID:Txoy5MWd0
そもそも関数型言語ではないので
402名称未設定:2014/06/05(木) 23:10:40.58 ID:pXqLyWGB0
swiftも関数が第1級オブジェクトみたいなんで、関数型の要素は取り込んでるでしょ。
そもそもlispだって、純粋な関数型言語ではないし。
まあ、無いもんは無いんで、しょうがないです。
403名称未設定:2014/06/05(木) 23:13:11.02 ID:1u+uwOdd0
関数型言語のパターンは持っていると言ってるね。 map. filter等
404名称未設定:2014/06/05(木) 23:44:05.18 ID:Txoy5MWd0
その辺りはPerlにだってある
405名称未設定:2014/06/06(金) 00:04:00.98 ID:QC1a/TyG0
iBookでチュートリアルっぽい章だけ読んだ。
まあ、C#とかもそうだけど、Appleもなんか新しい言語作りたい病が押さえられなかったってことだろうね。
別に新言語作らなくてもいいやん。Pythonあたりを採用すれば。
Appleデベロッパーになる踏み絵みたいなもんか。
406名称未設定:2014/06/06(金) 00:05:35.63 ID:00XcAs3q0
PythonってC関数が普通に呼べるんだw
407名称未設定:2014/06/06(金) 00:06:14.20 ID:QC1a/TyG0
C関数が呼べないと死ぬの?
408名称未設定:2014/06/06(金) 00:09:46.81 ID:GmKb4kOI0
Pythonあたりをとか気軽に言うが、Pythonってネイティブコードへのコンパイラってあるの?
単に俺の知っている、あるいは俺の知らないことでも、ぐぐればすぐにってのじゃないの?
新しい言語を新しく憶えるのだったらPythonだろうがなんだろうが同じだと思うが、どう違うの?
409名称未設定:2014/06/06(金) 00:10:34.33 ID:ZUoHcNBB0
葉っぱ一枚あればいい持たざる物のお前と違って、他の連中は資産を利用したいんだよ
410名称未設定:2014/06/06(金) 00:12:39.99 ID:GmKb4kOI0
Pythonの資産?
結局畑違いで仕事をしていたのを俺にとって簡単だからってことじゃないの?
Pythonがそんなに使いたかったら、PyObjCやってりゃええやん。すでにあるんだから
411名称未設定:2014/06/06(金) 00:17:17.53 ID:0QZjQw4C0
408くんは次からは何を主張したいのかもっと考えてから手を上げましょう
412名称未設定:2014/06/06(金) 00:20:31.86 ID:QC1a/TyG0
たとえばこれがHaskellみたいにどうしてもそういうシンタックスが必要だ、と
いうことで新言語作るのならいいけど、新しい言語作りたい病の人が大して意味もない
のに既存の言語を適当に交ぜたみたいな新言語作ったら、まあいい加減にしてくれよ、
と思うのが普通でしょ。

Appleの場合なまじプラットフォームとしては力があるから、「これでやります」と
言われたら従うしかない。
いろんな人が迷惑する。それだけにしか使い道のない言語に脳細胞使われちゃうわけで。

おわかり?
413名称未設定:2014/06/06(金) 00:27:20.52 ID:00XcAs3q0
>>412
お前がそう思うんならそうなんだろう、お前ん中ではな
414名称未設定:2014/06/06(金) 00:27:20.57 ID:z8ieJMD70
Swiftは言語仕様としてはかなり簡単な部類だから、これを習得する為に脳細胞使って困るくらいならプログラマ辞めた方がいいレベルだと思う…
415名称未設定:2014/06/06(金) 00:28:10.18 ID:GmKb4kOI0
>>412
単に他の言語を憶えたくはないってだけにしか聞こえない
必要だから憶える必要ないから憶えないってだけでしかないなあ。それだけにしか使い道の言語でもそれの濃さがあるなら憶えるのしかないし憶えるのは楽しいやん?
憶えてもいっこなんかやったら終わりだったら、確かにそんなの必要ないけどな
416名称未設定:2014/06/06(金) 00:28:55.13 ID:e5bUp6aT0
おまえらの信仰心がためされてるんだよ
417名称未設定:2014/06/06(金) 00:33:59.75 ID:kszh/tfg0
なぜ自分とこで言語をつくったか
それは、仕様を自分とこで決められるし、既存のフレームワークに合わせて拡張しやすいからでしょ
よその言語使うとよその顔色を伺わないといけない
418名称未設定:2014/06/06(金) 00:34:19.95 ID:tyLH2Fyi0
Apple的には既存を借りてくるより自社で作るだろう。
419名称未設定:2014/06/06(金) 00:38:55.44 ID:TCyutEgU0
Pythonとスピード比較とかしてたけど100倍位スピードの差があるだろ。
そんな物でアプリが作れるわけが無い。
アホも休み休み言いなさい。
420名称未設定:2014/06/06(金) 00:39:42.12 ID:kszh/tfg0
他の言語にないAppleらしい特徴もあるんだけどね
ハッシュテーブルをクラスに流用する言語はあるけど、その逆の発想でくるとは思わんかったわ
まぁ絵文字変数はプレゼンでしか使わんか
421名称未設定:2014/06/06(金) 00:39:43.23 ID:61+6JPEO0
Objective-Cは既存を借りてきましたけどね(キリッ
422名称未設定:2014/06/06(金) 00:42:47.94 ID:WEcuSk+x0
objective-cだってappleデバイス以外は基本使わないし、
swiftに変わったって同じだな。新言語の学習はswift程度なら
問題ない。既存のライブラリとか呼べるし、C++CLIよりは
よっぽどいい。

まあ、欲を言えばC#みたく標準化して欲しいけど。
サーバーサイドで使ってみたい。
423名称未設定:2014/06/06(金) 00:47:56.23 ID:54KeBaKd0
swiftだけでUITextviewのタッチイベントの受け取りってできる?
極力ObjCを使わないで書きたい
424名称未設定:2014/06/06(金) 00:53:06.64 ID:TCyutEgU0
Apple的には、多分Swift JITまで作ってアプリからWebまで全てをSwiftでやることを考えてるんじゃ無いかな。
Javascript では遅すぎるから。
その前段階としてWebkitにLLVM入れてJavascriptの4段階目まで最適化するJITを組み込んだ。だからiOS8 OSXのSafariが、35%早くなった。

Playgroundsもその成果の一つだろう。

Swiftが標準的なHTMLツールになるのは遠い先だろうが、iOSだけのHTMLアプリ/EPUBアプリは十分考えられる。
425名称未設定:2014/06/06(金) 01:27:45.38 ID:a0ELARrI0
>>424
各ベンダーの思惑があるからSwiftがWeb標準になることはないでしょ
かつてネスケのJavaScriptに、MSがVBScriptで対抗しよとして、結局ブラウザ戦争には
勝ったけどスクリプト戦争には負けたし
今や、MSだけじゃなく、Google、Firefox、Opera...といる中で、例えオプソにしたとしても
標準化は無理だろ
426名称未設定:2014/06/06(金) 01:45:10.23 ID:TCyutEgU0
いやWebkitでシェアを稼いでるから、Webkitに標準装備すれば自ずと世界制覇は比較的簡単に出来る。
もうWebkitにはLLVMも入れたんだし、SwiftもLLVMにオープンソースにしてMicrosoftも使えるようにしておけばそんなに無理な話でも無い。

HTMLからFlashを追い出したり、mpeg4 movieを採用させたり、iOSの力は大きい。
或いは、iBooks Authorで作ったibook だけには、swift を埋め込めるようにするとか、実際に今でもWidgetが埋め込めるし何でもあり。
427名称未設定:2014/06/06(金) 01:58:01.45 ID:Dy0p01Ks0
Swiftの日本語ディスカッションで一番議論が進んでるの、このスレだと思う
428名称未設定:2014/06/06(金) 01:59:50.86 ID:s76KCs0V0
まーApple内でしか使えない知識に人生の貴重な時間を1秒足りとも費やしたくないってのはわからなくもないけど、
そういう人はそもそもSwiftの議論に参加すらしないんじゃないか
429名称未設定:2014/06/06(金) 02:02:33.78 ID:yuUbkZgF0
C#やJavaで直接ネイティブ呼び出せるの?
430名称未設定:2014/06/06(金) 02:11:19.38 ID:QDh8wUmd0
>>428
だね。
対してポジティブに受け取れば、
Apple内でしか使えない言語だからこそ、
開発者にとっても彼らに参入してほしいAppleにとっても、
その言語はできる限り
容易に習得できるものであってほしくて、
それに応えてくれるかもしれないのがSwiftなのかなと。
431名称未設定:2014/06/06(金) 02:19:24.86 ID:GmKb4kOI0
>>429
JavaはJNIで呼べる。ブリッジのできとしてはアレだと思うけど
432名称未設定:2014/06/06(金) 02:25:51.72 ID:GmKb4kOI0
>>429
http://www.atmarkit.co.jp/fjava/special/jna/jna_1.html#01
JNAなんてあるのね
C#もPythonもwあるようだけど。まあでもアレだなあw
433名称未設定:2014/06/06(金) 02:28:00.92 ID:wwrEvv1A0
プログラミング素人が9時間でフラッピーマリオのコード書けるもんなの?
434名称未設定:2014/06/06(金) 02:28:38.55 ID:W6GOCy5A0
>>426
>いやWebkitでシェアを稼いでるから、Webkitに標準装備すれば自ずと世界制覇は比較的簡単に出来る。

いまだApple信者のおつむは夢一杯、妄想一杯で幸せなんですな。
435名称未設定:2014/06/06(金) 02:31:51.29 ID:W6GOCy5A0
誰か、Objective-C擁護派は居ないのか?
Swift登場以前は居たんだろ?
436名称未設定:2014/06/06(金) 02:33:15.32 ID:GmKb4kOI0
暇なのか?w
437名称未設定:2014/06/06(金) 03:53:27.66 ID:gfSq5aw60
Swiftでxibファイルか何かをHTML/CSSに変換するのは実は簡単なのか?
438名称未設定:2014/06/06(金) 04:20:59.60 ID:Jf01Hels0
>>435
「Cでプログラミングするには人生は短すぎる」って有名な言葉があるけど
ObjCでもみんな同じ心境なんじゃない?
439名称未設定:2014/06/06(金) 05:47:04.69 ID:zEhF+2ha0
あっぽーは紀文の著作権を侵害してる
http://image.rakuten.co.jp/nunoviki/cabinet/pop/kibun_series.jpg
440名称未設定:2014/06/06(金) 06:15:34.06 ID:iziAygoF0
>>438
横だが

>>Cでプログラミングするには人生は短すぎる

これ、俗にいう噂のひとり歩きってやつだよ
441名称未設定:2014/06/06(金) 06:16:47.83 ID:672ISr2m0
>>345
Xcode自体扱いにくい
442名称未設定:2014/06/06(金) 06:45:34.80 ID:eqF7m3oU0
Objective-CかSwiftかなんて瑣末な問題なんだよ。
Xcodeがうんこなんよ、Visual Studio使えたら言語なんてなんでもいいんだよ。
どうせ仕事じゃ案件ごとの要件のフレームワークに合わせて言語使い分けるんだから。
443名称未設定:2014/06/06(金) 06:47:00.27 ID:kda6/jPE0
>>435
Swiftドキュメント読んでから、もう擁護しようがない、さようならObjC
一年後、書店のObj-CコーナーがすべてSwiftに置き換わるで
少なくとも、これから学習する言語ではなくなったかな
444名称未設定:2014/06/06(金) 07:39:00.85 ID:gfSq5aw60
>>442
>どうせ仕事じゃ案件ごとの要件のフレームワークに合わせて言語使い分けるんだから。

そういう愚をSwiftで終わらせたいんだろう。
今はSwiftはApple専用だが、オープンソースになるだろう。
445名称未設定:2014/06/06(金) 07:45:52.70 ID:61+6JPEO0
日本発擬人化はよ
446名称未設定:2014/06/06(金) 08:25:37.22 ID:dUmrign50
>>435
obj-cの可読性やわかりやすさを気に入っていたから、swiftが切り捨ててきたのは結構残念
447名称未設定:2014/06/06(金) 08:58:43.25 ID:+WN9tqHZ0
文法はどうでもいいけどPlaygroundの存在がデカイ
それだけでSwiftに移行したいレベル
448名称未設定:2014/06/06(金) 09:20:58.88 ID:2xK2G2RR0
>>442
たまにはAppCodeさんのことも思い出してあげてください…
449名称未設定:2014/06/06(金) 09:38:54.28 ID:VGCUYGFL0
配列のインデックスに負の数書けないんだな
450名称未設定:2014/06/06(金) 09:40:18.99 ID:AqlgmRsZ0
>>444
サーバーでSQL、Java、Python、Ruby、たまにphp
クライアントでC#、C/C++、ObjeC、Java、javascriptな現状で一本化できる気がしない・・・
451名称未設定:2014/06/06(金) 10:12:54.41 ID:TCyutEgU0
>>450 別に好きな物を使えば良いだろ。 適材適所と言う物は残るに決まってる。
ただ、多くの分野で使える用になって行く可能性を持っている。
SQLは別物。 
Javascriptを置き換えるにはSwiftScriptの出現かJavascriptを吐き出すコンパイラが必要。
WebKitでの実装が必要。

しかし言えている事は、iOS OSXアプリの開発者が増えてその多くがSwiftで満足すれば成功と言えるから、一般の言語の状況とは少し事情が違うと言える。
ObjeCのハードルの高さで参入を見送っていた層がどっと雪崩こんで来ることは想像に難くない。

iOS Android両方に使えるために、JavaかJavascriptを吐き出せれば鬼に金棒。 Javascriptは存在しているようだからサードパーティーがすぐにサポートしてくるだろう。
LLVMベースだからクロスコンパイル環境は万全。
452名称未設定:2014/06/06(金) 10:14:46.03 ID:gfSq5aw60
>>450
Javaは一本化する思想で開発者に悪夢をもたらしたがSwiftは快楽をもたらす。多くの開発者はそう思ってる、日本人を除いて。
453名称未設定:2014/06/06(金) 10:16:41.56 ID:Aw3aBgJ90
また英語のドキュメント読むのかよ
とか思ってるのかね

読むんだよ
コンピュータで覇権取ってるのはアメリカなんだよ
そこはもう変えられないんだよ
454名称未設定:2014/06/06(金) 10:23:24.22 ID:TCyutEgU0
>>451 iOSアプリの開発ツールは数々あれどどれもストアに出品するには数十万と言うライセンス料を払わないといけないそれがXcodeでほぼただ。
Uniti, Xamarin, PhotoGap、Qt みんなそう。

こんな声が有った。
>UnityもいいIDEと思ったけど、気が変わった。Unityでちゃんとしたもの作ろうとしたらPro買わなきゃだし、iOS版と合わせて初期投資が32万円を超える。
その点Xcodeならタダ。
455名称未設定:2014/06/06(金) 10:26:08.06 ID:TCyutEgU0
>>453 英語が苦手な人は半年待てばよい。 公式日本語マニュアルも、市販の解説本もドット出回るから。
多分正式リリースが出る頃には何冊か解説本が出てきそう。
456名称未設定:2014/06/06(金) 10:37:36.46 ID:kda6/jPE0
今頃、ソフトウェアの訳書を生業とする人達と出版社の人達が、恐らく最高のプライオリティでSwiftを訳してるだろうな
出せばベストセラーが約束されてるようなもんだし
457名称未設定:2014/06/06(金) 10:38:16.38 ID:VGCUYGFL0
でも正式リリースまでにSwiftの仕様ちょくちょく変わりそうだけどなぁ
458名称未設定:2014/06/06(金) 10:42:30.87 ID:nfkmHB7d0
で、結局Cの関数を呼び出せたやつはいるの?
459名称未設定:2014/06/06(金) 10:43:27.97 ID:FdUOsWeq0
発表直後でここまで実用的に扱われた言語って今まで無かったよなぁ。
460名称未設定:2014/06/06(金) 10:49:24.23 ID:gfSq5aw60
もう翻訳では最新技術に追いつけない事に気づいた方が良い。
461名称未設定:2014/06/06(金) 10:50:42.61 ID:kda6/jPE0
発表されたその日に、成熟した開発環境と軽量なシミュレータが既にあって実機動作も可能だもんね
しかも今年は開発者以外に公開してる情報も多いから、特にLLな新規開発者の開拓を狙ってるね
462名称未設定:2014/06/06(金) 10:52:07.12 ID:kda6/jPE0
>>460
もちろんそうなんだけど、世の中には訳書が必要な人達が大勢いるのもまた事実なのよね
463名称未設定:2014/06/06(金) 10:57:10.47 ID:TCyutEgU0
>>457 最近は出版した後の変更フォローはWebでやってるケースも出てきてるから多少間違いが有っても許されるよ。
サンプルコードも追加されたりしてる。 電子書籍だとそれらがいっぺんに解決するけどね。
プログラム解説本は電子書籍がベスト。 コピペで試せるから。 アップデートもすぐに出来るし。
464名称未設定:2014/06/06(金) 10:59:27.42 ID:00XcAs3q0
>>458
今更まだそんなこと言ってるんだw
465名称未設定:2014/06/06(金) 11:02:54.35 ID:/uIIQWuH0
>>464
まあ、蟹も木から落ちる、というからな。
466名称未設定:2014/06/06(金) 11:03:28.91 ID:gfSq5aw60
>>462
>>460
>もちろんそうなんだけど、世の中には訳書が必要な人達が大勢いるのもまた事実なのよね

そんな事だから日本のプログラマはレベル低いんだよ。
467名称未設定:2014/06/06(金) 11:08:16.28 ID:H4xNNX6D0
小学生が翻訳本から入って天才に化けるかもしれないぞw
468名称未設定:2014/06/06(金) 11:08:42.32 ID:a0ELARrI0
同じ型のコンストラクタやメソッドをラベルを使ってオーバーロード出来るのがいいね
469名称未設定:2014/06/06(金) 11:34:56.56 ID:VGCUYGFL0
Playground で Printable なオブジェクトを println() しても description がプリントされないのは Playground のバグってことでいいのかな
アプリではちゃんとプリントされるんだよな
470名称未設定:2014/06/06(金) 11:56:00.66 ID:g8VX50XC0
Swiftの公式ドキュメントは英語読めなくても大体理解出来るだろ。
オブジェクト指向言語かじった人間ならコード部分だけ追っかけても概要把握出来るし、動きが分かりづらい部分は実行して試せばいい。
逆にこのドキュメントが分からんって人間はXCodeのエラーすら読めなくてまともに開発出来ないんじゃないか?
471名称未設定:2014/06/06(金) 11:58:26.83 ID:2xK2G2RR0
そうなんだけど、形から入るプログラマって一定数いると思ってる。
各ドキュメントが完璧に揃っていないと進めない、仕様が固まるまでは何もしない
こういうタイプ
472名称未設定:2014/06/06(金) 12:04:03.94 ID:GmKb4kOI0
まともに開発出来ないんじゃないか?
なにがまともかにもよるが、おっせー、つかいものにならなさそう
473名称未設定:2014/06/06(金) 12:12:12.67 ID:pD4NGuev0
swiftで2ちゃんの専ブラ作りたい
474名称未設定:2014/06/06(金) 12:15:34.66 ID:VGCUYGFL0
他の言語でArray#eachにあたる処理もArray#mapでやれってことなのかな
WWDCのビデオでもeachっぽいことをmapでやって見せてたし
別にいいけどなんか気持ち悪い
475名称未設定:2014/06/06(金) 12:16:12.43 ID:kda6/jPE0
本屋に行けば山のようにいろんなプログラミング言語の本があるから、世の中的にはまあそういうことなんだろう
英語の言語仕様を読まない読めない読む気がない人がたくさんいるんだろう
iOSはアップルのドキュメントとstackoverflowで何とかなるけど
476名称未設定:2014/06/06(金) 12:30:09.72 ID:VGCUYGFL0
あれ
let nums = [1, 2, 3, 4, 5]
nums.map { println($0) }
WWDCの"Intermediate Swift"でこんな感じのコード出てたけど、落ちる
どういうこっちゃ
477名称未設定:2014/06/06(金) 12:41:25.43 ID:PppM5IPU0
日本の職業プログラマの8割が5分以内にFizzBuzz書けないって言うしな……嘆かわしい限りだ
478名称未設定:2014/06/06(金) 12:52:26.53 ID:TCyutEgU0
殆どがコーダーレベルだからだろ。 doogfooding連中も含んでるだろうし。
479名称未設定:2014/06/06(金) 14:17:50.21 ID:7L86AB6Y0
>>474
eachにあたるのはfor inじゃない?
480名称未設定:2014/06/06(金) 14:33:14.68 ID:VGCUYGFL0
>>479
メソッドチェーンできないじゃん
481名称未設定:2014/06/06(金) 14:51:59.39 ID:mVx0LdSg0
?の使い方が凄く嫌だけど、使うなってことだよな?w
482名称未設定:2014/06/06(金) 14:59:57.92 ID:PGB8pwc20
>>481
?使わないとnil全く扱えないけどいいの?
483名称未設定:2014/06/06(金) 15:14:39.42 ID:pbQmwUxs0
>>445
メガネ三つ編み委員長の言語使うことにする
484名称未設定:2014/06/06(金) 15:15:29.20 ID:TCyutEgU0
>>482 いやいやSwiftを使いたくないと言うネガキャンだろ。 >>481
485名称未設定:2014/06/06(金) 15:25:21.10 ID:PppM5IPU0
あぁ、(Swiftを)使うなって事だよな?w
って意味だったか。納得。

C#でNullableに慣れてると?は使い易いんだが、やはり初見では違和感強いもんなのかね?
C#だといちいちhasValueでチェックしてvalueを使うなんていうめんどくさい事しなきゃいけないから、Swiftの!はとても楽で助かるし分かり易いんだが
486名称未設定:2014/06/06(金) 15:51:07.44 ID:hBntTJTG0
>>483
実はヒラの図書委員。
487名称未設定:2014/06/06(金) 15:56:01.48 ID:YLuln9TS0
>>398
Listは関数型プログラミングに最適なデータ構造であるけれど、
Arrayと比較すればCPU/メモリ効率が低いのだから、
関数型言語ではないSwiftで組み込み型としてサポートされないのも
しかたないのではないかと思う
幸い、関数型の要素の多くは備わっているのだから、
自分のプログラミングスタイルに調和するリスト処理ライブラリを
自作すればいいのでは....

末尾再帰最適化(TCO)についても同様で、
手続き型のループ構文があるのだからfold関数をループ構文で実装することによって、
TCOが要求される多くの局面で関数型プログラミングに対応できると考える

こういった対応は、RubyやJavaScript(jQuery)で関数型プログラミングを
実践するケースと同様に考えればいいと思うし、
Swiftは関数型プログラミングに適した言語のように見える

個人的に残念だったのは、if や switch といった分岐(branch)が
式(expression)ではなく文(statement)として設計されている点
まあ、これもRubyが変態なだけで、Swiftが常識的な言語設計なんですけどね....
488名称未設定:2014/06/06(金) 16:03:03.98 ID:YLuln9TS0
>>476
・Swiftのmapは処理だけしてVoid返すことは出来ないから気ィ付けや - 定食屋おろポン
  http://oropon.hatenablog.com/entry/2014/06/05/040728
489名称未設定:2014/06/06(金) 16:46:27.39 ID:00XcAs3q0
>>487
> 個人的に残念だったのは、if や switch といった分岐(branch)が式(expression)ではなく文(statement)として設計されている点

これは俺も残念だったな。Rust とかでの
let price =
if item == "salad" {
3.50
} else if item == "muffin" {
2.25
} else {
2.00
};
というのが好きだったんだが。
490名称未設定:2014/06/06(金) 17:12:36.17 ID:2xK2G2RR0
要望出しまくれば今後のバージョンで追加されるんじゃないかな。
491名称未設定:2014/06/06(金) 17:18:49.53 ID:YLuln9TS0
dat落ちしてる過去スレ「Mac関連ネタをそれはもう凄まじい勢いで翻訳するスレ7」からコピペ
  http://anago.2ch.net/test/read.cgi/mac/1194073058/

--
666 名前: 終章を訳した人 Mail: 投稿日: 2011/08/07(日) 16:15:03.22 ID: I8tYQ0f30
(第11ページ続き)

代わりにAppleが採用したのは伝統的コンパイラの最新版(Clang)であり、これはLLVMの上で動作する。
LLVMは、仮想マシンと同じコンセプトの多く(例えばバイトコードや実行時コンパイラ)をより低レベルで
サポートするフレームワークである。

以上を総合した上で考えると、将来、Objective-Cの最も高レベルな部分に関してだけメモリ管理とメモリ
保護をサポートし、一方で従来のライブラリやコードとのバイナリ互換性は維持するような、新たな言語が
導入されるであろうことは想像に難くない。このアプローチはこれまで「C抜きのObjective-C」と呼ばれて
きたものだが、実現は遠い未来の話ではない。新たな仕様を一つ一つ追加することで(ARCはその最新のも
のだ)、Objective-Cにオプショナルな(でも推奨される)機能と制約が徐々に増えていく。そして最後の
新仕様を追加する時、「これぞ新言語の誕生」と満を持して喧伝するーーこんな流れになるんじゃないだろ
うか。

Appleは、gccから脱却してより高速で高機能なコンパイラに乗り換えるため、これまでに多くの時間と労力
を費やしてきた。そして移行が完了した今、Appleは革新的な新機能のためにリソースを振り向けることが
できるようになった。今後数年のWWDCが興味深い。
492名称未設定:2014/06/06(金) 17:24:06.62 ID:00XcAs3q0
>>491
すげえ。見事に予言してやがる。
493名称未設定:2014/06/06(金) 17:30:56.27 ID:VGCUYGFL0
>>488
いやだからWWDCのビデオでこんなコードが紹介されてるんだって
"Intermediate Swift"の42分くらいから or PDFの281ページくらいから見てくれ
Appleの人が勘違いしてるだけなんだろうか
494名称未設定:2014/06/06(金) 17:34:10.42 ID:RuckHKbw0
>>491
ううむ
arstechnicaの記事だと思うが、あそこはさすがだな
495名称未設定:2014/06/06(金) 17:35:57.32 ID:yF7rmBhz0
原文は
memory-managed, memory-safe language that incorporates only the highest-level aspects of Objective-C
とちゃんと言ってるのにその訳は微妙だぞ
496名称未設定:2014/06/06(金) 17:44:59.32 ID:TCyutEgU0
>>491 凄いな。 まだ当時は会社全体のコンセプトまではなっていなかっただろうに。
497名称未設定:2014/06/06(金) 17:49:18.31 ID:TCyutEgU0
ずっとアップルを離れていたから最近の事情に疎いんだけど、Hyper Card ってまだ使ってる人いるの?
或いはApple Scriptとか。

そんなこんなを皆Swiftが飲み込める気がする。

HTMLや、EPUBに入って行けたら一気にひろまる。
498名称未設定:2014/06/06(金) 17:56:16.25 ID:yF7rmBhz0
AppleScriptはAppleEventとべったりだし、言語仕様どうこうだけの問題じゃないと思うが
499名称未設定:2014/06/06(金) 18:02:14.16 ID:TCyutEgU0
>>498 それは内部事情だけど、内部て使うのに内部だけの秘め事があっても構わない。

ただ共通語が通じるだけで大きい。
500名称未設定:2014/06/06(金) 18:05:51.51 ID:YhfvQ/sV0
swiftがjsに代わってweb標準になるとか、さすがに夢見すぎだろ
501名称未設定:2014/06/06(金) 18:09:47.59 ID:RuckHKbw0
>>497
applescript使ってるよ
相変わらず日常の些細な操作に便利、地味にサポート続いてる
ただ用途がまったく違うのでswiftで代用とはならんよ
502名称未設定:2014/06/06(金) 18:15:57.48 ID:1yRk7iRZ0
ぶっちゃけ、ちゃんとしたGCが無い言語でWeb関連をやりたいとは思わない
サーバサイドもクライアントサイドも
503名称未設定:2014/06/06(金) 19:17:15.76 ID:nEKhN08d0
>>476
しむらー、戻り値ー
504名称未設定:2014/06/06(金) 21:12:48.22 ID:YLuln9TS0
>>489
多分岐(Swift の switch文)も同じだね
関数型言語やRubyだと多分岐は式だから、以下のRubyコードのように
クロージャ内で一時変数を宣言することなく簡潔な式として書ける

prices = items.map { |item|
  case item
  when "salad"
    3.50
  when "muffin"
    2.25
  else
    2.00
  end
}

>>490
分岐構文は言語設計上の根幹に関わるから、難しいんじゃないかと思う
可能性があるとすれば、手続き型の C# が発表されて数年後に F# が登場したように、
数年後に functional-Swift みたいな新言語が発表されるみたいな....
505504:2014/06/06(金) 21:43:01.39 ID:YLuln9TS0
Swiftはクロージャ内であればreturn文で式を書けるから、
>>504のコードは不適切だった
以下のように訂正する

X: クロージャ内で一時変数を宣言することなく簡潔な式として書ける
O: 簡潔な式として書ける

prices = case item
  when "salad"
    3.50
  when "muffin"
    2.25
  else
    2.00
  end
506名称未設定:2014/06/06(金) 22:19:39.36 ID:3hx7KZ5O0
Swiftってカテゴリあるの?
507名称未設定:2014/06/06(金) 22:40:53.74 ID:kda6/jPE0
Extensionがあるよ
508名称未設定:2014/06/06(金) 22:46:25.88 ID:Dy0p01Ks0
swiftだと、メモリ管理気にしなくていいの?(´・ω・`)
509名称未設定:2014/06/06(金) 22:50:55.55 ID:a0ELARrI0
気にかけてあげた方がいい
510名称未設定:2014/06/06(金) 23:18:06.51 ID:54KeBaKd0
swiftファイルをimport or includeって出来る?
それっぽくやってみたけどうまく行かない
511名称未設定:2014/06/06(金) 23:53:52.36 ID:E40hMidR0
今から勉強するけどどうしたらいいんだよ
512名称未設定:2014/06/06(金) 23:59:23.24 ID:4wD3UlwP0
Objective-Cは要するにCで、クラス化したモジュールに命令を送る
つまり『言語に追加した機能を使う』時は[]でっていう形で統一されてて
そこで「なにになにをさせる」って明示的な書き方をせよって念押しされてたから
他のオブジェクト指向言語が嵌った
"後でソース見たら何やってんのかわかんねぇ"問題が大幅に軽減されていたんだけど

いろいろガタがきてたCをモダン言語に差し替えたのはいいが
それで結果としてプログラマーの陥る精神疾患
「タイプ量が少なければ俺が楽、人には読めない難しい書き方する俺カッケー」が
輸入されて来ちゃったら本末転倒だよなーとは思ってる。
そもそもObjective-Cでも引数ラベルガン無視で[hoge: : :]って書いたり
キャメルケースなんかシラネーヨwwwってクラスやメソッドをAAA、BBBって
書いてもプログラム構文的には問題がないわけで
ありゃ文化的に"そう書かないと後で死ぬぞ?"と強制したものだから
Swiftでリセットした時に「魔法の呪文みたいに書くのがプロなんだよ
俺の呪文が解読できねぇのは素人!」みてぇなヒャッハー(モヒカン装備)が
流れ込んできて暴れられたらせっかくのSwiftが
他の言語が陥ったのと同じ混乱持ち込まれそうで嫌だなぁ。と
513名称未設定:2014/06/07(土) 00:04:30.75 ID:fd4szTCB0
またお前か
514名称未設定:2014/06/07(土) 01:03:12.56 ID:YiOqPrmR0
>>512
テストをないがしろにして、コードを
何度も読み返すような開発をしてれば
そうだろうけどね。

実際のリファクタリングでコードの読みやすさが
最重要なわけではないし、中身よりインターフェースでしょ。
515名称未設定:2014/06/07(土) 01:09:53.16 ID:OLu4Hxjd0
コピペ君の相手してんな
516名称未設定:2014/06/07(土) 01:22:59.94 ID:3G3Z0yUE0
WWDC直前からObjective-C本を買って勉強し始めだった俺は少し困惑中。
中途半端にならないようにswiftやりたいのをグッっと我慢してObjective-C勉強中。。。
Cocoa使う事には変わりないし、古いソフトの保守の仕事もきっとあるだろうし・・・
517名称未設定:2014/06/07(土) 01:45:46.10 ID:krwdO8lU0
むしろ昨日の昼にム板のスレでの門外漢の
"だいたいObjective-Cなんてさー"的なdisりに呆れて書き込んだ内容が
コピペ君にまるごとコピペされて俺の方が困惑。
518名称未設定:2014/06/07(土) 01:54:11.85 ID:Xek5ZREL0
たぶんコメントも知らない素人だと思う
519名称未設定:2014/06/07(土) 06:22:06.32 ID:RCO/e1960
>>502 なんで頑なにGCを採用しないのか解らないんだろ。 GCは必要メモリの6倍以上のメモリが無いとスピード低下が著しくなる。 4倍以下で苦しくなる。
だからARCにしたんだよ。
GCは豊富にメモリがあるPCとかサーバなら成り立つが、一般的なPCやノートPC、スマホでは無理がある。
520名称未設定:2014/06/07(土) 06:49:01.94 ID:dPDwyq8U0
>>519
今時のスマフォの性能でGCがそんな致命的な問題になることはないよ
だけど応答性を追求した場合にARCの方が有利なのは確かなんで、アップルとしてはGCをやりたくないんだろ
Web関係はそんなのを追及してもほとんど意味が無いのでGC有りでまったり組みます
521名称未設定:2014/06/07(土) 08:47:51.56 ID:CnTTbE6t0
>>446
読みやすい?わかりやすい?
馬鹿かお前?
読みにくくわかりづらいから作ったってことわからんお前みたいな、頭悪いデベはもう不要ってこともわからんの?
522名称未設定:2014/06/07(土) 09:22:18.13 ID:CuK4nNKO0
誰かが書いてたけど、頭の古い開発者を無理矢理振り落としてこれからの時代の開発者は俺たちが取り込むよ、っていう暗黙のメッセージもあるんだろうな
523名称未設定:2014/06/07(土) 09:25:07.98 ID:XGBLssgn0
>>520
CocoaでGCやったけど、廃れた。確かにARCで十分になってしまったからな
ARCのちょっとしたトリックでさえも理解できないやつぁGCに拘るのだろうが、そんなヤツいるのか?
524名称未設定:2014/06/07(土) 10:28:23.89 ID:maI511Tz0
>>521
いやまあ私は必要ならばSwiftも使っていきますけど

こんなにもobjective-Cが読みにくいとかきれいに書けないとか憎まれているというのが、私の印象と全く逆だったので意外でした
525名称未設定:2014/06/07(土) 10:30:57.92 ID:XGBLssgn0
全く同意
526名称未設定:2014/06/07(土) 10:34:32.92 ID:GSqMOXyp0
>>516
やり始めならむしろさっさとSwift切り替えた方が賢い選択だよ。
本一冊無駄になるくらい安いもんだ。
527名称未設定:2014/06/07(土) 10:37:20.67 ID:YiOqPrmR0
>>524
C言語系ではC#の次に好きな言語だけどね>obj-c

ただ、objective-c++になるとカオスっぷりが
ハンパないから、obj-c++を使うなら圧倒的にswiftになるかな。
528名称未設定:2014/06/07(土) 10:43:11.60 ID:XGBLssgn0
まだ(?)SwiftはC++を取り込んでいないので、Objective-C++を例に出すのはちょっとおかしくね?
Objective-C++はC++「も」つかう場面で必要で、カオスだが気軽にちゃんぽんできるのがすばらしいんだけどなw
529名称未設定:2014/06/07(土) 10:46:59.13 ID:09aDRmkM0
SwiftでC扱うのも結構カオスになりそうだけどな
Cのライブラリの設計にもよるだろうけど
530名称未設定:2014/06/07(土) 10:59:12.43 ID:0tULbx+J0
>>491
なんて凄い予見者なんだ
細部まで丹念に調べ緻密な解析から得た情報から成る確実な予見
素晴らしい(≧∇≦)
531名称未設定:2014/06/07(土) 11:03:38.54 ID:i/jg8K3X0
できる限りC++で書いてフレームワークの呼び出しとかどうしても必要な所だけObjective-Cな私にとってはmmがデフォルトです
532名称未設定:2014/06/07(土) 11:09:59.32 ID:vmv/ZxWR0
よくわからんのだがVBAとどっちが難しいんだ
533名称未設定:2014/06/07(土) 11:14:22.26 ID:YiOqPrmR0
>>528
別に完全に取り込まなくてもいいんだ。
obj-cを使っててc++の機能を使いたい時も多いから、
swift程度のエッセンスで十分。
ジェネリック、演算子オーバーロード、デフォルト引数。十分だよ。
名前空間と例外も欲しかったけど、まあいいや。
c++を全部取り込んだらswiftまでカオスになるしw
ヘッダにifdef仕込みまくるのはもう勘弁w
534名称未設定:2014/06/07(土) 11:27:01.39 ID:XGBLssgn0
>>533
元々>>527が何を言いたいのかさっぱりになってしまうんちゃう?
Objective-C++だってObjective-CでC++のラッパーを書けばカオスにはならんし。ラッパー書かないとカオスってことならわかるけど
ラッパー書かないでちゃんぽんできるのが以下省略

ヘッダにifdef仕込みまくるのはもう勘弁ってのも「勘弁」って言うほどなら書きようも使いようもいくらでもあるのになあ
535名称未設定:2014/06/07(土) 11:32:00.50 ID:XGBLssgn0
ああ、
>>ジェネリック、演算子オーバーロード、デフォルト引数
を使いたいのか
そのためにObjective-C++なのか。予想外だな。それでカオスとかって自らカオスにしているとしか思えない。しかもカオスが好きかと思えば違うとか。俺の理解を遥かに超えていた
536名称未設定:2014/06/07(土) 11:36:34.54 ID:OLu4Hxjd0
C++アレルギーの奴って居るよな
537名称未設定:2014/06/07(土) 12:01:36.60 ID:Hoc7elFJ0
俺はObjective-C++大好き
538名称未設定:2014/06/07(土) 12:53:09.41 ID:krwdO8lU0
C++はこないだのObjective-Cへのblocks追加で感じた「あ、やばいな」の先へ
突き進んじゃった言語。
逆にあれであ〜そろそろObjective-C3.0かな?と思ってたらSwiftに化けたわけだが…

なんでもいいが某サイトでのSwiftのプロトコルへの
「インタフェースですよね。なんでProtocolという名前にしてしまったのだろう。
もうObjective-Cなんかどうでもいいじゃない。」って物言いが
まるで「総選挙ですよね。なんで人気投票という名前にしてしまったのだろう。」ぐらいもにょもにょする…
539名称未設定:2014/06/07(土) 13:21:19.43 ID:BJXGF+940
>>490
エスパーすぎる件
540名称未設定:2014/06/07(土) 13:23:12.56 ID:BJXGF+940
まちがえた>>491
541名称未設定:2014/06/07(土) 13:45:09.61 ID:dVYRLrdK0
>>530
「Smalltalk + C = Objective-C」なのだから、
>>491にある「C抜きのObjective-C」が Smalltalk
あるいはSmalltalk風の新言語であったのなら完璧な予見だった

実際には>>491にある技術的基盤を前提にしつつも、
Smalltalkの構文を捨てC言語をベースとするモダンな言語仕様に落ち着いた
結果として、個人的にはSwiftの設計方針を肯定したいけれど、
これまでに蓄積されてきたObj-Cプログラミングのノウハウを
捨て去ろうとする決断なのだから、
それに抵抗しようとする批判意見が生ずるのもやむをえない
542名称未設定:2014/06/07(土) 14:44:32.71 ID:vSGDYBOR0
>>541
>これまでに蓄積されてきたObj-Cプログラミングのノウハウを
>捨て去ろうとする決断なのだから、

誰が言ってんだよそんなこと
全然捨ててないだろ
543名称未設定:2014/06/07(土) 14:49:32.50 ID:fd4szTCB0
Cocoa自体がObjective-Cで書かれているからおいそれと捨てる訳にはいかない
544名称未設定:2014/06/07(土) 14:55:51.54 ID:09aDRmkM0
オブジェクト指向の部分はObj-Cから発展継承させつつ
手続き型言語のプリミティブな部分をCからモダンな言語風に再設計した
という感じじゃないの
545名称未設定:2014/06/07(土) 14:56:21.40 ID:3G3Z0yUE0
>>526
たった今しがた↓の本を読み終えたところ
ttp://www.amazon.co.jp/dp/4501552700
別の言語が出来る人を前提にした本でした。
(CとOOP言語をどれか一つできればスイスイ読める。)
Xcodeのバージョンが少し古いけど特に問題なかったです。
と言う訳で今swift読み中。

過去、言語が古い物から新しい物に切り替わるのに15年前後かかるっていう話がありまして、
Cocoaとつき合ってくなら10年くらいは両方触るんじゃねーかなと思っとります。
546名称未設定:2014/06/07(土) 14:58:41.11 ID:RCO/e1960
>>543 いやObjCは最終的に全てコンバートするつもりだと思うよ。
全部出来るかどうかは社内の反対派もいるだろうから徐々にだろうが。
2〜3年かかるのかもしれないが。

コンバータの出来がよく、パフォーマンス低下がなければもっと早いかもしれない。
ほとんどコンバートした段階ではノウハウも溜まるからオープンソースにも出来るだろう。
547名称未設定:2014/06/07(土) 15:09:11.15 ID:RCO/e1960
>>545 Appleは、Power PCからIntel PC, 更にはARM と切り替えた実績があるから、仮想化技術は進んでる。
だからLLVM で主導的な貢献をしている。

全てを熟知した上でのSwiftだから切替は早いと思う。
ここで切り替えられなければ、何十年もロートルが幅を利かせる状態となり世代交代も進まない。

切替えないと知的財産のロスとなることはAppleはよく知ってるはず。

Swiftの発表でObjCには二の足を踏んでたが理解しやすいSwiftだったらやって見ると言う人間がいかに多いか見ればわかるだろう。

しかしこんなに早い認知度は珍しいね。 正式リリースされてアプリが出回るようになると押しも押されぬ状態になりそう。
548名称未設定:2014/06/07(土) 15:19:34.68 ID:CuK4nNKO0
>>547
アップルの切り替えの速さは折り紙付きだからさっさと移行するだろうね
549名称未設定:2014/06/07(土) 15:26:32.63 ID:09aDRmkM0
Appleが「切り替える」のは別に好きなペースでやればいいんだよ。
Swiftで既存のクラスを再実装したところでObjCとの互換性は失われないのだから。

問題はいつ「切り捨てる」かでしょ。
ヘッダファイルを無くし、コンパイラを排除して新規開発が不可能になるのがいつになるか。
550名称未設定:2014/06/07(土) 15:29:08.18 ID:dVYRLrdK0
>>546
Classic/Carbon(C++)からCocoa(Obj-C)への移行がそうだったように、
Obj-CとSwiftが併存する時代が数年続いた後、
Obj-Cへの決別が宣言されるのだろうと予想する
もちろんその間にもSwift自身は1.0, 2.0,... へと進化を続け、
Swiftの普及とOSX/iOS上での依存度は急速に増していく

ただしObj-Cとの完全な決別に関しては、
2001年のOSX1.0発表によるCocoa登場から
2011年のOSX10.7(Lion)によるRosetta廃止を考えると、
>>546の10年くらいを要するという予測も
あながち間違いではないのかもしれない
551名称未設定:2014/06/07(土) 15:33:44.11 ID:RCO/e1960
>>549 いやいや、ObjCが言語として切り捨てることは無いんだよ。
LLVMに既に入ってるんだからAppleがやらなくても恩恵は結構受けられる。

新しいApple系の開発では使えなくなるだろうけど。
つまりメンテナンス業務でしか需要は無い。
でもメンテナンス業務は結構美味しいよ。
552名称未設定:2014/06/07(土) 15:35:46.44 ID:3G3Z0yUE0
>>547
Appleの中はそりゃさっさと移行すると思います。。。
COBOLからJavaへの置き換えが未だに終わってない件を例を挙げるのは極端な例ですが、
今既にObjective-Cで動いているシステムをメンテする際にSwiftへ書き換える事を望まれるかと言われればNOと思います。
新規開発案件がSwiftになるかってのは積極的に採用されて行くと思いますが、
不具合発生時にObj-C版との動作差異を調べてAppleへバグ起票なんて作業が発生しそうで怖いですw
553名称未設定:2014/06/07(土) 15:39:53.05 ID:09aDRmkM0
>>551
言語としてじゃないよ。>>543からの流れを読んでくれ。
Cocoaフレームワークを使ったアプリがObj-Cで開発できなくなるのはいつか、という話だ。
それは「切り替え」だけでは発生しない。「切り捨て」が必要だ。
554名称未設定:2014/06/07(土) 15:44:38.83 ID:RCO/e1960
>>552 あー、業務で使ってる状態ではなかなか切り替えられないでしょうね。

今だに銀行系でCOBOLが動いていて大昔のエンジニアがウハウハしてました。 ソロソロ終焉でしょうが。

企業と言うか、担当者がトラブルを避けたいから昔のまま動かしていたいと思うのは当然です。
何も変化させないのであれば、それが正解。 でもそのうち首を切られるでしょう。
555名称未設定:2014/06/07(土) 15:44:56.21 ID:fd4szTCB0
ARCによりメモリ管理の煩雑さも大分軽減され、toll-freeによりCoreFoundationとの連携もシームレス、配列やディクショナリ、NSNumberもリテラル表記でぐんと使いやすくなった
それに、クラスエクステンションでプロパティやメソッドをプライベート化できるのもSwiftにはない魅力。C言語やC++との連携もおてのもの
長年使われてきた実績と資産、枯れたノウハウと安心感
まだまだ若いもんには負けんよ
556名称未設定:2014/06/07(土) 15:47:01.05 ID:RCO/e1960
>>553 ?新しい開発?
だったらかなり早い時期が想定される。

過去をメンテナンスするコストは膨大だから、切り捨て御免。
557名称未設定:2014/06/07(土) 15:52:11.03 ID:fd4szTCB0
Cocoaフレームワークの刷新 = 全ての現存アプリ、フレームワークを巻きこんだOS全体の刷新 
を意味するからな
いくら斬り捨て御免なAppleでも数年レベルで出来る切り捨てではない
558名称未設定:2014/06/07(土) 15:57:43.35 ID:5kV4KBjs0
>>557
Rosetta的なものが登場すれば10年はかからんかもな
559名称未設定:2014/06/07(土) 16:00:54.73 ID:09aDRmkM0
>>556
そんなに早いとは思わんね。あなたが例に出したPPC->Intelの移行でも
Intelに「切り替え」が始まったのは2006年1月だが
最終的にPowerPCアプリの開発ができなくなったのは2011/3リリースのXcode 4からだ。
切り捨てに5年かかっている。
560名称未設定:2014/06/07(土) 16:01:55.60 ID:RCO/e1960
>>567 別に瓊条件に切り捨てるわけじゃ無いからね。
今までの資産はそのまま使えるんだから何のコストもかからない。
561名称未設定:2014/06/07(土) 16:06:41.28 ID:fd4szTCB0
しかし、たかが言語1つのためにそこまでのコストを払うかね
C++が出てきて、やんやともてはやされてもUnixの根幹は変わらずC言語ベースだったし、C言語は今も変わらず現役バリバリの言語だし
ObjCとSwiftも棲み分けされるんじゃないのかね
ObjCには今更捨て去るにはあまりにも膨大な資産があるし
562名称未設定:2014/06/07(土) 16:12:05.69 ID:Uzf2GKhk0
MacOSのときのBSDもそうだが、今回もまたLLVMをパクってきてさも自分のところの
技術でござい、みたいな顔つきがうっとうしすぎるな。
563名称未設定:2014/06/07(土) 16:13:53.90 ID:QOHJ2IqD0
>>559
68K->PowerPC->x86-64(EM64T)
も忘れないで。
564名称未設定:2014/06/07(土) 16:13:56.64 ID:3G3Z0yUE0
565名称未設定:2014/06/07(土) 19:09:39.32 ID:RCO/e1960
>>561 Cは全ての根幹だからそれが無くなる訳は無い。 アセンブラが絶対になくならないのに近い。
Swiftの最終章を読んだらCPUの叫びが聞こえた。 確かにCPUが透けて見えた。
昔々、Cが初めて登場した時の感動そのまま。
566名称未設定:2014/06/07(土) 19:13:08.19 ID:CuK4nNKO0
CPUの叫びっていう表現、最近流行ってるのん?
567名称未設定:2014/06/07(土) 19:26:27.38 ID:09aDRmkM0
最終章ってAdvanced Operatorsのことか?
568名称未設定:2014/06/07(土) 19:33:12.26 ID:Uzf2GKhk0
江添さすがだな

Appleが新言語、Swiftを発表するも、すでに閉鎖的すぎて絶望しかない
http://cpplover.blogspot.jp/2014/06/appleswift.html
569名称未設定:2014/06/07(土) 19:42:25.06 ID:k6i7H8SX0
蟲はキチガイオープンソース教信者なので放っておけば良い。
570名称未設定:2014/06/07(土) 19:54:01.09 ID:ElV9Sjg00
なんかもう今日となっては"COBOLの第一人者が首まで海水に浸かりながら
意味不明なことを呟いてる"ぐらいの感じ
571名称未設定:2014/06/07(土) 19:59:36.05 ID:dPDwyq8U0
>>569
失礼だな
彼は自由ソフトウェア信者であってオープンソース信者ではない
オープンソースと呼ばれるモノの中には不自由なソフトウェアが含まれているからな
572名称未設定:2014/06/07(土) 20:01:48.99 ID:ElV9Sjg00
カルトじゃねーかw
573名称未設定:2014/06/07(土) 20:05:05.48 ID:XGBLssgn0
なんでそんなヤツを取り上げるのかさっぱりわからんな。注目に値するヤツなのか?
574名称未設定:2014/06/07(土) 20:05:36.89 ID:XGBLssgn0
なんでそんなヤツを取り上げるのかさっぱりわからんな。注目に値するヤツなのか?
575名称未設定:2014/06/07(土) 20:06:37.23 ID:XGBLssgn0
あら、Server Internal Errorちゅうたから書き込めなかったかと思ったら書き込まれてた
576名称未設定:2014/06/07(土) 20:16:00.88 ID:HGHAgQ140
日本語ドキュメント来てるのね
577名称未設定:2014/06/07(土) 20:29:30.91 ID:vSGDYBOR0
日本語ドキュメントって、GitHubに英文ドキュメントファイル丸々アップロードして
「翻訳ご協力ください」で丸投げのカスのことじゃないだろうなw
578名称未設定:2014/06/07(土) 20:37:18.10 ID:RCO/e1960
>>577 あれはアフカスだろ。 怪しすぎる。 
ホームページ見ても広告だけだし、参加の仕方も書いていないし、どうやってEPUB文書を編集するの?
何の説明もない。 
579名称未設定:2014/06/07(土) 21:10:11.08 ID:CuK4nNKO0
>>577
今見たけど、あまりの丸投げっぷりにワロタ
言い出しっぺがある程度訳さないと誰も追随しないだろ
580名称未設定:2014/06/07(土) 21:15:46.36 ID:RCO/e1960
ちょっと話は外れるけど、あのEPUBに圧縮されていないフラットな状態のXHTMLを読めるリーダってあるんだっけ? どこかで見たような気もするが。
581名称未設定:2014/06/07(土) 22:39:51.30 ID:fd4szTCB0
まぁでもとりあえずアクションを起こすことはいいことだね
582名称未設定:2014/06/07(土) 23:32:54.02 ID:UrnxAS5Q0
そうか? やる気のあるバカほど始末に負えないものもないんだが。職場とかでも。
583名称未設定:2014/06/07(土) 23:40:52.12 ID:fd4szTCB0
バカかどうかはまだわからない
まぁでもいちゃもんがついたみたいね
ttps://github.com/swift-jp/swift-guide/issues/1
584名称未設定:2014/06/07(土) 23:44:37.31 ID:UrnxAS5Q0
>Appleが新言語、Swiftを発表するも、すでに閉鎖的すぎて絶望しかない
>http://cpplover.blogspot.jp/2014/06/appleswift.html

煽り狙いではあるけど、まったく間違ってはいないよね。
あらゆる手段で囲い込みを計るAppleはかつて批判されたMS以上に薄汚いやり口と
いうか、不自由な世界を作り出そうとしている。
585名称未設定:2014/06/07(土) 23:46:59.62 ID:wNP0vLDG0
全くの間違いだね。
単にケチを付けたいだけ。
586名称未設定:2014/06/07(土) 23:48:41.63 ID:krwdO8lU0
君さ、実はどっかのアフィサイトの人で
必死でいろんなとこでマッチ擦ってみてね?
587名称未設定:2014/06/07(土) 23:48:51.11 ID:RCO/e1960
>>584 何言ってるんだか、今の処最初から iOS OSX 用なんだからどこが閉鎖的で何が不自由なんだよ。
ベータ版で開発者しかアクセスしちゃいけない物なのに仕様書だけはオープンになってるだけでも有りがたいと思わないと。

間違って仕様書が見れないなんて言っておいて見れる事が解っても謝りもしない。
588名称未設定:2014/06/08(日) 00:07:45.95 ID:8POy89TC0
いずれにしても蟲とその取り巻きは林檎のエコシステムとは対極の存在なので(今も昔も)、
いちいち関わっていてもらちあかないし誰も得しないので、放っておくが良い。
589名称未設定:2014/06/08(日) 00:09:33.88 ID:CuK4nNKO0
自分のやりたいプラットフォームを選べばよいだけの話だろ
590名称未設定:2014/06/08(日) 00:14:20.22 ID:8POy89TC0
むしろ今年のWWDCで感じたのは、明らかにiOS/OS Xを開放し始めているな、ということだね。
(ObjCに比べてSwiftは不自由という意見もあるけど)
591名称未設定:2014/06/08(日) 00:24:17.39 ID:v1CconXdI
楽なものが出来ると、ほぼ必ず頑固な否定派が出て来て、昔の苦労話をダラダラと垂れ流す。
ARCの時もそんな感じだったかも。
今回の変化は大きいので、開発者は総世代交代で良いかもしれない。
馴染めない古老はAndroidかなんかに流れたほうが良いかも。
592名称未設定:2014/06/08(日) 00:28:14.65 ID:l66y2dfq0
むしろObj-C使いは老害みたいなことを言って煽る変なののほうが多い気が...
593名称未設定:2014/06/08(日) 00:35:44.25 ID:8POy89TC0
ObjCが悪いとは思わないけどな。
ここぞとばかりにObjCを叩いてからSwiftを持ち上げる人多いけど。
594名称未設定:2014/06/08(日) 00:37:08.68 ID:8POy89TC0
Androidは2.x系の呪縛からなかなか離れられない「邪悪なプラットフォーム」(w
595名称未設定:2014/06/08(日) 00:44:30.25 ID:+AksWFVy0
「Obj-Cは文法が変態だから〜」とか、あれ絶対Obj-C部分じゃなくて
オブジェクト指向使いまくりで、なにやってんのかソース読めないとこで
挫折してるパターンだから、Swiftで書き方が変わったからどーこーってんじゃ
ないよなぁ。
596名称未設定:2014/06/08(日) 00:50:32.83 ID:lur1EasG0
>>591
同意
597名称未設定:2014/06/08(日) 00:56:25.16 ID:zZOeegfM0
メソッドの中でクラス定義もできるのか
なんかもう感覚的には完全にスクリプト言語だな
598名称未設定:2014/06/08(日) 01:27:50.16 ID:/LHw3JDB0
classとstructの違いがいまいちわからない。classだけあればいいんじゃないかな?
599名称未設定:2014/06/08(日) 01:42:49.37 ID:+AksWFVy0
クラスと構造体の違いがわからないと申したか
600名称未設定:2014/06/08(日) 01:57:20.69 ID:l66y2dfq0
言語仕様に
>Inheritance enables one class to inherit the characteristics of another.
>Type casting enables you to check and interpret the type of a class instance at runtime.
>Deinitializers enable an instance of a class to free up any resources it has assigned.
>Reference counting allows more than one reference to a class instance.
と書いてある

要するにOOPに使う(決定的な違いは継承とポリモーフィズム)のがclassなんじゃね
structの方が軽く、メソッド呼び出しはobjc_msgSendではなく普通の関数呼び出し(リンク時に解決)になる。
601名称未設定:2014/06/08(日) 02:21:17.79 ID:kYsIHi4N0
>>600
classは実行時にインスタンスの型が解釈/検査が検査されると書いてあるね
それに対してstructは(型推論によって)コンパイル時にインスタンスの型が解釈/検査される
型システムに関しては、
  "動的型付けで柔軟な class vs. 静的型付けで安全な struct"
という違いがあるということではないのかと思う

あと、型推論とOOPを両立した言語にはOCamlがあるけど、
こちらのclassは静的に型付けされるから(Swiftと比較すれば)安全だけど柔軟性には欠ける
Swiftのclassが動的型付けなのは、Smalltalkに由来するObj-Cの動的OOPをサポートするためだと
思うけど、言語作者の設計思想に違いが見えて面白い
602名称未設定:2014/06/08(日) 02:21:42.14 ID:/LHw3JDB0
>>599
この期に及んでこんな初歩的な疑問が湧くとはびっくりですw
structやenumのメンバーとしてメソッド定義出来るとかもう何でもありですわ。
enumなんて番号に名前付けるだけかと思ってたのに頑張り杉

>>600
ありがとうです。おっしゃるとおりstructは継承できないでした。
603名称未設定:2014/06/08(日) 02:23:09.74 ID:fxPet+3n0
LLVM IR中間バイトコードからJAVAバイトコードに変換するのがあるみたいだな。
LLJVM とProteusccの二つ。
Javaのライブラリーをどう呼ぶのか解らないが、Javaに無関係にSwiftでコンパイルして変換すれば動くはずだな。

Javascriptに変換するより確実性があるな。
SwiftでAndroidも開発できれば喜ぶのが沢山出てくるな。
てもやはりAndroid用フレームワークを利用しないといけないだろうから何らかのラッパーとかが必要になるんだろうな。
これはすぐにサードパーティーが出て来そうだな。
604名称未設定:2014/06/08(日) 02:35:14.67 ID:/LHw3JDB0
既存のクラス(?)をなんでも拡張できるextensionが強力過ぎる。たとえば
extension Int {
func timesRepeat( closure: ()->() ){
for i in 1...self { closure() }
}
}
というような定義をするとすべての整数にSmalltalk風のtimesRepeat:メッセージが送れる。
5.timesRepeat { println("hello") }
この結果helloが5行表示される。
省略無しだと5.timesRepeat( {println("hello")} )と書くのだけど省略できて上のように書けてしまう。
605名称未設定:2014/06/08(日) 02:50:42.46 ID:JFoFdlPO0
>>604
最近の言語ならできるでしょう
606名称未設定:2014/06/08(日) 03:33:29.50 ID:El0xj7750
>>584
不自由ってのは誰かの自由が自分の自由より優先された状態なんだから、まず君が何が欲しくて何を代償に出来るか言ってもらわないと
607名称未設定:2014/06/08(日) 04:08:52.32 ID:NM4Gbawy0
そういう頭でっかちの抽象的言説はどーでもいい
608名称未設定:2014/06/08(日) 05:22:27.36 ID:p7Uuq33q0
>>592
そう。なんでか使うヤツをターゲットにしているのが不思議w
Swiftを真っ向から否定しているヤツなんてみたことが無いんだけどなあ。珍しく
あ、ひとりObjective-Cも使ってもいない門外漢がここで取り上げられているけどw
609名称未設定:2014/06/08(日) 06:54:02.07 ID:fxPet+3n0
>>603 Android 開発用にGDK が有るね。 これがLLVM/Clang で使うキット見たい。
だからSwiftからも使えそう。
610名称未設定:2014/06/08(日) 07:27:14.30 ID:DK3IfApp0
switch文でbreakいらないのとか、VBに似てるな
611名称未設定:2014/06/08(日) 10:59:50.01 ID:NM4Gbawy0
Objective-C同様、引数にキーワードつけて読みやすくなってるのはいいんだけど
呼び出すときに
関数:キーワードつけない
メソッド:1つめ以外キーワードつける
イニシャライザ(というかコンストラクタ):全部キーワードつける
と統一されてないのがキモい。
612名称未設定:2014/06/08(日) 11:17:45.14 ID:l66y2dfq0
メソッドとイニシャライザの仕様の違いはイニシャライザはObj-C側に持って行く時に
イニシャライザの最初のキーワードにinitWith-が補完されたメソッドに変換されるという仕様からだろうね

関数は定義側でキーワード付けてあればキーワードで引数与えられるようだけどね。
613名称未設定:2014/06/08(日) 11:38:48.64 ID:/LHw3JDB0
>>611
たしかにそう思った
>メソッド:1つめ以外キーワードつける
[ mypoint movetoX:3 Y:4 ] みたいなObjective-C (Smalltalk) 表記に合わせることで、
移行や共存を楽にしようという意図があるのじゃないかな。この例なら
mypoint.movetoX(3, Y:4)って書き換えれば良いとすぐわかるし
614名称未設定:2014/06/08(日) 12:01:45.04 ID:zZOeegfM0
プロパティのweakはObjCでもあるから分かるんだけど、unownedってのが今一ピントこない
unsafe_unretainedと同じなのか? でも後ろに!をつける書き方もあってよう分からん
615名称未設定:2014/06/08(日) 13:28:37.45 ID:NodboPxq0
Swiftでautoreleaseブロックって作れないのか?
"Using Swift with Cocoa and Objective-C"にも記述が見当たらないのだが
616名称未設定:2014/06/08(日) 14:20:00.80 ID:cJePY/rU0
ジョブズがいたらswiftは存在しただろうか
617名称未設定:2014/06/08(日) 14:25:39.99 ID:jR7qZFiD0
>>616
開発は4年前からみたいだし、上の方で出てた翻訳スレで2011年には既に兆候が現れてたみたいだからね
あのドヤ顔で発表してただろ
618名称未設定:2014/06/08(日) 14:28:16.66 ID:zZOeegfM0
名前は飲み物系で言ってほしかった
Juiceとか
619名称未設定:2014/06/08(日) 16:21:21.17 ID:/LHw3JDB0
XcodeのInterface BuilderでボタンなどからSwiftソースコードにドラッグしてactionやoutlet指定するってのはまだ出来ないのかな?それ以前に入力補完もまだ効かない気がする。(playgroundでは効くけど)
620名称未設定:2014/06/08(日) 16:22:27.26 ID:+AksWFVy0
テキストのサンプルを上から順にプレイグラウンドに打ってたら
ループや制御文の辺りでなぜかループ数とか表示しなくなって焦った
コンソールになんかx86うんちゃらみたいなシステムエラー出てたけど
なんかそれかなぁ
621名称未設定:2014/06/08(日) 16:26:42.57 ID:/LHw3JDB0
>>619
新規プロジェクト指定するときに言語選べた。気づかなかった。お騒がせしてごめん。
622名称未設定:2014/06/08(日) 16:37:51.92 ID:cPzIxq8A0
英語読めないやつは、どこで勉強すりゃええのん
早く初心者本出してくれ
623名称未設定:2014/06/08(日) 16:40:33.69 ID:bKI+J4OO0
>>622
>英語読めないやつは、どこで勉強すりゃええのん

英語教室
624名称未設定:2014/06/08(日) 16:59:45.30 ID:NM4Gbawy0
そもそもobject cってnextで使ってたからプログラマが居た、という理由だけで選ばれて、
当時主流だったc++に比べて技術的に積極的に採用すべき理由なんて何もなかったよね。
メモリリークするC++とか悪口言われてさw

MSがjavaを素直に採用し続けれずに、c#作ったようなもので、ちょっと会社の調子がいいと
すぐ新言語作りたい病が始まるんだよな。

Appleの歴史って結構場当たり的な仕方の無い選択が多かったけど、そこに過剰に意味を
求めるというか、object cも積極的に推す奴がいたりしたけど、swiftが出たら一夜にして
ob-cの欠点を解消した・・・とか洗脳されちゃうのが笑える。
625名称未設定:2014/06/08(日) 17:03:14.54 ID:VGa4ByrY0
構ってちゃん。
626名称未設定:2014/06/08(日) 17:03:50.63 ID:fxPet+3n0
>>622 先ずはiBook が読める環境にした方が良いぞ。
MacかiOS端末で見るのが効率的。
HTMLバージョンを見て居ても、検索を全体にかけられないから。

解らなけりゃ単語をクリックすれば辞書も引けるし。
627名称未設定:2014/06/08(日) 17:09:43.40 ID:NM4Gbawy0
Tourの章ぐらいはすぐ読めるよな。
というか、ものすごく平易な英語じゃね? ラリー・ウォールとか変なジョークや凝った文ない
から悩む所無いし。
こんなので苦労している奴はいくら単語がすぐ引ける環境用意してもダメというか、義務教育
レベルの英語力も抜け落ちている根本的な欠陥があるポンコツ脳だからダメだと思う。
628名称未設定:2014/06/08(日) 17:10:27.43 ID:v7kSWOOo0
初代からPlusあたりまでにでたMacintoshの本でObjective-Cについていろいろ書かれてたなあ
あの頃からジョブズはObjective-C好きだったんだな
629名称未設定:2014/06/08(日) 17:24:33.04 ID:fxPet+3n0
この最初のドキュメントはすごくわかりやすく書かれてるね。

さすが、Document Guru 達が作り上げただけ有る。
630名称未設定:2014/06/08(日) 17:27:31.10 ID:lur1EasG0
英語を読めない人はとりあえずqiitaとかクラスメソッドのブログ読んでみればいいんじゃね
でもAPIリファレンスは英語のみだし、有用な情報も英語のブログや質問サイトだから結局英語を読めないとアプリ書けないよ
631名称未設定:2014/06/08(日) 17:45:15.69 ID:p7Uuq33q0
>>624
そういえばMSのJavaに対してかって変えんなぼけえとSunが文句言っていたような
もろもろ短絡的で認識が甘いなそのレス
632名称未設定:2014/06/08(日) 17:48:57.15 ID:cPzIxq8A0
このスレにいる人達はみんな英語読めるのかぁ。すごいなぁ。
633名称未設定:2014/06/08(日) 17:52:45.59 ID:KfO32TO80
能書きはもう良いからなんか作ってみた報告とかねーのかよ
そこでここが良かったとか悪かったとか具体的な話があれば説得力がある
ぐだぐだ理屈ばっかり達者なクズばっかりだなここは
634名称未設定:2014/06/08(日) 17:53:09.50 ID:bKI+J4OO0
普通の大学出てりゃ英語くらい分かるだろ。
何年習ってんだよ?

という煽りはこのくらいにして、技術系の英語の本は分かりやすいよ。
出てくる単語は限られてるし、文法も限られてる。
しばらく読んでりゃ慣れる。
635名称未設定:2014/06/08(日) 17:55:58.22 ID:p7Uuq33q0
>>633
お前がやればいいじゃん。お前の欲しいレス情報が無いからそれって、だだこねているだけで、そのクズとやらと同等かそれ以下だろうw
ほとんど大勢が手探りだろ。手探りの中から良い情報もあればいろいろあるだろう
636名称未設定:2014/06/08(日) 18:04:04.04 ID:lur1EasG0
まだbeta1だし、Swiftの言語仕様だけでアプリ書けないし
637名称未設定:2014/06/08(日) 18:07:51.74 ID:KfO32TO80
能書きだけじゃなくて、まず手を動かしてモノ作り出来る奴の例

Appleの新プログラミング言語、Swiftを使って半日くらいでFlappy Birdのクローンが書けた
http://jp.techcrunch.com/2014/06/05/20140604a-developer-cloned-flappy-bird-using-apples-new-programming-language-swift-in-a-matter-of-hours/
638名称未設定:2014/06/08(日) 18:14:21.26 ID:lur1EasG0
うん、秀才はすごいよね
俺凡人だから地道に頑張るわ
639名称未設定:2014/06/08(日) 18:28:10.44 ID:w449YzEi0
>>338で出てるし
いちいち貼らなくていいよ
640名称未設定:2014/06/08(日) 18:46:01.37 ID:/LHw3JDB0
この週末でSwift Tourの例題ほとんど試したし、IBでoutletやactionも接続できるようになったし
明日からSwiftでOSX/iOSの簡単なアプリが書ける気がしてきたよ
641名称未設定:2014/06/08(日) 19:05:02.08 ID:vC30T3p40
>>628
Cを拡張してオブジェクト指向となると、いまになってみれば
C++よりObjective-Cの方が筋がいいとわかるけど
プログラミング言語というのが一つのCPUで単一のコンパイル済みのアプリを
動かすことしか想定していないのだったら動的管理なんて
特殊なケースだし管理ランタイムで貧弱なCPUパワー食う意味ないし
そりゃC++の"継承による再利用がオブジェクト指向!"ってなるよな。
マルチコアでマシンパワーが湯水のようになるのに15年
ああ、悲しいかなObjective-Cが本来の力を発揮し始めたら
こんどはThe Cの部分が足を引っ張り世代交代とは…
642名称未設定:2014/06/08(日) 21:51:46.75 ID:v1CconXdI
よく分からんが、昔のMacはPASCALじゃなかったけ?
objcはネクストからだったと思う。
それにジョブズはプログラムはやらなかった。
言語についてのこだわりはなかったはず。
643名称未設定:2014/06/08(日) 22:21:23.26 ID:p7Uuq33q0
そういえばソースが公開されたとニュースがあったなあと、
http://www.computerhistory.org/atchm/macpaint-and-quickdraw-source-code/
PASCALとアセンブリだな。その後C(,C++)となったみたいだけど
644名称未設定:2014/06/08(日) 22:26:24.89 ID:bKI+J4OO0
昔はアセンブラ以外だとまともな使える言語ってPASCALとFORTRANくらいしかなかったから。
WizardryとかもPASCALで作られてた。
645名称未設定:2014/06/08(日) 22:32:40.04 ID:CYtPvqju0
>>629
昔のInside Macintoshを思い出したわ
とても読みやすいドキュメントで中学高校ぐらいの英語やってれば
すんなり読めるのね
あれのおかげでこの手の英語のドキュメント読むのは怖く無くなった
646名称未設定:2014/06/08(日) 23:34:04.57 ID:jVfccZa90
>>611でも出てるけど、関数の引数の指定がバリエーション豊かでキモい
下位互換とか親和性とか、色々詰め込みすぎだろ
drawMessage(message: String, x: Int, y: Int) // drawMessage("Hello", x:0, y:0)
drawMessage(messageText message: String, x: Int, y: Int) // drawMessage(messageText:"Hello", x:0, y:0)
drawMessage(#message: String, x: Int, y: Int) // drawMessage(message:"Hello", x:0, y:0)

関数、コンストラクタ、メソッドで分けてるんじゃなくて
Obj-C => Swift への互換実装時に担当者の気分で決めてねーか、これ
Cocoa.Framework でケースバイケースなI/F定義で混乱したわ

ところで、>>640
SwiftでMac OSアプリを作ってみたが、xibからswiftコードの@IBOutletの繋ぎ方がワカランかった
どこのマニュアル読めば分かるのか教えておくれ
647名称未設定:2014/06/08(日) 23:44:47.11 ID:5jjszdbq0
xibから.swiftへドラッグアンドドロップでできる
648名称未設定:2014/06/09(月) 00:02:10.93 ID:GltZN4OB0
一応試してみたが、それiOS Appの場合だけじゃね?
Mac OS Appだとスムーズにいかんのだが、Mac OS App + Xcode のマニュアル少なすぎる
質問しておいてアレだが、言語の問題じゃなくIDEの問題だからXcodeスレに行くべきか
649名称未設定:2014/06/09(月) 02:17:40.81 ID:P4MA4Mxs0
インラインアセンブリの使い方はよ
650名称未設定:2014/06/09(月) 09:51:48.86 ID:v9C2059s0
githubのswift日本語訳プロジェクトがボロカスに叩かれててワロタ
コメントにもあったけど、みんな第一人者になりたくて必死だな
オセロみたいに一発逆転のチャンスなのはわかるけどさ
651名称未設定:2014/06/09(月) 09:57:50.71 ID:FRb3CdOL0
>>650
許諾気をつけろよの一言でいいのに、必死すぎて笑える
652名称未設定:2014/06/09(月) 10:09:27.03 ID:AULtVD0U0
swift-jpに関しては明らかに他人任せだったり、原文地引き網してたり、が反感に拍車をかけてるだろ
こういうのは言い出しっぺが積極的に動かんかぎり、叩かれてなかったとしてもどのみちうまく行かなかっただろう
653名称未設定:2014/06/09(月) 11:23:29.39 ID:6BtT38r60
プログラミング経験まったくのゼロだけど、swiftから始めてもいい?
654名称未設定:2014/06/09(月) 11:30:42.26 ID:zNNFc2750
いいけど開発や動作環境どうするのさ
655名称未設定:2014/06/09(月) 11:34:07.94 ID:6BtT38r60
開発?
656名称未設定:2014/06/09(月) 11:48:22.33 ID:TKha+iTb0
>>653 Mac を買って、OSXの正式発売秋までまつ。 待てなければデベロッパに入る。1万円しないんだから安いものだが。
657名称未設定:2014/06/09(月) 12:10:02.21 ID:/Cu8v+E20
その様子ならswift触るのは半年待った方がいい
pythonとか他の言語からはじめたら?
658名称未設定:2014/06/09(月) 12:42:20.85 ID:i+q9lM3N0
プレイグラウンド触ってるとこれ最強のプログラミング学習環境じゃん!って思うんだけど
いまのところ英語がネックだよなぁ…あと出たばかりで関連文献の無さ。

『Swiftで覚えるプログラミング』(日本語)とか出始めるまでつらい。
659名称未設定:2014/06/09(月) 13:07:58.01 ID:oNgVYP7f0
githubの翻訳プロジェクトどんどん泥沼になっていって遠くから見てるぶんには最高に面白いな
660名称未設定:2014/06/09(月) 13:21:15.59 ID:v9C2059s0
朝見た後に昼休みにも見たんだが、悪い方向にどんどん盛り上がってるwww
661名称未設定:2014/06/09(月) 13:21:42.02 ID:+Fk+LNkd0
どっちにしろSwift本の翻訳版は
ttps://developer.apple.com/jp/devcenter/ios/library/japanese.html
に、遅かれ早かれ出てくると思うんだが
662名称未設定:2014/06/09(月) 13:22:52.69 ID:AULtVD0U0
> 協議した結果

1人で脳内協議したのかなw
663名称未設定:2014/06/09(月) 13:29:18.83 ID:v9C2059s0
>>661
そうなんだよね
求められてるのは完訳じゃなくて、初心者本とか既存コードとのミックスとかガイドから読み取れるノウハウのほうじゃないのかな
664名称未設定:2014/06/09(月) 13:30:00.91 ID:fyIZFMCp0
翻訳あったほうが絶対いいのに
マカーはケチ多いんですねw
665名称未設定:2014/06/09(月) 13:30:43.75 ID:mY7uyc700
お前は何も出来ないのにね。
666名称未設定:2014/06/09(月) 13:31:22.13 ID:fyIZFMCp0
あると便利なものを当事者でもないのに拒否するってw
よほど新人を恐れているようだww
667名称未設定:2014/06/09(月) 13:31:46.12 ID:mY7uyc700
でもお前は何も出来ないのにね。
668名称未設定:2014/06/09(月) 13:33:20.17 ID:v9C2059s0
こんなゴタゴタを見てる暇があったら辞書片手に原文読んだ方がよいぞw
669名称未設定:2014/06/09(月) 13:44:30.87 ID:+Fk+LNkd0
Wikipediaの方が進行早いぞ 

ttp://ja.wikipedia.org/wiki/Swift_(繝励Ο繧ー繝ゥ繝溘Φ繧ー險隱?)
670名称未設定:2014/06/09(月) 13:45:46.31 ID:+Fk+LNkd0
あれ?文字化けした
もう一回

ttp://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)
671名称未設定:2014/06/09(月) 13:47:36.57 ID:TKha+iTb0
>>659 あいつ余程のバカだな。 翻訳は許されたとしてもiBooksを違法コピーして公にするなんて。
文章だけなら許されて翻訳と言う事は可能性としてはあるが、CSSからDOMや何から丸ごとコピーが許される訳が無い。

著作権もソフトの事も知らないまるで見当違いのど素人みたいだな。
672名称未設定:2014/06/09(月) 13:52:46.98 ID:v9C2059s0
>>670
おお、訳がなかなか読みやすいw
673名称未設定:2014/06/09(月) 13:58:49.10 ID:AULtVD0U0
674名称未設定:2014/06/09(月) 14:06:46.46 ID:TKha+iTb0
>>673 図々しいやっちゃな。 ちゃっかり宣伝入れたらさっそく削除されてんの。

*[http://swift-jp.com Swift言語 | 日本語ドキュメント] {{Ref-ja}} - [[濱田優]]による公式ドキュメントの翻訳

こいつだな。
https://ja.wikipedia.org/wiki/%E6%BF%B1%E7%94%B0%E5%84%AA
はまだゆう
生誕 1983年10月7日(30歳)
千葉県
675名称未設定:2014/06/09(月) 14:24:39.15 ID:FRb3CdOL0
>>674
自分のWikipediaまで追加してんのか、こりゃ随分と面の皮が厚いな
676名称未設定:2014/06/09(月) 14:35:44.94 ID:TKha+iTb0
>>674 しかもGitHubは皆でとか言いながら、もうちゃっかりと自分の翻訳だなんて書きやがって殴りたくなってきた。

ところで、Playgroundsでリアルタイムの変数表示をストップさせる事は出来るんだろうか
677名称未設定:2014/06/09(月) 14:43:03.17 ID:eQRDYdMc0
>>673
すごいなーwww
なんかこんなすごいヤツ久しぶりにみたような気がする
678名称未設定:2014/06/09(月) 14:43:09.40 ID:SbY3tpyY0
>>674
とんだ道化師だな
679名称未設定:2014/06/09(月) 14:54:22.26 ID:eQRDYdMc0
>>662
ということは、脳内でなかったら秀和かな?
ヤツが話持っていって秀和乗り気で、ある意味秀和後押しだったらおもしろいなー(棒)
680名称未設定:2014/06/09(月) 14:59:24.98 ID:v9C2059s0
なんかこれはもういろいろおかしな事案になってしもうたな
681名称未設定:2014/06/09(月) 15:02:29.42 ID:sMlC1Udi0
どうせそのうちAppleから日本語訳くるんじゃないの?
682名称未設定:2014/06/09(月) 15:06:45.95 ID:AULtVD0U0
昔はAppleのドキュメントの翻訳権って確か ttp://www.mosa.gr.jp/ が持ってたよな
今ってどうなってんだろ
683名称未設定:2014/06/09(月) 15:14:00.88 ID:lmGfrnL50
しかしこれからは小学生がそこそこ英語使える時代になるのでしょ?
となれば「僕英語苦手で…」と薄ら笑いを浮かべている大人も
さすがにどうにかせざるを得ない訳で、英日訳の需要はないんじゃないかなあ
684名称未設定:2014/06/09(月) 15:20:00.88 ID:sMlC1Udi0
英語しかなければ英語で読むけど、日本語で読めるならとりあえず日本語を読むけどな。
685名称未設定:2014/06/09(月) 15:21:14.20 ID:DDLwYEhI0
だね
んで翻訳がおかしいっぽいとこだけ原文を読むw
686名称未設定:2014/06/09(月) 16:20:37.45 ID:k47Ly25j0
なんつーか、サムラゴーチを彷彿とさせる香具師だな
687名称未設定:2014/06/09(月) 16:27:21.37 ID:eQRDYdMc0
>>681
Objective-C 2.0とかはノリノリだったから、言う通り出そうだと思うけどねえ
688名称未設定:2014/06/09(月) 16:42:16.14 ID:zNNFc2750
英語以外だと日本語のほかにどんな言語で出てるのかな
689名称未設定:2014/06/09(月) 17:53:01.72 ID:DtkVZgI10
GitHub見ると、Chineseとか、Koreanとかの同種のプロジェクトがあがってるね
どこの国にも似たような奴がいるようでw
690名称未設定:2014/06/09(月) 17:57:11.55 ID:v9C2059s0
考えることは一緒だなw
国籍や国境なんか無い
691名称未設定:2014/06/09(月) 20:13:10.21 ID:v9C2059s0
ますます炎上してるけど、あのプルリクは面白いと思ってやってるんだろうか
うすら寒いけど
692名称未設定:2014/06/09(月) 21:14:21.21 ID:C/4N/jWU0
C++の死亡が決定的になったな
693名称未設定:2014/06/09(月) 21:17:35.77 ID:o1u/hjID0
お前らは何かやろうとしている人を見つけると、まずは足を引っ張ろうとするんだな。
どうでもいい瑣末なことばっかりこだわって、ゲームの一本でも書いてみることすらしないし。
プログラミングが好きなんじゃなくて、匿名で偉そうなことを言いたいネットイナゴなんだろうなあw
694名称未設定:2014/06/09(月) 21:26:06.07 ID:i+q9lM3N0
C++は本来のまさにC+1の場所で活用され続けるんじゃね?
もともと、他にいい位置の言語がなかったから広がりすぎただけで。
695名称未設定:2014/06/09(月) 21:29:31.99 ID:mY7uyc700
>>693
誰と会話してるんだよカス。
696名称未設定:2014/06/09(月) 21:50:45.98 ID:AULtVD0U0
Playgrounds落ちまくるううおおおイライラ
697名称未設定:2014/06/09(月) 22:25:31.65 ID:WsO1VMd/0
>>650
あれはあれで役に立つものなんだからやらしときゃいいのに
足の引っ張り合い多いよな。日本人特有だ。
698名称未設定:2014/06/09(月) 22:48:32.97 ID:xqLfacoo0
焦る必要は何もないのになんでそんなに焦っているの?
ヤツの場合はAppleから返事来るまで停止がまとも。なんだかわからんが焦って先行する意味は、なんか別の要因があるんじゃねえのってえの
お前もなんで焦ってるの?そのうち近くAppleの正式日本語訳のが出るよ
699名称未設定:2014/06/09(月) 22:53:00.73 ID:v9C2059s0
そりゃ有名になりたいから、じゃないの
GoとかTypeScriptとはインパクトが全然違うし
700名称未設定:2014/06/09(月) 22:54:24.87 ID:NnswY+Jf0
英語のドキュメントを読めない時点で、半分負け組だろ。
701名称未設定:2014/06/09(月) 22:55:53.76 ID:xqLfacoo0
>>699
それかもしれないがそれじゃないかもしれない。が、うさん臭さが漂う
そういえばXcodeのAPI Documentationを地道に独力で日本語化して公開していた人がいたなあ。ああいうのは好ましいw 著作権的にはアウトだったのかもしれないが
702名称未設定:2014/06/09(月) 22:56:37.51 ID:n2usYCnE0
こんなの、英語というより技術英語だから単語なんて限られているし、
これが読めなかったらLibrary Referenceとかstackoverflowとかどうするのかな?
703名称未設定:2014/06/09(月) 23:23:21.28 ID:v9C2059s0
>>701
完全に一人で単独で訳してから公開してたら、また反応も違ってたかもね

中国ではすでにGirHubで有志による訳が開始されてて1000スター超えてる
お国柄の違いかw
704名称未設定:2014/06/09(月) 23:30:20.79 ID:Se/blr7H0
あの国が著作権とか気にする訳ないだろ
705名称未設定:2014/06/09(月) 23:33:41.43 ID:cmzWTRl40
>>701
京都の人だな。
706名称未設定:2014/06/09(月) 23:38:06.58 ID:DtkVZgI10
まぁ、Swfitの公式アイコンをそのまま流用してる時点で、あぁそういうことには無頓着な人なんだってのは分かるよ
707名称未設定:2014/06/09(月) 23:54:44.74 ID:cmzWTRl40
あの手の奴に関わると、後で自分まで痛い目にあるだろうから、俺は暖かめに
見守ってるよ(っていうか、別に見る気もしないけど)
現状で、Devで配布されている英語のリファレンスで大体の事はわかるし、無
理に日本語のマニュアルはなくてもいいかなぁ〜って思うわ。
708名称未設定:2014/06/10(火) 00:02:49.12 ID:Qu+0YeoX0
こういうところにも勢いの差が表れるな。
日本製品とアジアの新興勢力情勢そのまんまを見るようだ。
良いか悪いかはまぁおいといてw
709名称未設定:2014/06/10(火) 00:04:23.56 ID:IlbtaZwx0
中国の団結力凄いなw
IssueやPull requestも活発だしContributorも多い
710名称未設定:2014/06/10(火) 00:04:39.61 ID:KTS4uekY0
Swiftから入っちゃうと、C覚えるの大変そう?
711名称未設定:2014/06/10(火) 00:07:35.94 ID:DpWaR1n30
WiKiの方もGitでやれれば良いのにな、手伝おうと思ってもぶつかりそうで怖くて手が出せない。
712名称未設定:2014/06/10(火) 00:15:19.63 ID:jxLNxGvH0
単純に日本語に訳してるの読むよりも、各章の要点掻い摘んで紹介してくれてるブログの方が分かり易いしな
713名称未設定:2014/06/10(火) 00:25:40.60 ID:G0fQfXNO0
これから翻訳本売ろうとしてる偉いさんが困るからね。
潰されたね。
日本はやっぱだめだね〜
714名称未設定:2014/06/10(火) 00:32:34.19 ID:DpWaR1n30
違うよ。 あいつは人の手を借りて成果は全て自分の物にしようと言う魂胆が見え見えだから誰も同情しないんだよ。

本当に共同翻訳するつもりなら協力者も現れるだろうけど一人もあらわれないだろ。

それにプロジェクトをまとめた経験もなさそうで、あんなやり方でプロジェクトが進むわけ無い。
715名称未設定:2014/06/10(火) 00:35:46.56 ID:An73VHFj0
一応Language Guideまで読了
やっぱ言語レベルでの例外処理(トライキャッチ)はないみたいね
あと、正規表現も出てこなかったからこれも言語レベルでは無さげ
NSRegularExpressionを使えってことなのかな
どうせならPerlやRubyみたいに簡潔な記述で正規表現使いたかったけどなぁ...
プロトコルも結局、オプショナルなメソッドを定義したり、適合性をチェックするには、@objcの属性がいるみたいで、Objective-Cとの結びつきが強いみたいね
こりゃObjective-Cは当分残るでしょ まぁCocoa自体がObjCで書かれてるからやむを得ないか
こんな仕様じゃオープンソース化しようにも難しいかもね

静的型付けの言語でありながら動的型付きっぽく書ける型の類推とか、列挙型にメソッド定義できたり、ネストした型を定義できるのはいいね
クラスと構造体は代入時の振る舞いも変わるし、値を変える時はmutatingの指定が必要だったりとか、慣れるまでは使い分けに悩みそうだなぁ
クラスの2フェーズの初期化もちょっと他の言語と違うから流れをしっかり頭に入れとかないとなぁ
Genericsや演算子のオーバーロード、Subscriptなんかはアプリ開発者の立場からはあまり使う機会無いかなぁ
ライブラリ作る人にはありがたいかもだけど

ということで、さて次はどうしよう...とりあえずWWDCのSwift関連のビデオでも見るか
716名称未設定:2014/06/10(火) 00:39:30.06 ID:kg7c9yM70
>>713
>これから翻訳本売ろうとしてる偉いさんが困るからね。

翻訳して売ろうとするような馬鹿はいないよ、この馬鹿。
717名称未設定:2014/06/10(火) 00:41:26.52 ID:LtlCFwjy0
つーかまんこだよ
718名称未設定:2014/06/10(火) 01:05:14.36 ID:IlbtaZwx0
しかし、ツイッターで色んな有名人からフルボッコにされてそれに乗っかるフォロワーにもフルボッコとは。
元々グレーというより黒なのに言い訳がましく反論したのも火に油だけど、ありゃプチネットリンチにも見える。
規約読んでねー、著作者に確認してねー、了解ですー、で済む話なのに。
719名称未設定:2014/06/10(火) 01:06:58.42 ID:C6w89X2u0
とにかく他人が有名になるのが許せない、なんでもケチ付けてやる、って奴が多すぎるよな。
こういうときに限って著作権著作権とわめきだすが、普段は動画サイトとかで違法動画みたり、
山形浩生の無断翻訳とか読んでいるクセに。
720名称未設定:2014/06/10(火) 01:08:42.97 ID:S9XV5+8b0
いや、アレはリンチされても仕方ないだろ。忠告受けてすぐに削除しとけば叩かれなかったのに
721名称未設定:2014/06/10(火) 01:10:54.13 ID:Qu+0YeoX0
まさに現代日本の縮図
722名称未設定:2014/06/10(火) 01:11:22.92 ID:aqO1dR/C0
近づかない方が良いよ
723名称未設定:2014/06/10(火) 01:48:39.82 ID:DpWaR1n30
Githubは消したみたいだな。
724名称未設定:2014/06/10(火) 02:02:52.45 ID:J4Y67Cw+0
言語となんにも関係ない話題だったんで
もともとスルー&しつこいのは
その話しかしない荒らしとみなしてNGしてたわ。
725名称未設定:2014/06/10(火) 02:38:21.10 ID:IYkYZZxl0
NG指定したなら黙ってりゃいいのに、なんでいちいち報告したがるのだろう?
ほんとにバカなのかな?
726名称未設定:2014/06/10(火) 02:49:24.74 ID:uZ/Z1JLT0
構ってちゃん。
727名称未設定:2014/06/10(火) 07:00:32.23 ID:IlbtaZwx0
ほんとそれ
なんか誇示したいのかね
728名称未設定:2014/06/10(火) 07:15:57.50 ID:rcmSRe740
そろそろネットウォッチにでも移ってやってくれ
729名称未設定:2014/06/10(火) 08:09:58.28 ID:KEqtDbE/I
規約、規制だらけで身動きが取れないとは、やっぱり日本だ。すばらしい。
しかも英語力は世界でも最低レベルw
730名称未設定:2014/06/10(火) 08:55:34.56 ID:EfU96y2c0
著作権とか権利関係に無頓着な奴って大抵自分の力で何かを生み出した事の無い奴なんだよなぁ……権利を侵害される側になれば、権利や規約は守らなきゃいけないって事はまともに教育された日本人なら誰でも分かる事なんだが
731名称未設定:2014/06/10(火) 09:15:13.43 ID:olgWaOeU0
>>728
同意
732名称未設定:2014/06/10(火) 09:27:56.26 ID:/1cSTTgZ0
>>729
気に入らない事があれば社会が悪いだの日本が悪いだの
いちいち大げさで気持ち悪い
733名称未設定:2014/06/10(火) 09:32:43.99 ID:mhkz7Kid0
>>724
ほんこれ
俺もNGにぶち込んでスルーしてたわw
734名称未設定:2014/06/10(火) 09:32:54.27 ID:PjO179y20
>>729
英語力は文章に限っては全然低くない
会話が糞なだけ
日本がどうのこうの言う前にまず自分だな
735名称未設定:2014/06/10(火) 09:51:59.89 ID:eiw+NI9I0
日本は〜と言ってる人たちは
何処の国と比べて言ってるのか気になるところではある
736名称未設定:2014/06/10(火) 09:52:58.65 ID:mhkz7Kid0
はぁ、今日も粛々とNGにぶち込む作業継続かぁ
そろそろ黙ってスルーしろよお前らw
737名称未設定:2014/06/10(火) 10:03:38.09 ID:IlbtaZwx0
黙ってNGしてろよw
738名称未設定:2014/06/10(火) 10:33:55.44 ID:BG6kYGkn0
そろそろSwiftの話でもしようか
739名称未設定:2014/06/10(火) 10:35:28.07 ID:F9BrsF9h0
燃えろいい女、宿無し、あんたのバラード、ひきがね、、いい歌ばかりだったな。
740名称未設定:2014/06/10(火) 10:39:57.02 ID:F7eblmPR0
それはツイスト
741名称未設定:2014/06/10(火) 10:45:07.84 ID:F9BrsF9h0
坂道でいきなり車うごかなくなっちゃって…
742名称未設定:2014/06/10(火) 10:46:09.64 ID:Zwj/Fv2y0
それはエンジンストール、全然違う
743名称未設定:2014/06/10(火) 10:48:15.23 ID:F9BrsF9h0
よく東急ハンズのライバル店ってみられるよね、黄色い看板目立つけど
744名称未設定:2014/06/10(火) 10:54:03.91 ID:Sio9Dfx20
なんだかわからないのでいろいろ検索してみたが、、、、
ロフトって西武から独立してたのか・・・
745名称未設定:2014/06/10(火) 10:59:01.12 ID:9Hugl58c0
特徴的な角度で振り向く女の子が多いアニメ製作会社、嫌いじゃない
746名称未設定:2014/06/10(火) 11:10:38.33 ID:envvR9ai0
それはシャフ度
747名称未設定:2014/06/10(火) 11:27:21.93 ID:jDCxr2TB0
6月1日の来日公演見に行けなかった〜
748名称未設定:2014/06/10(火) 11:36:20.42 ID:F9BrsF9h0
それはテイラー・スウィフト


企画部門の人とかがホワイトボードに弱み・強みとか区分けしてドヤ顔で解説しても何言ってるかサッパリなやつ
749名称未設定:2014/06/10(火) 13:02:33.33 ID:5qAjV92I0
それはSWAT
750名称未設定:2014/06/10(火) 13:17:22.56 ID:ewhAJHU+0
小保方?
751名称未設定:2014/06/10(火) 13:19:11.10 ID:An73VHFj0
日本の平均的なIT技術者のレベルが何故欧米と比べて格段に劣るのか
このスレを見てるとよく分かりますね
752名称未設定:2014/06/10(火) 13:19:31.48 ID:TA92Y3bd0
あー
インドで未だ身分制度が残ってるらしいね〜
753名称未設定:2014/06/10(火) 13:24:55.23 ID:e1R5l7ha0
それはカースト

イカエビホタテ
754名称未設定:2014/06/10(火) 13:25:13.16 ID:IlbtaZwx0
アメリカではITエンジニアはスター職業、日本だとキモオタだもの
755名称未設定:2014/06/10(火) 13:26:11.64 ID:uZ/Z1JLT0
構ってIDコロ助。
756名称未設定:2014/06/10(火) 14:54:04.89 ID:Z1l9QSst0
効率化しか出来ない創造性のない人間がITエンジニアやってもつまらない事しか出来ませんよ
757名称未設定:2014/06/10(火) 15:04:58.62 ID:Dq5vuvjZ0
\(^O^)/ 了解で〜す
758名称未設定:2014/06/10(火) 15:22:20.68 ID:80UgjlWc0
SWATさいぼうはありまぁすっ!
759名称未設定:2014/06/10(火) 16:36:03.63 ID:fxOhWQ3Y0
>>726
お前どこにでも沸くのなw
760名称未設定:2014/06/10(火) 18:16:47.71 ID:LtlCFwjy0
小保方は熟女物でAVデビューするべき
761名称未設定:2014/06/10(火) 18:21:41.15 ID:uZ/Z1JLT0
構ってIDコロ助。
762名称未設定:2014/06/10(火) 19:51:03.37 ID:Dq5vuvjZ0
PLaygroundが便利すぎて鼻血出た
ビューや画像の結果をビジュアルに表示してくれるのはいいね!
763名称未設定:2014/06/10(火) 21:10:28.39 ID:fxOhWQ3Y0
>>761
構ってはお前だからな 病院行けよ
764名称未設定:2014/06/10(火) 22:25:25.82 ID:6it/rpRD0
NGID:fxOhWQ3Y0
765名称未設定:2014/06/10(火) 23:52:12.68 ID:kHTIW8Hr0
Appleの新言語「Swift」のドキュメントを無断で翻訳するプロジェクトが登場して話題に
http://yro.slashdot.jp/story/14/06/10/0221202/

スラドでも話題になってんな。

まあ、やっぱり著作権云々言うのは足引っ張りたいだけだよな。
そうじゃないなら他のWEB上の勝手翻訳にも文句付けろよ、と。
中国や韓国の同じようなプロジェクトが進んでいるのをみると、日本人の陰湿さが
良くわかる。
766名称未設定:2014/06/10(火) 23:59:24.21 ID:apJy/wUJ0
アップルがストップかけたならともかく、役に立つならやらせれば良かったのに
767名称未設定:2014/06/11(水) 00:06:24.53 ID:9342tacW0
>>765
> 批判というか嘲笑されてる訳 (スコア:5, 参考になる)
> by Anonymous Coward on 2014年06月10日 12時24分 (#2618369)
>
> この主催者が嘲笑されてるのは、
> ・プロジェクトを作っても自分では殆ど訳さない
> ・Wikipedia の Swift のページに個人プロジェクトへのリンクを張る(即リバート)差分 [wikipedia.org]
> ・Wikipedia に自分のページを自分で作る 濱田優 [wikipedia.org]
>
> とかやってる、哀れ感全力の道化だからだよ。
768名称未設定:2014/06/11(水) 01:48:50.52 ID:JKWOWOnV0
若者が抱く「何者かになりたい」願望を嗤うのは気の毒。
769名称未設定:2014/06/11(水) 01:53:47.26 ID:W6xhNSlR0
何かやろうとしている人を指差してあざ笑うのがfjからの日本のネットの伝統だもんな
優しく諭して、間違いを許してやるとかできないのか?
この人もずっと言われ続けるんだろうな
770名称未設定:2014/06/11(水) 02:25:02.08 ID:ErbqPZot0
>>768
そういう言い方が一番残酷だと思うわw
771名称未設定:2014/06/11(水) 02:29:28.11 ID:W6xhNSlR0
今見てみたら、サイトのプロジェクトそのもの閉じちゃったね
お気の毒
772名称未設定:2014/06/11(水) 02:51:05.59 ID:TNGZtFF20
やりたいから協力してといえば、そんなの駄目じゃんというのは何処でもいて
そういうのがよくないんじゃなくて、やりたいことへの試練の1つだから
もし、いわれるのが嫌なら、全部できあがってからやりましたって出すべき
それにしても
会社でも仕事ほったらかしでSwiftのサイトばかり見てる奴がいるけど
時流からして新言語はただの流行で重大なことでもなんでもないから
あちこち新言語だらけで、言語の習得に時間を取られるのが正直うんざり
773名称未設定:2014/06/11(水) 05:40:48.40 ID:kva3Jeoi0
ギタリスト、ベーシスト、ドラマ募集
当方ボーカル
なんて募集を掛ける人間も、歌にはそれなりに自信があるわけだしさ

翻訳者募集
当方名声担当
ではな
774名称未設定:2014/06/11(水) 07:08:55.59 ID:ovbdhwVN0
>>767
ほんとこれに尽きるよなあ
予め自分で何割か訳した上でGitHubでのみ公開してたら、世論の風向きは違ってたかもね
あれじゃあフリーライダー臭が強すぎて四面楚歌になるわ
775名称未設定:2014/06/11(水) 07:13:24.18 ID:ovbdhwVN0
あるいは一人で完全に訳してから公開して、外野からの指摘にも「俺が一人でやってること、俺一人でリスク背負ってやってるんだから口出しすんな」とかなら、もう抱かれてもよかったのに
776名称未設定:2014/06/11(水) 08:27:59.13 ID:I5/20kIP0
>>698
他人が焦ってるように思えるのはおまえの心が焦ってるからじゃないの?
777名称未設定:2014/06/11(水) 08:44:00.84 ID:jJskYrVjI
iosに限っては新言語は重要だわな。
Cは画像処理とかで必須だから残るだろうけど、99%のアプリはswiftになるだろうね。
778名称未設定:2014/06/11(水) 09:14:34.02 ID:ZumFR7xv0
うむ、仕事でiOSアプリ作ってるなら、今Swift調べてないプログラマはプロじゃない。
779名称未設定:2014/06/11(水) 09:24:03.92 ID:wOsbmQWd0
だな、そしてそろそろそんなに騒ぐモノじゃないと分かってきた

言語なんてツールでしかないから、生産性も品質も変わらない
むしろ、 appledocとかコーディング規約とか整備されてない分、まだ製品で扱っちゃいけない
780名称未設定:2014/06/11(水) 09:52:14.55 ID:ISHq6i2s0
Playgroundって、変数の履歴やアニメーションの動きを可視化してくれるって意味では新しいと思うんだけど、
こういう実行環境って他にもあるんだっけ?
781名称未設定:2014/06/11(水) 10:11:50.02 ID:/fT+iuOJ0
>>776
残念ながらそれは全く見当違い
最後に「そのうち近くAppleの正式日本語訳のが出るよ」で完結しているので。わかりやすく簡潔にすると、待ってればいいだけじゃんだから
782名称未設定:2014/06/11(水) 10:15:06.09 ID:7r3JWfGp0
Appleの日本語訳も時には解りにくいことがあって、原著をみて理解することが幾度か。
結局は時間が経過して
ググってあちこちのブログなどで
検証された方々のコードで試して体得するのが一番だったりするw
783名称未設定:2014/06/11(水) 10:20:21.27 ID:dkm/Zv7b0
iBooks読みづらいな、、pdfにしてくれんかのう
784名称未設定:2014/06/11(水) 10:21:35.14 ID:7r3JWfGp0
>>779
文字の連結に+が使えるのは、生産性に大きく影響するんだぞ(笑い
785名称未設定:2014/06/11(水) 10:31:12.68 ID:ovbdhwVN0
言語仕様が変わると生産性は変わるしそれに応じて品質も変わるけど、開発者次第で必ずしも良い方向に行くかは不明。
それ以前にXcodeのSwiftコード補完がまだまだ不安定でダメダメでそこでイライラしてる。
まあリリースされてまだ一週間でこれだけのことができてるのは逆に凄いことなのかもしれないが...
786名称未設定:2014/06/11(水) 10:54:09.31 ID:I5/20kIP0
>>781
じゃあスルーしとけばいいじゃん
787名称未設定:2014/06/11(水) 10:54:31.23 ID:mjcsfCfa0
部分文字列に配列風にアクセス出来るようにして欲しいわ
str[3..5]みたいに
当然あるだろうと思ったら、配列風どころかメソッドにもなくて
部分文字列取りたいだけでNSSring持ち出さないといけないとかアフォかと
788名称未設定:2014/06/11(水) 11:10:56.78 ID:ISHq6i2s0
>>787
まぁ、こんな書き方でもいけるんだけど、
println(str.substringFromIndex(3).substringToIndex(2))

俺から君にすばらしいスニペットをプレゼントしよう
extension String {
subscript (r: Range<Int>) -> String {
get {
let startIndex = advance(self.startIndex, r.startIndex)
let endIndex = advance(startIndex, r.endIndex - r.startIndex)

return self[Range(start: startIndex, end: endIndex)]
}
}
}

これで、str[3..5]ってやってごらんよ
789名称未設定:2014/06/11(水) 11:23:39.80 ID:/fT+iuOJ0
>>786
なんでそう言うのかさっぱりだな。あの時点では普通のノリだと思うけど
まあ、今のはいまさらなのでもうだけどなwなんかあさって向いているし
790名称未設定:2014/06/11(水) 11:53:57.04 ID:3DfO4umy0
>>785
開発バージョンをリリースとは言わんだろ。
791名称未設定:2014/06/11(水) 12:06:00.87 ID:J+nA7LCD0
集合として扱えるんだからなんかありそうだけどな。
for char in str{}
が使えるんだから。

Swiftは磨きがかかって行く言語なんだろうな。 皆が勝手な使い方を始める前に色々揃えて欲しいな。
792名称未設定:2014/06/11(水) 12:08:47.81 ID:uczwM97/0
>>788
変態的なextensionが捗るな
変態的なdefine使いが叩かれるのと同じく叩かれるだろうが
汎用性とか色々落ちるから変態拡張は勘弁
793名称未設定:2014/06/11(水) 12:21:40.13 ID:NI4dbCZe0
>>780
lighttable
794名称未設定:2014/06/11(水) 12:24:14.94 ID:fF7Mki+Y0
>>773
何にせよ、自分じゃ1行も訳してないっていうのが致命的にダメだよな。
秀和もこんなアホと手を切らないと秀和自体の信用が落ちるだろ。
795名称未設定:2014/06/11(水) 12:25:42.25 ID:35lBHvyr0
最初の最初だけ訳してた気がするw
796名称未設定:2014/06/11(水) 12:26:08.49 ID:kziEbUAM0
>>787
>部分文字列に配列風にアクセス出来るようにして欲しいわ

瑣末な指摘のようでありながら、RubyでもPythonでもJavascriptでもできるこの程度の
ことがさっと出来ないというのは不便だし、先行する言語をちゃんと研究していない
証拠っぽいなあ。
関数型言語とかのマネをする以前に、まずやるべきことがあるだろうと。
797名称未設定:2014/06/11(水) 12:26:39.57 ID:mjcsfCfa0
>>788
なるほどthx

DevForumのスレ見つけたわ
デフォではStringのsubscriptがString.Index型しか受け付けないから、Int型でsubscriptをオーバーロードしてやるんだな

extension String {
subscript(index: Int) -> Character {
return self[advance(self.startIndex, index)]
}

subscript(range : Range<Int>) -> String {
let startIndex = advance(self.startIndex, range.startIndex)
let endIndex = advance(startIndex, range.endIndex - range.startIndex)

return self.substringWithRange(Range(start: startIndex, end: endIndex))
}
}

var string = "Hello everyone, this is a bit better now!"

var c : Character = string[1] // result is: e
var substr = string[30..41] // result is "better now!"
798名称未設定:2014/06/11(水) 12:29:03.11 ID:UqFvyfCQ0
多値を返せるのは割と評価したい
799名称未設定:2014/06/11(水) 12:40:22.74 ID:VqmI2unp0
>>796
こいつ、なにさまだよ。
800名称未設定:2014/06/11(水) 12:47:52.40 ID:NI4dbCZe0
お客様だよ
801名称未設定:2014/06/11(水) 12:50:18.60 ID:ovbdhwVN0
>>790
ああ、そうだ、まだ正式リリース前だった
802名称未設定:2014/06/11(水) 13:00:06.97 ID:mjcsfCfa0
Ruby風のマイナスの範囲インデックスできたったw

extension String {
subscript(range : Range<Int>) -> String {
get {
let startIndex = advance(self.startIndex, range.startIndex)
var endIndex: String.Index!

if range.endIndex <= 0 {
endIndex = advance(self.endIndex, range.endIndex)
} else {
endIndex = advance(startIndex, range.endIndex - range.startIndex)
}

return self.substringWithRange(Range(start: startIndex, end: endIndex!))
}
}
}

var string = "Hello Swift!"
string[6...(-1)] // "Swift!"
string[6...(-2)] // "Swift"
string[6..(-1)] // "Swift"
string[6..(-2)] // "Swif"

楽しい
803名称未設定:2014/06/11(水) 13:00:41.77 ID:ISHq6i2s0
文字列インデックスの扱いがめんどくさいのは内部文字コードとして素のUnicodeを使ってるからかな
804名称未設定:2014/06/11(水) 13:26:02.87 ID:J+nA7LCD0
>>803 Unicodeの取り扱いは良く出来てるよ。 上の例も日本語でも問題ないし。
805名称未設定:2014/06/11(水) 14:08:44.05 ID:9UIVP79/I
あらゆるApple製品同様、出た時はボロボロ。しかしその後信じられないほど成長する。
iPhone3Gを思い出せ。
806名称未設定:2014/06/11(水) 14:18:08.67 ID:aOGv5ebo0
信じられないほどの成長はしていないんだよなぁ
信じられないくらい使えない端末から何とか耐えられる端末にはなったけど
iPadなんかは初代から大して変わってないし
807名称未設定:2014/06/11(水) 14:23:08.20 ID:jugVbziO0
節穴ですね
808名称未設定:2014/06/11(水) 14:31:16.67 ID:4f3d2PoV0
Xcode5とXcode6 betaって共存できますか?
809名称未設定:2014/06/11(水) 14:34:00.88 ID:ovbdhwVN0
できるよ
新機能がたくさんあるよ
810名称未設定:2014/06/11(水) 14:58:31.33 ID:CVPA1ADA0
Cより簡単なの?
811名称未設定:2014/06/11(水) 15:05:41.18 ID:mjcsfCfa0
既にいくつかの言語触ってるとめちゃくちゃ簡単
初めてだったり言語何か1つぐらいしか知らないと、色んなパラダイムの詰め合わせだから時間かかるかも

って印象
812名称未設定:2014/06/11(水) 15:20:32.68 ID:ZzNjozIu0
?と!の使い分けは初心者にはポインタに匹敵する難しさ!じゃないの?
813名称未設定:2014/06/11(水) 15:21:00.65 ID:J+nA7LCD0
簡単簡単、言語的にスッキリしてるからC系の言語知ってれば大抵のコーディングは初見で大体の意味はつかめるだろう。

Playgroundでコーディングしてる最中に1行毎の結果がわかるから、うろ覚えで書いて行っても解る。

言語的に懐が深いから全てを使いこなすのはスキルがいるだろうけど、だんだん使いやすい言語に発展して行くよ。

上の文字列操作の例なんかは良い例だけど、文字列操作辺りはまとめてリリースされるだろう。 SQLのLIKE みたいなのも欲しいな。
814名称未設定:2014/06/11(水) 15:36:07.25 ID:ovbdhwVN0
文字列のappendやformatからの解放
815名称未設定:2014/06/11(水) 15:52:27.81 ID:J+nA7LCD0
>>812 些細な事だろう。
言語が全く初めての初心者の場合、存在理由があまり理解出来ないかもしれないけど、コーディング練習して行くうちに理解出来るよ。
バグもこのおかげで減るだろうし。
816名称未設定:2014/06/11(水) 16:07:00.00 ID:J+nA7LCD0
文字列関係は、全体的な設計をしてるんだろう。
正規表現とか、フォーマットとか必要だけど、昔ながらの文法では解りづらく統一性が無い。
初心者でも直感的にわかる体系になって欲しい。
817名称未設定:2014/06/11(水) 16:32:33.79 ID:OdMq1OoD0
>>815
>練習して行くうちに理解出来るよ。
理解した頃には納入済になっていた件
818名称未設定:2014/06/11(水) 17:04:45.72 ID:J+nA7LCD0
>>817 そんなレベルの人間が納品レベルのプログラムは出来ないから安心しな。
819名称未設定:2014/06/11(水) 17:09:50.41 ID:J+nA7LCD0
>>817 それに理解していないで書いても、バグがあまり出無いようになってるから大丈夫。
安全弁みたいな物だから、納品するレベルの大量のコーディングをすれば、否応無く使うことになるよ。
コンパイルエラーになるから使わざるを得ない。

初心者でもバグが少なくなるようによく考えられてるよ。
820名称未設定:2014/06/11(水) 17:17:53.87 ID:Ag5z57YY0
文字列操作は拡張詰合せたライブラリをそのうちどっか作るだろ
821名称未設定:2014/06/11(水) 17:19:28.49 ID:9kHYI4Ol0
>>818
例えば、TableViewのメソッドで

@optional func tableView(tableView: UITableView!, heightForRowAtIndexPath indexPath: NSIndexPath!) -> CGFloat

こういう風に引数の宣言が!付きで宣言されてるんだけど、どうしてだかわかる?
引数が!無しの場合と!付きの場合と意味的にどう違うんだろう
822名称未設定:2014/06/11(水) 17:22:50.63 ID:9kHYI4Ol0
自己解決しました
823名称未設定:2014/06/11(水) 17:25:57.07 ID:9kHYI4Ol0
ちなみに、

func cellForRowAtIndexPath(indexPath: NSIndexPath!) -> UITableViewCell!

は戻り値にも!がついてるね
よく考えられてるね
824名称未設定:2014/06/11(水) 17:47:11.92 ID:J+nA7LCD0
今までの言語の多くの例外やバグは、このnil/null の処理に対する考慮不足だからね。
コンパイル段階からはっきりさせるのは、ありがたいこと。

Exceptionを無くした要因もこの補償が有るからだろう。
swift使えばそんなのはほとんど必要ないから必要な時だけ考慮しなさいと言うメッセージだな。
825名称未設定:2014/06/11(水) 17:55:28.93 ID:REDA+//n0
C, C++, C#できるけどObj-Cで挫折した俺でもSwiftならいけるかな・・・
826名称未設定:2014/06/11(水) 18:06:01.05 ID:9kHYI4Ol0
>825
Obj-Cのどこで挫折したの?
827名称未設定:2014/06/11(水) 18:07:39.06 ID:ovbdhwVN0
つまりはSwiftではJavaでおなじみのヌルポが無くなるってことだよな
寂しくなるな
828名称未設定:2014/06/11(水) 18:11:18.35 ID:9kHYI4Ol0
ヌルポはObj-Cにもないよ
829名称未設定:2014/06/11(水) 18:14:05.96 ID:mjcsfCfa0
実はJavaもJDK1.8でOptional導入済みだったりする
830名称未設定:2014/06/11(水) 18:15:31.78 ID:l0s/VNKY0
nilが入ったままのoptionalな変数に!付ければ実行時エラーは普通に起こるでしょ
831名称未設定
ヌルポってWikiにも出てるんだな。 そのうち国際共通語になって、Swingの説明書にも載るかもな