並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 69件

新着順 人気順

typescript string nullableの検索結果1 - 40 件 / 69件

  • 【C#】何故 C# を好むのか。~他の言語と比較しながら~ - ねののお庭。

    世の中には多くの C# に関する誤解が蔓延っています。 偏見にも満ちています。 そして技術的に正しい批判ではなく、根本的に技術的に誤った批判ばかりで正直悲しい。 技術的に正しい形の批判なら「お、そうだな。そしてそれの解決策はですねぇ...(ニヤニヤ)」となるのですが...。 そして C# 界隈から一歩出ると、「え、C# で作ってるの!?なんで??」とか言われる事が非常に多い始末。 C# 大好きマンとしては非常に嘆かわしい。 嘆かわしい限りなので、ここでなぜ C# を私が好むか、そして何故ソフトウェアの開発に向いているかを語りたいと思います。そして誤解が解けたら嬉しい。ついでに C# を書きたいと思ってくれたら嬉しい。 想定読者 前書きという名の予防線 事前知識: C# と .NET C# はパフォーマンスの高い言語 C# はビルドも高速 C# はオープンソースかつクロスプラットフォーム 言

      【C#】何故 C# を好むのか。~他の言語と比較しながら~ - ねののお庭。
    • 実践! Typescript で DDD - マイクロサービス設計のすすめ - Leverages Tech Blog

      対象読者 マイクロサービス化を検討しており、実際に作る場合の構成を参考にしたい。 ドメイン駆動設計について、基本的な用語の知識がある。 TypeScript を多少触ったことがある。理解がある。 はじめに こんにちは。エンジニアの吉村です。 現在、弊社が運営する teratail というサービスに携わっており、CakePHP で動作しているモノリシックな既存サービスをマイクロサービスに移行するというプロジェクトを進行中です。 この記事では、実務を通して得た知見として、マイクロサービス化によりどんな恩恵があるのか、具体的にどのような構成で実装をしているのかについてご紹介します。 TL;DR マイクロサービスのバックエンドサービスの実装に焦点を絞って、ドメイン駆動設計 + オニオンアーキテクチャをベースに設計をしました。 本記事では、具体的に「ユーザ新規登録処理」の実装をする場合を例にとり、実

        実践! Typescript で DDD - マイクロサービス設計のすすめ - Leverages Tech Blog
      • FastAPIの作者が作った「SQLModel」が革命的すぎるので、全Python使いに教えたい

        この記事はLivetoon Tech Advent Calendar 2025の11日目の記事です。 本日はCTOの私がよく使ってるSQLModelについてお話します。 宣伝 今回のアドベントカレンダーでは、LivetoonのAIキャラクターアプリのkaiwaに関わるエンジニアが、アプリの話からLLM・合成音声・インフラ監視・GPU・OSSまで、幅広くアドベントカレンダーとして書いて行く予定です。 是非、publicationをフォローして、記事を追ってみてください。 SQLModelとは SQLModelは、 Pydantic と SQLAlchemy のいいとこ取りをしたPython ORMライブラリです。FastAPIの作者(tiangolo)が開発しており、以下の特徴があります: Pydanticの書き心地: バリデーション・型安全性をそのまま活用 SQLAlchemyの互換性:

          FastAPIの作者が作った「SQLModel」が革命的すぎるので、全Python使いに教えたい
        • RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも!|ハイクラス転職・求人情報サイト アンビ(AMBI)

          ハイクラス求人TOPIT記事一覧RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも! RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも! 安全性に大きな特徴があるプログラミング言語Rustは、C言語やC++に代わるシステム記述言語として注目されてきました。しかし、その安全性とパフォーマンスの高さにより、ビジネスアプリケーションの構築にも採用されています。この記事ではキャディ株式会社による事例を紹介します。 こんにちは。キャディ株式会社バックエンドエンジニアの松田と申します。 キャディ株式会社では、「モノづくり産業のポテンシャルを解放する」をミッションとして、製造業分野に関連するさまざまなソフトウェアの開発を行っています。また、そのための主要な開発言語としてRustを採用

            RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも!|ハイクラス転職・求人情報サイト アンビ(AMBI)
          • TypeScript の「型安全」を担保するために知っておきたかったこと - OITA: Oika's Information Technological Activities

            タイムリープTypeScript 〜TypeScript始めたてのあの頃に知っておきたかったこと〜 アドベントカレンダー1日目の記事になります。 よろしくお願いします。 3行で TypeScript で安全に型を扱う勘所は以下2点だと思いました。 最初から最後まで型が壊れていないことを保証する 型が壊れる可能性があるものは壊れている前提で扱う 個人的背景と前提 もともと C# での開発をメインとしていました。 Web開発は、JavaScript歴 ≒ TypeScript歴くらいの型付依存者です。 そのため、型付けのゆるい言語に対する耐性がなく、本内容もそういうポジションからの見解になります。 本記事内のサンプルコードは TypeScript V4.4 で挙動を確認しています。 最近のバージョンで変更のあった点は脚注を入れています。 最初から最後まで型を壊さない C# という静的型付け言語

              TypeScript の「型安全」を担保するために知っておきたかったこと - OITA: Oika's Information Technological Activities
            • OpenAPI Generator で API Client と型を自動生成した話 - BASEプロダクトチームブログ

              フロントエンドエンジニアの @rry です。 自分は BASE の Sales Promotion というチームで主に新規機能開発を行っています。このチームでは主にオーナーさんの使う管理画面に新しく機能追加をしています。 そこで、管理画面で使っている API Client と型を、OpenAPI Generator を使って自動生成するようにしてみたのでそのお話を書きたいと思います。 そもそも OpenAPI とは? https://www.openapis.org/ OpenAPI とは、RESTful Web サービスを記述、生成、使用、および視覚化するための仕様です。 ※ 以前は OpenAPI ではなく仕様自体も Swagger と呼ばれていましたが、現在は仕様自体については OpneAPI と呼ばれており、Swagger というのは OpenAPI を使ったツール群のことをさすよ

                OpenAPI Generator で API Client と型を自動生成した話 - BASEプロダクトチームブログ
              • Rails+Next.jsでGraphQLを導入する時に考えたこと - Timee Product Team Blog

                こんにちは、タイミー開発プラットフォームチームで業務委託として働いている宮城です。 タイミーはリリースから4年が経過したプロダクトで、2022年の前半から一部領域でGraphQLを利用し始め現在導入を進めています。 本記事では、GraphQLをプロダクトに導入する上で判断に迷った箇所や課題に対して、タイミーでの意思決定とその理由を紹介します。参考にしていただければ幸いです。 GraphQLの選定理由についてはこの記事では触れませんが、CTOの@kameike が以下のイベントで詳しく紹介する予定です。まだ参加申し込みは可能ですので、興味がある方はぜひ合わせてご覧ください。 timeedev.connpass.com なお、本記事のタイトルはソウゾウさんの以下の記事にインスパイアされています。 engineering.mercari.com GraphQLの「Getting Startedの

                  Rails+Next.jsでGraphQLを導入する時に考えたこと - Timee Product Team Blog
                • メルカリ Shops での NestJS を使った GraphQL Server の実装 | メルカリエンジニアリング

                  ソウゾウの Software Engineer をやっています、@mookjp です。 8/10 の記事「メルカリShopsの技術スタックと、その選定理由」では、メルカリ Shops のアーキテクチャについて、その全体像を紹介しました。 この記事では、そのうちの BFF(Backend for Frontend) レイヤとして用意した GraphQL サーバについて、NestJS を使った実装例を交えて紹介します。 GraphQL とは GraphQL サーバ周辺の構成 NestJS とは GraphQL Module NestJS で Code First なスキーマ定義をする Object types の定義 Query と Mutation の定義 GraphQL スキーマの生成 スキーマの Breaking Change (破壊的変更)を防ぐ DataLoader を使って Bat

                    メルカリ Shops での NestJS を使った GraphQL Server の実装 | メルカリエンジニアリング
                  • こんなに辛いことになるから、最初にがんばろう / 辛い開発状況をどうにかするためにやった13のこと

                    こんにちは!sugitaniと申します。 これまで有名芸能人と通話ができる(かもしれない)ライブ配信アプリとか、オリジナルマンガの配信サービスとか、コメントが横に流れるライブ配信システムとかを作ってきました。(SUGARは今も作業してます) 最近ご縁がありましてUUUMの子会社で、簡単に有料フォロワー向けの投稿が行えるFOLLOW MEを主に開発していて、NFTでデジタルトレーディングカード(※)を売り買いすることができるHABETをIndieSquare社さんと協業で運営しているNUNW株式会社(5月にFOROから社名変更)に入社し半年くらい経っています。最近CTOに任命していただきました! ※NFTについては思うことがある開発者の皆様が多いと思っていますが、自分がどう思っているかは後述します 少し前に「スタートアップがまともなわけ無いから入るな」というインタビュー記事を書いて頂いたんで

                      こんなに辛いことになるから、最初にがんばろう / 辛い開発状況をどうにかするためにやった13のこと
                    • TypeScriptとGraphQLで実現する型安全なAPI実装

                      この記事はTSKaigi2024での以下の私の発表内容を書き下ろしたものです。 なぜAPIに型をつけたいのか 現代のWebのシステム開発において、クライアント・サーバーともに型のある言語で開発されることが増えてきました。静的な型検査はコードの堅牢性やよりよいメンテナンス性の向上をもたらします。 プログラミング内部だけで型検査をするだけでも十分メリットはありますが、外部I/Oに対する型付けが不十分だとそのメリットを最大限に発揮してるとは言えません。外部I/Oとは、例えばWebフロントエンドだとLocalStorageやDOMからの入力値、それからネットワーク通信(今回はこれをAPIと呼びます[1])などですね。サーバー側でいうとAPIからの入力・レスポンスやデータベースへの読み書きが該当します。 個人的な経験から言うと、Webシステムの開発におけるエラーの多くはAPIやデータベースとのやり取

                        TypeScriptとGraphQLで実現する型安全なAPI実装
                      • Hono + Deno で住所分割APIサーバーを2日で爆速実装する - inSmartBank

                        はじめに サーバーサイドエンジニアの mokuo です。普段はカード決済やあとばらいチャージに関連する機能の開発や運用を行っております。 本記事でお話すること 日本の住所を都道府県、市区町村、丁目番地、それ以降などに分割する方法の検討から技術選定、実際に動いているコード(ほぼそのまま)をお見せします。 想定読者 サーバーサイドエンジニアを主な読者として想定しています。 日本の住所を分割する機能の実装方法を知りたい方 Deno*1や Hono*2 の採用事例、実装例を知りたい方 はじめに 本記事でお話すること 想定読者 🤔 背景と課題 🎯 住所分割の方針検討 ✂️ 住所分割方法: normalize-japanese-addresses に決定 🧩 npm ライブラリの組み込み: Hono + Deno に決定 🏠️ インフラ構成: ECS + EFS に決定 💪 2日で実装する

                          Hono + Deno で住所分割APIサーバーを2日で爆速実装する - inSmartBank
                        • 外からやってくる値から TypeScript の型を守るライブラリ・ツールまとめ - Mobile Factory Tech Blog

                          こんにちは、新卒エンジニアの id:d-kimuson です 先日 type-predicates-generator という型定義からユーザー定義型ガード・アサーション関数を自動生成するツールをリリースして紹介記事を書いたのですが、感想とかを眺めていたら同じく外部から来た値に安全な型付けをするためのライブラリやツールの情報をいくつも観測しました この辺りのランタイムチェックライブラリの情報ってあまりまとまっていない印象で自分が知らないものもいくつかあったので、調べつつ簡単にまとめられたらなと思ってこのエントリを書きました 外部からやってきた値を型安全にするにはざっくりと 型生成によるアプローチ ランタイムチェック用の独自型を書かせるアプローチ 型情報からランタイムチェック関数を自動生成するアプローチ の 3 つのアプローチがあると思うので、それぞれのアプローチごとに紹介します ① 型定義

                            外からやってくる値から TypeScript の型を守るライブラリ・ツールまとめ - Mobile Factory Tech Blog
                          • Reducing tool calling error rates from 15% to 3% for OpenAI, Anthropic, and Google Gemini models - Mastra Blog

                            Reducing tool calling error rates from 15% to 3% for OpenAI, Anthropic, and Google Gemini models We recently built a tool compatibility layer that reduced tool calling error rates from 15% to 3% for 12 OpenAI, Anthropic, and Google Gemini models, across a set of 30 property types and constraints. Background Mastra is a TypeScript agent framework. When a user is doing tool calls that accepts some i

                              Reducing tool calling error rates from 15% to 3% for OpenAI, Anthropic, and Google Gemini models - Mastra Blog
                            • neue cc - Claudia - Anthropic ClaudeのC# SDKと現代的なC#によるウェブAPIクライアントの作り方

                              AI関連、競合は現れども、性能的にやはりOpenAI一強なのかなぁというところに現れたAnthropic Claude 3は、確かに明らかに性能がいい、GPT-4を凌駕している……!というわけで大いに気に入った(ついでに最近のOpenAIのムーブが気に入らない)ので、C#で使い倒していきたい!そこで、まずはSDKがないので非公式SDKを作りました。こないだまでプレビュー版を流していたのですが、今回v1.0.0として出します。ライブラリ名は、Claudeだから、Claudiaです!.NET全般で使えるのと、Unity(Runtime/Editor双方)でも動作確認をしているので、アイディア次第で色々活用できると思います。 GitHub - Cysharp/Claudia 今回のSDKを作るにあたっての設計指針の一番目は、公式のPython SDKやTypeScript SDKと限りなく似せる

                              • Next.js + Hono + AWS でイベント駆動なプロフィール交換アプリを開発!

                                TL;DR スマホでQRコードを読み込むプロフィール交換アプリを開発した。 イベントソーシングだったり Hono だったり、気になる技術を試せた。 アプリのレスポンスが速く、懇親会も盛り上がったのでよかった! はじめに レバテック開発部で基盤システムグループに所属している瀬尾です。 普段はマイクロサービスのつらみを味わったりしています。 昨年末に弊社で大規模な懇親会があり、そこでの交流を増やす目的として、互いの QR コードを読み取りプロフィールを交換するアプリを作りました。 この記事では、そのアプリをどんな技術でどのように開発していったかをご紹介しようと思います! 技術スタック 言語 Typescript Go(Lambdaで使用) フロントエンド Node.js Next.js, TailwindCSS バックエンド Bun Hono, Prisma イベントソーシング インフラ AW

                                  Next.js + Hono + AWS でイベント駆動なプロフィール交換アプリを開発!
                                • 【TypeScript】配列の型を絞り込むときはflatMapがおすすめ

                                  こんにちは。 スペースマーケットでフロントエンドエンジニアをしているmizukiです! 今回はタイトルの通り、配列で型を絞る際にflatMapを使うのがおすすめだよ!といった話をします。 配列から特定のデータを排除する 例えば、配列からnullableな値を消したいとします。 その場合は以下のようなコードになります。 const nullableArray: Array<string | null> = ['hoge', null, 'fuga'] const array = nullableArray.filter((data) => { return !!data }) ただ、この場合だと型定義としてはnullが排除されたことを認知できず、変数arrayの型は引き続きArray<string | null>と認識されてしまいます。 isを使って型を絞り込む 先ほどの場合、期待値としては

                                    【TypeScript】配列の型を絞り込むときはflatMapがおすすめ
                                  • OpenAPI × Orval × MSW × Next.jsでのスキーマ駆動開発実践 #techtekt Advent Calendar 2022 - techtekt

                                    この記事は techtekt アドベントカレンダー2022 の15日目の記事です🔥 その他にも記事が掲載されていますので、興味がある方は#techtekt Advent Calendar 2022で検索してみてください! はじめに はじめまして。パーソルキャリア株式会社のサービス開発部でエンジニアをしている西澤と申します。 HR forecasterという採用支援サービスのフロントエンドエンジニアを担当しています。今回はそのプロジェクト内で新たに組み上げた開発体制で導入したスキーマ駆動開発の流れについて紹介したいと思います🙋‍♂️ 目次 開発環境 導入背景 スキーマ駆動開発って何? OASのディレクトリ構成 OASを利用した型の生成・モックコードの生成 Next.jsでMSWを動かす おわりに 開発環境 Next.js 12.3.4 React 18.2.0 TypeScript 4.

                                      OpenAPI × Orval × MSW × Next.jsでのスキーマ駆動開発実践 #techtekt Advent Calendar 2022 - techtekt
                                    • null or undefined #kyotoasterisk とその補足など - Object.create(null)

                                      Kyoto.なんか #6 で発表しました. speakerdeck.com 以下はその補足情報など. 仕様書中の出現頻度 null と undefined がそれぞれの仕様でどの程度使われているのかは, 仕様書中の出現頻度を見るだけでもある程度わかりりそうです. ということで ECMAScript 2024 と WHATWG の標準 (2024-09-07 時点) のうちいくつかの仕様書の中での出現頻度を見てみましょう. Spec #null #undefined ES2024 300 939 DOM 368 120 Fetch 276 10 HTML 1778 275 URL 98 9 見ての通り, 顕著に登場頻度に差があることがわかりますね. なお上記の null の出現数には WebIDL の nullable (T?) を含めていないため, Web 標準における実際の null の

                                        null or undefined #kyotoasterisk とその補足など - Object.create(null)
                                      • typescript-generatorを利用して、HTML に埋め込んだ JSON データをフロントエンドで型安全に扱う - Cybozu Inside Out | サイボウズエンジニアのブログ

                                        こんにちは!kintone フロントエンドリアーキテクチャチーム (フロリア) の西川 @nissy_dev です。 最近のフロントエンド開発で導入されることの多い TypeScript ですが、開発期間の長いプロジェクトに導入する際にはバックエンドとの結合部分の型定義をどう扱うかが問題になる場合があると思います。 今回の記事では、フロリアで取り組み始めた、HTML に埋め込んだ JSON データをフロントエンドで型安全に扱う施策について紹介します。 フロリアのプロジェクトの詳細については、 @koba04 が書いた次の記事をご覧ください。 blog.cybozu.io 目次 フロリアでのバックエンドからのデータ取得 HTML に JSON データを埋め込む方法の問題点 Java のクラスから TypeScript の型定義を生成できる typescript-generator types

                                          typescript-generatorを利用して、HTML に埋め込んだ JSON データをフロントエンドで型安全に扱う - Cybozu Inside Out | サイボウズエンジニアのブログ
                                        • GoとテストとSDKとGCP - KAYAC Engineers' Blog

                                          SREチーム(新卒)の市川恭佑です。これはKAYAC Advent Calendar 2022の9日目の記事です。 今年の弊社アドベントカレンダーは、筋肉やランニング、さらにはサウナなど、多様性に富んだ面白いエントリが出揃っています。 自分も好きなファッションについて書きたくなってしまったのですが、ここはグッと気持ちを抑えて、仕事で触った技術について書きます。 ※ この記事のタイトルは、酒とゲームとインフラとGCPというイベントのオマージュです。 仕事の近況報告 まず、最近どんな仕事をしているのかについて報告させてください。恐らく誰も興味がないと思いますが、年末のアドベントカレンダー企画ということもあるので...... Amazon Web Services(AWS)を用いた自社サービス 今年の4月に新卒入社してから、技術ブログを2本執筆しました。下記がそのリンクです。 techblog.

                                            GoとテストとSDKとGCP - KAYAC Engineers' Blog
                                          • Claude CodeとCodex簡単に比較してみた

                                            Claude Codeはより長大なコンテキストを扱える点が強みであり、大規模なプロジェクトに適している。一方Codexは実装スピードとUIの統合性に優れる。 とされている。 開発条件と設計 Todoアプリの要件 ブラウザで動作するWebアプリ Todo一覧(タイトル表示)、詳細(本文・日付表示) 新規登録・更新・削除が可能 技術スタック フロントエンド:Next.js(TypeScript)+Shadcn+TailwindCSS 状態管理:Zustand バックエンド:Hono(TypeScript) DB:PostgreSQL 開発環境:Docker+docker-compose ビルドツール:pnpm(corepackで対応) セットアップ:makeコマンドでマイグレーション等を自動化 これをChatGPTに読み込ませて仕様書を作成、それを各AIツールにコピペして実装をしてもらう。 C

                                              Claude CodeとCodex簡単に比較してみた
                                            • New RelicのSLOモニタリング+バーンレートアラートをCDK for Terraform(cdktf)でIaC管理する - Uzabase for Engineers

                                              こんにちは、ソーシャル経済メディア「NewsPicks」でSREをしている飯野です。 今回はSREで行ったNew RelicをCDK for TerraformでIaC管理する話を紹介したいと思います。 SLOモニタリングをSREチームだけで行うのは難しい CDK for Terraformとcdktf-newrelic-provider 追記 IaCで作成する内容 CDK for Terraformで実装していく -1. cdktf init 0. @cdktf/newrelic-provicerの初期化 1.DataNewrelicEntityの作成 2.ServiceLevelの作成 3.AlertPolicyの作成 4.AlertCondition(バーンレートアラート)の作成 5. NotificationDestinationの作成 6. NotificationChannel

                                                New RelicのSLOモニタリング+バーンレートアラートをCDK for Terraform(cdktf)でIaC管理する - Uzabase for Engineers
                                              • JSON Schema や Ajv と TypeScript の型を紐づけるときの考え方や技術

                                                宣伝 4/25 に Encraft #2 サーバーとクライアントを結ぶ技術 というイベントで JSON Schema について喋る。いま現在進行形で IDL として JSON Schema, GraphQL, Protocol Buffer, zod, joi を使っているのでそれらを食べ比べる発表をするつもりだ(明らかに JS 上でしか動かないものを IDL と呼んでいいか不安になってきた)。そしてスキーマ駆動開発(code first なアプローチをスキーマ駆動と呼んでいいのか不安になってきた)を推進する上で、その中では大人の事情に柔軟に一番対応できるのは JSON Schema だという悲しい話をする。だが、私はこの JSON Schema を書き過ぎたせいで話したいことが大量にあり、JSON Schema の話だけで 1 時間超えそうな勢いなことに気づいた(発表時間は 20 分)。

                                                  JSON Schema や Ajv と TypeScript の型を紐づけるときの考え方や技術
                                                • 開発を止めない段階的フロントエンドリプレイスの実践 (2) 技術編 - エムスリーテックブログ

                                                  【デジカルチーム ブログリレー2日目】 こんにちは、デジカルチームでソフトウェアエンジニアをしている穴繁です。 長年開発を続けてきたサービスを運用していると、「そろそろアレもコレも新しくしたいなぁ…でもサービスは止められないし、どう進めたものか…」なんて頭を悩ませることはありませんか? 今回は、まさにそのような状況で私たちが実践した「開発を止めない段階的フロントエンドリプレイス」について、計画・技術・組織という3つの観点からご紹介します。 前回の計画編では、なぜ段階的なリプレイスを選択したのか、そしてその全体像についてお話ししました。 www.m3tech.blog 続く本記事(技術編)では、そのリプレイスを支えた具体的な技術要素や、導入の過程で得られた知見についてお話しします。 デザインシステムを活用したUIリプレイス なぜRadix UIを選んだか? Radix UIへの移行で直面した

                                                    開発を止めない段階的フロントエンドリプレイスの実践 (2) 技術編 - エムスリーテックブログ
                                                  • ReactとVue、どっちが書いていて楽しいか検証してみた

                                                    はじめに はじめまして。 2019年3月に入社した正岡です。 平均週に4回、大分県中津のから揚げ弁当を食べている大の鶏好きです。からあげクンと呼んでください。 主に Rails × Typescript のプロジェクトにフロント/バックエンドエンジニアとして参加しています。今後ともよろしくおねがいします。 本記事の内容 およそ1年前、弊社ではDocBaseのユーザーの皆様により良いユーザー体験をしていただくために何ができるかを検討しました。結果、フロントエンドを改修して SPA(Single Page Application) に移行することで、従来よりも速く、快適にご利用いただけるのではないかという結論に至り、ご存知の通り先日リリースいたしました。 フレームワークどれを使うか問題 既存サービスのSPA化などのフロントエンド改修を検討する際、「フレームワークどれ使う?」問題にぶち当たります

                                                      ReactとVue、どっちが書いていて楽しいか検証してみた
                                                    • TypeScript使いの憂鬱:never型はプロパティを持つか | 雑記帳

                                                      never型とプロパティアクセス TypeScriptにはneverという型があります。先日も記事にしましたが、簡単に言うとこれは「値を持たない型」です。 never型は、あらゆる型に対してその部分型として振る舞います。例えば、never が number の部分型であることは次のコードでわかります: type T<U extends number> = {}; type A = T<string>; // stringはnumberの部分型ではないのでエラー type B = T<never>; // neverはnumberの部分型なのでコンパイルが通る さて、部分型関係と、「その型の式に対してできる操作の集合」の関係について考えましょう。あまり面白い例を思いつかなかったのでアレですが、次の型を考えます: type UserInfo = { name: string }; type D

                                                      • Rubyの型アノテーションの現状についていくつか思うこと(翻訳)|TechRacho by BPS株式会社

                                                        概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: A few words on Ruby's type annotations state 原文公開日: 2023/05/05 原著者: zverok 参考: 週刊Railsウォッチ20230531: Rubyの型アノテーションの現状についていくつか思うこと ...を軍の訓練施設で書いているうちに、ついつい5,000ワードになってしまった。 今これをスマホで書いている、それもウクライナ軍の訓練施設にある、200人を越える戦友たちと過ごしている兵舎で。もっぱら訓練と訓練の合間の短い時間(たいてい夜と日曜だが)をこの作業に当てている。 率直に言うと、軍に入隊して以来、まさかRubyについて何か書く時間やインスピレーションを得られるとは思ってもみなかったが、今ここでこうして書いている。 最近、Redditの/r/rubyで興味深い長大な議

                                                          Rubyの型アノテーションの現状についていくつか思うこと(翻訳)|TechRacho by BPS株式会社
                                                        • openai/gpt-oss-120b · Hugging Face

                                                          ","eos_token":"<|return|>","pad_token":"<|endoftext|>"},"chat_template_jinja":"{#-\n In addition to the normal inputs of `messages` and `tools`, this template also accepts the\n following kwargs:\n - \"builtin_tools\": A list, can contain \"browser\" and/or \"python\".\n - \"model_identity\": A string that optionally describes the model identity.\n - \"reasoning_effort\": A string that describes t

                                                            openai/gpt-oss-120b · Hugging Face
                                                          • Announcing TypeScript 4.8 - TypeScript

                                                            Today we’re excited to announce the release of TypeScript 4.8! If you’re not yet familiar with TypeScript, it’s a language that builds on JavaScript and adds syntax for types. These types let you put your expectations and assumptions into your code, and those assumptions can then be checked by the TypeScript type-checker. This checking can help avoid typos, calling uninitialized values, mixing up

                                                              Announcing TypeScript 4.8 - TypeScript
                                                            • TypeScript一人カレンダー 2022 目次と索引

                                                              こんにちは、クレスウェア株式会社の奥野賢太郎 (@okunokentaro) です。本記事は『TypeScript 一人 Advent Calendar 2022』(TypeScript一人カレンダー) の目次と索引ページです。 本アドベントカレンダー内の各記事では、2022年12月、TypeScript 4.9の時点で解説しています。本アドベントカレンダーのすべての記事は、TypeScript初心者を脱し始めてもっと活用していきたいと願う読者層に向けていますので、最低限の前提は省略して記述しています。 目次 第1部 Conditional Types 1日目 ReturnType<T> Utility Types ReturnType<T> どんなときに便利? 例1 例2 注意点 2日目 Awaited<T> Awaited<T> どんなときに便利? 例1 例2 3日目 inferと実例

                                                                TypeScript一人カレンダー 2022 目次と索引
                                                              • Announcing TypeScript 4.8 Beta - TypeScript

                                                                Today we’re announcing our beta release of TypeScript 4.8! To get started using the beta, you can get it through NuGet, or- use npm with the following command: npm install -D typescript@beta You can also get editor support by Downloading for Visual Studio 2022/2019 Following directions for Visual Studio Code. Here’s a quick list of what’s new in TypeScript 4.8! Improved Intersection Reduction, Uni

                                                                  Announcing TypeScript 4.8 Beta - TypeScript
                                                                • April 2023 (version 1.78)

                                                                  Update 1.78.1: The update addresses this security issue. Update 1.78.2: The update addresses these issues. Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap Welcome to the April 2023 release of Visual Studio Code. There are many updates in this version that we hope you'll like, some of the key highlights include: Accessibility improvements - Better scre

                                                                    April 2023 (version 1.78)
                                                                  • Oxlint Type-Aware Preview

                                                                    This post announces the technical preview of type-aware linting. For the latest alpha release with improved stability, configurability, and rule coverage, see the Type-Aware Linting Alpha announcement. We're thrilled to announce type-aware linting in oxlint! The long-awaited no-floating-promises and related rules are here. This preview release aims to engage with the community for collaboration an

                                                                      Oxlint Type-Aware Preview
                                                                    • Relay v18 の throwOnFieldError と GraphQL Nullability

                                                                      Relay v18.0.0 にて @throwOnFieldError や @catch, @semanticNonNull といったエラーハンドリングに関連する Directive が追加された。 これらの Directive の意味と活用方法をこのエントリで解説していく。 なお、今回のエントリは自分が書いた以下エントリの続編としての意味合いも含んでいる。 Relay v18 で追加された Client Side DirectiveGraphQL Erorrs をコンポーネントから扱えるRelay v18 で追加された @throwOnFieldError および @catch はクライアントサイド, すなわち GraphQL オペレーション側に記述する Directive である。 以降の解説のため、次の GraphQL クエリを題材とする。 query { book { title

                                                                        Relay v18 の throwOnFieldError と GraphQL Nullability
                                                                      • Rails: Inertia.jsでRailsのJavaScript開発にシンプルさを取り戻そう(翻訳)|TechRacho by BPS株式会社

                                                                        はじめに フロントエンド開発周りの騒ぎは、何年経っても一向に止みそうにありません。どこの開発会社を覗いてみても、目にするのは同じような悲しい出来事ばかりです。優秀な開発者たちが必要もないツールの山で溺れそうになりながら問題を解決しようと悪戦苦闘してます。しかもそれは、誰かさんが売り込んできたソリューションを導入するまでは起きていなかったはずの問題なのです。 私もこの業界に長くいるので、パターンはあらかた心得ています。まず、React、Vue、Angular、Svelteの中からお好きなものをお選びくださいと持ちかけて、エコシステムを分断します。そして、こちらの頭がぼうっとするほど選択肢を増やしに増やしまくります。そして最後に、元の問題より高くつく「専門家によるソリューション」にたどりつくという流れです。 Railsコミュニティはまさにその実例です。DHHは長年の間複雑さと戦い、「No Bu

                                                                          Rails: Inertia.jsでRailsのJavaScript開発にシンプルさを取り戻そう(翻訳)|TechRacho by BPS株式会社
                                                                        • Announcing TypeScript 4.8 RC - TypeScript

                                                                          Today we’re excited to announce our Release Candidate (RC) of TypeScript 4.8. Between now and the stable release of TypeScript 4.8, we expect no further changes apart from critical bug fixes. To get started using the RC, you can get it through NuGet, or use npm with the following command: npm install -D typescript@rc You can also get editor support by Downloading for Visual Studio 2022/2019 Follow

                                                                            Announcing TypeScript 4.8 RC - TypeScript
                                                                          • openai/gpt-oss-20b · Hugging Face

                                                                            ","eos_token":"<|return|>","pad_token":"<|endoftext|>"},"chat_template_jinja":"{#-\n In addition to the normal inputs of `messages` and `tools`, this template also accepts the\n following kwargs:\n - \"builtin_tools\": A list, can contain \"browser\" and/or \"python\".\n - \"model_identity\": A string that optionally describes the model identity.\n - \"reasoning_effort\": A string that describes t

                                                                              openai/gpt-oss-20b · Hugging Face
                                                                            • TypeScript, JSON Schema, Ajv の組み合わせを考える

                                                                              この記事は sadnessOjisan Advent Calendar 2021 15 日目の記事です。書かれた日付は 1/3 です。 JSON Schema + Ajv + TypeScript という組み合わせは、スキーマ駆動開発に置いて一定の成果や評価がされていると思います。 しかし、これらの力を最大限に引き出そうとしたら、型周りで困ってしまったので何をどう困っているかのメモを残そうと思います。もし解決策を知っている方がいらっしゃりましたら教えてください。 そもそもこれらのツールはどういうものか JSON Schema FYI: https://json-schema.org/ JSON Schema は JSON の形を定義することができる規格・語彙です。 大きな特徴としてそれ自体も JSON であり、なんか良いです。 const data = { foo: 1, bar: "ab

                                                                                TypeScript, JSON Schema, Ajv の組み合わせを考える
                                                                              • October 2024 (version 1.95)

                                                                                GitHub Pull Requests Version 0.100.0 of the GitHub Pull Requests extension adds Copilot integration: Use the @githubpr chat participant in the Chat view to search for issues, summarize issues/prs, and suggest fixes for issues. @githubpr uses a number of Language Model tools to accomplish this. There's also a new Notifications view that shows GitHub notifications, with an action to prioritize them

                                                                                  October 2024 (version 1.95)
                                                                                • TypeScriptの型定義と実務でありがちな問題コードの対策

                                                                                  はじめに 設計思想によって多少変わりはしますが、TypeScriptを用いた開発では型安全なコードを書くのが理想と考えられます。しかし、実際業務をしていると工数に制限があったり、大人数でそれぞれが作業する兼ね合いで理想のコードではない状態のコードにぶつかる場面がとても多いです。 例えば、既存のJavaScriptを流用するためにany型を使用したが、本来はきちんと型を定義して呼び出し時に安全に使用したい。既存実装が複雑でわからず影響範囲も考えとりあえずnullableにしたが、本当は全部調査して安全に使用したい。といったことはよくありますよね。 本記事ではそんなTypeScript開発者の理想と現実を踏まえ、筆者が所属するThinkings株式会社の実際のReact / TypeScriptを用いた業務の中で出会ったありがちな問題やミスを挙げ、解決方法や回避方法について述べます。 ※後述の

                                                                                    TypeScriptの型定義と実務でありがちな問題コードの対策