dev blog

プログラミングめも

Go言語|Basics

Go言語の基礎メモ。 関数 func add(x int, y int) int { return x + y } 引数の型が同じ場合は、最後の引数の型だけ書いてもOK。 func add(x, y int) int { return x + y } 関数の中では、 var 宣言の代わりに := の代入文を使って暗黙的な型宣言ができる。 …

C#|bit全探索

bit全探索の備忘録です。 bit全探索とは N個のものからいくつか選び取るパターンを全列挙するための手法です。 N個のものからいくつか選び取るパターンは2N通りあるので、3個のものからいくつか選びとるパターンは、23通り=8通りとなります。 ※1個も選ばない…

Nuxt.js|SSRのライフサイクル

Nuxt.jsのSSRとCSRのライフサイクルがよく分からず、検証してみたので備忘録として残しておきます。 今回使用しているバージョンはNuxt 2.12です。 SSRとCSR サーバーサイドレンダリング(SSR)とは、サーバー側でHTMLを描画してブラウザに直接表示する手法で…

JavaScript|getterとsetter

getterとsetterの備忘録です。 オブジェクトについておさらい オブジェクトは、プロパティの集まりです。 プロパティとは、name: 'John'といった名前(キー)と値のセットのことです。 プロパティの値には、データだけではなく関数も定義できます。この関数…

アルゴリズム|計算量

最近AtCoderを始めたので、計算量と実行時間についての備忘録です。 サンプルのコードはC#で書いています。 オーダー記法 このような式の計算量をオーダー記法で表現するとO(N²)となります。 3N²+3N+3 下記の手順で計算量を求めます。 まず係数を省略する…

Vue.js|スロット

Vue.jsのスロットの使い方の備忘録です。 スロットとは 複数のページで同じデザイン部品を使いたいとき、一つの子コンポーネントを使い回すことがよくありますが、スロットを使うとこの子コンポーネントの中に親コンポーネント側のコードを埋め込むことがで…

C#|再帰関数

再帰関数の備忘録です。 階乗を求める再帰関数を書いてみます。 そもそも階乗とは nの階乗は、1からnまでのすべての整数の積です。 n!のようにあらわします。 例えば、5の階乗はこんな感じです。 5! = 1 * 2 * 3 * 4 * 5 // 120 まずはfor文で 比較のために…

Vue.js|IME確定前の日本語入力値をバインディングする

IME確定前の日本語入力値をバインディングしたくて試行錯誤したので備忘録を残しておきます。 v-modelは日本語入力中の値がバインディングできない Vue.jsでフォームの入力値をバインディングする場合、v-modelを使うことが多いかと思います。でもv-modelを…