JavaScript, プログラミング入門

JestはデフォルトではECMAScript Modulesをサポートしていないため、import/export文を使いたい場合はbabelを使用してCommonJsに変換する必要がありました。

Googleで検索すると、 ...

JavaScript, プログラミング入門

process.on('uncaughtException', (err) => { console.error(err.stack) console.error("予期せぬエラー")})

プログラミング入門, リファクタリング

長くて理解が難しいコードを関数やメソッドに切り出すことはとても重要なことです。

しかし、どのような場合に切り出すかは人それぞれで、判断が難しいこともあります。

私なりの基準ですが、一行一行読まないと目的が分から ...

プログラミング入門

私がリファクタリングが失敗する一番の原因だと思うのは、テストコードがない状態でリファクタリングをすることです。

テストコードがない状態でリファクタリングをすることはかなり難しいです。

テストコードはテストをする ...

JavaScript, プログラミング入門

以下のようにパラメータ数がやたらと多い関数は理解がしづらいです。

const hoge = (size, type, message, options) => {//do something}

可能であれば、パラメータ ...

プログラミング入門

私はあまり記憶力が良い方ではないので、システムの仕様とかなんでこのコードを書いたのかとかをよく忘れます。

普通はそれはデメリットになるのですが、最近メリットを見つけることができました。

自分が書いたコードって、 ...

プログラミング入門, リファクタリング

複雑なプログラムを書いていると、ついコメントで内容を補足したくなります。

コメントを書くこと自体が悪いわけではないですが、コメントは実装と乖離してしまうと逆に誤解を招いてしまうというデメリットがあります。

でき ...

プログラミング入門, リファクタリング

巨大なコードを一気にやろうとしない

リファクタリング対象が巨大であればあるほど、想定通りに動かない可能性が高くなります。

そして、動かなくなったときにどの辺りが原因なのかを特定することが難しくなります。

結果とし ...

コードレビュー, プログラミング入門

メソッド、関数が長すぎないか。分割できないか
命名が適切か
変数のスコープが広すぎないか
ファイルの行数が多すぎないか
処理の責務が適切か
実装とコメントに解離がないか
undefinedやnullになる ...

JavaScript, プログラミング入門

!value のようなコードを使う時はよく考える必要があると思っています。

if(!value){//do something}

このコードで、具体的にvalueがどういう時にifの処理を行いたいのでしょうか。

...