Gleyzer両氏によって共同開発されました。2019で、同言語の発表を行いました。InfoQはPurdy氏に言語と、氏らが解決を目指した問題について聞きました。設計/アーキテクチャアジャイルマニュフェスト:ソフトウェアアーキテクトの視点ソフトウェアアーキテクトの役割と責任はアジャイルソフトウェア開発のためのマニフェストの価値と矛盾していると見えますが、優れたアーキテクトはアジャイル開発チームをサポートするテクニックを見つけています。Streamingは、ストリーミングデータのためのSQLライクなインターフェースを提供します。Streamsによって、Redisがストリーミングデータを複数のプロデューサとコンシューマの間で消費、保持、配信することができるようになります。ソフトウェア開発のマニフェストたゆまず息もつかずに市場に突進することで、会社を静かに消滅の崖っぷちへと追い込みます。それは設計してコードを書く方法を再考する時です。簡単さへの投資は、速さへの投資です。簡単さは知的財産の主鉱脈でもあります。競争上の優位性は、一度失ったら、もう一度手に入れることはほとんど不可能です。Buytaerts氏が過去10年間にわたって、企業がDevOps採用のハイプサイクルをくぐり抜け、変革に対する誤解を解消する過程を支援してきた経験について語ります。原文(投稿日:2020/01/09)へのリンクCSS-in-JSは、コンポーネントロジックをスタイリングにリンクする方法として、一部のコンテキストで人気になった。Arvanitakis氏はCSS-in-JSのコストがもはや無視できない場合について開発者に注意を促し、緩和戦略を提供した。Arvanitakis氏は記事において、CSS-in-JSがもたらす利点があるものの、一部のアプリケーションでパフォーマンス問題を引き起こす可能性があると主張した。Reactに注目すると、2つの人気のあるCSS-in-JSライブラリ(styled-componentsとemotion)があり、Arvanitakis氏は、CSS-in-JSスタイルだけの差のコードを比較した。);};スタイル付けされたCSS-in-JS実装は、スタイル付けされていないバージョンと比べて50%以上もレンダリングに時間がかかるように見えた。多くの場合、CSS-in-JSに関するパフォーマンスコストはほとんど認識されていないが、(大きなコンポーネントツリー機能など)いくつかのケースでは無視できなくなる。コンポーネントツリーを変更するライブラリと、(動的にCSSを挿入された<style>タグを含む)動的にスタイルを適用するライブラリではないかと仮定した。Arvanitakis氏は説明する:Tableを実装するまでは順調でした。50行を超えた時に、レンダリングが遅く感じることに気づきました。そのため、開発ツールを開いて調査してみました。(...)まとめると、複数のContext利用者(Reactが調査する必要がある追加の要素を意味する)と、動的スタイリングに伴うハウスキーピングの組み合わせにより、アプリの速度が低下する可能性があります。アプリがテーマをサポートせず、csspropを重く複雑に使わない場合、ゼロランタイムCSS-in-JSが利用できる可能性がある特典として、ほとんどのCSS-in-JSライブラリは10KBから15KB程度あるが、(linariaのような)ゼロランタイムは1KBのため、全体のバンドルサイズから最大12KBを削減できるArvanitakis氏は、パフォーマンスのリファクタリングは、パフォーマンス問題を経験または計測した後にのみ行うべきであると警告した。Isonen氏は、4つの一般的に使われているCSS-in-JS戦略のトレードオフについて説明し、CSS-in-JSライブラリを比較したパフォーマンスベンチマーク(2019年3月時点)にリンクした。選択されたライブラリのベンチマークは以下のように実行された:CSS-in-JSは、Reactのようなコンポーネントベースのフレームワークに限定される場合がある。Angularのようなそのほかの人気のフレームワークは、他のコロケーション戦略を使用して、開発者に同じようなメリット(スコープ化されたCSSとtree-shake可能なCSSなど)を提供する。Angular開発者は、HTMLのようなテンプレートファイル、CSSファイル、JavaScriptファイルでコンポーネントを定義できる。.htmlの3ファイルは、同じディレクトリに配置されることが期待されている。Angular開発者は、テンプレートとスタイルが短く、シンプルな場合、テンプレートとスタイルは@Component定義に文字列の形で直接配置することを好む傾向にある。どちらのアプローチも構文が異なるが、同じスコープのメリットがある。Vueは、CSSスタイル情報を含む<style>タグ、htmlに似たテンプレート、コンポーネントの動作を処理するJavaScriptメソッドを内包する、単一の.vueファイルをプロモートする。同様にSvelteは、同じファイル、スタイル、テンプレート、ロジック情報を含む.svelteファイルのコンポーネント定義を読み込む。CSS-in-JSは、テンプレートの代わりにJavaScriptレンダリング関数を使用するReactなどのフレームワークで使われるコロケーションの別の形式である。Czaplicki氏は、Twitterで、コンポーネントはオブジェクトであると仮定した。Martin氏によって表される単一責務の原則に対応している:単一責務の原則の他の表現は:同じ理由で変化するものを集めます。別の理由で変化するものを分離します。これについて考えると、凝集と結合を定義するための別の方法であることがわかります。同じ理由で変化するものの凝集を高め、異なる理由で変化するものの結合を減らしたいということです。Arvanitakis氏の全記事には、オンラインで確認できる追加のプロファイル情報が含まれている。毎週火曜日に前週のまとめコンテンツがお送りいたします。25万人ものシニアデベロッパーのコミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。あなたの意見をお聞かせください。/スパムの可能性があると認識されました。モデレーターが確認し問題がなければ24時間以内に公開します。その際あなたへの通知は行われませんのでご了承ください。毎週火曜日に前週のまとめコンテンツがお送りいたします。25万人ものシニアデベロッパーのコミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。よい世界へ私たちが暮らす世界を大切に思い、よりよいものにしたいと考えています。人のためのソフトウェア開発を加速し私たちのミッションを実現することで、この思いを成し遂げようとしています。私たちは利益の1%をさまざまな慈善団体に寄付しています。会社として、また従業員として、そうしたことの価値を強く信じているからです。with.プライバシーBTあなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。アドレス*Eメールを変更すると確認のメールが配信されます。会社名:現在の会社名をご入力ください。Other組織規模:現在の組織規模をご入力ください。2,501+国:現在の国を設定してください。Zimbabwe都道府県:現在の都道府県に設定してください。次の都道府県にアップデートする:ニュースレターを購読しますか?インダストリーメールを購読しますか?本Eメールに登録すると、以前より関心のあったトピックの関連情報をお送りする場合がございます。詳細はこちらのプライバシーポリシーをご覧ください。newsletter?新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。