TypeScriptではデザインパターンとしてtagged unionによる直和がよく使われます。このときパターンマッチに相当する処理はswitchで行われますが、そこで直和に対する分岐が網羅的であることの保証を実行時と型検査時の両方で賢く行う方法がこれまでも模索されてきました。 今回、ヘルパー関数を導入せずにいくつかの問題を同時に解決する賢い方法を思い付いたので共有します。 コード これだけです。 // switch (action.type) { ... default: throw new Error(`Unknown type: ${(action as { type: "__invalid__" }).type}`); // .. } 以下、より詳しく説明します。 問題 TypeScriptではオブジェクトに type プロパティーを用意し、決まった文字列を入れることで直和を実現
Cisco Talos Intelligence Groupは8月10日(米国時間)、「Cisco Talos Intelligence Group - Comprehensive Threat Intelligence: Cisco Talos shares insights related to recent cyber attack on Cisco」において、2022年5月24日に同社がサイバー攻撃を受けたと伝えた。調査の結果、従業員の個人的なGoogleアカウントがサイバー犯罪者に悪用されたことから、攻撃が始まったことがわかったと報告している。 Cisco Talos Intelligence Group - Comprehensive Threat Intelligence: Cisco Talos shares insights related to recent cyber
秋に公開されるiPadOS 16の機能の中でも、とりわけ注目されているのが複数ウィンドウをグループ化して、グループごとに同時に扱う「ステージマネージャ」だ。この際、外部ディスプレイを接続して、ミラーリングではなく拡張ディスプレイとしても使うことができる。 どちらもiPad ProとiPad AirのM1チップ搭載モデルでしか使えない機能だが、最大6Kまでのディスプレイなどを接続して、それぞれの画面で4つずつ、最大8つのアプリを同時に操作させることができる。大画面でのiPad利用は、新しい体験だといえる。 ※この記事は、秋公開のiPadOS 16のパブリックベータに基づいた記事です。Apple Beta Software Programで知り得た情報は、その内容について誰かに話したり、ウェブ記事にしたり、SNSに投稿したりすることは禁じられていますが、ITmedia NEWSでは取材に基づく
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く