NMP

元は心理学を専攻する大学院生でしたが、この春中退しました。フラフラしている中で、自分の…

NMP

元は心理学を専攻する大学院生でしたが、この春中退しました。フラフラしている中で、自分の手に職をつけたいと思い、一念発起し、プログラマーとしての就職を目指し、fjordbootcampで6月から勉強中です。日々の勉強内容などを投稿します💪

記事一覧

wcコマンド作成6 構造化が7割ほど完了

今日の学習内容・課題の進捗- `Formatter`、`Command`クラスの構造化が完了しました。しかし、標準入力に関する処理を改善するために`File`クラスの修正が必要になりました…

NMP
5年前
1

wcコマンド作成5 構造化に取り組む💪

今日の学習内容・課題の進捗- wcコマンドの構造化に取り組みました(20%くらい)。 学んだことを具体的に- 今まで、自分でメソッドを作成する際には引数1つしか取らないもの…

NMP
5年前

他の方のlsコマンドのコードを読む 学習記録12日目

今日の学習内容・課題の進捗- lsコマンド課題で学んだことをnoteにまとめました。 - 他の方のlsコマンドのコードを読みました(4名ほど)。 学んだことを具体的に- `send`メ…

NMP
5年前
1

「Rubyでlsコマンドを作る」課題で学んだこと

昨日、fjordbootcampの「Rubyでlsコマンドを作成する」というプラクティスが何とか、完了できたので、そこで学んだことをまとめます。 1. メソッドがどのクラスに使えるの…

NMP
5年前
1

プログラミングを学び始めてから、368時間(71日)が経過しました‼️

私がfjordbootcamapに入って、プログラミングを学び始めてから、368時間(71日)が経過しました。「なんで、400時間とか300時間とか区切りのいいときに書かないんだよ😡」と…

NMP
5年前
1

wcコマンド作成3 total表示、オプションのベタ書き完了 学習記録11日目

今日の学習内容・課題の進捗- total表示の実装が完了しました。 - オプションの実装が完了しました。 - 標準入力を受け取る処理の実装に取り組みました(途中)。 学んだこ…

NMP
5年前
1

wcコマンド作成2 学習記録10日目

