2019-01-01から1年間の記事一覧

readlineのバージョンが上がってたでござるの巻き

ちょっと必要があってpsqlを使おうとしたら... $ heroku pg:psql --> Connecting to postgresql-round-81223 dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib Referenced from: /usr/local/bin/psql Reason: image not foun な…

Swift WKWebView、JSを利用したネイティブアプリ内で完結させるスクレイピング

サーバを持ちたくなくてネイティブアプリ側で外部サイトのHTMLをスクレイピング完結したい場合。 WKWebViewでページ取得するのが手取り早い。要はWKWebViewが読み込んだHTMLをスクレイピングしてしまおうという作戦。 ちなみに実験的に検証しただけなのでsto…

マイクロサービスのデプロイをどう迅速にするかの解説:マイクロサービスアーキテクチャ感想(3)

第6章 デプロイ デプロイについての章。 CIについて デプロイ先のアーキテクチャ environmentについて が解説されている。 テストがあってこそのCI ビルドが期待通りに振る舞っているかは、テストがあってこそ。テストがないCIはCIではないと本書では警鐘を…

ユーザが操作しやすいフォームとは?:インタフェースデザインのお約束(4)

第5章 フォーム フォームについて。ユーザが使いやすいフォームとはどういうものか。 少ない操作で完了。やり直しを少なくを考える。 入力フィールドについて 例えマーケティング等で有用なデータであっても、そのファンクション内で必要のない情報は入力さ…

DB分割というアンタッチャブルに踏み込む:マイクロサービスアーキテクチャ(2)

第5章 モノリスの分割 第4章 統合では分割されている各マイクロサービス同士をどう統合していくかに焦点を当てていたが、今回は「どうマイクロサービスに分けていくか」の話し。 データベースの分割 データベースの分割。いきなり核心をついてきた。 多分、…

読了:iOSアプリ開発 自動テストの教科書

iOSアプリ開発 自動テストの教科書 そういえば読み終えていた。メモと感想をば。 僕自身のテストコードについての経験値はRailsのminitestで単体テストや統合テストを書いてるよ。みたいな感じ。GithubにpushするとCirecleCIでテストを回すというところまで…

インタフェースデザインのお約束(3)

4章 UI部品 UI部品、主にコントロール要素についての注意点などの紹介。 標準コントロールの利用を心がけよう デバイス、ブラウザ標準のコントロールを利用することが、結局はユーザは一番わかりやすいし、操作しやすい。 我流のコントロール、例えば独自の…

Mac Keynoteでテキストにアウトラインをつける

対象のテキストを選択して、 フォーマット - テキスト - スタイル - 歯車アイコンから ちなみに明るい色でシャドウをつけると文字が光っているように見える。 これは、ぼかし30、オフセット0、不透明度100で黄色っぽい色でシャドウを入れた例。

マイクロサービスアーキテクチャ(1)

マイクロサービスアーキテクチャ とりあえず統合の章まで読んだので感想 & メモ 動機 モノリシックなシステムからマイクロサービス化を検討することは誰しも経験したことがあると思う。 動機としては、 システムが大きくなるにつれ、人員も増えたが作業のコ…

Unity 入門書の復習

Unityの入門書を一冊写経したので、復習の為、忘れそうなことなどを記録。 背景色の変更 Main Camera.Camera.Background スクリプトファイル 実行するには必ず何らかのGameObjectにアタッチする必要がある。 プロパティ、メソッドをpublic宣言することで、ヒ…

インタフェースデザインのお約束(2)

3章 アイコンやボタン アイコンのスタイルは統一する 統一感のあるassetsを使用しようという話し。 古いデバイスのアイコンについて 所謂、フロッピーディスク = 保存アイコンについて。 逆に新しい表現、例えばクラウド上に保存(アップロード)する場合はク…

GRDB.swiftの生SQL発行とマイグレーション

GRDB.swiftの生SQL発行とmigrationを試したのでメモ。 Swiftでカジュアルに生SQLでSQLiteの操作したいんだけど、GRDB.swift入れるしかなないのかなあ...Androidはめっちゃ簡単なんだけどなあ。— Fumiya Ichikawa (@LET__IT__RIDE) December 15, 2019 github.…

ストーリーボードを使わないTableViewの配置とカスタムCellの高さ自動調整

以前にもTableViewCellの高さ自動調整について書いたけど、今度はStoryboard、autolayoutを使わずにSwiftコードだけでやってみた。 www.letitride.jp いくつかの手順に分けて紹介していきます。 カスタムセルクラスの作成 例として、UILabelを配置したカスタ…

インタフェースデザインのお約束(1)

良いUXでデザインとなるルールやコツを101の小節で紹介している書籍。 とても読みやすく、また文章量も適度なサイズなので隙間の時間に読み進めています。 リンク 2章 文字と言葉 書体、サイズについて 書体は2種類にとどめるべき。その理由。 書体を変える…

「レベルアップ」のゲームデザイン(4)(終)

