NestJSに入門してみる(DI編)

前回の記事でNestJSに入門しました。 今回はその続きです。タイトルにある通りDIについて書いていきます。 DIとは その前に軽くDIについておさらいしておきます。 DIはDependency Injectionの略で日本語に訳すと依存性の注入です。 例を挙げると、 class Hog…

NestJSに入門してみる

タイトル通り、NestJSに入門してみます。 最近Nuxtのアップデート作業も落ち着いてきて次はTypeScript導入、というタイミングでバックエンドもTypeScriptで書けたら面白いかもと思ったのがきっかけです。 NestJSとは A progressive Node.js framework for bu…

『フロントエンド開発のためのテスト入門』

先日こちらの本を買いました。 https://www.amazon.co.jp/%E3%83%95%E3%83%AD%E3%83%B3%E3%83%88%E3%82%A8%E3%83%B3%E3%83%89%E9%96%8B%E7%99%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E3%83%86%E3%82%B9%E3%83%88%E5%85%A5%E9%96%80-%E4%BB%8A%E3%81%8B%E3%…

コーヒーのすすめ

今年のGWは皆様いかがお過ごしでしたでしょうか。 僕は例年よりも規則正しい生活を送ることができて明日からの仕事にも割とスムーズに戻れそうです。 とはいえ休みは終わってほしくないです。 今回は久しぶりにプライベートな記事です。 ハンドドリップコー…

フロントエンドのテスト

先日チーム内でフロントエンドのテストについての話になったので軽くまとめておきたいと思います。 テストの単位 フロントエンドのテストは大きく以下の4つに分けられると思います。 静的解析 単体テスト 結合テスト E2Eテスト 静的解析 ESLintによる静的解…

ブログで1年間アウトプットしてみた結果

タイトル通り、このブログを書き始めてから1年が経過しました。 スマレジでは週1回(1年経過後は2週に1回)ブログで発信することでもらえるブログ手当という制度があるのですが、当初は完全にそれ目的でした。 が、良い副作用が結構あったと感じているので今…

Nuxt3&Vue3アップデートで地味に詰まったところ

最近は細々したタスクを担当しつつ、もっぱらNuxtのアップデート作業に従事しています。 で、色々やっているうちにちょこちょこ知見も溜まってきたのでそれらをまとめてみようと思います。 変数の値 Vueのcomputedよく使うと思います。 例えばVue2までのOpti…

『ちいさくはじめるデザインシステム』

先日こちらの本が出版されたので早速買いました。 www.amazon.co.jp SmartHRが公開しているSmartHR Design Systemを立ち上げた背景やその構築・運用までどのように考えて作られたのかがまとめられている1冊です。 現在在籍しているチームでもUIコンポーネン…

エンジニア文化祭

先日開催されたエンジニア文化祭に参加しました。 と言っても当日は普通に平日だったのでアーカイブでの視聴となりました。 まだ全部見たわけではないのですが、大変勉強になる講演がたくさんあったので箇条書きですがざっくり書いてみます。 視聴した講演と…

最近欲しいもの

久しぶりにプライベートな話題の記事です。 他にも書きたい内容はあるんですが、まだちょっと整理できていないのでそちらは次回以降に。 今回はタイトル通り最近欲しいものをただただ羅列していくだけの記事です。 物欲が止まらない今日この頃、欲望が尽きる…

『マイクロフロントエンド』

先日こんな本を買いました。 www.oreilly.co.jp オライリーから出版された「マイクロフロントエンド」という本です。 今日はこちらの本について書いていきたいと思います。 マイクロフロントエンドとは マイクロフロントエンドという言葉自体、耳馴染みが無…

Next.jsでmarkdownを使う

引き続きNext.jsをちまちまいじっています。 このブログを移行することを取り急ぎの目標にして作成中です。 ブログなのでmarkdown使えるようにしたら色々楽だろうということで今週その辺りを作っていました。 markdown関連のライブラリ markdownをHTMLに変換…

Nuxt3 (Vue3)の変更点をまとめてみた(Plugins, Composables, Composition API)

ここのところはReactの記事を書いていましたが、最近業務でNuxt3へのアップデートを行っているのでその備忘録も兼ねてまとめていきたいと思います。 大きく分けてPlugins, Composables, Composition APIについて。 Plugins Nuxtでは自作の関数や外部パッケー…

「はじめての設計をやり抜くための本」

先日こんな本を買いました。 はじめての設計をやり抜くための本 第2版 概念モデリングからアプリケーション、データベース、アーキテクチャ設計、アジャイル開発まで | 吉原 庄三郎 |本 | 通販 | Amazon まだまだ設計についての知識は足りてないなと感じる部…

React Hooks その2

