独自クラスをUserDefaultsで保存するには[Swift]

独自クラスを作成し、それをUserDefautsに保存してデータを永続化したい場合、シリアライズする必要があります。

 

シリアライズ・・・オブジェクトの内容をバイナリに変換すること

 

iOSにはシリアライズ、デシリアライズのためのクラスが用意されています。

それぞれ、NSKeyedArchiverクラスとNSKeyedUnarchiverクラスです。

知りあらず処理を実行することで、オブジェクトはシリアライズされたデータを扱うことのできるData型に変換されます。

伴侶となる書籍を買いました。

f:id:team_ikeike_app:20170605011527j:plain

SBクリエイティブ:はじめてのAndroidプログラミング

 

お疲れ様です。イケイケ担当横山です。

今週もイケイケな週末を過ごしました。

 

転勤によってだいぶ更新が開いてしまいましたが、落ち着いてきたのでこれからバンバン更新していきます。端的にまとめていきます。

 

今週は本を買いました。超初心者でも大丈夫、とこんな機能を使ってこういうふうにアプリを作ろう、が乗っているので選択しました。

本当に良かったかはこれから更新していきます。

 

とりあえず、現状、平日は調査、休日は実装のはずが、平日は疲れて寝る、休日に調査(本を買うだけ)になっているので、せめて休日に実装していきたいと思います。

今週はエミュが重すぎて使えない問題があるので、平日はその調査に当てます。

 

ということで、具体的にコミットしました。スモールスタートでもやめないことが大切だと思います。ゆるやかに進んでいくのでこれからもよろしくお願いします。

 

 

iOSでデータを扱う方法

swift学習中 team_ikeike_app 穂積です。

 

今日は、iOSアプリでデータを永続化する仕組みについて学習したので要点をまとめておきます。

 

iOSアプリで最も気軽に利用できる永続化の仕組み:NSUserDefaults

NSUserDefaultsは、永続化の仕組みであり、「key=value形式」でデータを保存することが可能で、

実装の際のコード量も少なく便利です。

この形式で保存したデータはローカルストレージのアプリ内部にplist形式で保存されます。

*plistの実体はxml

 

NSUserDefaultsの処理速度は非常に高速。毎回上述のplistに直にアクセスするのではなく、ファイルの内容をメモリに読み込んでおき、

それをアプリが参照する形式だからです。超便利ですね!

*このように一時的にメモリに値を保存して利用する形式をキャッシュと呼びます。

f:id:team_ikeike_app:20170527155513p:plain

 

f:id:team_ikeike_app:20170527160414j:plain

このようにして、データの永続化が可能です。

ただ、NSUserDefaultsはアプリ起動時にメモリにデータを読み込むため、あまり大量のデータを扱うとアプリ起動が遅くなります。

そのためNSUserDefaultsで扱うのは軽量なものに止めるよう注意しましょう!!

*参考書籍*

本気ではじめるiPhoneアプリ作り Xcode 7.x+Swift 2.x対応 黒帯エンジニアがしっかり教える基本テクニック (ヤフー黒帯シリーズ)

project・task管理にJootoを採用

team_ikeike_app 穂積です。

 

team_ikeike_appでは、チームのタスク管理にJootoを採用しています。

90000ユーザーが使っている、今話題のタスク管理ツールです。

www.jooto.com

 

会社ではRedMineを利用していますが、Jootoでのタスク管理の方が

タスクをより楽しくできます。

こんな感じです。

f:id:team_ikeike_app:20170520204409p:plain

今日の活動予定

team_ikeike_app 穂積です。

今日の活動予定をあらかじめコミットしておきます。

 

今日はイケイケ担当横山さんと共に渋谷にあるfabCafeにてとりあえず動くアプリを実装しています。

fabCafeはwifiがあり、道玄坂の上の方にあり落ち着いているため

ちょっとした作業をするのに最適です。

 

fabcafe.com

 

横山さんは何か食べてました。

 f:id:team_ikeike_app:20170520182539j:plain


今日の目標

穂積:計算機アプリの実装・toDoアプリの実装(本に沿って)

横山:追加・削除のできるリストの実装

 

以上を目標に取り組みます。

 

アプリで小さな幸せを

f:id:team_ikeike_app:20170518094906j:plain 

team_ikeike_app 穂積です。

 

イケイケなアプリで

人々の日々に小さな幸せを届けたい

と願っています。

 

ただ便利なだけのアプリを作りたいのではなく、人の五感に響くようなそんなアプリを提供していく予定です(内容はまだ秘密です)

 

さて、私は今の会社に入る前は関西を母体とするパンメーカーに勤めていました。

関西ではよく親しまれているメーカーで、子どもの頃からそこの菓子パンを食べて育ちました。

母がよくその会社の8個入りのパンを買って来てくれるのですが

私は三人兄弟で、朝早く起きた2人が3つ、遅かった1人が2つパンを食べれました。

そのパンが大好きだったので私はいつも早起きして3つ食べる権利を勝ち取っていました。

 

『早起きして1つ多く大好きなパンを食べれる』

こんな些細なことでも私は夜、翌朝が楽しみで朝には幸せを感じていました。

 

このような経験から、その会社に入って

大好きなパンを色々なスーパーやコンビニに置くことで多くの人にも同じような幸せを感じてほしいと思っていました。

 

前置きが長くなりましたが、

私はこのチームで、そんな小さな幸せを届けていけるようなアプリを開発し提供したいと強く想っています。

 

そんな想いのこもったアプリを届けます!!