サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
中東情勢
tech.kitchhike.com
良いアプリを作るために、良いコードを読む。 CTOの Shoken です。キッチハイクでは2年前にRailsへのReact導入、1年半前に0からReact Nativeでアプリ開発を始めました。この記事では、React Nativeアプリ開発のベストプラクティスを見つけるためのソースコード探索手法と、コードリーディングのポイントを紹介します。 良いアプリを作るために、良いコードを読む。 React Nativeアプリのソースコードの探し方 ReactNativeNewsのShowcase, React Native Appsから探す F8 2017 PxView React Docs ( React公式ドキュメント ) から探す react-nativeリポジトリのRNTesterを読む ライブラリのサンプルアプリのコードを読む コードリーディングのポイント ディレクトリ構成 使用している
今年5月にJCB対応が発表されたStripe。導入 / 移行に関心をお持ちの方も多いのではないでしょうか。 キッチハイクでは今年の夏にStripeへ決済を移行しました。今回はその移行の事例紹介と、そこで得た学びを共有したいと思います。 はじめに こんにちは。エンジニアの小川です。 キッチハイクでは今年の6月から7月にかけて以前利用していた決済サービスからStripeへと移行しました。 Stripeは今年の5月にJCB対応が発表され、注目されている方は多いのではないでしょうか。 ただ、その注目度と比較して、ネット上には導入事例のレポートがまだまだ少ないように感じます。そんな中での一助として、今回はキッチハイクでの移行の事例とそこで得た学びをご紹介させていただきたいと思います。 はじめに Stripeへの移行のきっかけ Stripeを選んだ理由 サービスへの信頼感があること 移行しやすいこと
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 Nativeの開発速度に直結する CTOの Shoken です。キッチハイクでは1年半前に0ベースからReact Nativeでアプリ開発を始めました。React Nativeアプリを長期的に開発・メンテナンスする際に重要になるのがコンポーネント設計です。1年半の開発を通して、デザイナーとエンジニアがコンポーネント設計での共通認識を持っていることが、機能追加・修正などの開発速度に直結するという学びを得ました。この記事では、キッチハイクアプリのコンポーネント設計の考え方を紹介します。 コンポーネント設計がReact Nativeの開発速度に直結する Atomic Designという共通言語 コンポーネントを構成する4つの要素 "デザインとしての構造性" と "コードとしての再利用性" ButtonはAtomなのかMoleculeなのか問題 Atomic Des
データ可視化ツール、どれがいいんだろう? BI / データ可視化ツールは商用やOSS問わず、近年とても選択肢が増えています。どのツールも非常に魅力的で逆にどれを選ぼうか迷ってしまう方も多いのではないでしょうか。 本記事ではキッチハイクがその中からMetabaseを選択した理由を書いていきます。 はじめに こんにちは!キッチハイク インターンエンジニアの薬師寺です。 キッチハイクでは、データ可視化 / BIツールとしてMetabaseを導入しています。チーム全員が可視化されたデータにアクセスでき、同時にデータを分析できる環境を整えています。 Metabaseとは Metabaseは、OSSのデータ可視化 / BIツールのひとつです。 https://github.com/metabase/metabase フロントエンドはReact, サーバーサイドはClojureで書かれています。 Met
こんにちは。デザイナーのひのたん @featherplain です。2018年6月12日 ~ 13日の2日間に渡って開催された、GitHub Satellite Tokyo の Community セッションに登壇させていただきました。 私は人前で話すのはニガテな方です。でも、ステージの上でプレゼンをするのと、ただ話すのとでは大きな差があります。 プレゼンは準備と練習ができるので、やり方しだいでは「伝わるプレゼン」ができるようになります。過去に何回か登壇する機会があったものの、実に2年ぶりの登壇 & しかも主催が GitHub の大舞台!!ということでかなり入念に準備をして臨みました。そのおかげで登壇に向けたノウハウがかなり溜まってきたので、プレゼンに向けて、どんな準備をしたのかをご紹介したいと思います。スライドは記事の最後に掲載しているので、よかったら見てみてくださいね。 目次 準備編
Railsのコールバックが辛いって本当?実際にハマって、学んだこと チーム開発での経験は、一人で開発していた時とは全く別ものでした。Railsのコールバックは、 書いた本人ではなく他のメンバーが辛くなる ことが多いということを実体験を通して学びました。コールバックで苦しんだ経験を実際のシーンを元に書いてみました。 はじめに こんにちは。KitchHikeインターンエンジニアのタクです。 社員エンジニアの方から「Active Recordのコールバックは使い方を気をつけよう。」という趣旨のことを、入った頃から何回も言われていました。しかし、開発経験の浅い自分にはなぜ気をつけないといけないのかあまりピンときていませんでした。 たしかにインターネット上にはアンチコールバックの記事が多いのですが、どの記事を読んでも実体験がないからか、心から納得することはできませんでした。 「なぜそんなにもコールバ
B-Tree・カーディナリティ・実行計画・オプティマイザ・プロファイラ データベースのインデックス・チューニングで出てくる用語は、O/Rマッパーに慣れていると聞きなれない言葉かもしれません。 本記事では用語を解説しながら、RailsとMongoidでのインデックス・チューニングの一歩として基本的な手順をご紹介します。 はじめに こんにちは。KitchHikeエンジニアの小川です。 Railsのようなフルスタックフレームワークを使っていると、データベースを気にする機会はだいぶ減るのではないでしょうか。ActiveRecordのようなO/Rマッパーが上手く抽象化してくれるおかげで、生のSQLを書く必要はほとんどなくなりました。 一方でその抽象化は、データベースを見えにくくしているともいえます。データベースを直接見る機会が減ってしまうことで、知らず知らずのうちにトラブルの原因となっていることも少
Firebase Dynamic LinksをReact Nativeアプリに組み込むために調査したDeep Links(ディープリンク)の歴史を記事にしました。 はじめに こんにちは。KitchHikeインターンエンジニアのタクです。 スマートフォンでリンクをタップすると、アプリが起動してアプリ内のコンテンツへ遷移したことはありませんか? メールやWebサイトのリンクからアプリを起動させて画面遷移させる技術を Deep Linking (ディープリンキング) といい、実現するリンクのことを Deep Links (ディープリンク)といいます。アプリの普及と共にディープリンクは広く使われるようになりましたが、実装には煩雑な手順と設定が残っており、開発者にとって悩みの種になっているかもしれません。 Firebase Dynamic Linksを導入すると、ディープリンクを実現する上でのURL
2022年9月追記: 2022年10月31日をもって、OracleがWerckerのサービス提供を終了するとのことです。 Important Notice: Wercker service will be shutdown on October 31st, 2022 . We recommend you to use OCI DevOps service. Thank you for using Wercker. はじめに こんにちは!KitchHikeインターンエンジニアの薬師寺です。 主にサーバーサイド、特にテストやミドルウェア周りに関わっております。 KitchHikeでは、検索にElasticsearch、CIサービスとしてWerckerを使用しています。私のミッションはWerckerでElasticsearchのテスト環境を整えることでした。 まずはWeb上でドキュメントなどを読
はじめに こんにちは。KitchHikeエンジニアの小川です。 Webアプリケーション開発において、コードベースが大きくなってくると、よく問題になるものの一つが表示ロジックの重複ではないでしょうか。知らず知らずのうちにビューに同じようなロジックが増えて、コードの見通しが悪くなってくるのです。 KitchHikeのコードにもその兆候が見られはじめたので、対策として ViewModel パターンを取り入れています。このパターンを適用することで、表示ロジックを集約し、コードのメンテナンス性を向上させることができました。 ViewModel は、そんなに凝ったことをしているわけではないのですが、コードをすっきりさせる上ではかなり強力なパターンです。 今回はこの ViewModel について、実際の使い方を含めご紹介したいと思います。 ViewModelとは? 一言でいえばビューに関連するロジックを
WheneverというOSSにPull Requestを送り、マージされた話 キッチハイクでインターンを始めて、135日。 エンジニア人生初、オープンソースにPull Request(プルリクエスト)を送りました。 GitHubにあるOSSコミュニティは「特別なコミッターたちが集う、別世界」。そう眺めていただけの私が、勇気をもって踏み出してみると、そこには文字通りの「開かれたコミュニティ」がありました。 OSSコミュニティは、手の届かない存在? みなさんは、OSS開発についてどう思っていますか? 「数多のすばらしいコミットのおかげで、日々開発できています!」「特別な技術がないと、関われない」…こんなイメージを抱く方、少なくないと思います。すごく、分かります。 OSS コミッターは遠い存在、というイメージ イラスト素材はぴよたそ様 そんな私がこのたび、OSS開発に貢献するというビッグイベント
こんにちは。KitchHikeエンジニアの小川です。 KitchHikeのアプリがつい先日リリースされました! 私は主にサーバサイドのAPI設計・開発を担当していたのですが、今回はその中で特に気を配った、意図しないレスポンスを防ぐためのAPI設計の取り組みについてご紹介したいと思います。 なお、本エントリはFood Service Engineers Meetup #3、第6回スタートアップRails勉強会にて発表した内容を整理したものです。併せてご参照いただければと思います。 意図せぬレスポンス問題 API開発でよくぶつかる問題のひとつは、APIのレスポンスに意図しないデータ項目が含まれてしまうことです。たとえば user リソースをレスポンスとして返すケースを考えてみましょう。 Railsの場合、最もお手軽にjsonレスポンスを返すなら as_json でしょう。ここはひとつ、何も考え
2021-12-27 RN Features 2021年12月号 - React Native アドベントカレンダー 2021, ニュースレター React Native Now, React Native で Liquid Swipe を実装するための4つの技術 RNFeatures React ReactNative JavaScript はじめに キッチハイクのエンジニアメンバーでReact Nativeの気になるニュースを持ち寄ってみました! はじめに React Native アドベントカレンダー 2021 M1 Mac + Xcode 12.5.1でReact Native 0.65 アプリのビルド時に出たエラーと対応 React Native で Liq… 2021-11-24 RN Features 2021年11月号 - Hermes がデフォルトになるために、React
こんにちは。デザイナーの羽野です。KitchHike では Web プロダクトのデザインとコーディングを担当しています。最近は React Native に手を出し始めました。Web の知識が活かせるのでなかなか楽しいです。 さて、デザインの際は Sketch を使っているのですが、恐らく知らない方はもういないんじゃないでしょうか。Sketch の便利さを語ろうとしたらそれだけでひとつ記事が書けてしまいますが、便利さのひとつにプラグインを活用した拡張性の高さが挙げられます。 というわけで、今回は Sketch を使うにあたってぜひとも入れておきたいプラグインを厳選して紹介したいと思います。必須系プラグインに的を絞ってあるので、Sketch 初心者の方はぜひ入れてみてくださいね。 Runner http://sketchrunner.com/ Sketch はデフォルトでも便利ですが、使って
はじめに こんにちは。KitchHikeエンジニアの小川です。KitchHikeでは主にサーバーサイドを担当しています。 少し前のものですが、「DHHはどのようにRailsのコントローラを書くのか (原文)」というすばらしい記事があります。Railsのコントローラ分割の(DHH流)ベストプラクティスについて解説した記事なのですが、私はこの記事に大変感銘を受け、KitchHikeのルーティング定義にもこのプラクティスを取り入れるようになりました。 本日はこのDHH流ルーティングを取り入れることで得られるメリット、実際の routes.rb でのルーティング定義のしかたについて紹介したいと思います。 DHH流ルーティングとは?何がうれしいの? 詳しくは元記事を是非とも読んで下さい・・・なのですが、かいつまむと、ここで示されているのはたったひとつの単純明快なルールです。 コントローラはデフォルト
このページを最初にブックマークしてみませんか?
『KitchHike Tech Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く