前回の記事で基本的なReact Hooksについて復習しました。 今回はその続きとなります。 useReducer useReducerはuseStateと同じく状態管理を行うためのHookです。 以下のような構文になっております。 const [state, dispatch] = useReducer(reducer, initial…

React Hooks

先日、Next.jsを勉強していきたいと書きましたがそれ以前にReactがちゃんと使いこなせないとそもそもNext.jsの恩恵も受けられないので復習していきます。 Reactそのものをしっかり扱ったことは今までなく、昔React NativeでiOSアプリを作ろうとしていた時に…

スマレジの良いとこまとめてみた

年始の記事で書いた通り、スマレジに入社して1年が経ちました。 ので、今回は技術的なことから少し離れて、改めてスマレジに入社して良かったと思う点を挙げてみたいと思います。 誰に頼まれたわけでもないですが勝手にPR記事です。 先に断っておくと、以下…

Kotlin (Ktor & Docker)でHello Worldしてみる

先日書いた通り、今年はKotlinに挑戦してみます。 その第一歩としてとりあえずHello Worldしてみるところから始めてみました。 今回はKtorを使ってみることにします。 Ktor KtorはKotlinを開発しているJetBrains社製のWebフレームワークです。 Ktor自体もKot…

2023年やってみたいこと

あけましておめでとうございます。今年もよろしくお願いいたします。 今日から仕事初めでした。ちょうど1年前が初出社の日でしたので感慨深いです。 新年なので今年チャレンジしてみようと思っていることをつらつら書いてみます。 Kotlinで何か作る エンジニ…

2022年のまとめ

昨日で2022年の仕事納めをしました。 最終週にまさかの胃腸炎に罹り、火曜水曜と2日も休んでしまうトラブルはありましたが、無事〆ることができて良かったです。 というわけで今回は2022年の振り返りです。 転職して1年 今年の1月1日付でスマレジに入社した…

Svelteを使ってブラウザゲームを作りました

タイトルの通り、ここのところ記事にしていたSvelteを使ってブラウザ上で動く簡単なゲームを作りました。 ので、今日はそれについて書いていきます。 どんなゲーム? こちらです。 numnam.net Numnam(ナムナム)という名前です。名前は響きだけで決めました…

TypeScriptに入門してみる

前回、前々回とSvelteについての記事を書きました。 せっかくなのでTypeScriptも併せて導入してみようということでまとめてみようと思います。 TypeScriptとは TypeScriptはMicrosoftが開発したプログラミング言語です。 いわゆるAltJSと言われるプログラミ…

Svelteの基本的な書き方

前回の記事でSvelteの概要について触れたので今回は具体的な書き方について書いていきます。 Svelteの構文 Svelteのコンポーネントはhoge.svelteというファイル名になります。.svelteが拡張子です。 前回、ボタンをクリックするごとに数値がインクリメントす…

Svelteに入門してみる

先日のフロントエンドカンファレンス沖縄で興味が湧いたのでSvelteを触ってみたいと思います。 Svelteとは Svelteは2016年に最初のバージョンが公開されたフロントエンドのフレームワークです。 Reactが2013年、Vueが2014年なので後発のフレームワークになり…

Nuxt Bridge

以前Nuxt3での変更点についての記事を書きました。 あれから5ヶ月以上が経過し、先日遂にNuxt3が正式リリースされました。 担当しているプロダクトでVue3及びNuxt3へのアップデート対応を行う話も進んできました。 Nuxt2からNuxt3への移行ツールとして公式か…

フロントエンドカンファレンス沖縄にオンラインで参加しました

昨日開催されたフロントエンドカンファレンス沖縄にオンラインで参加しました。 フレームワークやUI/UX等、Webフロントエンド開発に関わる全ての人を対象としたカンファレンスでエンジニア・デザイナー問わず楽しめる内容でした。 今回は現地参加枠とオンラ…

新潟旅行記

月に一度のプライベートな内容の記事です。 先日新潟に行ってきたのでその模様を。 新潟は今まで行ったことがなく、これからの季節美味いものは日本海側だろうということで行ってきました。 伊丹空港から新潟空港までちょうど1時間程で到着しました。 機内か…

環境の違いについて

今回は先日遭遇したトラブルについて書いていきます。 トラブルの概要 とある機能を実装⇒ステージング環境に反映し動作確認もOK⇒「これ本番だと上手く行かないよ」と指摘が入る ということがありました。 なぜ起きたかと言うと、ステージング環境と本番環境…

OAuth2.0のざっくりしたまとめ

Webアプリケーションを作ったり使ったりする上で認証・認可の仕組みはほぼ必須の要素になっていると思います。 その中でも今回はOAuthについてまとめてみます。 そもそも認証・認可とは 混同しがちですが、認証と認可は異なります。 認証(Authentication)…

API設計について

前回までのOpenAPIの話の流れでAPI設計について整理してみたいと思います。 REST (RESTful) Webアプリケーション上でAPIを設計する際、ほぼ必ずと言っていいほどREST APIについての説明がセットになると思います。 RESTとはREpresentational State Transfer…