今日の学習内容・課題の進捗- lsコマンド課題の修正(ファイル名とスクリーンショットの内容の修正)をしました(完了)。 - wcコマンド作成に取り組みました(まだかかりそうで…

NMP
5年前

wcコマンド作成1 学習記録9日目

今日の学習内容・課題の進捗- lsコマンドの提出物の修正を少し行いました。 - wcコマンドの作成に取り掛かりました(まだまだかかりそうです)。 学んだことを具体的に- `F…

NMP
5年前

lsコマンド作成28 第1回目提出🔥 学習記録8日目

今日の学習内容・課題の進捗- リーダブルコードを読んで学んだことを[note](https://note.mu/nmp300/n/n3131ee61011)にまとめました。 - lsコマンドの第一回目の提出をしま…

NMP
5年前

『リーダブルコード』について、学んだことをまとめました

rubyでlsコマンドを作成する課題で、コードを一通り書き終えることができたので、リファクタリングをするために Dustin Boswell・Trevor Foucher著『リーダブルコード』を…

NMP
5年前
2

lsコマンド作成27 構造化がついに完了😆 学習記録7日目

今日の学習内容・課題の進捗- `Command`クラスの構造化を完了し、全てのクラスの構造化が完了しました。 - リーダブルコードを読みました(5割くらい) 学んだことを具体…

NMP
5年前
1

lsコマンド作成24日目 SingleColumunPrinterクラスの構造化が完了 学習記録6日目

今日の学習内容・課題の進捗- `SingleColumunPrinter`クラスの構造化を行いました(完了)。 - `Command`クラスの構造化を行いました(途中、あと2、3日くらいかかりそう…

NMP
5年前

lsコマンド作成24 Fileクラス、MultipleColumnPrinterクラスの構造化が完了 学習記録5日目

今日の学習内容・課題の進捗- メソッドの定義の見直しつつ、構造化に取り組んでいます(5割くらいの進捗?) 学んだことを具体的に- `initialize`メソッドはオブジェクトを…

NMP
5年前
1

lsコマンド作成 23日目 構造化に取り組む 学習記録4日目

今日の学習内容・課題の進捗- 今まで、必要なファイルのデータは全て配列に格納していましたが、ファイル名をキーとし、ファイルデータをvlueとしたハッシュに格納した方が…

NMP
5年前

lsコマンド作成21日目 構造化にチャレンジ 学習記録4日目

今日の学習内容・課題の進捗- クラス図を実際に書いてみました。 - lsコマンドの構造化に取り組みました(完了はまだまだ先になりそうです)。 学んだことを具体的に- シ…

NMP
5年前
1

lsコマンド作成21 オブジェクト志向設計実践ガイドを読む 学習記録3日目

今日の学習内容・課題の進捗- オブジェクト志向設計実践ガイドを読む - オブジェクト志向設計実践ガイドについて、学んだことをnoteにまとめました。 - VSnotesをインスト…

NMP
5年前

wcコマンド作成6 構造化が7割ほど完了

今日の学習内容・課題の進捗- `Formatter`、`Command`クラスの構造化が完了しました。しかし、標準入力に関する処理を改善するために`File`クラスの修正が必要になりました。

学んだ感想中々しっくりくる構造が実現できずに、時間がかかってしました💦構造化とリファクタリングに関しては考えだすとどこまでも考えてしまいそうなので、自分の中で、ある程度の目標を立てて取り組んだ方が良いと考

もっとみる

wcコマンド作成5 構造化に取り組む💪

今日の学習内容・課題の進捗- wcコマンドの構造化に取り組みました(20%くらい)。

学んだことを具体的に- 今まで、自分でメソッドを作成する際には引数1つしか取らないものだけを作っていたことに気づきました。引数を複数にすることで、もっと自由なメソッドを作成することができると実感しました🤩

学んだ感想ベタ書きは完了して構造化に取り組みましたが、lsコマンド課題よりもより良いコードと構造化を行

もっとみる

他の方のlsコマンドのコードを読む 学習記録12日目

今日の学習内容・課題の進捗- lsコマンド課題で学んだことをnoteにまとめました。
- 他の方のlsコマンドのコードを読みました(4名ほど)。

学んだことを具体的に- `send`メソッドは、メソッドの名前を引数にして呼び出し、そのメソッドの実行結果を返します。
- `Struct.new`は、Struct クラスに新しいサブクラスを作って、それを返します。

学んだ感想他の方のlsコマンド課

もっとみる

「Rubyでlsコマンドを作る」課題で学んだこと

昨日、fjordbootcampの「Rubyでlsコマンドを作成する」というプラクティスが何とか、完了できたので、そこで学んだことをまとめます。

1. メソッドがどのクラスに使えるのか、何のクラスのオブジェクトを返すのかを把握しておくことが重要私が第一に詰まった点は、`NoMethodError`でした。以下のようなエラーが返されて意味が分からなかったということです。

NoMethodErro

もっとみる

プログラミングを学び始めてから、368時間(71日)が経過しました‼️

私がfjordbootcamapに入って、プログラミングを学び始めてから、368時間(71日)が経過しました。「なんで、400時間とか300時間とか区切りのいいときに書かないんだよ😡」と思われる方もいると思います。

しかし、今日ようやく私にとって難関だった「rubyでlsコマンドを作る」という課題のOKをもらえたので、記念として書かせてください🙇‍♂️何を書くかというと、368時間学んでみて

もっとみる

wcコマンド作成3 total表示、オプションのベタ書き完了 学習記録11日目

今日の学習内容・課題の進捗- total表示の実装が完了しました。
- オプションの実装が完了しました。
- 標準入力を受け取る処理の実装に取り組みました(途中)。

学んだことを具体的に- 標準入力を受け取れるようにするには、`$stdin.gets`、`$stdin.readlines`などで実現できます。
- 文字列クラスの空白を除いて表示させるには、`strip`メソッドを使うことで実現す

もっとみる

wcコマンド作成2 学習記録10日目

今日の学習内容・課題の進捗- lsコマンド課題の修正(ファイル名とスクリーンショットの内容の修正)をしました(完了)。
- wcコマンド作成に取り組みました(まだかかりそうです)。
 - 行数、単語数、バイト数を取ってくることは完了しました。
 - total表示はまだ途中です(表示の微調整が必要)

学んだことを具体的に- wcコマンドの単語数は空白での区切りを1単語として数えます。

学んだ感

もっとみる

wcコマンド作成1 学習記録9日目

今日の学習内容・課題の進捗- lsコマンドの提出物の修正を少し行いました。
- wcコマンドの作成に取り掛かりました(まだまだかかりそうです)。

学んだことを具体的に- `File.open(ファイル名)`メソッドはファイルを開くことができます。

- `IO.#read`メソッドは標準入力を指定したところまで読み込むことができます。また、`IO.#readline`メソッドは行単位で読み込むこ

もっとみる

lsコマンド作成28 第1回目提出🔥 学習記録8日目

今日の学習内容・課題の進捗- リーダブルコードを読んで学んだことを[note](https://note.mu/nmp300/n/n3131ee61011)にまとめました。
- lsコマンドの第一回目の提出をしました😆
- wcコマンド作成の下調べを行いました。

学んだことを具体的に- 読みやすいコードを書くためには、リーダブルコードを読むだけではダメで、実際に取り組んでみる必要があります。そ

もっとみる

『リーダブルコード』について、学んだことをまとめました

rubyでlsコマンドを作成する課題で、コードを一通り書き終えることができたので、リファクタリングをするために Dustin Boswell・Trevor Foucher著『リーダブルコード』を読みました。

自分なりの簡単な要約良いコードとは読み手が理解するのにかかる時間が少ないコードです。そのようなコードを書く段階として、表面上の改善(コメント、コードのリファクタリング)、ロジック・ループの改

もっとみる

lsコマンド作成27 構造化がついに完了😆 学習記録7日目

今日の学習内容・課題の進捗- `Command`クラスの構造化を完了し、全てのクラスの構造化が完了しました。
- リーダブルコードを読みました(5割くらい)

学んだことを具体的に- トップレベルのクラスを参照するときは、`::File.lstat`とすればできます。。「チェリー本8章より」今回の場合だと、`LS::File`クラスと組み込みライブラリの`File`クラスの名前が一緒だったことがあ

もっとみる

lsコマンド作成24日目 SingleColumunPrinterクラスの構造化が完了 学習記録6日目


今日の学習内容・課題の進捗- `SingleColumunPrinter`クラスの構造化を行いました(完了)。
- `Command`クラスの構造化を行いました(途中、あと2、3日くらいかかりそう)。

学んだことを具体的に- ハッシュのバリューだけを返すには`values`を使います。

学んだ感想構造化の作業も残すところ`Command`クラスだけとなりました。しかし、自分の中で、他のクラ

もっとみる

lsコマンド作成24 Fileクラス、MultipleColumnPrinterクラスの構造化が完了 学習記録5日目

今日の学習内容・課題の進捗- メソッドの定義の見直しつつ、構造化に取り組んでいます(5割くらいの進捗?)

学んだことを具体的に- `initialize`メソッドはオブジェクトを生成した時に必ず実行されます。なので、必ず実行してほしい処理を定義することができます。

学んだ感想ほんの少しですが、クラスの扱いについて慣れてきたような気がしています。まだまだ未熟なコードですが、完成に近づきつつあるコ

もっとみる

lsコマンド作成 23日目 構造化に取り組む 学習記録4日目

今日の学習内容・課題の進捗- 今まで、必要なファイルのデータは全て配列に格納していましたが、ファイル名をキーとし、ファイルデータをvlueとしたハッシュに格納した方が、`-a`オプションでドットファイルの操作を行うときに操作しやすいと考え、ハッシュに格納しました。
- メソッドの定義の見直しをしつつ、クラス化に取り組んでいます(まだまだ途中)。

学んだことを具体的に- `[[key],[val]

もっとみる

lsコマンド作成21日目 構造化にチャレンジ 学習記録4日目

今日の学習内容・課題の進捗- クラス図を実際に書いてみました。
- lsコマンドの構造化に取り組みました(完了はまだまだ先になりそうです)。

学んだことを具体的に- シーケンス図とは
> 処理の内容をライフライン間のやりとりを時間軸に沿って表現した図のことを言います。ライフラインとはクラスやオブジェクト、コンポーネントなどの事です。

- クラス図とは
> クラス図は一言で表すと、システムの静的

もっとみる

lsコマンド作成21 オブジェクト志向設計実践ガイドを読む 学習記録3日目

今日の学習内容・課題の進捗- オブジェクト志向設計実践ガイドを読む
- オブジェクト志向設計実践ガイドについて、学んだことをnoteにまとめました。
- VSnotesをインストールしてみました。

学んだことを具体的にソフトウェアは変化するものであり、その変化にかかるコストを限りなく少なくすることが設計の意味です。
- クラスに2つ以上の責任を持たせない。
- 拡張には開けており、修正には閉じて

もっとみる