KENTEM TechBlog

建設業のDXを実現するKENTEMの技術ブログです。

バックエンド

新着順 人気順

【C#】XMLの読み込み方法いろいろまとめてみた

この記事は、 KENTEM TechBlog アドベントカレンダー2023 10日目、12月14日の記事です。 こんにちは。第2開発部のN.Yです。 最近、C#でXMLに記載されている情報を取得したい機会があり、調べたところXML読み込みには色々な方法があることが分かりました。 今…

WebサービスでExcelを使おう

こんにちは! 皆さん、Excelは好きですか? 私は好き嫌いに関わらず、仕事でExcelに全く触らない日というのはほぼありません。 弊社のお客様も仕事でExcelを触る機会は多いようで、弊社のシステムがWeb化しても、Excelに対する熱い要望をいただくことが多く…

アーキテクチャ、破壊してみた

モジュールバランスを破壊する こんにちは、エンジニアのT.Mです。今日は私の代わりに、私の中のYAGNIなペルソナが記事を書いてくれるそうです。 YAGNI:「強固なアーキテクチャって、堅苦しいよね?なんだか冗長に見えるし、何の意味があって分かれているの…

AzureのAPI ManagementでAPIを公開

こんにちは。KENTEMでバックエンドを担当しているおかおかです。 私たちのチームではAzureのサービスを利用してAPIを公開しました。 KENTEMでもAPIを外部公開して欲しいというお客様からのニーズに対応するためにAPI Managementサービスを利用しました。 今…

Azure OpenAI Serviceで学生向けイベント開催してみた

こんにちは、KENTEM 第2開発部のHFです。 KENTEMでは学生の方を対象に『KENTEM1Dayプログラミング体験』というイベントを毎年行っています。 今年度はMicrosoft Azureで2023年1月に一般公開された「Azure OpenAI Service」を使用したプログラムを扱ってい…

Azure Cosmos DB を使ってみた

この記事は、 KENTEM TechBlog アドベントカレンダー2023 13日目、12月19日の記事です。 今回はAzure Cosmos DB NoSQL(以降Cosmos DB)を使ってみました。 そして良かった点をご紹介します。 Cosmos DB とは? 変更フィード(Change Feed)が便利 水平スケ…

Azure FilesをAzure App Serviceのドライブとしてマウントする

この記事は、 KENTEM TechBlog アドベントカレンダー2023 15日目、12月21日の記事です。 こんにちは。 私が携わっているプロジェクトで、Azure App Service(以降 App Service と表記)で大容量かつ大量のファイルを取り扱いたいケースに直面しました。 通常…

ブラウザキャッシュ問題を解決!キャッシュバスティングについて

Webアプリを作る上であるあるな話である「キャッシュ問題」 開発中やアップデート直後に何か動かなくなる時がある・・・ ファイル差し替えたのに古いものが表示されてしまう・・・ スーパーリロードやキャッシュ削除を試すと大丈夫! →だけど面倒だしログイ…

効率化のためのNuGet導入

こんにちは。KENTEMでバックエンドを担当しているおかおかです。 KENTEM TECH CONF 2023 Winterで発表したKENTEM NuGetをご紹介します。 NuGetとは NuGetを利用した目的 Visual StudioでNuGetパッケージの作り方 NuGetサーバーへnupkgを発行 Visual Studioで…

ネットワーク上での非同期ストリームのパフォーマンスを検証してみた

最近「非同期ストリーム」というのを知りました。 今回はそんな非同期ストリームについて API で利用した場合のパフォーマンスの検証結果をご紹介します。 非同期ストリームについて 検証 サーバー クライアント まとめ おわりに 非同期ストリームについて …

Azure Cosmos DB のフルテキスト検索を試してみる

この記事は、 KENTEM TechBlog アドベントカレンダー2024 19日目、12月19日の記事です。 こんにちは、第二開発部でバックエンドを担当している N.Y です。 2024/11/18-22 に開催された Microsoft Ignite 2024 で、Azure Cosmos DB (以下 Cosmos DB)のフル…

React×FastAPI×Hugging Face~爆速簡単英訳Webアプリ作成~

この記事は、 KENTEM TechBlog アドベントカレンダー2024 25日目、12月25日の記事です。 はじめに メリークリスマス!今年新卒で入社したK.Mです!昨日から今日まで弊社では、開発部でテックカンファレンスが開催されていました!かくいう私も運営&登壇者と…

