Kotlin

アイテムレビュー機能をZOZOTOWN Androidチームはどう開発したか

はじめに こんにちは、ZOZOTOWN開発1部Android2ブロックの井上晃平(@ねも)です。普段はZOZOTOWN Androidアプリの開発を担当しています。ZOZOTOWN Androidチームでは、以前から商品に対して口コミや評価を投稿・閲覧できる、アイテムレビュー機能を開発して…

ZOZOTOWN AndroidにおけるViewModelの実装

はじめに こんにちは、ZOZOTOWN開発2部Androidブロックの大江です。普段はZOZOTOWN Androidの開発を担当しています。 ZOZOTOWN Androidはリリースから10年以上経過し、現在のソースコードは9年近く開発されています。そのため、複数のアーキテクチャが混ざっ…

ZOZOTOWN AndroidチームにおけるQodanaを活用したビルドワーニングへの取り組み

はじめまして、ZOZOTOWNアプリ部Android1ブロックの池田一成です。普段はZOZOTOWN Androidアプリ開発を担当しています。 ZOZOTOWNアプリは歴史の長いアプリのため、レガシーなコードがいくつか残っています。そのため、Android Lintで検出されるビルドワーニ…

XMLで書かれたUIをJetpack Composeで書き換える手順の紹介

はじめに ブランドソリューション開発本部フロントエンド部FAANSの山田(@yshogo87)です。 本投稿では、すでにXMLで書かれたレイアウトをJetpack Composeにリファクタリングした理由とその手順について紹介します。 リファクタリングする画面の問題点 FAANS…

ZOZOTOWN Androidチームにおけるコードメトリクスとビルド時間計測の取り組み

はじめに ZOZOTOWN開発本部 ZOZOTOWNアプリ部 Android2ブロックの高橋です。 ZOZOTOWN Androidチームでは、リファクタリングやビルド速度改善の取り組みを継続的に行なっています。本記事では、それらの取り組みの効果を可視化するために導入した、コードメ…

動画の音声を任意の別データに差し替えてエンコードする方法

こんにちは。WEAR部Androidチームの御立田です。先日、WEARチームでコーディネート動画を投稿できる機能を追加しました。 その際、WEARが提供する音楽リストから、ユーザーが好きな音楽を選択する機能を実装する必要がありました。今回は、動画ファイルの音…

【オンラインMeetup イベントレポート】ZOZO Tech Talk #1 - Android

こんにちは、ZOZO CTOブロックの池田(@ikenyal)です。 ZOZOでは、12/6にZOZO Tech Talk #1 - Androidを開催しました。 zozotech-inc.connpass.com 本イベントは、これまで夕刻に開催してきたMeetupとは異なり、ランチタイムに開催する「ZOZO Tech Talk」シ…

ZOZOGLASSのクロスプラットフォーム設計

こんにちは、AndroidエンジニアのAndyです。これまでにZOZOSUIT、ZOZOMAT、ZOZOGLASSのアプリ機能開発に取り組んできました。 ZOZOGLASSは肌の色を計測するデバイスで、オンラインでファンデーションを購入する際の手助けをします。ZOZOGLASSのユーザーは下…

Perfettoを用いたAndroidアプリのボトルネックの特定とその改善

はじめに ZOZOTOWN本部 ZOZOアプリ部 AndroidチームでZOZOTOWNのAndroidアプリを開発している鈴木です。 本投稿は、ZOZOTOWN AndroidアプリのHome画面に存在する「商品モジュール」実装中に発生したパフォーマンスの低下をPerfettoというツールを用いて特定…

Kotlinのsuspend関数のバイトコードを読んでみた

Kotlinのsuspend関数がどう実行されているのかを、バイトコードや周辺コードから調査してみました。

Kotlin Fest2018参加レポート

Kotlin Fest2018参加レポート 福岡研究所の渡辺(しかじろう @shikajiro)です。Kotlinのおっきなイベントが東京で開催されるということで福岡から飛んで✈いきました。 福岡でもFukuoka.ktという名前で過去に2回ほどイベントを主催しており、KotlinFest主催…

Androidアプリ開発にFluxアーキテクチャを導入したら保守性も品質も上がりました

こんにちは。フロントエンドエンジニアの茨木(@niba1122)です。 弊社のAndroidアプリ開発ではMVVMアーキテクチャを用いています。日々肥大化・複雑化していくViewModelが保守性や品質を担保する上で課題になっていましたが、Fluxアーキテクチャの導入によ…

カテゴリー