アウトプットを頑張る

初めてのプログラミング学習期間中の記録と、日頃読んでいる本をメモのアウトプットをがんばります。

【プログラミング学習】プログラミング言語 Ruby 基礎3

■プログラミング学習

f:id:yuma6128:20210720211953j:plain

◎ハッシュ

前回学んだ配列の場合は複数の性質が異なる値が管理が複雑になる。
そのために、「データ」とそれに対応する「名前」を管理する。
ハッシュを学んだ。
生成するためには、下記のような宣言が必要。
```
変数 = {データ1 => 名前1,データ2 => 名前2,データ3 => 名前3}
```
宣言時には「: コロン」を用いることが多い。
```
fruits = {:name => "Apple"}

fruits = {name :"Apple"} #よく使用される
```
ハッシュに対して、追加、値の取得、値の変更などが出来る。
・追加
ハッシュ[追加するキー] = 値

・値の取得
ハッシュ[取得したい値のキー]

・値の変更
ハッシュ[変更したい値のキー] = 値

最終的には、ハッシュと配列を組み合わせて管理することにより
まとまりとしての管理がとてもしやすくなる。

```
fruits = [] #配列
fruits << {name:"apple" , color:"red"} ハッシュ
fruits << {name:"grape" , color:"purple"}ハッシュ
fruits << {name:"peach" , color:"pink"}ハッシュ
puts = fruits  #全部出てくる
puts = fruits[1][:name] #grape 
```
が出てくるはず。。

配列、ハッシュというのが理解をできればより見やすくなると感じて学んでいた。
宣言記号を見間違えてしまうのと区別があまり出来ていなかったが
行列で考えて整理、見ていくと整理ができるようになった。

◎条件分岐処理

比較演算子で条件が正しいかどうかによって、返し値
true /falseで戻してくれる。
if (文)条件式の書き方としては、下記の通り。
```
if 条件式
 処理
end
```

else(if文)
```
if 条件式
 #条件式がtrueのときに実行する処理
else
 #条件式がfalseのときに実行する処理
end
```

elsif (if文)
```
if 条件式 1
 #条件式がtrueのときに実行する処理
elsif 条件式 2
 #条件式1がfalseのときかつ
  条件式2がtrueのときに実行する処理
elsif
 #条件式1と2がどちらともfalseのときに実行する処理
end
```

このあたりはエクセルのアンケート集計でVlookupを使っていて、
なんとなく入ってきやすいところもあった。
ただ、プログラム言語に置き換えたりするのが、
まだ慣れていなくワークなどを進めて理解を深めていった

■読書

9割の社会問題はビジネスで解決できるというボーダレスグループ代表田口様の著作。
会社の姿勢として、社会問題の解決にしか取り組まないという姿勢を聞いて、自分の仕事が社会に対しての影響というのを改めて考えるきっかけになりました。
自分のやっている仕事は社会のどの部分に役立っているのか、誰かの役に立っているのだろうかと考え直しました。
プログラミング学習を始めたきっかけとしても他者貢献をしたいという思いから学習を始め、はじめは世の中に使えないサービスになるかもしれないが、無料で使えて便利になるサービスを作っていけたらと考えています。
本書の中では、社会起業家たちの熱い思いや取り組みの内容、ビジネスモデルの考えかたシートの配布など、とても良い内容の本でした。
個人的にはボーダレスグループに入り、一人でも多くの社会起業家を増やすことに取り組んでいきたいと感じた1冊でした。