LEVEL6 カメラについて 固定カメラ 固定カメラの利点と欠点について。 古いイメージがあるが初期のバイオハザードなど雰囲気を演出できる利点などがある。 スクロールカメラ スクロールカメラの効果と注意事項。 カメラの加減速を誤るとプレイヤーのストレス…

「レベルアップ」のゲームデザイン(3)

LEVEL6 キャラクターについて 外見の設定方法 「ゲームデザイン」に合わせる。その理由について。 体型で個性を表現できる可能性について。シルエットでキャラクターを判別できるゲームもある。 キャラクターの性格 ユーモア系キャラクターの性格付時のポイ…

「レベルアップ」のゲームデザイン(2)

リンク LEVEL3 ストーリーについての章節。 ストーリーとゲーム上の物語 テトリスなどストーリーがないゲームも存在する。但し、テトリスをプレイしたことによって得られた体験はユーザとして「物語」となる。ユーザは「あの時ああすれば良かった」など物語…

Swift QRコードの作成

ネット上に沢山あるんだけど、一応メモしておく。 文字列からQR化したCiImageを返すメソッド private func makeQRCode( str:String )->CIImage?{ let data = str.data(using: .utf8) let qr = CIFilter(name: "CIQRCodeGenerator", parameters: ["inputMessa…

Swift TextLabelの縦書き表示とその編集

リンク 名刺レイアウトのような縦書きにTextLabelを対応させたい時。 色々試した結果、TTTAttributedLabelというライブラリを利用するのが楽そう。 github.com podのインストール Podfileに pod 'TTTAttributedLabel' の後、 pod install すればよい。 実装…

読了 データ指向アプリケーションデザイン

データ指向アプリケーションデザインを読み終えたので個人的な感想。 リンク まず書籍の冒頭にTwitterのフォロー、フォロワーのソーシャルデータベースについて触れられてあったので、永遠の課題、タイムラインの表示について、そのアプローチの解説を期待し…

「レベルアップ」のゲームデザイン(1)

リンク LEVEL1 1章ではゲームとは?の定義とゲームジャンルの種類、ゲーム製作に関わる人たちと役目のことをパブリッシャー側まで解説している。 ゲームとは? 1人以上のプレイヤーがいる ルールがある 勝利条件がある LEVEL2 アイデアについての章節。 アイ…

iPhone用Todoアプリを公開しました

appstoreにiPhone用のTodoアプリを公開しました。 Todo with LocationYoshiko IchikawaProductivityFreeapps.apple.com 何故今更Todoかというと、今年の夏頃に1日のうちに複数の場所に用事があることがあって、移動先のすべてが地図上で一眼で確認できるも…

Swift5 QRリーダーの実装 脳死コピペ用

概要 Swift5でQRコードを読み込んだので作業記録。 ググれば沢山の記事がヒットするんだけど、どれもViewControllerに結構な量のコードが記載されているので、コピペするには結構しんどい(笑) なので、コピペしやすいようにクラスファイルに落としましたとさ…

Swift weakプロパティを持つUIViewControllerを再利用する時は注意しよう

Swift weakプロパティを持つUIViewControllerを再利用する時は注意しよう。という話し。 概要 Storyboardからoutlet接続されたViewを持つUIViewControllerを再利用しようとした時、outlet接続されたプロパティがnilになる時があります。 再利用されるViewCon…

Swift PageViewControllerの両端タップのジェスチャーを無効にする

概要 PageViewControllerはデフォルトで左右のスワイプの他、View両端のタップも検知し、befor、afterメソッドを着火している。 スワイプのみ検知し、View両端のタップは無効とするよう処理を施す。 実装 PageViewControllerに登録されているUITapGestureRec…

Swift MapKitのマーカーカラーを外部からのステータスによって変更する

概要 MapKit Annotationのマーカーカラーをannotationの状態によって変更する。 MKPointAnnotationでは、マーカー座標、タイトル、サブタイトルの指定しか行えないので、MKPinAnnotationView、MKMarkerAnnotationViewを使用する。 MKPointAnnotationの拡張ク…

Android nendの本番広告設定にハマる

nendの広告枠の承認を頂いたので、Androidアプリに設定を行っていた。 SDKの組み込み自体はマニュアルを見ながら簡単に行え、テストAdの表示まで順調に完了できた。 ところが、本番用のapikeyとspot idに差し替えてみたところ、広告表示が行われない... で、…

Android WebViewの広告表示を制限する

概要 WebViewでロードしたページの広告表示を制限する Hacking up an ad blocker for Android | Ha Duy Trung’s Blog こちらのページを参考に実装を行った。 ミュートする広告配信ホスト一覧の取得 https://sites.google.com/site/hosts2ch/ja より日本国内…

Swift Date型からString型へ

いつも忘れるのでメモ。 let date = Date() formatter.dateFormat = "MM/dd HH:mm" string = formatter.string(from: date)

YouTube 打ち切り学会

最近、YouTubeの打ち切り学会チャンネルにハマっている。 少年漫画、稀に少女漫画の早期連載終了した漫画を集めて、辛辣かつ暖かく?解説しているYouTubeチャンネルだ。 www.youtube.com チャンネル主は解説と共に、少年ジャンプでのスポーツ漫画、急に始ま…