見出し画像

社会人1年生エンジニアの今週の自学 #3(4/24~4/30)

こんにちは!どぎーです!
今週も「何を学ぶか」・「何を進めるか」を宣言していきます!

先週の振り返り

  • MUST

    • ✅ shibuya.apk 登壇準備(引き続き)

    • 😐 React Native アプリでフォーム画面の作成

    • ✅ Android 関連のお勉強(TODO: 後で書く)

  • WANT

    • 😭 AWS の Udemy 進める

shibuya.apk 登壇準備(引き続き)

shibuya.apk にて無事に発表を終えることができました😭
発表資料はこちらです👇

PC が Wi-Fi に接続されていないまま発表をスタートし、Google スライドに埋め込んでいた動画が再生されないハプニングが起きました😇
初々しさ全開の発表となりましたが、皆さん温かい雰囲気で聴いてくださり、すごく話しやすかったです。

また発表に興味をもって話しかけてくださったり、新しい繋がりを作れたのも楽しかったです。(これが狙いだったので目標達成です😆)

登壇に対する心理的ハードルがだいぶ下がったので、これからどんどん勉強会でアウトプットしていきます。

登壇資料はこちらのリポジトリに格納していきます!

React Native アプリでフォーム画面の作成

画面自体は完成したのですが、要素の z-index が期待通り動作せず、ドロップダウンメニューが他の要素に被って表示されてしまうというバグに悩まされています😇

こちらは今週も引き続き取り組んでいきます。

Android 関連のお勉強(状況整理・計画)

内省する時間を作り、今まで漠然としていた Android で「何を学んでいくか」・「何が自分に足りないか」を整理することができました。

「今までなんとなく使っていたもの」・「理解していなかったもの」の2カテゴリで整理しました。
整理した結果は以下の通りです。

  • 今までなんとなく使っていたもの

    • DI

    • Coroutines

    • Flow

    • 単体テスト

    • CI/CD

  • 理解していなかったもの

    • Material Design 3

    • KMM

こう整理すると結構多いですね💦

「今までなんとなく使っていたもの」に関してはどれも業務で必須の知識ですが、自分の「なんとなく度」と「業務で触る度」を考慮して優先順位を決め、順番に並べてみました。

また「理解していなかったもの」に関しては最近気になっているのに勉強できていなかったことをまとめました。

この結果からまずは DI, Coroutines, Flow を改めて学ぶことに決めました。

DI に関してはドキュメントを読み直しつつ、個人開発のアプリで実際のコードに落とし込んでいきます。

Coroutines, Flow は Mori さんの書籍を参照しつつ、実際にサンプルコードを書きながら学んでいきます。

Android の推奨アーキテクチャでは StateFlow や Flowを頻繁に扱っています。
なぜ StateFlow なのか、なぜ Flow なのかという疑問に現状パッと答えられないので、これらに答えられるようになることが目標です。
記事などを書いてアウトプットしていきます。

また先週から、デザイナーさん主催の Material Design 勉強会に参加しており、M3 のドキュメントを読み進めています。
現在は Components 周りを読んでいるのですが、そもそも M3 独自の概念(M2 と異なる Color System や Design Tokens など)の理解が足りていないことを痛感しています。
勉強会外でドキュメントを読んで概要を掴めるよう頑張ります😫

AWS の Udemy 進める

ノータッチです😇
勉強会への登壇も終了して精神的にも時間的にも余裕が生まれたので、さすがに今週のどぎーはやってくれるよね😘

microCMS とブログの繋ぎ込み(番外)

Next.js で共同開発しているブログに microCMS を繋ぎ込みました。

fetch という関数を使用して microCMS のエンドポイントを叩いています。
Next13からは { next: { revalidate: number } } というオプションを使用することで ISR を実現できるようです。(ドキュメントはこちら)

SSG や ISR といった Web フロントエンドの話題は個人的に興味があり、学んでいてすごく楽しいので、Next.js と一緒に深掘っていきます。

また今回で JavaScript の Promise や async/await を初めて使用し、理解が深まりました。
JavaScript の文法でまだまだ知らないことがあるなぁと思ったので、ざっと知らない文法を眺めようと思います。

今週の自学

ということで、今週はこんな感じで進めます!

  • MUST

    • React Native アプリでドロップダウンメニューのバグ解消

    • Android の個人開発アプリでネットワーク通信周りの DI を整理

    • ドメイン駆動設計入門の Chapter3(エンティティ)まで読む

    • AWS 練習用のプロジェクトのフロントエンド側の環境構築

    • AWS の Udemy 進める(学習計画を立てる)

  • WANT

    • デザインパターン入門のサンプルコードを Kotlin で書いてみる

      • Iterator

      • Adapter

    • 個人開発 Android アプリで Gradle Version Catalog, Renovate を導入

    • M3 のドキュメントを読み、概要を掴む


今週の雑談

ついにスタンディングデスクが届きました!

一緒に組み立ててくれた同期に感謝🥺
サムネイルの画像は組み立て後に食べたラーメンです笑

ずっと机が低く猫背になっていたので、適度に立って歌って踊って猫背を解消していきたいです🥳

またモーニングルーティンを設計し、生活リズムの改善を試みています。
ルーティンを無意識的に行えるようになってきたら、振り返りとして記事にしていきたいなぁと考えています。

それでは今週もよろしくお願いします!

この記事が気に入ったらサポートをしてみませんか?