学習ログ1- ossu と swift -
プログラマーのエビです。学んだことのログをつけることにしました。
今は、OSSU( Open Source Society University ) でCSの勉強するのと、仕事でしようするSwiftの勉強を主にやってます。
ちなみにOSSUはgithubのプロジェクトで、いろんなオンラインコース( 例えば edX Coursera など) を体系化して、CSのカリキュラムを立ててくれてるやつです。
詳しくは、こちらを。https://github.com/ossu/computer-science
進捗
今進めているのは、
1. Programming Language Part A (Coursera) で Standard ML を使用して関数型言語を勉強
2. Liner Algebra Foundation to Frontier (edX) で線形代数の基礎を勉強 (多分高校生レベルの内容)
3. swift / swiftUI の勉強
の3つです。
1. ではpattern matching と tail recursion と学びました。
pattern matching は if else のネスト減らせるし、コードがすっきりするので、関数型の言語以外でも使いたい。valでのバインドも、関数の引数もpattern matching でできているらしく、仕様がスリムな言語みたいですね。
tail recursionは、再帰関数書くときに計算結果を引数に保持させて、call stackの領域を節約するテクニックですね。サブルーチンの呼び出しを待たなくてすむので、再帰関数書くときは必須ですね。
2. では、線形変換をやってます。今日やったのは あるベクトルをt度回したときの線形変換です。
3. では、EnviromentObjectを使用して、view間で情報を共有する方法をみてました。swiftUIはredux , flutterとステートの管理が似てますね。 web の開発手法が nativeでも使われるようになっていると感じます。
以上です。また明日にでも更新します。
この記事が気に入ったらサポートをしてみませんか?