TypeScriptで可変長引数関数を使う
argumentsは型安全ではない
argumentsは型安全ではないため、以下のコードのtotalとnはいずれもanyになります。
const sum = function(){return Array.from(argumen ...
論理的凝集のサンプルを考えてみた
凝集度の論理的凝集の例
以下の getProductDetail は商品の名前と価格を返す関数です。
apple: 100
const getProductDetail = (product) => { cons ...
テストを手動でやるのと自動でやるのでどちらがコストが高いか
テストを自動化できたら便利ですが、テストコードのメンテナンスが必要なのでその分コストがかかります。
Experiences of Test Automation という本によると、4回目のテストが逆転する分岐になるようです ...
TypeScript サブタイプについて
A <: B は、AはBのサブタイプである、と言う意味である。
この場合、Bを期待するところでAを使うことができる。
以下の例であてはめると、TreeNodeがBでLeafNodeがAになる。
ty ...
16Personalities性格診断テストをやってみて
よくあたると言われている をやってみました。
結果は論理学者でした。
たしかに理屈っぽいのであっていると思います。
10分程度でできるのでぜひ試してみてはいかがでしょうか。
マリーゴールドはコンパニオンプランツ
マリーゴールドは春から秋にかけての長い期間花を咲かせてくれますが、虫除けにもなるのでコンパニオンプランツとしても強力です。
私の菜園にもトマトが植えられていますが、トマトの両脇にマリーゴールドが植っています。
...
My Strange Code#4 関数のパラメータの改善と関数の抽出(JavaScript)
自分が過去に書いたコードを見返してみておかしなコードを直してみます。
今回のコードは以下です。
const setSearchParam = (current, object) => { let result ...
My Strange Code#3 責務の分離と例外処理(JavaScript)
自分が過去に書いたコードを見返してみておかしなコードを直してみます。
今回のコードは以下です。
const isRetailDept = (list, deptID) => { try { let target ...
正しく動いているのにバグがあるという話
システムを開発していると、タイトルのような奇妙な出来事がおきます。
そして、それは往々にして厄介な問題です。
どういうことかというと、バグっているおかげで見た目上は正しく動いていたと言うケースです。
booleanの変数はisXXXにする
hightUserという変数をみて、どういった値がこの変数に割り当てられるのかは困難です。
hightUser = ‘1’ というようなコード値hightUser = {name: ” ...