幾何形状マッチングはOpenCVには非実装だったため、自動的に候補から除外されます。個人的にはかなり便利なマッチング方式だと思うので、実装してほしいんですけどね…。 次に、形状変化への強さは特徴点マッチングが優秀です。 テンプレートマッチングと幾何形状マッチングは、マッチングの元画像と対象画像が拡大・縮小・回転を用いて一致するものしか対応できません。 一方の特徴点マッチングは、拡大・縮小・回転に加え、せん断・歪みまで対応できます。冒頭にもあるように斜めから見た画像(=歪み変形した画像)同士を比較したいので、特徴点マッチングを採用しました。 ちなみに、拡大・縮小・回転・せん断が可能で、更に移動を実現できる変形をアフィン変換(変形)、このアフィン変換に歪み変形を加えたものを射影変換(変形)と呼びます。 画像の多くの箇所が同時に色味の変化を起こすことはないだろうと予想し、特徴点マッチングで問題な
TIOBE Softwareが発表したプログラミング言語の人気ランキング「TIOBEインデックス」の2023月10月版では、JavaとC#のレーティングが1.2ポイントのわずかな差に縮まっている。 ソフトウェア品質の評価と追跡を手掛けるTIOBE Softwareは、2023年10月版の「TIOBEプログラミングコミュニティーインデックス」(通称「TIOBEインデックス」)を発表した。 TIOBEインデックスはプログラミング言語の人気度を示すランキングで、同社が毎月更新している。2023年10月のランキングでは「Python」が14.82%で首位を維持した。2位~5位は「C」(12.08%)、「C++」(10.67%)、「Java」(8.92%)、「C#」(7.71%)だった。 Python、C、C#は、それぞれ長期にわたって首位、2位、5位を占めている。C++は6月にJavaを抜いて3位
以前 .NET ラボで 「C# と HTTP/2 と gRPC」というタイトルで登壇しました。その時のスライドがこちらなのですが、ちらほら反応を頂きました。その結果、HTTP/2 や gRPC について勘違いしている人がちょこちょこいる事が分かったので、少し補足を書こうと思います。 blog.neno.dev 1. HTTP/2 で向上するのはスループットであって、1リクエストあたりの応答時間ではないよ。 HTTP/2 を使うからといって、1 リクエストあたりの応答時間が短くなるわけではないのです。 まず、1 HTTP リクエストあたりにかかる時間を、RTT とかいったりします。 1 RTT の内訳はだいたいこんな感じになります。 1 RTT = ネットワーク上で往路にかかる時間 + サーバの処理時間 + ネットワーク上で復路にかかる時間 HTTP/2 になったからといって、ネットワークを
.NET SDKに含まれているdotnetコマンドを使うとインストールされている.NETランタイムやSDKの情報を表示できるようになる ときどき必要に駆られて、小さなプログラムを作ることがある。Windowsだと大抵はWindows PowerShellで片が付くことが多いのだが、そうでないこともある(あとPowerShellには素直じゃないところがあって……)。 その場合、筆者はC#を使うのだが、標準的な開発環境のVisual Studioは大きく、起動にも時間がかかる。基本的には本格的なアプリケーションを開発するためのものなので、実験的な短いプログラムを作るのには余計な手間と時間が多すぎる。イメージ的には、庭に小さな穴を掘るのにショベルカーを使うような感じである。 そこで便利なのが.NET SDKに含まれているdotnetコマンドだ。コマンドラインだけで利用でき、GUIは一切なし。コマ
Visual Studioの新機能、クラウド上のKubernetesクラスタの一部をローカルマシンに引き込んで開発できる「Local Process with Kubernetes」発表 マイクロソフトはVisual Studioの新機能として、クラウド上に展開されているKubernetesクラスタの一部を開発者のローカルマシンに引き込んで、ローカルマシン上でKubernetesアプリケーションの開発、テスト、デバッグなどを可能にするVisual Studioの新機能「Local Process with Kubernetes」を、Visual Studio 2019 16.7 Preview 2に搭載したことを明らかにしました。 一般にKubernetes上で稼働する分散アプリケーションの開発では、まずクラウド上にKubernetesクラスタを展開。次にローカルマシンなどで開発したアプリ
CodePlex に置いてあった .NET Framework 3.0 時代に書かれたアプリケーションを、GitHub に移行しつつ .NET 5 で動くように 2 週間ぐらい頑張った話を書きます。正直なところ 12 年前に書かれたコードを何とかするのはめっちゃ大変でした。 今回コードの改善を頑張ったので色々な実験場としても使えるようにしています。特に GitHub 周りは新しい機能を使ってみるようにしています。 .NET Framework 3.0 時代に書かれたコードを何とかするのが本当に大変だった(まだ何とか出来てない https://t.co/u5SrISQRCL— Tatsuro Shibamura (@shibayan) 2021年5月9日 実際には .NET 5 で動くようにはなっていますが、中身は古臭い実装がたくさん残っているので、ツイートの通り全然何とかなっていない状況で
Visual Studio Code(以下、VS Code)を今よりもっと使いこなしたい! そんな人にお勧めの解説書を紹介します。 VS Codeの最大の特徴は、高いカスタマイズ性と豊富な機能拡張。本書では使用する言語に適した開発環境の構築方法、UIや設定のカスタマイズ方法、特にお勧めの機能拡張を軸に、VS Codeを使いこなす方法を解説したものです。 著者の上田 裕己氏(@ikuyadeu0513)はVisual Studio Codeのコントリビュータで、VS Codeの機能拡張なども開発されています。 本書はそんな著者によるVS Codeの実践的な操作方法、言語ごとの開発環境の構築、拡張機能など、幅広い内容が網羅された一冊です。
はじめに マイクラといえば「ゲーム」というイメージがあるかと思いますが, 実は「学習ツール」としても活用することができます. ここでは, マイクラを軸にクラウドサービス (Microsoft Azure) の利用方法と C# 言語を用いたプログラミングについてご紹介します. マイクラサーバの構築方法と, プログラムを活用したマイクラの自動化について知っていただけたら嬉しいです. 使用環境 Minecraft Java Edition 1.19 Windows 10 Microsoft Azure Visual Studio 2022 必要なもの Minecraft Java Edition Microsoft アカウント (Minecraft を遊ぶのに必要です) Azure クレジット (Azure for Students も可) 学生向け Azure クレジット (年間100ドル分)
Facebookは2019年11月19日(米国時間)、Microsoftのオープンソースのクロスプラットフォームエディタ「Visual Studio Code」(以下、VS Code)を自社のデフォルト開発環境として採用したことを発表した。同時に、自社エンジニアの大規模なリモート開発をサポートする取り組みの一環として、Microsoftが進めるVS Codeのリモート開発拡張の強化に協力していることも明らかにした。 自社開発の「Nuclide」はどうなるのか Facebookは、自社エンジニアに特定の開発環境の利用を義務付けていないものの、多くのエンジニアが自社開発の統合開発環境「Nuclide」を使ってきた。「vim」や「Emacs」を使っている開発者もいる。 Nuclideは、オープンソースエディタ「Atom」をベースにしたオープンソースパッケージセットとして開発がスタートした。Fac
「Gitpod」は「GitLab」「GitHub」「Bitbucket」とネイティブに統合され、開発環境を自動的に構築できるオープンソースのWeb IDE(統合開発環境)だ。Gitpodにより、開発環境をローカルに手作業で構築するという煩わしさから解放される。 同ツールを開発しているGitpod社は、「Visual Studio Code」(VS Code)の独自実装である「OpenVSCode Server」を中心とする新しいオープンソースプロジェクトを立ち上げた。 OpenVSCode Serverにより、任意のサーバでVS Codeを実行して好きな端末でアクセスできる。必要なのはブラウザだけだ(訳注)。 訳注:Webブラウザ版のVS Codeは他にも「GitHub Codespaces」(旧Visual Studio Codespaces)、「Visual Studio Code f
2021年5月5日、MicrosoftのC# のコーディング規則 (C# プログラミング ガイド)に今まで明言されていなかったprivateなメンバ変数(field変数)への命名規則が記載された。 ちなみに同じMircrosoftが出してるStylecopやFxCopといった静的コード分析ツールの現在の仕様は「アンダーバーは付けるな」で、 おそらく.Netだけがアンダーバーを付けていたが、今後はそういったツールも.Netに合わせる流れになっていくと思われる。 private または internal フィールドに名前を付ける場合は、Camel 形式 ("camelCasing") を使用する必要があり、_ プレフィックスを付ける必要があります。 https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/inside-a
using (var client = new HttpClient()) { var response = await client.GetAsync(url); .... } これは間違いです。HttpClientオブジェクトは dispose してはいけません! Stackoverflowにも沢山この間違いがあります。 (追記: 正確に言うとdisposeしてはいけないわけではなく、生成と破壊を繰り返すのが誤りです) 正しい使い方はAPIの公式ドキュメントに書いてある通りです。 public class GoodController : ApiController { private static readonly HttpClient HttpClient; static GoodController() { HttpClient = new HttpClient(); } } 上
無料版が出ましたね!! Publickey さんでも取り上げてもらってます。 マイクロソフト、「Azure Cosmos DB」がずっと無料で使える「Free Tier」を発表。地球規模の分散データベースを最大5GBまで Cosmos DB とは Azure で一番強い NoSQL DB だと思ってます。色々な DB のモードがあって SQL API Cssandra API MongoDB API Gremlin API テーブル API etcd API の中から選べます。私は SQL API が好きというか基本的に SQL API しか使ったことない感じです。 SQL API は JSON でデータが格納されて SQL で問い合わせ出来る感じです。(雑な説明) 作ってみよう Azure ポータル から Cosmos DB を作成します。作成するときに「Apply Free Tier
早速ですが皆さん。 プロジェクトの計画を立てるとき、スケジュールの作成が面倒だと感じたことはありませんか? 汎用的なExcel等のツールを使って作成すると、まずは管理するためにフォーマットを決めなければならず、途中でのタスクの入れ替えやパスの変更はなかなか容易ではありません。 市販のツールを使おうにもただ試すだけにはハードルが高すぎたり・・・。 そういった悩みを解消するために社内開発に踏み切ったのが、内製アプリケーション「ScheduleCanvas(スケジュールキャンバス)」です。 今回のBlogではこのツールの仕様と、スケジュール作成がどう変わったのかを紹介するとともに、ツール実装におけるノウハウの一部を少しだけ紹介します。 今回このブログを担当するのは、セガゲームス 第3事業部 第3開発2部 テクニカルサポートセクションの麓です。 まずは私からScheduleCanvasとはどんなア
去年に専門学校の学生さん向けに講演した資料で、それ以外には未発表のスライドです。デベロッパーのキャリアとしてのエモい話になっているのでデブサミ向けにいいかな、と思って公募したところ落ちた!(←微妙にショックだった)のでずっとお蔵入りで眠っていたのですが、このご時世ですし他で講演できるところもなさそうなので、ここで放出することにしました。 作ることが能力の向上に繋がり、キャリアにも繋がっていく。別にそれだけが唯一解ではないけれど、一つの道筋として力になれたらな、と思っています。 大量に作るというのは、いや、大量ではなくても、メンテナンスが回るわけじゃないから大変だったり、時に無責任に見えてしまう(そういうわけではないけれど大変なのです!ごめんなさい!)とか、Issueに埋もれてシンドイとか、そういう負の側面も色々あるのですけれど、それでもね、やっていくのはいいことだと思います。そしてやるから
We’re pleased to introduce the first preview of Source Generators, a new C# compiler feature that lets C# developers inspect user code and generate new C# source files that can be added to a compilation. This is done via a new kind of component that we’re calling a Source Generator. To get started with Source Generators, you’ll need to install the latest .NET 5 preview and the latest Visual Studio
Thinkings 株式会社では、sonar ATS の開発で自動テストを導入しています。過去に CI の実行時間を大幅に削減したことで全体の実行時間は短くなりました。自動テストの速度改善は手が回っていなかったので、CI 実行時間のボトルネックになっていました。今回は自動テストの実行時間を短縮するためにどうやって分析を行ってテストコードを改善したかについて説明します。 開発環境 開発環境は次の通りです。今回はバックエンドの改善内容について説明します。 Visual Studio 2022 .NET Framework 4.6.2 C# xUnit.net 実行時間の分析方法について まずは、自動テストのボトルネックを分析する方法について説明します。前回もお話しましたが、弊社では CI/CD ツールに Jenkins を使用しています。自動テストは1日に数回実行しており、その実行結果をアップ
マイクロソフト、全プラットフォームを統合する「.NET 5」フレームワーク、リリース候補版を公開。Ignite 2020 マイクロソフトは、これまでWindows向けの「.NET Framwork」やサーバ向けの「.NET Core」、モバイル向けの「Xamarin」などに分かれていた同社のフレームワークを統合し、全プラットフォームに対応させる野心的な新フレームワーク「.NET 5」の最初のリリース候補版を公開しました。 Announcing .NET 5.0 RC 1 https://t.co/YB5gT6T0hV — .NET (@dotnet) September 14, 2020 .NET 5は、オープンソースで開発されるフレームワークです。デスクトップ、Web、モバイル、クラウド、ゲーム、IoT、AIのすべての分野のアプリケーション開発をカバーし、しかもWindows、Mac、L
VSCodeのオンライン版であるVisual Studio Online(VS Online)がついにPublic Previewになりました。早速使ってみたので雰囲気をつかんでもらえるようにレビューしてみます。個人的にはAWSに買収される前のCloud 9をよく使っていたので、とても楽しみにしていました。これでローカルマシンに色々なバージョン・設定の開発環境を用意したりする必要はなくなりますね! 必要なものはMSアカウントとAzureの課金設定 パブリックプレビューに参加するには、Azureのアカウントを作成し、サブスクリプションプラン(お支払い設定)を設定する必要があります。仕組みとしてはVSCodeがはいったインスタンスをAzureがホストしてくれるわけです。 実際に申し込んでみましょう。お支払アカウントを選び、リージョンを選択(現在東京はないのでSoutheast Asiaをえらび
Microsoftが、.NET Frameworkのオープンソース実装であるMonoの管理を、Unix系OS上でWindowsアプリを実行するためのソフトウェア「Wine」のWineHQチームに移管したことを発表しました。 Thank you to all the Mono developers! · Issue #21796 · mono/mono · GitHub https://github.com/mono/mono/issues/21796 Microsoft Hands Mono Over to the Wine Project - OMG! Ubuntu https://www.omgubuntu.co.uk/2024/08/microsoft-mono-project-to-wine Microsoftのジェフ・シュワルツ氏は、Monoプロジェクトの公式サイトとGitHub
C#とは?特徴や将来性から開発環境の構築まで解説 公開日:2020.06.24 最終更新日:2020.12.18 スキルアップ C#はマイクロソフトが提供しているプログラミング言語で、同社のフレームワーク「.NET Framework」の一部でもあります。その汎用性の高さから、Windowsアプリはもとより、MacやLinux、さらにはスマートフォン向けのアプリ開発にも活用されています。 また、Unityなどのフレームワークの登場で、ゲームやAR/VRといったジャンルも開発できるようになってきており、将来性も高いと言われています。汎用性も高いため、プログラミング言語の選択に悩んでいる入門者にもおすすめの言語です。 ここでは、入門者に向けてC#の特徴や、言語に対する需要と将来性、開発環境の構築までを細かく解説していきます。 C#(シーシャープ)は、2002年1月にVer1.0がマイクロソフト
ASP.NET Coreは、ASP.NET 4.xをベースにしていますが、Webフォームには対応していません。また、開発言語にVisual Basicが利用できなくなりました。 一方、ASP.NET Coreになって、新たなライブラリ、フレームワークが提供されています。Razor Pagesは、ASP.NET Core 2.0から利用できる機能で、MVVMパターンのWebアプリケーションを実現できるフレームワークです。 MVVMパターン Razor Pagesでは、Viewにあたる部分はRazor構文によるcshtmlファイル(HTMLを拡張して、C#コードなどを含めることができる)に、ViewModelはそのcshtmlから生成されるC#のクラスになっています。このあたりの構造は、その後にリリースされた、Blazorフレームワークでも同様となっています。 Blazorは、通常JavaSc
「プログラミングを学んで、自分に向いているならエンジニアとして転職したいけど、最初に学ぶ言語ってどれがいいんだろう?」 「2020年にプログラミングを学び始めるなら、どの言語をどんな目的で学べばいいんだろう?」 と、最初のプログラミング言語って何がいいのか、悩んでしまいますよね。 ぼく自身も未経験からエンジニアに職種を変更する決断をしたとき、最初に学ぶべきプログラミング言語がわからなかったので、いろんな記事を読みあさった記憶があります。 今回は、2020年これからプログラミングを学び始めるならどの言語がオススメなのか、現役Webエンジニアとして働いている立場のぼくが「初心者の学習のしやすさ」と「求人・案件数の多さ」と「今後の需要が伸びる可能性」の観点から紹介していきます。 プログラミング初心者が最初に学ぶ言語の重要性 プログラミングを勉強する上で、なぜ最初に学ぶ言語選びをこだわる必要がある
BlazorでiOS/Androidネイティブアプリケーションを開発可能にする「Mobile Blazor Bindings」、マイクロソフトが発表 マイクロソフトはWebアプリケーションフレームワーク「Blazor」を用いてiOSとAndroidに対応したネイティブアプリケーションを開発可能にする実験的なプロジェクト「Mobile Blazor Bindings」を、1月14日(日本時間1月15日未明)に開催されたオンラインインベント「.NET Conf Focus on Blazor」で発表しました。 Blazorは、C#と.NET Coreを用いてWebアプリケーションの開発を可能にするフレームワークです。JavaScriptを用いず、C#によるプログラミングだけでSPA(Single Page Application)のWebアプリケーションなどを開発できるため、.NETの知識や経
3月9日にTwitterに投稿したショートアニメの制作に関するお話です。 ※こちらのTwitter動画です 3月9日なのでエモいショートアニメを作りました。 ボイスは巳ノ瀬かなでさん(@minose_kanade ) 歌は星乃めぐりさん(@hoshi_no_meguri ) (詳細はリプへ続く) pic.twitter.com/xBMTTS6lN1 — 八ツ橋まろん🌰VirtualMarket4Staff🌰Vケット4運営 (@Maron_Vtuber) March 9, 2020 Unityでの3Dの映像制作で使ったものや、スピードアップを図ったことなどを書いていきます。3日間でアニメ制作とかいうふざけた日程での制作工程を綴ります。 企画概要 3月9日といえば、レミオロメンの「3月9日」ですよね。「1リットルの涙」のドラマの挿入歌で、その後は卒業シーズンなどのエモい場面で聞くことが多い
次期「.NET 8」プレビューリリース初公開。ネイティブコンパイラ改善で生成バイナリが約半分に、「Blazor United」登場など マイクロソフトは同社のアプリケーションフレームワーク「.NET」の次期メジャーバージョンアップとなる「.NET 8」の最初のプレビューリリースとなる「.NET 8 Preview Release 1」を公開しました。 マイクロソフトは毎年11月に.NETのメジャーバージョンアップを行っており、そのうち偶数バージョンがLTS(Long Term Support:長期サポート)版となります。そのため「.NET 8」は次のLTS版として11月に正式リリース予定です。 Announcing .NET 8 Preview 1 ... including big improvements to products, libraries, runtime, and too
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く