タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

ormaに関するoperandoのブックマーク (6)

  • Orma v4.2.0 の Relation#upsert() の設計 - Islands in the byte stream

    https://github.com/gfx/Android-Orma Orma v4.2.0 で Relation#upsert() を実装しました。これは、モデルのインスタンスを渡すとその状態に応じて INSERT または UPDATE を実行するというメソッドです。 モデル同士の関連もよしなにしてくれるので、とりあえず #upsert() で突っ込むといい感じに保存されるという便利メソッドです。 ただひとつ注意点があって、primary key の自動採番モード(デフォルトの挙動)のときに #upsert() 後にそのモデルを参照する場合は、#upsert() の戻り値を使わなければいけません。というのも、Ormaは どんなモデルでもimmutableであるという仮定 を置いており、自動採番したprimary keyをモデルのフィールドに代入したりはしないからです。 つまり、次のよう

    Orma v4.2.0 の Relation#upsert() の設計 - Islands in the byte stream
    operando
    operando 2017/03/19
    なるほど!
  • DroidKaigi 2017で「ORMの選び方」という発表をしました - Islands in the byte stream

    Ormaの開発の際に他のORMはどういう設計思想なのかを調べたときの知見をもとに、DroidKaigi 2017用に仕上げた発表です。 これ契機にORMについて一家言ある人が増えるといいなと思いながら発表しました。 SQLiteDatabase (SQLiteOpenHelper) を直接つかうかどうかでいうと圧倒的にORMをつかったほうが早く品質のよいアプリを開発できると思っていて、それはやはりORMのマッピング、クエリビルダ、アソシエーション、pub-sub、マイグレーションといった機能が便利だからなんですよね。ただ便利といういだけのみならず、型安全だったり自動化してくれたりと信頼性を高める工夫を書くORMがしているわけで、それを使わないのはもったいないです。 その上で、まあ私としてはOrmaが私の感じる問題を解決してくれる唯一のORMなのでOrmaを使いますが、機能や将来性などを考え

    DroidKaigi 2017で「ORMの選び方」という発表をしました - Islands in the byte stream
    operando
    operando 2017/03/11
    アッテで使ってることが取り上げられてる!お世話になってます!
  • ObjectBox vs Orma - Islands in the byte stream

    greenDAOの開発元であるgreenbotが新しいNoSQL ORMのβ版をアナウンスしたようです。 greenrobot.org いわく、マルチスレッドで使いやすく、バイトコード操作のようなマジカルな方法はとらず、マイグレーションを自動で行えてしかも爆速だと。これらの特徴はOrmaも標榜しているので、気になりますね。 ORMにとってのパフォーマンスは一番重要というわけではないものの、それなりには速くないと困るのは確か。というわけで、まずは軽くベンチマークをとってみました。コードベースはOrmaのリポジトリ内のベンチマークコードに追加した形です。 結論からいうと、読み込みはわりと速いです。 書き込みはOrmaとほぼおなじ水準 何度か繰り返すとOrmaより速いこともあります なおOrmaは手書きの素朴なコードよりも高速に見えますが、手書きのコードでの最適化をサボっているためです Real

    ObjectBox vs Orma - Islands in the byte stream
  • Ormaの2016年振り返りと2017年の展望 - Islands in the byte stream

    https://github.com/gfx/Android-Orma 2015年末に開発をはじめたOrmaも、この一年でだいぶバージョンが進んで、年明け時点で v0.20.0だったところが、年末時点でv4.0.2でした。v0.20.0...v4.0.2で21,768 additions and 6,328 deletionsということで、結構書いたなあという感じです。そのおかげでv1.0.0の頃とくらべると格段に安定していますし、機能も増えてます。 採用事例や紹介エントリも増えてきました。 ActiveAndroidからOrmaへ移行した理由 | eureka tech blog ちはやふるにはまったので百人一首を暗記するアプリ作った - もやもやエンジニア Android開発のマイベストプラクティス - Qiita 今から新規でAndroidアプリを書き始めるなら。 - wakwak3

    Ormaの2016年振り返りと2017年の展望 - Islands in the byte stream
    operando
    operando 2017/01/14
    積極的に使ってるので頑張ってほしい!
  • Orma v4.0.0 - RxJava2 & SQLBrite-like query observables - Islands in the byte stream

    GitHub - gfx/Android-Orma: A type-safe ORM for Android as a wrapper of SQLiteDatabase v3.0.0からまだ一ヶ月くらいしかたってませんが、Ormaがv4.0.0となりました。 目玉機能は RxJava 2.x 対応で、これが後方互換性を維持したまま行うのが難しかったため、メジャーバージョンを上げることにしました。 RxJava 2.x 対応 機能的にはRxJava 1.x対応と同じ水準なはずです。 ただこれを機に、 Observable を返すものは AsObservable をサフィックスに、 Single は AsSingle に、 Completable は AsCompletableに…と、メソッド名を見ればRx observableのどの亜種を返すのかを分かるようにしました。 Query Obs

    Orma v4.0.0 - RxJava2 & SQLBrite-like query observables - Islands in the byte stream
  • Orma v3.0.0-rc2 と内部設計の見直し - Islands in the byte stream

    Orma v3.0.0-rc2をリリースしました。CHANGESはこちら: Android-Orma/CHANGELOG.md at master · gfx/Android-Orma · GitHub 三行まとめ あるモデルが複数の同じ型のモデルをdirect associationで持てるようになりました 内部的に非常に大きな変更を行ったので新しいバージョンを検証してみてください v3.0.0はもうしばらく寝かせてから来週あたりにリリース予定です 解説 このバージョンは、3.0.0-rc1と比較してただ1つのバグフィクスを含みます。しかし、この修正のために内部の設計の見直しが必要だったため、変更量が非常に大きいものになっています。 そもそもdirect associationとはなにか、このリリースで解決したかったことはなにかを説明します。 Direct Associations Or

    Orma v3.0.0-rc2 と内部設計の見直し - Islands in the byte stream
  • 1