タグ

2021年11月7日のブックマーク (4件)

  • useEffect()内でsetState()するのを減らすテク

    コンポーネント上の useEffect() (or useLayoutEffect()) で複雑なこと、特に再レンダリングを発生させるsetState()等をすると、deps配列(第2引数)の指定方法などによっては、おかしな挙動を起こしうるのでなるべく避けたいです。何より、テストが面倒なプレゼンテーションロジックは、常にシンプルに保つ方がメンテナンスが容易になります。 追記: これはStateの更新がEvent(setState())を発生させ、さらなるState更新を生むことで、データの流れが複雑になっているというところが質かなと思います。ReduxじゃなくてもUnidirectional Data Flow(単方向データフロー)は普遍的な概念として有効なはずです。 Unidirectional Data Flowについては画像作りをサボってしまったのでこの記事あたりを参照してください

    useEffect()内でsetState()するのを減らすテク
  • Ruby on RailsとReactでECサイト構築 - Qiita

    Laravelで実装していた箇所は全面的にRuby on Railsの形で作り直しが必要でした。ただ、フレームワークのアーキテクチャがLaravelRailsが似ているので、ほぼ文法の置き換えのみでいけました。 ReactはerbからReactを呼び出す部分だけ工夫が要りましたが、Laravel版で実装していたReactのコンポーネントはほぼそのまま使えました。変更が必要だったのは、Reactへの値受け渡し部分のみでした。LaravelではbladeからReactへ値を連携する際json文字列に変換し、Reactでそのjson文字からオブジェクトへとパースしてました。とこらがRuby on RailsではerbでReactに値を連携する際json文字列にせずに渡せて、Reactでもjson文字列をパースせずともオブジェクトとして受け取れている状態となっていました。内部ではRuby on

    Ruby on RailsとReactでECサイト構築 - Qiita
  • Ruby 3: FiberやRactorでHTTPサーバーを手作りする(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: HTTP server in Ruby 3 - Fibers & Ractors 原文公開日: 2021/07/25 原著者: Dmitry Ishkov FiberとRactorについては以下もどうぞ。 class Fiber (Ruby 3.0.0 リファレンスマニュアル) Ruby 3.0 の Ractor を自慢したい - クックパッド開発者ブログ 動機 Ruby歴史的にコンカレンシーを欠いていましたが、現在のRubyには「ネイティブ」スレッドがあります(Ruby 1.9より前は「グリーンスレッド」 のみでした)。ネイティブスレッドは、OS によって制御されるスレッドが複数存在することを意味しますが、一度に実行できるスレッドは 1 つだけで、GIL(Global Interpreter Lock)によって管理されます。た

    Ruby 3: FiberやRactorでHTTPサーバーを手作りする(翻訳)|TechRacho by BPS株式会社
  • 完全無料のIDaaS!?Google Cloud Identity Freeを試してみる

    Google Cloud Identity Services昨日開催された「リーグオブ情シス #7」でも紹介されていた、Google Cloud Identity Freeを試してみます。 Google Cloud Identity Freeとはデバイス管理やディレクトリ管理、SAMLを利用したSSOなどGoogle Cloud Identityのほとんどの機能を無料で利用できるライセンス体系です。 閲覧だけに限って言えば、Google Driveの共有ドライブも利用することが可能です。 作成できるユーザー数は「50」までに制限され、プロビジョニングなどはできませんが、ユーザーの組織管理という観点においてはほとんどのことを十分にこなすことが可能です。 Google Workspaceを利用している場合は、同じ組織内にユーザーを共存させることも可能なので、小さな組織でパート・アルバイトの方な

    完全無料のIDaaS!?Google Cloud Identity Freeを試してみる
    tofu-kun
    tofu-kun 2021/11/07