すてき女性エンジニアへの道

日々の勉強ブログです。「技術で人の役に立つ、喜ばれる」女性エンジニアを目指してます✨その為の第一歩としてのブログです。成長する為にも、アドバイスなど頂けたらもの凄く喜びます。宜しくお願い致します🌸

勉強:例外処理

Javaの例外処理について。
基本的なこと復習。

 

【例外処理の目的】

例外に対する対処を行うことで、致命的になりうる状態からの回復を図る。

 

【try-catch-finally文】

try  処理の記述

catch  その対処(複数可能)

finally  最後に必ず行う処理(省略可能)

 

【throw文】

throws exception

例外を送出する

 

【例外クラス】

⭐︎Throwableクラス(最上位クラス)

ーErrorクラス(Throwableのサブクラス) -------> 捕捉の必要なし

ーExceptionクラス(Throwableのサブクラス) -------> 捕捉の必要あり

  ーRuntimeException -------> 捕捉しなくてよい(コンパイルエラーにならない)

勉強:C#とKotlinが一緒に使える??

だいぶ前の記事になっちゃうんですが、なんとC#とKotlinが大活躍!

JetBrains社の、
ReSharperIntelliJをベースにしたC#向けIDE「Rider」があるなんて!

 

さらに私が今はイチバン勉強したいKotlinと一緒に使用も可なんて◡̈♥︎

やはりなんとしてもKotlin勉強しなければならない!笑

 

参考サイト:

codezine.jp

www.jetbrains.com

勉強:Androidアプリ開発者が知っておくべきこと

Androidアプリエンジニアとして今のプロジェクトに参画して

よーやく、一本改修完了したものが出来ました(^ ^)

内心めっちゃ嬉しいです!!!!!!

 

改修している中で、スマホアプリ開発はどんな点を考慮して設計やコーディングを行わなければならないのか(今までがデスクトップのアプリばかりなので)特徴を知りたかったので、検索していたら見つかったのが以下のサイト⬇️

techbooster.jpn.org

参考にさせて頂きました!

10カ条的なもの。Androidディベロッパーサイトを参考に作成されてます。

1、データの保存
(意図していない中断でもデータがしっかり保存されている)

2、生のデータのままやりとりしない事 

3、ユーザーが違和感を覚えるような動作はしない、ユーザーの操作を妨げない

4、処理に時間がかかる場合はスレッドを使用する事

5、ひとつのActivityになんでも詰め込もうとしない事

6、全体的な調和を保つためにテーマを使用する事 

7、多解像度に対応させる事

8、通信速度が遅い場合でも必ず確認をする事

9、特定のハードウェアのみに依存しない事

10、バッテリーの消耗を考慮する事

 

スマホアプリ独自の観点、いくつかありますね。

改めて、設計もコーディングも全てユーザーに対する思い遣りだと思いました❇️

様々な面を考慮しているアプリに出会えたら心温まりそうです笑
そんなアプリを作れるようになります。

勉強:ジェネリクス

Javaジェネリクス!

C#で使ってたので、相違点だけわかれば

早いかなと思って調べました。

 

C#と違うところ>

・型パラメータのメソッドを宣言する時の位置の違い

オーバーロードに違いがでる

ジェネリックなコンストラクタがJavaでは宣言できる

ワイルドカード指定がJavaではできる

・実行時にジェネリックスの情報を取り扱えないので、パフォーマンスが若干Javaの方が劣ってしまう

  

使う時に細かく文法的なことは調べながら

上記の点に注意すれば使えそう☺︎⭐️

 

参考サイト:

ジェネリックプログラミング - Wikipedia

qiita.com

d.hatena.ne.jp

magicant.github.io

勉強:Androidのシェア

日本ではシェアの少なめなAndroid
世界規模だとシェアは7割。
(日本のちょーどiOSのシェアと一緒)
 
