ariiyuのブックマーク (105)

  • RN Features 2020年3月号 - React Native v0.62 注目機能Flipper, Re-architecture, Discord のパフォーマンス改善 - KitchHike Tech Blog

    はじめに キッチハイクのエンジニアメンバーでReact Native の気になるニュースを持ち寄ってみました! はじめに ガワネイティブアプリ(Creator)を、React Nativeで置き換えてみての一年間戦いの記録 - BASE開発チームブログ Flutter vs Native vs React-Native: Examining performance Discord のパフォーマンス改善 Flipper で React Native アプリの DX を改善しよう Flipper の主な機能の紹介 React Nativeの Re-architectureについて ロードマップ さいごに We're Hiring ガワネイティブアプリ(Creator)を、React Nativeで置き換えてみての一年間戦いの記録 - BASE開発チームブログ https://devblog.t

    RN Features 2020年3月号 - React Native v0.62 注目機能Flipper, Re-architecture, Discord のパフォーマンス改善 - KitchHike Tech Blog
    ariiyu
    ariiyu 2020/03/16
  • React Nativeアプリのサイズを35%減らした話 Android編 - KitchHike Tech Blog

    CTOの Shoken です。キッチハイクアプリはReact Nativeで開発を始めて3年目に入りました。アプリのサイズは開発を続けるうちに大きくなっていってしまいます。この記事では React Native アプリが、どのファイルでサイズが大きくなっているかの分析と、Androidでアプリのダウンロードサイズを減らした方法を紹介します。 サマリ キッチハイクアプリでは JS Bundle は 3.4 MB 、フォントは 48 MB だった。 Androidはビルド時の最適化オプションとApp Bundleにすることでサイズが 35% 減った。80.6 MB -> 66.8 MB サマリ JS Bundle のサイズを調べる react-native-bundle-visualizer を使った JS Bundle の構成を確認する Android Studio APK Analyzer

    React Nativeアプリのサイズを35%減らした話 Android編 - KitchHike Tech Blog
    ariiyu
    ariiyu 2020/03/01
    設定値やコマンドを変更するとアプリサイズが減らせる。
  • 開発チームメンバーの全員が OSS 経験者。それぞれの向き合い方と得られた学び - KitchHike Tech Blog

    はじめに キッチハイクエンジニアのタクです。先日react-native-appsflyerというリポジトリに不具合修正をコミットし、初めてマージされました。 キッチハイクの開発チームでは、普段利用しているOSSに対して、不具合を見つけたら可能な限りフィードバックやプルリクエストを送るように心がけています。メンバーの中には、OSSとして自分で作ったアイコンフォントを公開し、それがきっかけでGitHub Satelliteに登壇したデザイナーもいます。 今回は、開発チームのうち3名に焦点を当てて、エピソードを紹介しようと思います。 1: たとえ自分位の修正でも、誰かの役に立てる まずは私自身の経験から紹介します。私はキッチハイクでアプリ開発を担当しています。他メンバーが業務の合間にOSSへフィードバックやプルリクエストを送っている中、私だけコミット経験がありませんでした。当時は開発元にフィ

    開発チームメンバーの全員が OSS 経験者。それぞれの向き合い方と得られた学び - KitchHike Tech Blog
    ariiyu
    ariiyu 2020/01/31
  • Webの自動テストのこの1年を振り返って | メルカリエンジニアリング

    Mercari Advent Calendar 2019も、この記事を入れてあと3個となりました。最後まで読んでくださいね。 23日目はAutomation&QAグループで、Webのテスト自動化を行っている@AHA_oretamaがお送りします。 今回はWebの自動テストについて、この1年やってきたことを振り返ってみようかと思います。 Webのリアーキテクチャ 現在、Webではリアーキテクチャを進めています。 進め方としては既存のモノリシックなWebアプリケーションを残したまま、パス(例えばトップ /jp/ や検索ページ /jp/search/ )ごとに新しいWebアプリケーションにマイグレーションする方法をとっています。 影響範囲を小さくしつつその範囲の中でチャレンジが行えることがこの方法の利点です。 詳しくは去年のMercari Tech Confの資料をご覧ください。 speaker

    Webの自動テストのこの1年を振り返って | メルカリエンジニアリング
    ariiyu
    ariiyu 2019/12/25
  • 全く知らない人のためのSign in with Apple | メルカリエンジニアリング

    Mercari Advent Calendar 2019 の10日目担当は メルカリ iOS チームの @HideakiTouhara です。 はじめに 2019年のWWDCで新しいSign in, Sign up方法であるSign in with Appleが発表されました。 今回は主にクライアントの実装を起点に、その流れを説明していきたいと思います。 Sign in with Appleの説明や特徴 まず、そもそもどういうものなのでしょうか? 2019年9月に更新されたガイドラインを引用します。 Make it easy for users to sign in to your apps and websites using the Apple ID they already have. With privacy and security features built-in, Sign

    全く知らない人のためのSign in with Apple | メルカリエンジニアリング
    ariiyu
    ariiyu 2019/12/25
  • その悩み、オーソリ(仮売上)で解決できるかも - Stripeではじめるオーソリ導入ガイド - KitchHike Tech Blog

    この記事はStripe Advent Calendar 2019のDay 18となります。 聞いたことはあるけれど、機会がないとあまり馴染みのないクレジットカードのオーソリ。ですが、使ってみると非常に便利なしくみです。今回はStripeでのオーソリ決済の導入について、弊社キッチハイクの事例とともにご紹介いたします。 はじめに こんにちは。エンジニアの小川です。 キッチハイクでは今年、一部の決済にオーソリを導入しました。 クレジットカードのオーソリは、端的にいえば、カードの使用者(ユーザー)の与信枠の中から、決済額を一定期間確保しておく仕組みのことを指します。このオーソリ、導入することで、カードが有効かどうかを事前チェックできたり、キャンセルで発生する手間を減らせたりと非常にメリットの大きい仕組みでもあります。 しかし、名前は聞いたことはあっても、あまり馴染みがなく、どう使えばいいのかイメー

    その悩み、オーソリ(仮売上)で解決できるかも - Stripeではじめるオーソリ導入ガイド - KitchHike Tech Blog
    ariiyu
    ariiyu 2019/12/19
    クレジットカードのオーソリ導入
  • 仕事依頼の相談

    ⚠️ 最新のプロフィール・お仕事募集要項などはこちらのリンク先をご参照ください 以下、2020年1月更新: プロフィール 🐶 mono  - mono0926.com およびそのリンク先などご覧ください。 Flutterアプリ開発 キャリア2年くらいだが、長年メインで取り組んでいたiOSネイティブ開発より得意な技術分野になった 執筆記事: Flutter 🇯🇵 – Medium Firebase全般 GCP(Google Cloud Platform)もある程度 Swiftを用いたiOSアプリ開発 iOSアプリ開発業務経験: 7年 Swift歴: 5年 できること サービスの仕様検討・デザインからサーバーサイド・iOSネイティブアプリ(Flutter使えばAndroidも)までの一気通貫した開発 もちろん、デザインなどは専任には劣るが、開発的にコスパ良いデザインができるなど強みにも

    ariiyu
    ariiyu 2019/10/07
  • "技術顧問" のお仕事|Sotaro Karasawa

    "技術顧問" 👨🏻‍💻ブームだな〜と思ってて、ソフトウェアエンジニアや一定の経験を積んだ人たちが、他のそういう知識・経験の無い会社を副業や業務委託という形でサポートしていくのは良いしどんどん広まると良いな、というのがある一方で、"技術顧問" という言葉が独り歩きしていて、 ・それってどういうことをやるひとなの? ・(エンジニアにとって)自分が技術顧問になってほしいと言われたらなにをやるの? ・(技術顧問が必要かも? という経営者にとって) 自分たちに必要なのはどういう人達なのか などがあまりハッキリしないままで、今現在、仕事の内容も単価もおぼつかない状態で混沌💥としていると思います。 など、かつてのCTOブーム、VPoEブーム、エンジニアリングマネージャーブーム等同様(まぁ、ブームっていうのは若干自虐的揶揄も含みつつではあるものの) 言葉が独り歩きして爆発的にそれっぽい人が増える、

    "技術顧問" のお仕事|Sotaro Karasawa
  • モバイルアプリのテストとReact Nativeにおけるテストライブラリの選択肢 - KitchHike Tech Blog

    モバイルアプリにテストを導入する前に キッチハイク エンジニアの薬師寺です。 キッチハイクではReact Nativeアプリにテストを導入するにあたり、 テストライブラリの選定と、テストでは何を意識すればいいのかということを考えてきました。 今回の記事では、モバイルアプリのテストで考慮すべき点と、テストライブラリを比較して得た情報を紹介します。 モバイルアプリにテストを導入する前に ソフトウェアのテストピラミッド モバイルアプリのテストピラミッドを築くのは難しい シミュレータと実機での環境差分 アニメーション・インタラクションなどのUI部分の差分 ネイティブ層の一部のテストが困難な箇所 テスト導入のため、テストフレームワークの比較 テストランナーとE2Eテストフレームワークの関係図 比較表 テストランナーを選ぶ jest mocha AVA E2Eテストのライブラリを選ぶ Appium D

    モバイルアプリのテストとReact Nativeにおけるテストライブラリの選択肢 - KitchHike Tech Blog
    ariiyu
    ariiyu 2019/06/03
    ソフトウェアのテストピラミッド
  • 仕事を任せられるエンジニアになるために意識してほしいこと - 食べチョク開発者ブログ

    皆さんこんにちは。エンジニアの西尾です。 今日は仕事を任せられるようなエンジニアになるために意識してほしいことをまとめましたので、ここに公開いたします。 もともとは社内向けに公開したものです。 この文章は私がビビッドガーデンに入社する前の、前職での経験を踏まえて書いています。 今のべチョクエンジニアが意識できていない、という話ではありませんのでご注意ください。 意識面 作業の見積もりができる 技術力が低い(コーディングができないなど)よりも敬遠されるエンジニアは、作業の見積もりができない方です。 第一線で活躍している方は、作業見積もりが他の方に比べて正確です。 見積もりをするためには、どういう設計をして、どういう機能を作り、どういう影響範囲があるのかを正しく理解する必要があります。 見積もりができないということは、作業内容を正しく理解できていない、技術的な困難性を理解していない、不確定要

    仕事を任せられるエンジニアになるために意識してほしいこと - 食べチョク開発者ブログ
    ariiyu
    ariiyu 2019/05/07
  • AppiumのAIによる要素セレクタを試してみたら、自動テストの未来を感じた - Mercari Engineering Blog

    初めまして。メルカリで自動化&品質保証グループ(Automation & QA Group:通称AQA)に8月からジョインし、自動化をぶりぶりしている@AHA_oretamaです。 10/18, 19にシカゴで開かれたSeleniumConf Chicagoに参加してきました。 SeleniumConf Chicagoの内容は@arminminさんの次回ブログを見てもらうとして、ここでは、その中で一番印象的だったセッションAI for element selectionで紹介されたTest.ai Classifier Plugin for Appiumプラグイン(以降、Test.ai Classifier Plugin)を使用したAIによる要素セレクタを試してみました。 (Test.ai Classifier Pluginの詳細については、そのセッション後すぐに、Appium:proでも紹

    AppiumのAIによる要素セレクタを試してみたら、自動テストの未来を感じた - Mercari Engineering Blog
    ariiyu
    ariiyu 2019/03/30
  • 7つのReact Nativeオープンソースアプリ 比較表 - KitchHike Tech Blog

    React Nativeのオープンソースアプリから学ぶ CTOの Shoken です。キッチハイクアプリはReact Nativeで開発を始めて1年半ほど経ちます。その間、オープンソースで公開されているReact Nativeのアプリを参考に学びながら、開発を進めてきました。この記事では、詳細なコードを読む前に行っているチェックポイントと、オープンソースで公開されているReact Nativeアプリを紹介します。 React Nativeのオープンソースアプリから学ぶ ソースコードリーディング前のチェックポイント READMEの次に読むのは package.json React Native, Reactのバージョン 使用ライブラリが自分たちのものと近いか 型チェック テストツール コンポーネントカタログ ライブラリ構成の比較表 アプリのライブラリ構成の特徴 Rocket.Chat REA

    7つのReact Nativeオープンソースアプリ 比較表 - KitchHike Tech Blog
    ariiyu
    ariiyu 2019/02/04
    package.json 読むのも バージョン確認するのも大事。
  • React Hooks をどう使っていくか - mizchi's blog

    大きく、末端コンポーネントと全体アーキテクチャの視点がある。 末端コンポーネントでの Hooks ここはあまり議論の余地なく、setState で local state を持っているものや、 componentDidMount していたものを置き換えることが出来ると思う。 FC を class にせずにちょっとリッチにするのが簡単になる。 class の setState 相当 function Counter() { const [count, setCount] = useState(0); const onClick = useCallback(() => setCount(s => s + 1), []); return <button onClick={onClick}>{count}</button> } componentDidMount / componentWillUn

    React Hooks をどう使っていくか - mizchi's blog
    ariiyu
    ariiyu 2018/11/09
  • Reactで開発するチームが共通認識しておきたい重要な概念 - KitchHike Tech Blog

    SFC, Redux, HOCなどコンポーネント指向とReact開発のキーワード CTOの Shoken です。キッチハイクでは2年前にRailsへのReact導入、1年半前に0ベースからReact Nativeでアプリ開発を始めました。この記事では、React, React Nativeで開発しているチームが共通認識したいReactの重要な概念について紹介します。 2018/11/07 追記(はてブコメントより) Reactリポジトリで名称の変更が行われ、変数名やクラス名が変更されました。いままでの Functional Component が Function Component となり、 Stateless は使わなくなって Function に統一されるようです。 Terminology: Functional -> Function Component #13775 Before

    Reactで開発するチームが共通認識しておきたい重要な概念 - KitchHike Tech Blog
    ariiyu
    ariiyu 2018/11/09
  • スタートアップの技術選定とアプリケーションプラットフォーム - laiso

    photo by pexels.com *1 この記事を書いたきっかけ niconegoto.hatenadiary.jp 「PinQulをクローズします」にて事業のふりかえりをしている文章の中に「アプリビジネスは完全にダウントレンドにある」という一節があって、ここから話題が広がっていったのを機に上記の記事を読みました。そして色々思うところがあったのです。 アプリビジネスは完全にダウントレンドというのは自分も前から思っていた。リッチな体験、通知を遅れることはアプリの利点だが、他PFからの流入なども含めたプロダクトのコアな検証はwebモバイルが1番早いはず。— sadakoa (@sadako_a_) August 16, 2018 (Twitter上で多くの共感を集めた投稿) 例えば「モバイルアプリがWebに負けはじめた理由」ではWebアプリがモバイルアプリに比べて優れているでろうという点

    スタートアップの技術選定とアプリケーションプラットフォーム - laiso
    ariiyu
    ariiyu 2018/08/20
  • React Nativeで手軽に別スレッドでコードを実行する方法 - 丁寧に手を抜く

    English version available here: dev.to React NativeアプリはJavaScriptで組まれるから、1つのスレッドしかない。 だからCPUヘビーなタスクを実行するとUIをブロックしてしまう。例えばインデクシングとか。 バックグラウンドでJSを実行したければ、react-native-workersみたいなネイティブモジュールを使う必要がある。これはWeb WorkerみたいなAPIを提供してくれるモジュール。でも、単純なコードを実行したいだけならオーバースペック感がある。あと、むやみやたらにネイティブモジュールを増やしたくない。アプリが複雑になるから。expoアプリを作っている人はそもそもネイティブモジュールが使えない。 で、気付いたんだけど、WebViewを使えばいいじゃないか、と。 WebViewには injectJavaScript とい

    React Nativeで手軽に別スレッドでコードを実行する方法 - 丁寧に手を抜く
    ariiyu
    ariiyu 2018/06/20
    知見
  • React NativeをWebに持ってくることの意味 - ナカザンドットネット

    ブラウザはGUIアプリケーションプラットフォームではない Flexboxについて React DOMはGUIアプリケーションフレームワークではない React NativeはGUIアプリケーションプラットフォームの抽象である React Native for Webがブラウザに持ち込んだもの コンポーネントが便利 スタイル周りも良い感じ TouchableOpacityでタップ表現もラクラク 他にもいろいろあるけど プロダクション事例が強すぎる 作者のnecolasも語ってた まとめ 余談:React系のアプリケーションフレームワーク React Native for Webは、React NativeをWebに持ち込む試みです。 しばしば、こういった試みに対して「わけがわからない」「末転倒である」といった意見を見かけますが、筆者は妥当な試みであるという印象を持っています。ちょっと頭の中

    React NativeをWebに持ってくることの意味 - ナカザンドットネット
    ariiyu
    ariiyu 2018/05/30
    スマホアプリのWeb版がほしいっていうケースにはぴったりなのでは
  • ディープリンクをめぐる歴史とReact NativeにFirebase Dynamic Linksを導入する手順 - KitchHike Tech Blog

    Firebase Dynamic LinksをReact Nativeアプリに組み込むために調査したDeep Links(ディープリンク)の歴史を記事にしました。 はじめに こんにちは。KitchHikeインターンエンジニアのタクです。 スマートフォンでリンクをタップすると、アプリが起動してアプリ内のコンテンツへ遷移したことはありませんか? メールやWebサイトのリンクからアプリを起動させて画面遷移させる技術を Deep Linking (ディープリンキング) といい、実現するリンクのことを Deep Links (ディープリンク)といいます。アプリの普及と共にディープリンクは広く使われるようになりましたが、実装には煩雑な手順と設定が残っており、開発者にとって悩みの種になっているかもしれません。 Firebase Dynamic Linksを導入すると、ディープリンクを実現する上でのURL

    ディープリンクをめぐる歴史とReact NativeにFirebase Dynamic Linksを導入する手順 - KitchHike Tech Blog
    ariiyu
    ariiyu 2018/05/16
    ReactNative ディープリンク
  • ノウハウの共有文化がない場所にコードレビューをねじ込んでみた結果とか - タオルケット体操

    コードレビューをキメると品質も上がるし自分のレベルも上がるので最高」みたいな論が巷を賑わせていて、以前はそういうイケてる制度を指をくわえてみるのみだったのだけれど、最近職場と、それと個人的に関わったプロジェクトコードレビュー制を無理矢理交渉して導入してみた結果、世間のイケてる書籍やエントリから得られる情報とはまた少し違う知見が得られたので書いてみる。 割と泥臭かったり、あまり希望に溢れてたりはしない感じのエントリなのでそういうのは期待しないほうがいいです。 準備 些末なコードレビューを極力避けるために、コードの規約やスタイルについてはlintとフォーマッターを用意した。 他は無策。 結論 結論から言うと、理想的な運用は出来なかったものの、コードレビューについて世間で言われるような成果(作業を共有する意識、レベルの向上)は得られた。良かった。 ぶっちゃけ僕なんかが浅はかな考えで導入しても

    ノウハウの共有文化がない場所にコードレビューをねじ込んでみた結果とか - タオルケット体操
    ariiyu
    ariiyu 2018/05/06
    知見
  • 最新版で学ぶwebpack 4入門 – JavaScript開発で人気のバンドルツール - ICS MEDIA

    webpack(ウェブパック)とはJSファイルをまとめる高機能なモジュールバンドラー。まとめることでウェブページのHTTPリクエストの数を減らしたり、高度なウェブアプリケーションの開発に役立ちます。 連載ではTypeScriptやBabelなどのES2015+の環境構築、ReactなどのJSライブラリの設定方法を網羅。サンプルファイルで詳しく解説します。 webpackの入門記事は他のサイトにもありますが、対象バージョンが古くて使えなかったりします。検索結果の上位の野良記事を参照にしたら古いバージョンの内容ばかり。解説記事通りにやったのにうまく動かない・・・なんて困った方も多いのではないでしょうか。記事は常に最新版に対応させているので、安心して読み進めてください。 ※記事では2023年3月現在のwebpack 5(2020年10月リリース)以上で解説しています。 記事で解説しているこ

    最新版で学ぶwebpack 4入門 – JavaScript開発で人気のバンドルツール - ICS MEDIA
    ariiyu
    ariiyu 2018/04/03