11
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ナイーブソリューションとは何か

Posted at

#リーダブルコードを読み始める
リーダブルコードの書籍を購入し、読んでいると知らない言葉に出会った。

例えば、「ヒューリスティック」・「ブルートフォース」・「ナイーブソリューション」などがそうだ。コメントが長くてくどいと感じたら、こうした表現を使えないか確かめよう。

この文章がでてきた背景には、情報密度の高い言葉を使おうという内容で、多くの意味を含んだ言葉や表現を使う事で、プログラムのコメントを読みやすくしようという事が狙いとなっている。そのアイデアとして、上記のアドバイスがされていた。

#naïve(ナイーブ)とは
naïveという言葉は、「世間知らず」や「単純」、「無邪気」といった意味があります。
英語で、naïveと打つと、iの上に点が2つ表記されます。これは、フランス語が語源の為みたいです。このフランス語のnaïveには、純粋や素直といったポジティブな意味と、世間知らずといったネガティブな意味の両方が含まれているそうです。
そしてNaïveには、芸術分野において、単純、無邪気、技巧を凝らさないといった意味があります。

#ナイーブソリューションとは
美しい(分かりやすい)コーディングを目指す事において、プログラミングも芸術であると思います。
となると、ナイーブソリューションのニュアンスとしては、単純で素朴な解決策という事でしょうか。
あるサイトには、「経験豊かなプログラマーが最初に浮かぶシンプルな解決策」を意味する専門用語とありました。
その方はさらに、「経験の浅いプログラマーは、その単純な解決策を受け入れよう。その単純な解決策に欠点が無いと思うのであれば、複雑な解決方法はおすすめしない」というアドバイスまで。

#まとめ
単純な方法で解決できないか考えてみて、その手法では実現できない事が分かったら別の方法を考えてみる。

11
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?