アラサーからのプログラマー生活

アラサーの新米PGが必死に頑張る成長記録です。あとは旅行とか。

もうすぐ職業訓練も修了です

おはようございます、堀井です。
6/1に入校した職業訓練校も8/29の午前まで、つまりあと2日間と半分で修了することになりました。

今日はこの、長いようで短く感じたこの訓練期間をのんびり振り返ろうと思います。


6月から7月半ば〜C言語

入校したらしばらくはパソコンとは何だ?と言うものを学びました。

  • ハードウェアとソフトウェアの違い
  • 2進数と8進数と10進数と16進数の存在意義や、変換方法
  • フローチャートは考えをまとめるときに便利だよ、と言うこと

この頃はプログラム一切関係ありませんね。


その後はXCodeを用いたC言語の勉強でした。

  • 「"Hello World!"を書いてみよう」 printfって何?
  • 「scanf("%d, &suuti"); の"&"はとりあえず付けておいてね」 なんで??

そんなことをやっていたと思います。
勿論今は"&"をつける理由は分かります。用意したメモリのアドレスに値を書き込んでいるからです。文字列を読み取る際には&は必要ありません。
と学ぶもののscanfやgetsはメモリ破壊の危険性を孕んでいるため基本的には使われません。
そもそもC言語自体が機械言語に近いだけあってエンドユーザーはほとんど標準文字列処理を行わないような・・・。


そして1ヶ月半の集大成として作られる五目並べゲーム。
コンソールゲームですね。
【C言語】二次元配列とポインタについて - ひとまずは無職による求職者のためのブログ の記事で書いた内容をそのまま、五目並べの盤面出力として使いました。


この時点で1ヵ月半経ちました。
サーティファイ2級の勉強もこの辺りだったと記憶しています。
結果は88点で無事合格でした。もうちょっと取れると思っていたら文字列関数がボロボロでした。


7月半ばから8月半ば〜Swift

今度はSwiftを勉強します - ひとまずは無職による求職者のためのブログ の記事で書いて以降、全くカテゴリーに音沙汰がないのでSwiftの勉強は捨てたのではないかと思われるかもしれませんが、純粋にオブジェクト指向が難しくてまとめられないのです。
ただまとめてくれとのお声をいただいております・・・。すまぬ・・・すまぬ・・・。

オブジェクト指向は巨大なプログラムを書くときに便利なものです。
同じクラスを持ったインスタンスの生成が非常に簡単なので、ゲームで例えると同じステータスを持ったモンスターを用意することが非常に簡単になります。
またほぼ全てのオブジェクト指向言語では対応していると思われます*1が、クラスの継承も便利ですね。
ちなみにゲームで例えると、
親クラス:モンスター
モンスターの子クラス:スライム、ドラキー など
スライムの子クラス:メタルスライムホイミスライム など
としておくと、例えばメタルスライムはスライムが使える行動(メソッド)は全て継承されます。
そのため特に何をすることもなく同じ行動をすることができる上、追加で"逃げる"コマンドや"魔法"コマンドを使えるようにできます。

そんな便利なオブジェクト指向ですが特に"カプセル化"の考え方が非常に重要となります。
これは他のクラスからは値を好き勝手触れなくすることができるようになるため、保守性を高めることを期待できるシステムです。
これによって「全スライムの最大HPを10倍にしてしまった!」なんて意図しないバグを防ぐことができます。

と言う感じでいいでしょうか。
この考え方は人気の高い言語であるC#Javaをはじめとして様々な言語に使われている考え方です。そのため入社試験時の面接では「オブジェクト指向はできるか?」とう質問をされることもあるそうですね。


8月半ばから〜アプリ開発

Swiftを使ってiPhoneアプリの制作に入りました。
基本的にはSingleViewを用いてLabel, Button, ImageViewと言った単純なUIの設定とそれに対する動作を書いたりしました。
例えばじゃんけんをして勝敗を返すだけのアプリや、入力した値に対して計算を行い結果を返すアプリ、などを作ることができました。

画面推移のあるsegueとか、音を鳴らすためのImport AVFondationフレームワークが用意しているAVAudioPlayerオブジェクトを用意するなど、そう言ったことも勉強はしましたが、駆け足での説明に加え就職活動で席を外すことがしばしばあったためしっかり理解できたとは言い難いです。


そして現在

そして先日、ジョブカード3-3-1-1の職業能力証明シートをいただきました。これが訓練における成績表、集大成となります。
雇用型訓練におけるジョブ・カード様式3-3-1-1職業能力証明(訓練成果・実務成果)シート(企業実習・OJT用)の活用について
自分がどれだけ頑張ってくることができたかの証明なので感慨深いですね。柄にもなくグッと来てしまいました。

ちなみにジョブカードに関してはこちらの記事で説明がありますので、ご参考ください。

あとは就職活動です。
幸い私は内々定をいただけましたのでそちらに就職しようとは思います。
もし就職が決まらなかった方は毎週1回の就職活動の状況と成果の報告、毎月1回のキャリアコンサルティングも行われると言う至れり尽くせりなフォローをしていただけます*2
感想ですが、職業訓練を受けようかどうかを迷っている方がいらっしゃいましたら、ぜひオススメします。
説明会には沢山行って、結果どこに行くかは沢山悩んでほしいと思います。


最後に

湿っぽいことを書いていますがまだまだブログは続ける予定です。
ただそれに伴い10月から無職ではなくなるのでタイトルも変えようと思いますが、変わらずご愛顧ください。

それではまた次回。

*1:例えばExcelVBAもオブジェクト指向が使えます。カプセル化は対応していますがクラスの継承やポリモーフィズムには非対応です

*2:自分の通っている訓練校だからこその手厚さかもしれませんが、就職フォローはまず間違いなくあります