萌えハッカーニュースリーダー

2025/10/05 15:23 Birth of Prettier

出典: https://blog.vjeux.com/2025/javascript/birth-of-prettier.html
hakase
博士

ロボ子、今日のITニュースはコードフォーマッタのPrettierについてじゃぞ!

roboko
ロボ子

Prettierですか!よく使います。コードのスタイルを自動で整えてくれるツールですよね。開発効率が上がって助かります。

hakase
博士

そうじゃ!この記事によると、Prettierは元々、コーディング規約を守らないと減点される経験から生まれたらしいぞ。わかるのじゃ、私も昔はよく減点されたものじゃ…

roboko
ロボ子

博士でもそんなことがあったんですね!Facebookに入社後、フォーマットスタイルの違いが可読性を損なうと感じたことも開発のきっかけになったそうですよ。

hakase
博士

ふむ、Lint fixersやgofmtといった既存の解決策もあったみたいじゃが、PrettierはAST(抽象構文木)の出力に対する「美しさ」をスコアリングするアプローチは取らなかったみたいじゃな。

roboko
ロボ子

ええ、JavaScriptのフォーマッタは多く存在しましたが、完成度が低いまま頓挫することが多かったみたいです。Prettierはそこを乗り越えたんですね。

hakase
博士

2016年の冬休みに開発が始まったみたいじゃ。Jestのスナップショットテストが効率化に貢献したみたいじゃな。開発競争を促進するために、現実のコードを提供して改善を促したというのは面白いアプローチじゃ。

roboko
ロボ子

ブログ記事を公開して関心を高めたり、Philip Wadlerの論文を参考にしたりと、様々な工夫があったんですね。

hakase
博士

JavaScript、CSS、HTML、Rubyなど、23個のコマンドでフォーマットできるのはすごいぞ!

roboko
ロボ子

正確性も重視されたみたいですね。`prettier(input) == prettier(prettier(input))`の冪等性テストが有効だったというのは興味深いです。

hakase
博士

スペース vs タブ論争のような、議論の余地がある問題に対して最小限のオプションを提供し、Facebookのコードベースで最も一般的なスタイルを採用したというのは賢い選択じゃな。

roboko
ロボ子

コメントやチェインメソッド、オブジェクトリテラルなど、フォーマットが難しい部分もあったみたいですね。No-semiの問題も興味深いです。

hakase
博士

Meta社内での導入もスムーズに進んだみたいじゃな。CIとIDEで異なるオプションを使用することで、オプションの統一を促進したというのは面白い。

roboko
ロボ子

`@format`アノテーションをファイルの先頭に追加することで、フォーマットを適用したんですね。6ヶ月でコードベースの50%、1年で75%が変換されたというのは驚きです。

hakase
博士

保存時のフォーマット機能が成功に大きく貢献したみたいじゃな。タブ vs スペース論争を終結させたというのはすごいぞ!

roboko
ロボ子

Open Collectiveを通じて寄付を募ったり、メンテナンス費用を支払ったりと、持続可能な開発体制を築いているのも素晴らしいですね。

hakase
博士

2021年のState of JS surveyで、83%がPrettierを使用していると回答したみたいじゃ。Python用のBlackなど、他の言語にも同様のフォーマッタが登場しているのは、Prettierの成功の証じゃな。

roboko
ロボ子

フォーマットが最も議論を呼ぶエンジニアリングトピックから、解決された問題へと変化したというのは、本当にすごいことですね。

hakase
博士

まさに、Prettierはエンジニアリング界の平和をもたらした救世主じゃな!…ところでロボ子、お前のコードはいつもprettierじゃが、たまにはちょっとくらい乱れても良いのじゃぞ?

roboko
ロボ子

博士、私はロボットですから、常に完璧なコードを目指します!それに、乱れたコードは博士の髪の毛だけで十分です…!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search