DDDインプット中(iOSDCリジェクトコンで発表予定)
今年のiOSDCのリジェクトコンは9/18(火), 20(木)の2日間。
iosdc-reject-conference.connpass.com
その内の1日目のトップバッター、「DDD(ドメイン駆動設計)を知っていますか??」で30分枠を頂戴している者です。
付け焼き刃でインプットできるものではないと知りながら、ようやくDDDのインプットに着手し始めました...orz
遅くなったのはもう仕方ないので、出来る範囲で全力を尽くしてインプットをし、「DDDの"インプット"の初めの一歩を踏み出したい方」をターゲットに共有できれば、と思っています。
ちなみに、DDDをインプットし始めた動機は、Yuki Anzai (@yanzm) | TwitterさんがDroidKaigi2018で発表されていたY.A.M の 雑記帳: Android アプリの開発でドメイン駆動設計に取り組む話という発表を聞き、今所属しているチームにDDDを導入できないか?と感じたからです。
モバイルアプリでどのようにドメインモデルが定義出来て、コンテキストをどういう感じに分けられるのか、というイメージが全然出来なくて今詰んでいますが...。
DDD導入されている方に是非ともお聞きしたい。本当に是非🙏
以下、メモ書き
今後のインプットの流れ(予定)
- 実践DDDを読む
- DDD(EricEvans)をさらい読み
- (並行)資料作成
実践DDDを読む
頭から読むのは断念。
- 目次を洗い出す: 目次には節までしか記載されていなかったので、項を洗い出して表にする → 印刷
- 「各章の概要」、各章にある「本章のロードマップ」「まとめ」を目次と合わせて見て、各章をざっくり理解する
- 2までやって頭に出来た大枠に内容を詰めていく?(まだ2だからよしなに)
DDD
全部読む時間がないので、実践DDDで蓄えた知識を元につまみ食い?
資料作成
頭の中で構成を組み立てながらインプットを進めること
学んでいく上で持っておくと理解が進むイメージとか、そういうのあったら共有したい
potatotips#52に参加しました!(Android編)
Android枠で先日FOLIOさんで開催されたpotatotipsに参加してきました!
遅くなってすみません...orz
基本的に、口頭で話された、スライドに書かれていないものをスライド下に箇条書きで書いています(多分)。
ご覧になる方は、スライドを見つつ参照して頂ければと思います。
にわタコ (@niwatako) | Twitterさんが各LTで書かれていたgistも参考にしながら書かせて頂きました。
niwatako’s gists · GitHub
素敵共有、本当にありがとうございます🙏
LT
Roomのできるまで InvalidationTracker編
Yuichi Araki (@yuichi_araki) | Twitterさん
Room InvalidationTracker potatotips #52
- RoomはAndroidに標準搭載されたSQLiteのラッパー
- どうやってSQLiteから通知を受け取るのか?
- 案1:書き込みメソッドの実装はRoomが生成しているので、その中で通知する→直接SQLiteに書かれたら検知できない
- 案2:C言語で書かれたSQLiteの拡張機能を使う→最強かと思いきやAndroidで使えない
- 実際:変更ログのテーブルを準備して、各テーブルに変更があるたびに書き込むトリガーをこっそり仕掛けて使う
- ObservedTableTracker = 監視されている時だけトリガーを仕掛ける為に、監視されているかを監視する
- 今後の課題は次バージョンで対応したい。不具合報告、要望受付中。
- ほぼ直面することはないだろうが、2つ目の課題に関しては、長い書き込みをする前にはダミーのトリガーを仕込むと回避できる
KotshiからMoshi-codegenに乗り換えた経緯
- Moshi-codegenとKotshiのどちらを選ぶか?
- 速度検証、イシューから大きなバグの確認、今までの流れやイシューから将来性の確認
- Kotshiは作者がdeprecatedになるかもと言っているので、Moshi-codegenの方が安全そう
- しかし、まだ出て1ヶ月ほどなので、様子を見た方が良いかもしれない
Kyashで使っているTutorial Library
- チュートリアル:ハイライトさせて吹き出しで説明する
- 似たようなライブラリはあるが、Kyashの要件に合わなかったので自作した
- ハイライトする部分はTargetという単位で捉えてTargetインスタンスを作り、そこにテキストのアニメーションの設定、テキスト部分のレイアウトを設定していく
- レイアウトに関しては、指定されたidを持つレイアウトを準備すれば作られるようになっている
- チュートリアル系のライブラリはどれも癖があるので、要件に合えば使ってみて、合わなければコード見て真似してみてね
XML Object Mapping
hmori (@moridroid) | Twitterさん
- Swift4で生まれたCodable、Jsonとコードの変換ができる
- Javaはこれが得意で、GsonとかMoshiとか色々ある
- これらの基本的なロジックは空のインスタンスを作って後から値を入れる
- が、Kotlinのdata classは基本ロジックと考え方が合わない
- Moshiを使うか自作する(自作の話をしていく)
- オブジェクトマッパー作ったけど、仕事で作ったから公開できないです
Tips for Bitrise Android
Shohei Kawano (@shaunkawano) | Twitterさん(へいへいさん)
- タップル誕生のAndroid開発でBitriseを使っている
- Bitriseはモバイル開発に重きをおいたCIサービス
- circleCIを使っていたが、メモリ不足やスクリプト管理が辛いのでBitriseにした(スクリプトはfastlaneで対応)
- コミットしたタイミングでbitrize.ymlのタスクを実行
- trigger_mapにpush/prの他にtagを追加したが、意図した動きにならない
- '--tag'をつけることで今のところ動いている
- タグが切られた時にドラフトリリース作って署名つきアプリをアップロード、レポジトリではファイルダウンローダーの機能を使ってgradleとkeystoreを取ってきて署名
Android P - Restrictions on non-SDK interfaces
shinobu.aab (@operandoOS) | Twitterさん
動画も公開されている
昨日potatotipsで発表した「Android P - Restrictions on non-SDK interfaces」の録画をYouTubeにあげましたので、もし資料とセットで気になる方はどうぞー!!
— shinobu.aab (@operandoOS) June 22, 2018
かなり時間がなかったので資料飛ばしまくってますが、、、w
補足記事なり補足動画は出そうかなー!https://t.co/8gHtJhIc7e
#potatotips
惜しまず全て共有してくれてるので、追記する内容は特にありませんでした
What’s new in Google Play Billing
- Google Play Billing: Google提供の決済基盤でワンタップで支払いができる。都度購入や定期購入をサポート、アプリで金銭トランザクションを処理する必要がない、ユーザーに一貫した購入フローの提供。
- 2のproration modeに関しては文字だとわかりにくいので、図でも説明
スライドが詳細なので、ぜひご一読を。
Pay attention to the HUGE logs
わくわく (@wakwak3125) | Twitterさん
- WorkManager: 実行条件に電源接続されている、Wi-Fi接続されているなどの制限を加えられる
- 金曜日にWorkManagerに感謝しながら帰宅 → 月曜日全部死んでた: WorkManagerは何も悪くないが、ログが爆発(OOM = Out Of Memory) => めっちゃでかいログには気をつけよう
Hey Guys, I am...
mhidaka (@mhidaka) | Twitterさん
スライドURL:
なし
#potatotips で話したので言っちゃうぞ!会社でエンジニアリングマネージャ(Android)をやることになりました。最高のエンジニアリング環境を作るんで一緒に働きたいひと、声かけてね!
— mhidaka@技術書典5 (@mhidaka) June 21, 2018
英語の勉強を本気でやっていく所存
やるやる詐欺をかまし続けて早数年、ようやく重い腰を上げて本気で英語を勉強しようと思ふ。
最近英語でありがとう的な言葉を心を込めて詳しめに言いたいことが何回かあったのだけれど、Google翻訳を使ってなんとか(しかも自信なし)みたいな結果になったのが悔しかったのと、
hotchemi.hateblo.jp
こちらの記事を改めて読んで、やる分だけ幅広がるよなぁというのを感じたからです。(やっぱ海外で働いてみたいという思いがある。)
ひとまず上の記事通りに進めて行こうかなと思ってます。
計画立てることに注力して満足するタイプなので、手をつけながら感じるままに方向修正をしていこうかと。
というわけでやってこ。
逃げない様に記事にしてみた次第でした。
というかもはや記事紹介だなこれ。