LoginSignup
9
10

More than 5 years have passed since last update.

Swift ハジメマシタ

Posted at

金曜日の夜、帰宅したら詳解 Swiftが届いてた!この著者にはObjective-C本でもお世話になりました。

詳解 Swift

家族とMacとネット環境さえあれば、どこでも生きていける@neirazaです。
今年の10月からサイバーエージェントのアドテク本部AdTech NativeUnitてとこで、iOSおよびAndroid向けのSDKをつくってます。

自分のアプリをSwiftで書きなおしてみよう

自分のiOSアプリ ココ天気をObjective-CとSwiftの混在で書けば、滞っていた更新作業も捗り、Advent Calendarのネタも書けて一石二鳥じゃん!っておもったわけです。

icon-40@2x.png

開発時に見たリンクなど

Obj-CとSwiftを両方みれる所が便利なような気がする
iOS Developer Library

Swiftって、どうやって書くのかなーとか分からない時に読みながら書いてた
The Swift Programming Language

一箇所だけハマったのでコレつかっちゃいました
stackoverflow
全然関係ないけど、stackoverflow JP private betaって、みんなやってます?

SwiftとObjective-Cの連携

最初の挿絵がカッコ悪いけど、読まないと始まらない!
Swift and Objective-C in the Same Project

そして、Objective-CからSwiftを呼び出そうとして激ハマりへ

The name of this header is your product module name followed by adding "-Swift.h".

前述した公式ドキュメントに記載があったので、
呼び出し元であるObjective-C側にimport文を書いても怒られる。

なんでだよ。。。

つうか僕のアプリのmodule nameって underscore じゃなくて hyphen が入ってるな。
そういやJavaでpackage nameに使うdomainにhyphenが入ってると怒られるから、underscoreで置き換えたりしたっけかと思い、探してたらこんなの見つけた。

Swift to Objective-C header not created in Xcode 6、こいつによると hyphen がダメぽみたい。
なので、これで解決した。
スクリーンショット 2014-11-29 22.54.28.png

AFNetworkingを使い続ける?、それともAlamofireを使い始める?

既存、AFNetworkingを使っている場合、あえて変更する必要がなさそうに思えるのですが、どうなのかな。
僕は今回はAFNetworkingのままにしました。

ちなみに下記は僕が使用している主なライブラリです。
他のライブラリとか、どんな状況になっているんだろ・・・。
みなさん、どうしてるか教えてくださーい!

CocoaPodsを使うしかない?

Carthageとか他のツールを使うのもありなんですが、ライブラリ管理ツールは安定したやつを使いたいなって、つい思ってしまいます。
でもやっぱり、Swift用のやつを使いたいので、他にもこんなのを使ってるよ!とかあれば教えてください!

Swiftでアプリの一部を書き直した感想

Objective-Cを理解していれば、Optionalの所とライブラリ管理(ライブラリの選択含む)以外は書いて実行するだけなら、特に苦になるところはなかったです。
ただし、まだまだSwift用のライブラリが豊富なわけではなく、既存の資産を使っていくわけだし、IDEが強くサポートしてくれないと厳しい所もある感じ。

とはいえ、まだまだv1.1とか若い言語なので、これから!これから!

9
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
10