Monthly Archive 9月 2018

mavenで開発ソースの雛形を作成

mavenのインストール

http://maven.apache.org/download.cgiにて以下の赤枠をクリックしインストーラを取得する。

 

.bash_profileの作成

touch .bash_profile を実行しファイルを作成する

.bash_profileの編集

export M3_HOME=/usr/local/apache-maven-3.0.5
M3=$M3_HOME/bin
export PATH=$M3:$PATH

と編集したあと、保存して以下の適用コマンドを実行
source ~/.bash_profile
無事コマンドが有効となりバージョン確認ができた。

雛形の作成

以下のコマンドを実行。参考サイト(http://www.techscore.com/tech/Java/ApacheJakarta/Maven/5/)

エラーが発生


原因はarchetype:createをarchetype:generateにしていなかった為
generateに変えて再実行したところ、無事に成功した事を確認

雛形が作成されている事を確認

雛形の構成は以下のとおり

eclipseにインポートする

mvnプロジェクトとしてインポートする(この際eclipse向けプロジェクトに変換される)

追加された

eclipseへResinを導入

Resinのインストール

Help->Install new Softwareを開き以下のURLを入力し、Resinを選択する。

サーバの設定

classpathが見つからないエラーが発生

原因は”Resin Home”にインストールしたResinのフォルダを設定していなかったため。以下のように設定すると次の画面に進めるようになった。

次画面にガンガン進み、無償で利用するためにメール登録もおこなった。

Resinがサーバビューに表示されるようになった。 

 

【備忘録】債権について

  • 債権とは
    商品やサービスを客先に渡した時に発生する、代金を回収する権利のこと。
    会計上では売掛金と呼ばれる。

BtoBの取引の場合、商品やサービスの納入と引き換えに現金で支払う事は稀で、一定の期間を経て後払い決済となる。いつ・いくら債権を回収するのか管理が必要となる。

与信管理
債権管理に含まれる。売り先に後払い決済をしても良いかを判定する業務・管理。

入金処理
債権が回収されたら入金処理を行い債権を「消し込む」業務を行う。

債権管理の必要性
①売ることを優先して、代金回収の見込みがない商品やサービスを納入。
②回収するのに、最初の見積もり以上の期間がかかってコスト増加
③売上が増えても収益が減少
債権管理は営業リスクを軽減する役割を持つ。

与信限度額
得意先の倒産に備えて、得意先ごとに定めた総債権額の上限の額。
原則として、これを超える取引はしない。

Swiftプログラミング UserDefaultを使ってみよう

今回はUserDefaultsを使ったデータの保存機能について解説をしていきます。本記事をマスターすると↓のように、クリックした回数を簡単に値受け渡しできるだけでなく、アプリを一度落としてもクリック回数を引き継いで呼び出すことができます。✌️

UserDefaultsとは

端末のローカルストレージを利用して、iOSアプリ内のデータを永続的に保存できるライブラリの一つです。アプリを停止させても保持しておきたいデータなどはUserDefaultsを使って保存することができます。

 

UserDefaultsの利用例

今回はSKSceneを用いて下の2画面を用意しました。FirstSceneの灰色部分のクリック回数をUserDefaultsを用いて保存し、ScoreSceneでも呼び出すアプリを実装していきましょう。

 

FirstSceneの処理

FirstSceneではクリック回数をカウントし、ScoreSceneに遷移するイベント時にカウント数をUserDefaultsを用いて保存してきます。

 

UserDefaultsを用いてデータ登録

touchesBganメソッドでは灰色部分のクリック回数を保持する変数scoreを、クリクされる度にインクリメントすると同時に、20~23行目でUserDefaultsを用いてローカルストレージに保存しています。

21行目では、保存する際には呼び出す際のキー値としては”score”を指定しています。

23行目では、ローカルストレージへ同期しています。同期化することによって、実際にローカルストレージへ値が保存されます。

ScoreSceneへの画面遷移

FirstSceneで画面下部のラベルをクリックするとScoreSceneへ遷移する処理も以下のように追記しておく。

ScoreSceneの処理

ScoreSceneでは、画面遷移後にローカルストレージからキー値”score”で取得できる値をラベルのテキストに表示している。また、画面中央のラベルをクリックすることで、ローカルストレージにキー値”score”で保存されている値を初期化する機能も実装する。

 

UserDefaultsを用いてデータ取得

didMoveメソッドでは、9行目でUserDefaultsを用いてローカルストレージから値を取得しています。取得する際にキー値”score”を指定する事によって、FirstSceneで保存された値を呼び出す事ができます。

呼び出した値を定数scoreに代入し、10行目でラベルの表示文字列を更新する際に利用しています。

 

保存データを初期化するボタンの実装

画面中央のラベルをクリックすると、キー値”score”で保存されているローカルストレージの値を0に更新する機能を22,23行目で実装しています。22行目のUserDefaults.standard.setメソッドはFirstSceneで利用している通りの利用方法です。

ここで、シミュレータを起動すると冒頭で挙げたようにデータの保存が可能になります。またクリックした回数の初期化もできるようになりました。

 

 

 

 

 

 

 

 

以上で、UserDefaultsを利用した永続的なデータ保存が可能となります。

付録:ソースコード

参考サイト

1.SKSceneの利用方法

Swiftプログラミング SKSceneによる画面遷移

2.swift:超初心者向け!UserDefaultsでデータ保存する!

ViewControllerも交えてUserDefaultsの解説がされてる良記事です!

 

Tags, , , , ,

アクティビティAppの新UIを考えてみた

先日twitterで面白いツイートが僕のもとに届きました。

アクティビティAppのUIにおいて、「100%越え」をどの様なアプローチで、実現しますか?
正直、アクティビティApp?と無知でしたので気になり調べてみました。
そして、もっと見やすい面白いUIは実現できないのか考察しました。

アクティビティAppとは

AppleWatchやiPhoneにデフォルトで搭載されているヘルスケア向けアプリケーションのようです。活動量等をリングのグラフを用いて自動で記録してくれるアプリです。

リングといわれる円形のチャートがによって達成度が一目でわかるUIになっていますよね。フォトジェニックを感じました。

リングのメリット/デメリット

より見やすいUIを考える為に、まずはリングで達成度を可視化されたアクティビティappのメリット・デメリットを挙げてみます。

メリット

・目標値に対して達成している割合が一目でわかる。
・100%を超えても達成度の割合をグラフ管理できる。
・AppleWatchでも管理できるほどスペースを取らないグラフ。

デメリット

・リングを2周目以降は、何周しているのかわかりづらい。
・リングなので達成度(0〜100)の数値までは入ってこない。

上記がリングによるメリット/デメリットだと思います。円グラフはよく使われているので、円状であるリングも見慣れやすいですね。

僕が考えてみた新UI

円状のリングよりも、角のある図形の方が達成度をより定量的に一目でわかるんじゃないかなと思って、以下の新UIを考えて見ました。

角があればあるほど、達成度の数値まで一目でわかる情報からかけ離れてしまうので、3~6角形ぐらいがちょうど良い気がします。それぞれの角までの達成度の割合も瞬時に判明できますよね。リングと同じく閉路されているので「100%越え」にも対応できます。

他にも閉路を用いたUIチャートはたくさん考えられると思います。こんなUIの方が面白いんじゃないかっていう意見ありましたら教えてください。コメントの方も宜しくお願いいたします。

Tags, , ,