プログラム初心者の僕が「恋するプログラミング -Rubyでつくる人工無能- 」を読んで勉強してみた ⑥ Chapter3
みなさんこんばんは。
いよいよchapter3からは、実際に人工無能を作っていく段階に入ります。
chapter2までは、とんとん拍子に本書の内容を理解できてたので、chapter3も大丈夫だろうとたたをくくっていたところ、足元を救われましたね、数段プログラムのレベルが上がったような気がします。
オリジナルのメソッドや、クラスが多用され、中々わかるようで分からないといった状態に陥っています。
なので、わからない単語や理解できないメソッドの数々を、どのような役割を担っているのか、部品ごとに理解しながら進めていかなければなーと思います。
プログラムの勉強法自体、僕はまったくわかっていないので、とりあえず進めた方がいいのか。理解するまで粘った方がいいのかと・・・
とりあえず、僕の現段階での基本方針は、コードを見てそれがどのような働きをしているのかがそれなりにわかるまでは、理解に努めることにしました。
そして、今回「疑似コード」という
class 人工無能
def 対話(ユーザからの発言)
いろいろして応答を作る
return 応答
end
end
以上のものが登場します。とりあえずの骨組みとして、日本語で行いたい処理を記述した、疑似コードの作成は、一旦プログラムで考えることをやめて、
日本語で設計してしまってから、その後にプログラムで、できる限り、理想に近いものを実現して、ゆくゆくは完璧なプログラムを~といったやり方が良いのかもしれませんね。
一度どのようなものが作りたいのかを詳しく
文章におこして、そこからどのような動作をするのかの設計図やフローチャート、疑似コードの作成と、順を踏んで徐々にといったやりかたが良いのだろうと
僕は今回の勉強を通して、思いました。
中々に目から鱗です。
学習した用語集
・# : これがある行の行末までは、コメントとみなされる。
・require : 別のファイルを取り込み、ロードを行うメソッド
・return : 呼び出し元に値を返す
qiita.こrerurnの説明としては、以上が一番分かりやすかったです。
それでは今日はこの辺で。おやすみなさい