WEBエンジニア奮闘記

日々の業務から思ったこと、学んだことを書き連ねていきます。

SwiftでDB触るならRealmが無難そうかも

今まで一応本でも写経しながら手は動かしてきたが、とりあえず一つアプリを作ってみようと思い、 2018年になってやっと本格的にSwiftを触り始めた。

で、iOSアプリを作るのだが、「データの永続化」をするにはどうするか軽く調べたところ、 それ用のDBライブラリを使わないと行けないらしい。とりあえず注目したのは以下の3つ。

  1. SQLite.swift
  2. Realm for Swift
  3. SwiftyDB

1. SQLite.swift

まだ触っていないが、githubのREADMEを見ると、簡単に使えそうだ。 最終更新日も約2ヶ月前と、更新されているようだし、SQLite3よりも方が安全と謳っているので信頼できそうだった。

しかし、今回はこちらは使わなかった。

2. Realm

こちらの方が今は使われている印象。今までMySQL, PostgreSQLしか使ったことなかったので、だいぶ使い方が異なるので面食らったが、 使ってみると簡単に動作した。実際のDBの設計とかをどうするのかは今後の課題。

  • 公式の日本語ドキュメントがしっかりしている
  • 導入事例が多い
  • 導入が簡単
  • APIも揃っている

上記の理由から、今回はこちらを採用!

3. SwiftyDB

こちらの記事を拝見し、 ActiveRecordっぽく使えるということで「お、これいけそうじゃね?」って思って導入してみたら、 ビルド時にめっさエラーが出ました。

メッセージを見ると、SwiftyDBTinySQLiteを利用しているようですが、この子が軒並みエラーを出しておりました。。。 調べてみたら、「Swift3ではサポートしてないよ!」とのことでした。(以下参照)

github.com

よって、不採用。

以上、Swift一日目に調べたことのメモ。