【C#】その例外、使ってもいいけど使っちゃダメです Sonar Lint を使わなければ気づかなかったシリーズ ドクロモエ【C#】Visual Studio 2022 で SonarLint を使ってソースコードをより堅牢にする🕒️2023年6月21日商業レベルの堅牢なソースコードを書くときに、とても役に立ちます。SonarLint の特徴ソースコードの潜在的なバグや脆弱性を報告してくれるインテリセンスのようにリアルタイム報告無料Visual Studio 2022 / Visual Studio Code 対応日本語非対応インストールVisual Studio 2022 のメニュー>拡張機能>拡張機能の管理からインストールできます。簡単なので詳細は省きます。所感SonarLint は C# コンパイラやインテリセンスでも見つけられない問題点を報告してくれます。CI/CD に組み込みたい場合は SonarQube を使えば静的解析を行う... ドクロモエ【C#】IDisposable を継承する際に Dispose パターンの知識が必要になる理由🕒️2023年8月18日SonarLint を使っていなければ気づかなかったシリーズ。C# は C++ と比べて変なテクニックを山ほど覚える必要がなく、とても扱いやすい言語だと思っていたのですが、最近はそうでもないと思うようになってきました。using System;// ヒャッハー集団のベースクラスpublic class HyahhaaBase : IDisposable { public virtual void Dispose() { // アンマネージドリソースを解放する処理 }}// モヒカンヒャッハークラスsealed class MohicanHyahhaa : HyahhaaBase { public override void Dispose() { // 子クラスのアンマネージ... ドクロモエ【.Net C#】System.Exception を継承すると ISerializable がどうのこうのと警告が出る🕒️2023年7月3日厄介なバグに繋がる可能性があるコードclass Test { public class Hoge : System.Exception {}}問題がある箇所(1) class Test { (2) (3) public class Hoge(4) : System.Exception { (5) }}(1) public にする。(2) を指定する。(3) sealed を付ける。(4) 名前の末尾に Exception を付ける。(5) 2種類のコンストラクタが必要(後述)。↓修正後のコードpublic class Test { sealed public class HogeException : System.Exception { public HogeException() : base() {} HogeException(SerializationI... Sonar Lint で警告を食らう度に記事を書いてる気がしますが、有用な情報なのでスルーしない方が良いと思います。 続きを読む 【C#】その例外、使ってもいいけど使っちゃダメです
【C#】Visual Studio 2022 で SonarLint を使ってソースコードをより堅牢にする www.sonarsource.comLinter IDE Tool & Real-Time Software for Code | Sonarhttps://www.sonarsource.com/products/sonarlint/A clean code linter for your IDE to help find & fix bugs, security issues & analysis across several programming languages to provide real-time feedback. Integrate easily into your workflows. 商業レベルの堅牢なソースコードを書くときに、とても役に立ちます。 続きを読む 【C#】Visual Studio 2022 で SonarLint を使ってソースコードをより堅牢にする