並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 767件

新着順 人気順

Csharpの検索結果41 - 80 件 / 767件

  • マイクロソフト、マルチプラットフォームUIを実現する「.NET Multi-platform App UI」(MAUI)を実際にデモ。単一コードからWebとWindowsアプリを生成

    マイクロソフト、マルチプラットフォームUIを実現する「.NET Multi-platform App UI」(MAUI)を実際にデモ。単一コードからWebとWindowsアプリを生成 マイクロソフトは2月26日にオンラインイベント「.NET Conf 2021 - Focus on Windows」を開催しました。 イベントの中で同社は、マルチプラットフォームUIを実現するフレームワーク「.NET Multi-platform App UI」(以下、.NET MAUI)を用いて開発したアプリケーションをデモし、実際に単一コードから生成されたWebアプリケーションとWindowsネイティブなデスクトップアプリケーションを披露しました。 .NET 6に組み込まれる「MAUI」はマルチプラットフォームUIを実現 .NET MAUIは、今年11月に正式リリース予定の「.NET 6」に組み込まれる予

      マイクロソフト、マルチプラットフォームUIを実現する「.NET Multi-platform App UI」(MAUI)を実際にデモ。単一コードからWebとWindowsアプリを生成
    • Xamarin のサポート終了と .NET 統合の話

      コンテキスト Xamarin のサポート終了というアナウンスを見て、Xamarin として提供されていたものが終了するというような誤解と不安を煽るような流れがあったので日頃 .NET をウォッチしているものとしては少し補足しておきたいと思います。 Xamarinのサポートは2024年5月1日で終了。マイクロソフトが.NET MAUI関連のロードマップを示す - Publickey 前提 Xamarin といった場合には次の製品ファミリーを指していることが多いです。 Xamarin: .NET のネイティブプラットフォームバインディングのフレームワーク Mono を基盤としつつ各種プラットフォーム (iOS, Android, macOS, Tizen など) のバインディングを提供する一式 例えば Android の Activity や View を C# などの .NET 言語で取り扱

        Xamarin のサポート終了と .NET 統合の話
      • マイクロソフト、「C#は進化させ続ける」「Visual Basicに新しい構文の導入はしない」。.NETのプログラミング言語に関する最新の戦略を明らかに

        マイクロソフト、「C#は進化させ続ける」「Visual Basicに新しい構文の導入はしない」。.NETのプログラミング言語に関する最新の戦略を明らかに マイクロソフトは、.NETでサポートする3つのプログラミング言語「C#」「F#」「Visual Basic」の今後に関する戦略を、最新版にアップデートしたことを明らかにしました。 下記はマイクロソフトで.NETのプリンシパルプログラムマネージャを務めるKathleen Dollard氏のツイート。 We've updated our .NET Language Strategy. You can read more and get the links here: https://t.co/SsmZJBSEUA — Kathleen Dollard (@KathleenDollard) February 6, 2023 最新版の戦略はこれま

          マイクロソフト、「C#は進化させ続ける」「Visual Basicに新しい構文の導入はしない」。.NETのプログラミング言語に関する最新の戦略を明らかに
        • async/await 比較(C#, JavaScript, Python) - Qiita

          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

            async/await 比較(C#, JavaScript, Python) - Qiita
          • なぜDependency Injectionなのか? ~関心の分離と疎結合~

            本稿は「アーキテクチャを突き詰める Online Conference」における発表「なぜDependency Injectionなのか? ~関心の分離と疎結合~」の登壇原稿となります。 発表時の動画アーカイブは後日公開されたタイミングでリンクを追加いたします。 また、本稿のサンプルコードとPower PointはGitHubで公開しています。 「CC BY-SA 4.0」で公開していますので、気に入っていただけたら営利目的含め、ライセンスの範囲で自由に利用していただいて問題ありません。 https://github.com/nuitsjp/WhyDependencyInjection というわけで、本稿の目指すゴールはこちら。 今日は、この場にいる皆さんが「なぜDependency Injectionを利用するのか?」ということを、理解いただくのが本日のゴールとなります。 というわけで本

              なぜDependency Injectionなのか? ~関心の分離と疎結合~
            • CEDEC 2023 モダンハイパフォーマンスC# 2023 Edition

              CEDEC 2023

                CEDEC 2023 モダンハイパフォーマンスC# 2023 Edition
              • ビルドは通るが動かない!実際に引っ掛かった「.NET 6 -> .NET 8」移行時の破壊的変更 2 選

                ここ数日、.NET 6 でできたアプリを .NET 8 に更新する作業をしています。.NET 8 のリリースから半年以上が経った今になって遅ればせながらやっているのは、Azure Functions (In-Proc) がようやく .NET 8 に対応したからです。それに引っ張られてずっと .NET 6 のままの運用を強いられていました。 それはそれとして、近年の .NET は互換性を高く保ちつつもちょこちょこと破壊的変更を入れて「よりあるべき姿」になろうと奮闘しています。その点については大変好感を持っていますし、実際これまでに幾度となく .NET のバージョンを上げてきたときも全くと言っていいほど破壊的変更を踏むことがなかったので若干過信していたところはあります。 が、今回検証過程で実際に遭遇して「うわ、危なッ」となる部分があったので紹介していきます。 実際にハマッた破壊的変更 2 選

                  ビルドは通るが動かない!実際に引っ掛かった「.NET 6 -> .NET 8」移行時の破壊的変更 2 選
                • 関数型プログラミングの復活 - QCon Plusハイライト

                  Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

                    関数型プログラミングの復活 - QCon Plusハイライト
                  • [速報]古いJavaや.NETのコードを最新のJavaにAIが自動変換する「Amazon Q Code Transformation」、AWSが発表。AWS re:Invent 2023

                    [速報]古いJavaや.NETのコードを最新のJavaにAIが自動変換する「Amazon Q Code Transformation」、AWSが発表。AWS re:Invent 2023 Amazon Web Services(AWS)は、ラスベガスで開催中のイベント「AWS re:Invent 2023」の基調講演で、生成AIを用いて多様なAIサービスを提供する「Amazon Q」を発表。Amazon Qの機能の一部として、古いJavaや.NETのコードを最新のJavaや.NET対応に自動変換する「Amazon Q Code Transformation」を合わせて発表しました。 参考:[速報]AWS、Copilot対抗となる「Amazon Q」発表。生成AIによるシステム開発支援や業務支援など、多様なAIサービスを提供。AWS re:Invent 2023 Amazon Q Code

                      [速報]古いJavaや.NETのコードを最新のJavaにAIが自動変換する「Amazon Q Code Transformation」、AWSが発表。AWS re:Invent 2023
                    • 一休における C#,PythonからRustへの移行の現状と見えてきた課題

                      はじめまして、一休でプロダクト開発・技術広報を行っている山本(@kymmt90)といいます。 今回は「一休.comレストラン」のバックエンドのRust移行の取り組みについて、バックエンドを中心に、背景や現在の移行状況をお伝えします。 なぜRustを選定したのか?サービス概要「一休.comレストラン」は、上質なレストランを対象に店舗や食事コースの検索、詳細情報の閲覧、Web予約機能を提供するサービスです。2006年にローンチされ、従来はPython・C#・VBScriptといった技術スタックを用いたシステム構成となっていました。 選定背景5年以上Pythonを中心にサービスを開発/運用してきましたが、コロナ禍や開発チームの再編成を経て、既存のコードベースのままだと事業の要求に沿った開発や運用が難しくなってきたという課題がありました。 そこで、サービスのUI自体の刷新を含めリライトしていくとい

                        一休における C#,PythonからRustへの移行の現状と見えてきた課題
                      • 【C#】コレの名前、なんだっけ?【用語集】 - Qiita

                        C#で名称を忘れやすい語句について、簡単な解説・用例とともにまとめました。 実装やコードレビューなどの場面でお役に立てば幸いです。 /// ドキュメンテーションコメント クラスやメンバーの説明を記述するのに利用する。 /// <summary> /// This class performs an important function. /// </summary> public class MyClass {}

                          【C#】コレの名前、なんだっけ?【用語集】 - Qiita
                        • JKが接触確認アプリ「COCOA」の開発に貢献した話。〜1日でXamarinを学びアプリ改善〜 - Qiita

                          こんにちは、あんはるです。 接触確認アプリ「COCOA」の開発に貢献したこと、そして、簡単に開発に参加する方法を紹介します。 みなさんに接触確認アプリ「Cocoa」の開発の参加は簡単にできるということを伝えたくて書きました 実際自分で改善してみた経験も書いています cocoaが使いにくい!と思ったら是非この記事を読んで改善してみるといいと思います👍 是非読んでみてください🙇‍♂️https://t.co/3G1UEL9Rb2 — あんはる@アプリ作れるJK (@_anharu) June 26, 2020 追記 7/12 この記事見て実際に接触確認アプリを改善してみました!っていう方 いらっしゃったらご連絡ください 追記 7/23 この記事見て実際に接触確認アプリを改善した方々🎉🎉🎉 この記事によって、実際に接触確認アプリにコミットする方が増えたらいいな!という目的で書いたので少

                            JKが接触確認アプリ「COCOA」の開発に貢献した話。〜1日でXamarinを学びアプリ改善〜 - Qiita
                          • 「DI使うとインタフェース地獄に陥るらしいから使いたくない」と言っていたA氏がインタフェースを使わずにDIで幸せになるまで - Qiita

                            「DI使うとインタフェース地獄に陥るらしいから使いたくない」と言っていたA氏がインタフェースを使わずにDIで幸せになるまでC#DIDependencyInjection依存性の注入 DIはインタフェース定義しなくても十分実用的だし、むしろそっちの方が本質だよ、という話をします。C#や.NETを使っていますが、それに限らず普遍的な内容です。 インタフェースと実装に分けるとか無理。DIなど不要! 中堅社員のA氏は、**「DIっていちいち実装とインタフェース分けないとダメなんでしょ?。さすがにやってられんわ」**と言って頑なにDIを導入しようとしません。 DIはテスタビリティと併せて語られることが多かった為か、A氏は「注入するクラスは基本的にインタフェース定義しましょう」という記事ばかりを読んでいたのです。 インタフェースと実装を分けるとは、例えば次のような事です。 services.AddSc

                              「DI使うとインタフェース地獄に陥るらしいから使いたくない」と言っていたA氏がインタフェースを使わずにDIで幸せになるまで - Qiita
                            • VSCodeでC#開発環境を充実させる「C# Dev Kit」正式リリース、ソリューションエクスプローラーやIntelliCodeなど提供

                              VSCodeでC#開発環境を充実させる「C# Dev Kit」正式リリース、ソリューションエクスプローラーやIntelliCodeなど提供 C# Dev Kitは以下のような機能を主に提供します。 ソリューションエクスプローラビュー VSCodeの既存のワークスペースのビューと連動するソリューションエクスプローラビューを追加することで、プロジェクトの一元管理が容易になります。テンプレートを介して新しいプロジェクトやファイルをソリューションにすばやく追加できるようになり、ソリューションのすべてまたは一部を簡単にビルドすることもできます。 IntelliSense、シンタックスハイライト オープンソースのLSP(Language Server Protocol)ホストを搭載しており、IntelliSenseやシンタックスハイライト、リファクタリング、コードフォーマットなどの機能を提供します。

                                VSCodeでC#開発環境を充実させる「C# Dev Kit」正式リリース、ソリューションエクスプローラーやIntelliCodeなど提供
                              • Webブラウザ上でWebAssembly製コンパイラによりC言語をWebAssemblyにコンパイル、そのまま実行可能に。Wasmer 4.4の新機能

                                スタンドアロンなWebAssemblyランタイム「Wasmer」の開発元であるWasmer社は最新のWasmer 4.4の新機能として、C言語をWebAssemblyにコンパイルし、WebAssembly環境でそのまま実行可能する機能を発表しました。 下記はWasmer社が用意した、Webブラウザ上にWebAssemblyでBash環境を構築する「wasmer.sh」のコマンドラインから、wasmerによりC言語をコンパイルしてWebAssemblyモジュールを生成し、実行する操作を筆者のWindowsマシンで実際に試したところです(赤線は筆者による)。 Webブラウザ上でC言語をWebAssemblyにコンパイルし、そのままWebAssembly環境上で実行できています。 合わせて登場したJavaScript SDKによってNode.jsやBunなどのサーバサイドのWebAssembly

                                  Webブラウザ上でWebAssembly製コンパイラによりC言語をWebAssemblyにコンパイル、そのまま実行可能に。Wasmer 4.4の新機能
                                • Pythonで作成した物体検出アプリをC++、C#でWindowsネイティブアプリに作り直した話 - Qiita

                                  Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? どのようなアプリか ゲーム FF14のプレイ動画からユーザー名を黒塗りする動画編集アプリです。 ユーザー名の検出に物体検出を利用しています。 Pythonで実装、PyinstallerでEXE化していましたが、C++、C#で作り直し、この度Microsoftストアに公開できました。わーい! ここでは、その経緯や直面した問題、得られたものなどを振り返りたいと思います。 最終的にそれぞれで利用した主なライブラリ Python pytorch,torch-tensorrt,ultralytics,opencv-python,ffmpeg-py

                                    Pythonで作成した物体検出アプリをC++、C#でWindowsネイティブアプリに作り直した話 - Qiita
                                  • neue cc - ゼロアロケーションLINQライブラリ「ZLinq」のリリースとアーキテクチャ解説

                                    ゼロアロケーションLINQライブラリ「ZLinq」のリリースとアーキテクチャ解説 2025-05-05 ZLinq v1を先月リリースしました!structとgenericsベースで構築することによりゼロアロケーションを達成しています。またLINQ to Span, LINQ to SIMD, LINQ to Tree(FileSystem, JSON, GameObject, etc.)といった拡張要素と、任意の型のDrop-in replacement Source Generator。そして.NET Standard 2.0, Unity, Godotなどの多くのプラットフォームサポートまで含めた大型のライブラリとなっています!現在GitHub Starsも2000を超えました。 https://github.com/Cysharp/ZLinq structベースのLINQそのものは

                                    • Visual Studio 2022 - Visual Studio Blog

                                      CVP of Product and General Manager for Microsoft's first-party engineering systems Visual Studio 2022 launch is here! Join us at our free online event to celebrate the launch of Visual Studio 2022. Learn about what’s new, hear tips & tricks, participate in the live Q&As, and be the first to take the latest version for a spin. All of our product development begins and ends with you—whether you post

                                        Visual Studio 2022 - Visual Studio Blog
                                      • 目指すのは“C#大統一理論” Cysharpの多機能OSSで実現する最高の開発体験 | ログミーBusiness

                                        CA.unityはサイバーエージェントが運営するUnityをテーマにした勉強会です。サイバーエージェントのサービス開発者と社外の開発者を交えて、Unityに関する知見を共有します。河合宜文氏からは、Cysharp社のOSSについて紹介がありました。 Cysharpのモットーは「C#の可能性を切り開いていく」河合宜文氏(以下、河合):「A quick tour of the Cysharp OSS」というテーマでCysharpの河合が話します。お願いします。 私は河合宜文と言って、Cygamesの子会社であるCysharpという会社で社長をしています。今回イベントを主催したサイバーエージェントの子どもの子どもなので、孫会社です。Cysharpはいろいろとやってはいて、目に見えるところで一番大きなものは、OSSの提供だと思っているんですが、我々は「C#の可能性を切り開いていく」というのをテーマ

                                          目指すのは“C#大統一理論” Cysharpの多機能OSSで実現する最高の開発体験 | ログミーBusiness
                                        • C# 9.0 で条件式が革命を起こす - Qiita

                                          何が嬉しいかと言うと、i の評価が一回で済むところです。二番目のコードをよく見てください。i が一回しか書かれていませんよね? 評価が一回で済むということは、変数だけではなく、副作用を持つ関数などにも使えるということです。

                                            C# 9.0 で条件式が革命を起こす - Qiita
                                          • マイクロソフト「.NET 6」初めてのプレビュー版リリース。Xamarin統合、マルチプラットフォームUI、Blazorでデスクトップアプリ、Apple M1ネイティブなど

                                            マイクロソフト「.NET 6」初めてのプレビュー版リリース。Xamarin統合、マルチプラットフォームUI、Blazorでデスクトップアプリ、Apple M1ネイティブなど マイクロソフトはオープンソースで開発されているフレームワーク「.NET」の次バージョン「.NET 6」の最初のプレビュー版「.NET 6 Preview1」をリリースしたと発表しました。 Announcing .NET 6 Preview 1 https://t.co/z0mkcA6c0m — .NET (@dotnet) February 17, 2021 「.NET」は、Windowsアプリケーションのためのフレームワークとして登場した「.NET Framework」と、その後に登場したMacやLinuxに対応するオープンソースの「.NET Core」を統合し、その後継となったフレームワークです。 .NETの最初の

                                              マイクロソフト「.NET 6」初めてのプレビュー版リリース。Xamarin統合、マルチプラットフォームUI、Blazorでデスクトップアプリ、Apple M1ネイティブなど
                                            • Open Source Insights

                                              • C# 1.0 と C# 9.0 で同じプログラムを書いてみよう - Qiita

                                                この記事は C# Advent Calendar 2020 の 2 日目の記事です。1 日目は @RyotaMurohoshi さんの C# 9.0で加わったC# Source Generatorと、それで作ったValueObjectGeneratorの紹介 でした。 私の記事では、.NET Framework 1.0 の頃の C# 1.0 と今の .NET 5 時代の C# 9.0 で同じお題をもとにプログラムを書いてみて比べてみようと思います。これを書くにあたって事前に xin9le さんと 岩永さんに色々見てもらいました!感謝! ではやってみましょう! 記事を書く前の感覚では LINQ の有無と async/await の有無が大きいだろうな…と思ってます。 プロジェクトの設定 Windows 10 に .NET Framework 1.1 SDK を入れようと思えば入れることが出来

                                                  C# 1.0 と C# 9.0 で同じプログラムを書いてみよう - Qiita
                                                • 開発言語にC#を選択したスタートアップのブログが海外で話題に

                                                  2月1日、Tracebitが「Why Tracebit is written in C#」と題した記事を公開した。この記事では、TracebitというスタートアップがC#を採用するに至った理由やその背景について詳しく紹介されている。以下に、その内容を紹介する。 2月1日、Tracebitが「Why Tracebit is written in C#」と題した記事を公開した。この記事では、TracebitというスタートアップがC#を採用するに至った理由やその背景について詳しく紹介されている。以下に、その内容を紹介する。 プロジェクトを立ち上げる際、最初に直面した決定事項の一つが技術スタックの選択だった。AWSやPostgresといった技術の選択は比較的容易だった一方、開発言語については多くの選択肢があり、選定は難航した。 そこで予想外にもC#が選ばれた経緯について、本記事では詳しく説明してい

                                                    開発言語にC#を選択したスタートアップのブログが海外で話題に
                                                  • C#のみを使って、今ソーシャルゲームアプリを作るとしたら - Qiita

                                                    はじめに 現在進行形でC#のみを使って個人でソシャゲ作りを試しているyoship1639です。 本記事はQiita夏祭り2020「〇〇(言語)のみを使って、今△△(アプリ)を作るとしたら」のテーマに沿った内容となっています。 近年のソーシャルゲーム界隈は多様化が進んでクライアントサイドだけではなくサーバーサイドもあらゆる言語やフレームワークが試みられていますが、クライアントもサーバーも統一の言語で構成されているのはほとんどないかと思われます。言語にはその言語の得意分野があると思うので。 しかし、今まさに私が開発中の環境が好きな言語で開発しやすいという理由でクライアントもサーバーもC#で構成した作りになっているので、どのような構成でどうすれば最低限のソシャゲの基盤が作れるかを、解説が長くなり過ぎないようにまとめることが出来ればと思います。 三部構成で、クライアント実装、サーバー実装、AWS

                                                      C#のみを使って、今ソーシャルゲームアプリを作るとしたら - Qiita
                                                    • メソッド上にコードの複雑さを表示するVisual Studio拡張機能を作りました - Qiita

                                                      ソースコードの複雑さ、不具合のリスクを定量化したコードメトリクス1というものがあります。 コードメトリクスは計算方法によっていくつか種類があり、メジャーなものだと以下のものがあります。 Cyclomatic Complexity(循環的複雑度) Cognitive Complexity(認知的複雑度) Maintainability Index(保守容易性指数) Lines of Code(コードの行数) これらのコードメトリクスを計算し、CodeLensに表示するVisual Studio拡張機能2を作成しました。 tackme31/howmessy: How messy is your code? 以下のようにコードメトリクスをもとにコードが複雑かどうかを判定し、CodeLensに表示してくれます(デフォルトではCognitive Complexityをもとに計算します)。 今のところ

                                                        メソッド上にコードの複雑さを表示するVisual Studio拡張機能を作りました - Qiita
                                                      • C#でテキストエディタエンジンをフルスクラッチで実装してWebAssemblyで動かした話 - Qiita

                                                        デモ 以下のリンクから試せます。 https://crash.jp/apps/crash-editor/ 未圧縮版(5MB) https://crash.jp/apps/crash-editor-br/ Brotli圧縮版(2.1MB) 環境によっては表示まで数秒かかります。二回目以降はキャッシュから読み込まれるので、表示に時間はかかりません。 キャッシュはブラウザの開発ツールから削除可能です。以下はChromeの場合。 開発ツール > Applicationタブ > Cache > Cache Storage ※デモを何度か上げなおしているので、エラーになる場合にはキャッシュを削除してみてください 動作環境 WebAssemblyに対応したブラウザが必要ですが、最近のブラウザであればまず問題ないです。 自分で確認した環境 Windows 10 Pro, Chrome/新Edge/Fire

                                                          C#でテキストエディタエンジンをフルスクラッチで実装してWebAssemblyで動かした話 - Qiita
                                                        • C#コードを単一ファイルでスクリプトのように書ける言語機能が「.NET 10」でテスト中/従来のプロジェクトベースへの変換も簡単

                                                            C#コードを単一ファイルでスクリプトのように書ける言語機能が「.NET 10」でテスト中/従来のプロジェクトベースへの変換も簡単
                                                          • コードの複雑度をあげる Pull Requests を GitHub Actions で止めよう

                                                            循環的複雑度が閾値を超えた Pull Requests に、自動的に変更をリクエストする 「コードの品質を、維持したいよーーー」 ということで、テストや Linter を GitHub Actions で実行している環境はよくあると思いますが、今回は 循環的複雑度 を継続的に計測して、閾値を超えた場合に自動的に Pull Request に対して Request Changes のレビューをしようという試みです。 Lizard この例では、Lizard を使用して CCN を計測します。 おそらく似たようなツールでも同様に実行することができると思います。 Lizard は Python で開発されている CCN 計測ツールです。(追記:シンプルに書いてしまいましたが、もちろん他の指標も計れます) 以下のようにサポート言語が多いので、大抵の場合で採用できそうです。 サポート言語 (1.17.

                                                              コードの複雑度をあげる Pull Requests を GitHub Actions で止めよう
                                                            • 商用可・無料のAI音声読み上げツール「VOICEVOX」、他アプリへの組み込みも可能なコアライブラリも公開/プロジェクトの保存、キャラの立ち絵、設定画面を追加するなど使い勝手も向上

                                                                商用可・無料のAI音声読み上げツール「VOICEVOX」、他アプリへの組み込みも可能なコアライブラリも公開/プロジェクトの保存、キャラの立ち絵、設定画面を追加するなど使い勝手も向上
                                                              • .NET の新しい高性能低遅延 Satori GC が気になります - Qiita

                                                                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? GC の STW 問題 GC(ガベージコレクション)は、プログラムが確保したメモリを自動管理 する仕組みです。この方式は多くの言語で採用され、開発者は細かいメモリ管理を意識せずに済みます。ただ、その分メモリの制御は GC に委ねられます。C# では、一部の場面でメモリを手動管理する選択肢もありますが、基本は自動管理が中心です。 GC の動作時、プログラムは一時停止し、生存しているオブジェクトをスキャン します。不要なオブジェクトの解放や、メモリの断片化を抑えるためのコンパクション(圧縮) を実行することもあります。このようにプログラム全

                                                                  .NET の新しい高性能低遅延 Satori GC が気になります - Qiita
                                                                • 【C#】構造体(struct)を完全に理解する - Annulus Games

                                                                  今回の記事はC#における構造体(struct)について。 複合的なデータを扱う際、多くの場面ではクラス(class)が用いられるかと思います。しかし、パフォーマンスが重要な場面や、GCによる影響が大きいUnityなどでは、状況に応じてクラスではなく構造体を使用した方が良いこともあります。 近年はC#においてもパフォーマンスが重視されるようになり、構造体が用いられる機会も多くなっています。またUnityのDOTSにおいても、C# Job SystemやBurst Compilerに最適化されたコードを書くために構造体を多用することになります。 ここでは構造体に関する基礎的な知識から、クラスと構造体のメモリ管理について、そして実際に構造体を用いる際の注意や活用方法についても解説していきたいと思います。 ただ今回の記事、調子に乗って色々な内容を詰め込んだ結果、めちゃくちゃに長くなってます。そのた

                                                                  • [C#]最新言語仕様を使った『宣言的プログラミング』でバグが少なく可読性の高い高品質なコードを書こう - Qiita

                                                                    はじめに LINQの登場後、C#は地道な進化を続け、C# 7で登場したタプルと分解、パターンマッチング、C# 8で登場したswitch式、C# 8,9で強化されたパターンマッチング などによって、C#のプログラミングスタイルは劇的に変化しました。 昔では考えられなかったようなスタイルのコードが記述可能になり、可読性やコードの安定性が飛躍的に向上しています。 そのキーポイントとなるのが、「宣言的プログラミング」です。 この記事では、最新のC#を使ってコードを宣言的に書く手法を紹介します。 やってる人は自然とやっている事だとは思いますが、そうではない人もいると思いますので、そういう方の参考になればと願っています。 宣言的プログラミングとは 宣言的プログラミングとは、「どうやってやるか(how)ではなく何をしたいか(what)を書く」と良く言われますが、なんとなくあいまいです。 これをもう少し具

                                                                      [C#]最新言語仕様を使った『宣言的プログラミング』でバグが少なく可読性の高い高品質なコードを書こう - Qiita
                                                                    • Unity C#で実践!デザインパターン5選で作る堅牢かつ拡張性の高いゲームシステム

                                                                      閲覧いただきありがとうございます。はじめまして、ゲーム開発所RYURYUの「りゅうや」と申します。 ❏ ゲーム開発ランキング【 1位 】実績多数 (ココナラ) ❏ ココナラ総販売【 220件超 】 ❏ GC甲子園2022・東京ゲームショウ2023など出展経験あり ■ Unityを使ったゲーム・VRの受託開発についてのお問い合わせは、Xからお気軽にどうぞ。 ■ 記事に関するご質問やご意見は、Discordサーバーまでお寄せください。 Unity C#で実践!デザインパターン5選で作る堅牢かつ拡張性の高いゲームシステム ゲーム開発において、システムの堅牢性と拡張性はプロジェクトの成否を左右します。複雑な処理や多数の要素が絡み合うUnity C#プロジェクトでは、洗練された設計手法が求められます。本記事では、代表的なデザインパターン5選を通じ、ゲームシステムの品質向上に直結する実践的なテクニック

                                                                        Unity C#で実践!デザインパターン5選で作る堅牢かつ拡張性の高いゲームシステム
                                                                      • ソーシャルゲームのUnityクライアントエンジニア入門以前 | ソーシャルゲームのUnityクライアントエンジニア入門以前

                                                                        ほんわか言葉ソーシャルゲームクライアントは大変です。まずは実装の詳細ではなく、概念をインストールしましょう

                                                                        • 【C#】非同期処理とasync/await - Annulus Games

                                                                          今回の記事はasync/awaitについて。 C#に限らず、現在では多くのプログラミング言語が非同期処理を扱う言語機能としてasync/awaitを採用しています。現在の.NETでも至る所にasync/awaitが使われており、避けて通ることはできない重要な機能となっています。 そこで今回は、C#における非同期処理とasync/await、またC#8.0で導入された非同期ストリームとIAsyncEnumerable<T>について、基本的な使い方を解説していきます。 また、記事の後半では実際にasync/awaitがどのように動作しているかをコンパイル結果を通して説明していきます。この辺りはやや高度なトピックになるため読み飛ばしていただいても構いませんが、async/awaitをより深く理解したい方は是非そちらも読んでみてください。 同期処理 / 非同期処理 async/awaitに関する話

                                                                            【C#】非同期処理とasync/await - Annulus Games
                                                                          • ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能

                                                                            【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~

                                                                              ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
                                                                            • Microsoft、「C# Dev Kit」をプレビュー公開 ~「VS Code」でC#開発環境を構築/「Visual Studio」のコンセプトを「Visual Studio Code」にも

                                                                                Microsoft、「C# Dev Kit」をプレビュー公開 ~「VS Code」でC#開発環境を構築/「Visual Studio」のコンセプトを「Visual Studio Code」にも
                                                                              • 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と限りなく似せる

                                                                                • .NET 6とVSCodeでデスクトップアプリ(ランチャー) - Qiita

                                                                                  無地のウィンドウが起動します。 最大化ボタンのスナップレイアウトメニューが表示される、標準的なウィンドウです。 一通り動作確認したら閉じてください。 ■画面の作成 「MainWindow.xaml」を開き、画面を作成します。 <Window x:Class="WrapLauncher.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:WrapLauncher" xmlns:mc="http://schem

                                                                                    .NET 6とVSCodeでデスクトップアプリ(ランチャー) - Qiita

                                                                                  新着記事