【C#】Azure Cosmos DB for NoSQL でチャットボットを想定したベクトル検索を実装してみた

第2開発部でバックエンドを担当している N.Y です。 先月、「Azure Cosmos DB のベクトル検索を用いたチャットボット」を作成する機会がありました。 ベクトル検索って、数学が苦手な人には少々ハードルが高く聞こえませんか? まさに私がそうでした。 実際…

ASP.NET Coreのミドルウェアって何?

開発部のM.Tです。 最近ASP.NET Coreのカスタムミドルウェアを作る機会がありました。 普段はコントローラの処理を実装することが多く、アプリケーションパイプラインやミドルウェアについて気にすることがあまりなかったのですが、やはりこの辺りの知識もア…

【チートシート】JavaScriptのfor ofとfor inの使い方

こんにちは!普段ReactとTypeScriptを使ったフロントエンド開発をしているT.C.です。 配列操作はarray.map()やarray.forEach()といった便利なメソッドを使うことも多いですが、いざfor文を書く必要が出たとき for of なのか for in のどちらを使うべきか迷っ…

ASP.NET Core の依存関係の挿入を使おう

ASP.NET Core の依存関係の挿入って知っていますか?依存関係の挿入を使う事で効率的なリソース管理を行ったり、テストコードが書きやすかったりします。今回は ASP.NET Core を使ったクラス管理について MVC パターンでまとめたいと思います。 シンプルに登…

CosmosDBのRU消費量についてまとめてみる

ここ一年程、新規製品の開発でAzure CosmosDBに触れることができました。 CosmosDBはMicrosoft Azureで手軽に使用できるNoSQLサービスですが、 いざリリースしてみると消費RUが想定以上となり金額面で苦労するケースがありそうです。 今回はCosmosDBの各処理…

型でもテンプレートリテラル?type Y = `${X}`という書き方

UnsplashのJoanna Kosinskaが撮影した写真 こんにちは。ReactエンジニアのT.C.です。 TypeScriptの型を知らなくても動作やパフォーマンスには直接影響しないので、AIなどが便利に活用できるようになった現在でも意識して学ばないと触れる機会が少ないと思い…

【C#】Authorize 属性ってなに?Cookie 認証をベースに ASP.NET Core の認証・認可を理解しよう!

KENTEM でバックエンドを担当している N.Y です。 よく C# で書いた API Controller のメソッドに、 [Authorize] という属性(アトリビュートとも言う)が付いているのを見たことはありませんか?? [Authorize] // ←これ public IActionResult Dashboard() …

TypeScriptで知っておきたいユーティリティ型9選

こんにちは!フロントエンジニアのH.Rです。TypeScriptで型を定義するときに、「一部だけ取り出したい」「全部をオプショナルにしたい」といった場面がよくあります。 そんなときに役立つのがユーティリティ型(Utility Types)です。 この記事では代表的な…

【C#】.NET10 EF Coreで「LEFT JOIN」が正式サポート!

この記事は、 KENTEM TechBlog アドベントカレンダー2025 2日目、12月2日の記事です。 先日、ついに .NET 10 が正式リリースされました! 今回は3年間の長期サポート(LTS)バージョンということで、アップデートを検討されている方も多いのではないでしょ…

Azure PowerShellでAzure Batchのタスクから環境変数を取得する

こんにちは、KENTEMのまつです。 担当している製品のデータを集計しようとしたところ、データ構造的にトレースできないデータがありました。 Azure Batchのタスクに設定された環境変数にデータがあったので、CSVなどにしてダウンロードできないか調査しまし…

TypeScript型定義!便利だと感じた実践テクニック集

こんにちは!新卒フロントエンドエンジニアのK.Sです。皆さんは既にこちらの記事をご覧になりましたか? tech.kentem.jp この記事で紹介されているユーティリティ型だけでも十分役に立ちますが、別のテクニックと組み合わせることでさらに柔軟な型の定義が可…

「意味と操作」はコードの外にも広がる—オブザーバビリティとOTelの知識地図—

ようやく春めいてきたかと思えば、急に冬が逆襲してくる寒暖差。 袖不足人間のエンジニアTです。 業務でAzure Application Insightsを使っていて、.NET 10へのアップデートに伴い「OpenTelemetry SDKへの移行」が話題に上がるようになりました。 learn.micro…