ブログ

豆蔵エンジニアの技術ブログ

  • |ブログ|4 min read
    #electron

    Electron v20 で有効化された Renderer プロセスサンドボックス化に対応する

    Electron v20 がリリースされました。 Release electron v20.0.0 · electron/electron Breaking Changes として、Renderer プロセスがデフォルトでサンドボックス化されました...

    記事を読む
  • |ブログ|3 min read
    #テスト#pairwise#pict#pictmaster

    ペアワイズ法テストケース生成ツール「PictMaster」の制約表を使う

    前回はペアワイズ法をGUIから使う便利ツール「PictMaster」の基本操作を紹介しました。 今回は「PictMaster」の「制約表」について紹介します。 テストケースに制約を付けたいとき # 2因子網羅を効率よく生成するペアワイズ法ですが、テストケース生成時にテストケースに制約を設定したい場合が多々あります。 例えば、ある因子の水準を特定の環境にだけ割り当てたい、または割り当てたくない場合などです。 以前使用したテストケースの例題で考えてみましょう...

    記事を読む
  • |ブログ|6 min read
    #GitHub#Codespaces#vscode

    GitHub Codespaces の Prebuilding で開発環境をカスタマイズして共有する

    先月 GitHub Codespaces の Prebuilding が GA になりました。 Prebuilding codespaces is generally available | The GitHub Blog 先日の「GitHub Codespaces を使いはじめる」の記事では、Microsoft の Linux Universal のコンテナイメージをそのまま使用しました(というかそれ以外の選択肢がなかった)...

    記事を読む
  • |ブログ|3 min read
    #GitHub

    GitHub Projects がリニューアル - スプレッドシートのビューが利用可能に

    先日「GitHub Projects の Automated kanban で issue 管理を楽にする」の記事を投稿した時はまだベータ版でしたが、GitHub Projects のリニューアル版が GA になりました。 Planning next to your code - GitHub Projects is now generally available | The GitHub Blog 個人アカウントやオーガニゼーションの Projects タブも新しくなりました...

    記事を読む
  • |ブログ|15 min read
    #type-orm#typescript#ORマッパー

    ORマッパーのTypeORMをTypeScriptで使う

    Node.jsの普及によって、JavaScript/TypeScriptはフロントエンドだけの実装言語ではなくなりました。 Express等のWebサーバーや、Lambda等のサーバーレス環境でバックエンド処理として使われることが当たり前になりました。 最近はもっとバリエーションが増えていますが、一般的にバックエンドサービスだとRDBアクセスが定番モノと言えます。 ここでは、そんなJavaScript/TypeScript向けのORマッパーのTypeORMをご紹介します...

    記事を読む
  • |ブログ|3 min read
    #java

    DTOとエンティティの変換コードをfluentなワンライナーで書いてみる

    昨今のJavaアプリケーションではレイヤーアーキテクチャにしろ、Clean Architectureにしろ、DTOとエンティティを変換するコードが多く登場します。今回は冗長となりがちなDTOとエンティティの変換コードをラムダとインタフェースを使ってfluent(流暢)なワンライナーで書けるようにする小ネタを紹介します。 変更前のちょっと残念な変換コード # 外部からの入力などをDTOで受け取り、それをエンティティに変換してサービスに渡す...

    記事を読む
  • |ブログ|3 min read
    #Doma2#DAO#oss#ORマッパー

    DBアクセスフレームワークDoma2の紹介

    業務で使用させていただいおりますDBアクセスフレームワークDoma2を紹介させていただきます。(とても重宝しております。)導入方法等の詳細については公式サイトをご覧ください...

    記事を読む
  • |ブログ|16 min read
    #k8s#container#istio

    Ingressを強化したKubernetes Gateway APIを試してみる

    2022-07-13にKubernetesコミュニティ(sig-network)で策定が進められているKubernetes Gateway APIがベータ版になりました。 Kubernetes Gateway API Graduates to Beta 外部からのトラフィックにはKubernetes built-inのIngressリソースで対応することが多いと思いますが、Ingressには次のような欠点が指摘されてきました...

    記事を読む
  • |ブログ|7 min read
    #netlify#Deno#サーバーレス#Edge

    Deno Deploy を基盤とする Netlify Edge Functions を試す

    Netlify では、AWS Lambda を利用したサーバーレス機能 Functions が従来から提供されていました。 Functions overview 今年の4月 Netlify Edge Functions ベータ版についての発表が Netlify と Deno からありました...

    記事を読む
  • |ブログ|3 min read
    #テスト#pairwise#pict#pictmaster

    ペアワイズ法をGUIから使いこなすツール「PictMaster」の紹介

    前々回、前回とペアワイズ法に関する情報を発信してきました。 今回は前回紹介したPICTをGUIから利用できるようにした便利ツールである「PictMaster」について紹介します。 PictMasterとは # 詳しくはPictMasterのサイトの説明を読んでいただくとして、PictMasterについて簡単にご説明します。 PictMasterはExcelベースのツールです。 Excel上で因子・水準等を設定するだけで簡単にPICTを操作して、結果をExcel表にして出力してくれます...

    記事を読む
  • ユニバーサルJavaScriptサーバーNitroをAWS Lambdaにデプロイする

    2022-04-19にハイブリッドVueフレームワークのNuxt3がRCバージョンになりました。 Announcing Nuxt 3 Release Candidate Nuxt3はVue3やTypeScript、Vite対応等の様々な改良・機能追加がありますが、大きな変更の1つにNitroエンジンの搭載があります。 Nitro Nitro自体はNuxtに依存するものではなく、Node.js上で動作する軽量・高速JavaScriptサーバーです...

    記事を読む
  • |ブログ|9 min read
    #リモートワーク環境

    豆蔵社員のリモートワーク環境ご紹介 その6 ピタゴラスイッチな切り替え

    はじめに # リモートワークになり自宅端末、業務用端末、開発用端末と複数のPCを使っている方も多いと思います。作業スペースを効率的に使うためにもキーボードやマウス、モニタを1つで済ませられないかを考えてみたものの会社から貸与されているPCはアプリのインストール禁止などの制約があるため、切り替えユーティリティソフトを入れられずどうしたものかと思われている方もいるかと思います。 そんな方に向けて自分なりにたどり着いたスペースは取らないが気がつけばピタゴラスイッチな切り替え環境を紹介したいと思います...

    記事を読む
  • |ブログ|16 min read
    #k8s#container

    Camunda Platform のモダンなプロセスオーケストレーター Zeebe による開発環境を構築する

    先日の、Tauri のアプリケーション開発の記事で BPMN モデリングのライブラリ bpmn.js を取り上げましたが、これは、Camunda というプロセスオーケストレーター製品を提供している会社の OSS でした。本記事では、Camunda のプロセスオーケストレーターのエンジンである Zeebe の概要と、ローカルの開発環境構築について記述します...

    記事を読む
  • |ブログ|3 min read
    #テスト#pairwise#pict

    ペアワイズ法による組み合わせテストケース生成ツール「PICT」の紹介

    先日のブログにて「ペアワイズ法」をご紹介しました。 その記事では組み合わせテストケースを作成する際に「PICT」というツールを使いました。 今回はペアワイズ法による組み合わせテストケース生成ツール「PICT」をご紹介いたします。 PICTとは # PICT (Pairwise Independent Combinatorial Testing tool) はMicrosoft社が開発したペアワイズ法による組み合わせテストケース生成ツールで、フリー(無償)で利用することが出来ます...

    記事を読む
  • |ブログ|17 min read
    #AWS#Security#k8s#container

    Secrets Store CSI DriverでKubernetesのシークレット情報を管理する

    以前に以下の記事で、Kubernetes上のアプリケーションのシークレット情報を暗号化してGit管理する方法をご紹介しました。 SealedSecretsでKubernetesコンテナのシークレット情報をGit管理する ここでは、KubernetesのSecretオブジェクトを暗号化されたSealedSecretオブジェクトに変換することで、シークレット情報を安全にGit管理しました。 ただし、より厳格な組織だと、専用の暗号化ストレージにシークレット情報を完全に分離する必要があったりします...

    記事を読む
  • |ブログ|5 min read
    #electron#vue

    Electron 製の非公式 Scrapbox アプリを式年遷宮した話

    昨年書いた「非公式 Scrapbox アプリを開発している話」の記事の最後に Electron のリリース速度が早まり、古いバージョンのサポート切れが容赦なくて追従するのが大変ではありますが・・。 と書いていましたが、その後、実際に追従できなくなりました。 Electron v14 から v15 にアップデートすると、ページ一覧画面でプライベートな Scrapbox プロジェクトを表示できなくなってしまいました...

    記事を読む
  • |ブログ|3 min read
    #GitHub

    GitHub Projects の Automated kanban で issue 管理を楽にする

    みなさんは GitHub Projects を活用しているでしょうか? issue は使ってるけど、Projects は使ってないという方も多いかもしれません。 issue をカンバンに並べて可視化するのは、チームの朝会などで進捗を確認したり、その場で issue を動かしたりできて便利です。 このスクリーンショットは豆蔵デベロッパーサイトのリポジトリの Project です。 To do / In progress / Done のセクションに issue がカードとして並んでいます...

    記事を読む
  • |ブログ|3 min read
    #テスト#pairwise#pict

    複数因子の組み合わせテストケースを簡単に効率よく導出する(ペアワイズ法)

    ソフトウェア品質を保証する上でテストは非常に重要な役割を果たします。 テストに工数を使えば使った分だけ効果を期待できますが、テストにかける工数を無限に大きくすることは出来ず、いかに効率良くテストを実施するかが課題になります。 テスト技術者はこれまで「少ないテスト工数で多くの欠陥を効率よく検出する」を考えてきました。 複数の因子が絡み合うテストの場合、テストケースの数が爆発的に増加します。 今回ご紹介する「ペアワイズ法」は効率的にテストケース数の削減に寄与してくれます...

    記事を読む
  • |ブログ|7 min read
    #npm#openapi-generator#GitHub

    npm モジュールを GitHub Actions で GitHub Packages にデプロイする

    庄司です。 GitHub Packages は、Docker イメージ、npm、Maven、NuGet、RubyGems などさまざまな言語で書かれたモジュール/パッケージを管理できます。 この記事では、OpenAPI Generator で生成した TypeScript モジュールを GitHub Actions を使って GitHub Packages にデプロイする方法を説明します...

    記事を読む
  • |ブログ|4 min read
    #vite#vue#AWS#code-artifact

    Vue3コンポーネントをnpmモジュールとしてAWS CodeArtifactにデプロイする

    Vue.jsのようなコンポーネントフレームワークを使ってある程度の規模の開発を進めていくと、作成するコンポーネントは膨大になってきます。 その結果、似たようなコンポーネントが乱立し、メンテナンスが難しい状況に陥るのはよくあることです。 この課題に対する有力な解決策は、再利用可能なコンポーネントをnpmモジュールとしてプライベートnpmレジストリに登録することです...

    記事を読む

豆蔵では共に高め合う仲間を募集しています!

recruit

具体的な採用情報はこちらからご覧いただけます。