Deno を始める - 第5回 (WebAssembly の利用)
Deno v1.28 がリリースされました。新しく Deno.Command API が追加された模様です。npm パッケージのインポートが安定化されたようで、--unstable が不要になりました。 Deno 1.28: Featuring 1.3 Million New Modules deno upgrade でアップデートしました。アップデート用のサブコマンドが本体に内蔵されているのは便利ですね...
記事を読むGoogle Test を使ってみる(その3:テストフィクスチャ編)
前回は簡単なサンプルプログラムのテストケースを「Google Test」を使って記述し、テストを実行してみました。 今回はもう少し複雑なプログラムのテストケースを Google Test の「テストフィクスチャ」を使って動かしてみます。 テストフィクスチャ とは # 複数のテストケースを書いていると、複数のテストケースに同じセットアップ(テストケースに事前に値を設定するなど)を使いまわしたい場合があります...
記事を読む全ユーザーに公開された GitHub Codespaces で Codespace Templates を使ってみる
5月の「GitHub Codespaces を使いはじめる」の記事時点ではパプリックベータでしたが、11月9日に全ユーザーにロールアウトされフリープランは月60時間まで無料となりました[1]。個人ユーザーはベータ期間中無料で使えていましたが、引き続き利用できることになります。 Codespaces for Free and Pro Accounts | GitHub Changelog 使用制限を超えた場合の利用料金は以下を参照してください...
記事を読むMicroProfile Metricsの機能と利用
今回のテーマはマイクロサービスアーキテクチャの重要な非機能として挙げられるモニタリングに関するMicroProfile Metrics(MP Metrics)です。MicroProfile Metricsはサーバーのリソース状況や利用頻度といった数値情報(テレメトリーデータ)の測定とその提供(公開)を担う仕様になります。記事ではサンプルアプリを例にMP Metricsでどのようなメトリクス情報を収集することができるかを説明していきます。 なお、記事はコードの抜粋を記載しています...
記事を読むGoogle Test を使ってみる(その2:サンプル実行編)
前回は「Google Test」が実行できる環境を整えました。 今回は Google Test を使った簡単なサンプルプログラムを動かしてみます。 なぜ単体テストフレームワークを使うのか # ソフトウェアのテストは、テスト対象を可能な限り小さい単位で、しっかり実施しておくことが重要です。 テスト対象が複雑に結合された巨大なモノリス(一枚岩)になってしまってからテストを実施すると、障害の原因を突き止めるのに非常に時間と労力を要します。 またテストには「独立性」と「再現性」も求められます...
記事を読むなぜStringの比較に等価演算子(==)を使ってはいけないの?
はじめに # 日頃、Javaの初心者からベテランまで様々なスキルレベルの方から質問を頂く立場で仕事しておりますが、Java言語を使用するうえで基本事項でありながらも、あまり理解されていない事柄があると感じています。これらの事柄については改めて誰かに質問することもできず、「そういうもの」として無理やり納得しやり過ごしている方がいるのではないでしょうか...
記事を読むGoogle Test を使ってみる(その1:準備編)
これから数回に分けて「Google Test」についてご紹介したいと思います。 Windows+VSCode(Visual Studio Code)環境で Google Test を紹介している例があまり無かったので、今回は Google Test をソースコードで取得してビルドし、Google Test環境を準備するところまでご紹介します。 Google Test とは # Google Test は、正式には「Google C++ Testing Framework」と言います...
記事を読むDeno を始める - 第4回 (OS 機能と FFI の利用)
第3回の後、Deno 1.27 がリリースされましたので、本編に入る前に少し内容を見てみましょう。 Deno 1.27: Major IDE Improvements 1.27 では Language Server や deno task など開発環境に関する改善が多く含まれているようです。 Language Server 関連では Inlay Hints が使えるようになりました...
記事を読むNuxt3入門(第9回) - Nuxt3アプリケーションをサーバーレス環境にデプロイする
前回はNuxt3のステート管理について見てきました。 連載最後の今回は、サンプルアプリとして作成したNuxtアプリケーションをAWS環境にデプロイしてみます。 デプロイするアプリケーションは、以下の回で作成した仮想のブログシステムです...
記事を読む初心者のためのJavaプログラミング再学習(その2 例外処理(1))
はじめに # 「初心者のためのJavaプログラミング再学習」の第2回目の記事です。この連載では、Javaプログラミングを網羅的にカバーするのではなく、新人研修等で躓く受講者が多い部分、一度勉強したけど理解が難しい部分に絞って執筆する予定です。 前回の記事は以下になります。 初心者のためのJavaプログラミング再学習(その1 基本データ型とオブジェクト型) 今回は「例外処理」について解説します。 例外の基本 # 例外とは? # 例外処理の前に、そもそも例外とはどのようなものでしょうか...
記事を読むGo で CI/CD パイプラインを書ける Dagger Go SDK
4月に「話題の CI/CD ツール Dagger を体験してみる」という記事で、コンテナベースのポータブルな CI/CD ツール Dagger を紹介しました。YAML より少しリッチな CUE 言語(cuelang) で記述し、コンテナ環境で実行するため CI 環境だけでなく手元でも動作確認できるユニークなツールでした。 先日、Dagger から Go 言語による SDK が公開されました。Go でパイプラインを記述できます...
記事を読むNuxt3入門(第8回) - Nuxt3のuseStateでコンポーネント間で状態を共有する
前回はNuxt3でプラグイン、ミドルウェアの導入について見てきました。 今回はNuxt3が提供する状態管理について見ていきます。 Nuxt2では、コンポーネント間で状態を共有するには、Nuxt2にバンドルされているVuexを使うのが一般的でした。 Nuxt3ではVuexはNuxt本体に含まれていません。 代わりにNuxt3では新たにuseState Composableが提供されるようになりました[1]...
記事を読むアジャイル開発現場におけるTips:仕様書としてのテスト
はじめに # 中佐藤です。今回は私が考えたものではなく、現場でとある開発者が使っていたテクニックです。他の方にも参考になると思い、共有します。 それは「テストを仕様書代わりにすること」です。どういうことか、解説していきます。 どんな場面で使えるか # 開発真っ最中のあるチームに初心者が配属されました。「新人研修でJavaは勉強しました」「でも実開発は未経験です」というレベルの新人です。この初心者の育成の意味が多分にあり、現場に配属されてきました...
記事を読むアジャイル開発現場におけるTips:笑い声
はじめに # 中佐藤です。アジャイル開発現場で見聞きしたTipsをちょっとずつ書いていきます。なお、このTips集は、XP解説の連載とは違って順序性はなく、どの回からでも読んでいただけます。また、私が思いついたものだけではなく、参加した現場で他の方が採用していたものが含まれます。 まずは「笑い声」です。これは私がチームを見る時に、まず目安にすることです...
記事を読む豆蔵社員のリモートワーク環境ご紹介 その10 リラックスできる環境🐕
はじめに # はじめまして。堀江俊夫です。 コロナ禍で出社しなくなったため、東京から埼玉に移り住みました。 家に居る時間が増えたため、観葉植物を置き、広い机に大きなディスプレイを用意しました。 間取りが1Kなので、余計なものが写り込んでしまっていますが、ご容赦ください。 私で10番目のリモートワーク環境紹介の記事になりますが、これで10人中3人がトシオです😂😂😂 筆者の働き方 # 請負で構築したシステムが2019年12月頃から本番稼働し、その後保守を続けています...
記事を読むIoT を使ってみる(その8:AWS IoT Device Client編)
最近はAWS関連の話題から少し遠ざかっていたので、今回は AWS IoT Device Client を紹介します。 AWS IoT Device Client とは # AWS IoT Device Client はAWSのIoTデバイスのリファレンス実装であり、概念実証(PoC)環境を簡単に構築することができます...
記事を読むNuxt3入門(第7回) - Nuxt3のプラグイン・ミドルウェアを使う
前回はNuxt3のエラーハンドリングについて見てきました。 今回はプラグインとミドルウェアを見ていきます。 両方とも必須という訳ではありませんが、うまく使えばアプリケーション開発を効率化できます。 プラグインはNuxtアプリケーション初期化時に実行してくれるもので、アプリケーション全体で利用するものはここでまとめて定義しておきます...
記事を読むリニューアルされた GitHub Projects のオートメーションを使ってみる
7月にGitHub Projects のオートメーションについて紹介しました。 GitHub Projects の Automated kanban で issue 管理を楽にする その後、リニューアルされた Projects について紹介しました。 GitHub Projects がリニューアル - スプレッドシートのビューが利用可能に このリニューアルにより7月の記事のオートメーションは、Classic Projects のオートメーションということになりました...
記事を読むMicroProfile Fault Tolerance(3) - 例で理解する設定編
MicroProfile Fault Tolerance(MP Fault Tolerance)を紹介する最後は設定によるフォールトトレランス機能の指定です。今回も前回同様、MP Fault Toleranceから提供される機能とその設定を「こんなことをしたい」的な利用シーンごとに説明していきます。なお、MP Fault Toleranceの機能は豊富なため説明は前々回の基本機能編、前回の非同期編、そして今回の設定編と3回に分けて行っています。 記事はコードの抜粋を記載します...
記事を読むDeno を始める - 第3回 (SSR)
前回からしばらく開いてしまいました。この間 Deno v1.26 がリリースされています。 今回は、Deno の有力なユースケースの1つである Web アプリケーションの Server side rendering (SSR) について見ていきましょう。 Deno の JSX サポートによる SSR # Deno は React の HTML ライク DSL である JSX による DOM 操作をサポートしています[1]...
記事を読む