Programming
-
IDEIntegrated Development Environment #Programming 以下のような機能を備えた統合的な開発環境 エディタ ターミナル コンパイラ デバッガ
-
IDLInterface Definition Language #Programming
-
関数型ドメインモデリング
-
App Router#Programming Nextjs 13.4で安定版となったルーティングシステム React Server Componentsをデフォルトでサポートし、app/ディレクトリでファイルシステムベースのルーティングを行う https://nextjs.org/docs/app
-
TDDTest-Driven Development #エクストリームプログラミング #Programming #Testing
-
React#Programming Facebook社が開発したJavaScriptライブラリ https://ja.react.dev/
-
LSPLanguage Server Protocol #Programming
-
Codex#Programming #LLM OpenAIが提供するオープンソースのCLIコーディングエージェント ターミナル上でコードの読み取り・編集・実行が可能で、Rust製 MCPサーバーとの連携によりサードパーティツールと統合可能 コードレビューエージェントによるプッシュ前のレビュー機能 ローカルでのトランスクリプト保存による継続作業 https://github.com/openai/codex
-
Claude Code/LSP Plugins#Programming #LLM Claude CodeでLSP(Language Server Protocol)プラグインを追加し、リアルタイムコード知能を提供する機能 主な特徴: 言語サーバーバイナリのインストールが必須 IDE統合時に診断情報が自動共有される 公式マーケットプレイスから言語別プラグインを追加可能 サポート言語: C/C++ C# Go(gopls) Java Lua PHP Python Rust Swift TypeScript 設定例(.claude/settings.json): { "enabledPlugins": { "rust-analyzer-lsp@claude-plugins-official": true } } https://code.claude.com/docs/en/discover-plugins https://code.claude.com/docs/en/plugins https://github.com/anthropics/claude-plugins-official
-
JavaScript#Programming
-
VS CodeVisual Studio Code #Programming Microsoftが開発しているオープンソースのIDE
-
anyhow#Programming Rustにおけるエラー型の扱いを楽にするライブラリ パブリックなAPIでは利用を避けて標準のエラー型を用いるのが良い anyhow - Rust
-
TypeScript#Programming #JavaScript
-
XState#Programming Finite State MachineをコンセプトとしたJavaScript/TypeScriptライブラリ 実装を元にStatechartsの出力が可能。Actor Modelにも対応している https://xstate.js.org/docs/
-
Finite State Machine有限ステートマシーン #Programming 状態管理を有限にし、あり得ない状態を作らないという考え
-
ペアプログラミング#Programming 1台のマシンで2人が協力してタスクに取り組む
-
Scala#Programming
-
ADTAlgebraic Data Type 代数データ型 #Programming 列挙(和)された値の組み合わせ(積)を定義し、無効な組み合わせを表現できないように型化する方法
-
gosec#Security #Programming Go言語のソースコード静的セキュリティ分析ツール Go AST(抽象構文木)を解析し、セキュリティ問題となりうるプログラミングミスを検出するSASTツール 主な特徴: -includeまたは-excludeフラグで検査ルールを選択可能 検出された問題はCWE(Common Weakness Enumeration)にマッピングされる AI統合によるセキュリティ修正提案(Gemini、Claudeに対応) GitHub Actionとしても利用可能 インストール: go install github.com/securego/gosec/v2/cmd/gosec@latest https://github.com/securego/gosec
-
caarlos0/env#Programming Go言語のアプリケーション設定ライブラリ 構造体フィールドに環境変数とのマッピングを記述できる type config struct { Home string `env:"HOME"` } // parse var cfg config err := env.Parse(&cfg) // parse with generics cfg, err := env.ParseAs[config]() https://github.com/caarlos0/env
-
Introduction to safe programming with numeric library数値ライブラリで始める安全なプログラミング #Programming #Security #Scala Scala Matsuri 2024での発表 Spireライブラリを用いて安全な数値計算を行うテクニックを紹介している
-
gRPC-Gateway#Network #API Architecture #REST #Programming gRPCにおいて、gRPC serviceをRESTful APIとして提供するためのGoライブラリ。HTTP+JSONのインターフェースでリバースプロキシサーバーを生成する HTTP仕様はProtocol Buffers上において google.api.http のような HttpRule によって記述する 同リポジトリにはprotoc-gen-openapiv2プラグインも含まれておりOpen API仕様を出力できる https://grpc-ecosystem.github.io/grpc-gateway/
-
React Server ComponentsRSC #Programming React 19で安定版となったサーバー上で実行されるコンポーネントアーキテクチャ 主な特徴: サーバーでレンダリングされ、クライアントにJavaScriptを送信しない RSC Payloadとしてシリアライズされた形式でクライアントに送信 <Suspense>境界によるストリーミングレンダリングをサポート クライアントコンポーネントは"use client"ディレクティブで宣言 https://react.dev/reference/rsc/server-components
-
列挙型#Programming 排他な値の集合を列挙し、文字列や数値のエイリアスを指定できる
-
MSWMock Service Worker #Testing #TypeScript #Programming JavaScriptにおいてAPIのモックデータを効率的に作成・管理するためのツール。 https://mswjs.io/
-
opentelemetry-go#Observability #Programming OpenTelemetryのGo APIまたはSDK https://github.com/open-telemetry/opentelemetry-go https://opentelemetry.io/ja/docs/languages/go/
-
uber-go/mock#Programming #Testing Go言語のモックライブラリ、Uber社製 mockgen コマンドでモック実装ファイルを生成する https://github.com/uber-go/mock
-
Tera#Programming Rust実装のテンプレートライブラリ、Jinja2/Djangoと同じ記法 https://github.com/Keats/tera
-
mise
-
Playwright#Testing #Programming Microsoftが開発したE2Eテストツール flaky testsを減らせるブラウザ向け機能が揃っている TypeScript, Javaといったいくつかの言語でAPIが用意されている https://playwright.dev/
-
ent#Programming Go言語のORMライブラリ Facebook社で開発されたのち、Linux Foundationに参画し現在はAriga社で開発が継続されている https://github.com/ent/ent
-
EffExtensible Effect #Programming 作って学ぶ Extensible Effects Freer monads, more extensible effects. Extensible Effects in Scala Scala + CleanArchitectureにEffを組み込んでみた アルプのEff独自エフェクト集 / Alp-original ’Eff’ pearls Eff(atnos-eff)による実践的なコーディング集
-
Spire#Programming #Security Scala言語の数値型ライブラリ。汎用的で高速かつ高精度な数値と、効率的な数値コードシンタックスを提供する。 Spire Introduction to Spire Numeric Programming in Scala with Spire JOTB19 - Numeric Programming with Spire by Lars Hupel
-
契約による設計#オブジェクト指向プログラミング #Programming #Software Design 契約による設計事始め
-
Nextjs#Programming Vercel社が開発したReactベースのフルスタックWebフレームワーク 主な特徴: サーバーサイドレンダリング(SSR)と静的サイト生成(SSG)のハイブリッド対応 App RouterによるReact Server Componentsのサポート Turbopackバンドラによる高速ビルド ファイルシステムベースのルーティング https://nextjs.org/
-
トレイトtrait #Programming 振る舞い(メソッド)の集合をカプセル化する 一般に振る舞いは抽象として定義されるのが望ましい
-
serde#Programming RustのSerializationライブラリ https://serde.rs/
-
オブジェクト指向プログラミングObject Oriented Programming #Software Design #Programming
-
XSAM/otelsql#Observability #Programming #Data Engineering Goのdatabase/sqlパッケージにOpenTelemetry計装を追加するライブラリ トレースとメトリクスの両方をサポート PostgreSQL、MySQL、SQLiteなど、database/sqlドライバを持つ任意のDBに対応 https://github.com/XSAM/otelsql
-
Go
-
JSON#Programming
-
GitHub Copilot#Programming VS Codeにビルドインで搭載されているAIアシスタント プランによって利用できるLLMが異なる https://docs.github.com/ja/copilot
-
型エイリアス#Programming 名前の通り型のエイリアスを定義する あくまでエイリアスであるためエイリアス間の値は同一の型として扱われる
-
aqua#Programming CLIツール専用の宣言的バージョンマネージャー。Go製 aqua.yamlでツールとバージョンを宣言的に管理 GitHub Releasesからバイナリを自動取得 Lazy Install: 実行時に必要なツールを自動インストール Checksum検証、Cosign/SLSA Provenance対応 https://aquaproj.github.io/ https://github.com/aquaproj/aqua
-
Effective Rust
-
Protocol BuffersProtobuf #API Architecture #Programming Googleによって開発されたインターフェース定義によるバイナリエンコーディングライブラリ。インターフェース定義言語に分類される フィールド名のエイリアスとして扱うフィールドタグ(数値)によってバイトを節約している。 フィールドタグによる互換性に関する仕様の要点は以下。 フィールドの追加 未使用のタグ番号を割り当てることで前方互換あり 必須でなければ後方互換あり フィールドの変更 フィールド名の変更は前方・後方互換あり フィールドの削除 追加時の前方・後方と逆 またProtocol Buffersはフィールド制約である optional と repeated 間の互換性にも対応している。これはバイナリ上でフィールド情報を単純に複数回並べているため。 Protocol Buffers Documentation
-
SonarQube#Security #Testing #Continuous Integration #Programming コード品質とセキュリティを継続的に検査するオープンソースの静的解析プラットフォーム 35以上のプログラミング言語に対応し、バグ、脆弱性、セキュリティホットスポット、コードスメルを検出する 主な機能 Quality Gates - デプロイ可否を判断するカスタマイズ可能な品質基準 SAST機能 - 静的コード解析によるセキュリティ脆弱性の検出 AI CodeFix - AIによるコード品質・セキュリティ問題の自動修正提案 IDE統合 - リアルタイムフィードバックと修正提案 DevSecOpsのシフトレフトセキュリティを実現し、適応度関数のコード品質カテゴリに該当する https://www.sonarsource.com/products/sonarqube/
-
pulldown-cmark#Programming Rust言語のMarkdown Parser https://github.com/pulldown-cmark/pulldown-cmark
-
Python#Programming
-
Cursor#Programming LLMに特化したIDE。VS CodeのフォークでありGitHub Copilotに代わってCursor独自のAIアシスタントが搭載されている https://www.cursor.com/ja
-
Claude Code#Programming #LLM CLIで直接動作する会話型エージェント型コーディングツール Anthropic社が提供しClaudeモデルの利用を前提にする IDEとの統合が可能 https://docs.anthropic.com/ja/docs/claude-code/overview
-
Rust#Programming Rust Programming Language
-
Dependency Injection#Software Design #Programming オブジェクトやコンポーネントの依存関係を外部から注入する設計パターン クラスが必要とする依存オブジェクトを自身で生成せず、外部のアセンブラ(DIコンテナなど)から提供される。これにより、クラス間の結合度が低下し、テスト容易性、柔軟性、再利用性が向上する
-
newtype#Programming 既存型をラップする形で新たな型を定義する 型エイリアスのように使われることが多いが、型エイリアスと異なりあくまで別の型として扱う
-
gopls#Programming Goの公式Language Server。Goチームによって開発されている 主な特徴: コード補完、定義へのジャンプ、参照検索、フォーマット、リファクタリングなど多様なIDE機能を提供 LSP対応エディタと自動統合されるため直接操作は不要 Go module、multi-module、GOPATHモードのワークスペースをサポート https://go.dev/gopls/ https://github.com/golang/tools/tree/master/gopls
-
Authorization to implement with Extensible Effect#Security #Programming #Authorization EffによるScala認可実装の話
-
Programming in Haskell 2nd edition