より影響力あるアプリ作れるのは
Androidですね^^
海外で活躍もしやすそう!
 
モチベーションに繋がります✨
 
参考サイト:

www.ai-bibo.net

ひとこと:今の環境がすばらしすぎる✨

はじめまして、まゆです。

このブログの管理人です☺︎

 

フリーランスエンジニアとしてご縁があり

Androidアプリ開発に携わらせて頂いてます。

 

今の恵まれた自分の環境に感謝の思いと戒めも込めて書きます。

 

働きやすさ最高

人も最高

技術的にも最高(色んな情報が入ってくる)

文句がないです笑

 

ホリスティックだし、自由でみんな生き生きして仕事をしています。

細かいことには拘らないし、何よりも効率や成果を重視しています。

色んな人がいます(化け物クラスのエンジニアさんがぞろり、他部署の方もワンフロアで一緒に仕事をしている。)。

なので色んな情報が入ってきます(最新の技術情報はもちろんのこと、この部署ではこんな仕事してるのか、こういう風に経営陣は考えるのか、マーケティングはこういう手法をとるのかなど、、、)。

飽きません。

 

今までは、官公庁系のトップダウンで、やり方が古くて、業務内容も変化に乏しい仕事をしていました。入ってくる情報も最新のものではないし、話す内容も同じプラットフォームや言語についての話題ばかり。。。

そしてみんな喋らない笑

暗い、狭い笑

だったので毎日が新鮮です。楽しいです!嬉しいです!

 

だからこそ、早く成長したいです。

悔しいですが今は何も還元できていない状態です

(付いていくのに必死、というか付いていけてるか微妙笑)。

 

絶対に早いスピードで成長します!!!!!!!!宣言⭐︎

どんどん出来ることはやっていきます。

 

そして同じAndroidアプリ開発者として現場にいらっしゃって、

全く自分にメリットが無いにもかかわらず

面倒を見てくださっている方がいます。

その優しさに頭があがりません。

絶対に早く人の役に立てるエンジニアになります。

 

早いスピードで技術力つけるしかないですね!!!!!!!!🔥

おっしゃ、やりまーす!

勉強:RecyclerViewのレイアウトを行ごとに変化させる

最終行のみ、 レイアウト変更させるのにはどうしたら良いのか....?

 

1.RecyclerViewの作成方法について復習

RecyclerView作成手順を振り返ります。

 

<手順>

※build.gradleファイルにライブラリの追加も忘れず

 

①RecyclerViewの配置

→レイアウトxmlファイルの修正

②RecyclerViewの1行分にあたるレイアウトの配置

→レイアウトxmlファイルの修正

③RecyclerViewを配置した画面の処理、初期化

→クリックイベントとりたいからリスナーの使用(onRecyclerClicked)

→RecyclerViewのRファイルより参照の取得(findViewById)

→レイアウトマネージャーの設定(setLayoutManager)

→作成したアダプターをRecyclerViewにセット!(setAdapter)

④アダプターのクラス設定(RecylerView.Adapter継承)

→要素の設定(setAdapter)
⑤ビューホルダーの設定(RecyclerView.ViewHolder継承)

→作成したビューホルダーを使用してレイアウトの指定(OnCreateViewHolder内)

→ビューホルダーとアダプターの連携(OnBindViewHolder)

 

②ぬけとった〜💦基本なのに。

静的にレイアウトを作成する方がメモリ食わない。

でも、動的に作成する方法も後で調べて見る。

 

2.レイアウトの変更へ

 getItemViewType でViewTypeを取得し、それによってレイアウト変化させる条件分岐作成。さらにアダプターにリストの値を突っ込む時に、コントロールのオブジェクトをそのまま入れてしまう。

 

参考サイト:

tech.vasily.jp

なかなか手こずりました、、、
意外にRecyclerViewの作成手順が頭に入ってなくて色々盲点でした。

ただ物凄く勉強になりました!次回からは問題なし!