リファクタリングが失敗する一番大きな原因
私がリファクタリングが失敗する一番の原因だと思うのは、テストコードがない状態でリファクタリングをすることです。
テストコードがない状態でリファクタリングをすることはかなり難しいです。
テストコードはテストをする ...
関数のパラメータを少なくするときの考え方
以下のようにパラメータ数がやたらと多い関数は理解がしづらいです。
const hoge = (size, type, message, options) => {//do something}可能であれば、パラメータ ...
記憶力がないことがエンジニアとしてメリットに感じたこと
私はあまり記憶力が良い方ではないので、システムの仕様とかなんでこのコードを書いたのかとかをよく忘れます。
普通はそれはデメリットになるのですが、最近メリットを見つけることができました。
自分が書いたコードって、 ...
コードにコメントを書く前に考えてみること
複雑なプログラムを書いていると、ついコメントで内容を補足したくなります。
コメントを書くこと自体が悪いわけではないですが、コメントは実装と乖離してしまうと逆に誤解を招いてしまうというデメリットがあります。
でき ...
リファクタリングするときに気をつけること
リファクタリング対象が巨大であればあるほど、想定通りに動かない可能性が高くなります。
そして、動かなくなったときにどの辺りが原因なのかを特定することが難しくなります。
結果とし ...
コードレビュー時に気をつけること
命名が適切か
変数のスコープが広すぎないか
ファイルの行数が多すぎないか
処理の責務が適切か
実装とコメントに解離がないか
undefinedやnullになる ...
!value のようなコードはお勧めしない理由
!value のようなコードを使う時はよく考える必要があると思っています。
if(!value){//do something}このコードで、具体的にvalueがどういう時にifの処理を行いたいのでしょうか。
...
Webページをつくるときに気にするとよいレイヤーの話
Webページには以下の3つのレイヤーがあるとされています。
コンテンツ(HTML)プレゼンテーション(CSS)
ふるまい(JavaScript)
これらのレイヤーは境界がはっきりしていると良いとされてい ...
プログラミングの命名とゴミ箱の話
プログラミングをする上で変数・クラス・関数の命名は非常に重要です。
はじめの命名でその処理の運命が決まってしまいます。
例えば日常で言うと、「ゴミ箱」という箱があった場合に、人はなんでも捨ててしまいます。
Puppeteerを使って簡単に自動でサイトのスクリーンショットを保存してみる
PuppeteerはブラウザのChromeをプログラムから動かすことができるNode.jsのライブラリです。
今回はPuppeteerを使って、Googleのトップ画面のスクリーンショットを保存してみます。
インスト ...









