上記勉強会ををニコ生で視聴させて頂いたので、メモを残しておきます。 クリーンアーキテクチャしたい、クリーンアーキテクチャしたくない? メモ クリーンアーキテクチャ、メリットデメリットあるけど良かったよという話。 合わせて確認したいページ 初めて…
最近はGitKrakenを使ってgit操作をしています。 GitKrakenにはcommit前の変更を全て取り消す Discard all changes という機能があります。 内部的にはgit checkoutを実行しているのでしょうか。 詳しく調べていませんが、GitKraken以外のGUIアプリでも実装さ…
Androidオールスターズ2に参加したので、簡単なレポートとメモを残しておきます。 AndroidのCIを始めよう レポート AndroidのIDEがAndroid Studioになり、Gradleでビルドしている。 Gradleではビルドスクリプトが用意されている。 CIにはビルドスクリプトが…
sealed class を when でパターンマッチした際に、想定外の挙動をしていたのでいろいろ検証してみました。 網羅チェック 網羅チェックが動きそうで動かなかったケース ビルドエラーになりません。 sealed class Event { class Insert: Event() class Update:…
標題のサンプルが見つからなかったので作りました。 github.com このコードを元に、第3回Kotlin勉強会 @ Sansan - connpassでLTしてきたのですが、 #Kotlin_Sansan enumならviewTypeはordinal で良いんじゃないかなと https://t.co/GXweUTSK7s— Satoru Fuji…
Androidアプリ開発でFragmentを使用した際に画面の上下左右に余白が出来てしまいました。 こちらのページに記載されている通り、 res/values/dimens.xml の設定を下記の通り変更することで余白が消えました。 <dimen name="activity_horizontal_margin">0dp</dimen> <dimen name="activity_vertical_margin">0dp</dimen> デフォルトでは 0dp のところに 16dp が…
Android ではSDKの指定がいろいろあり、それぞれについて紹介します。 Minimum Required SDK アプリがサポートする最低レベルのSDKを選択します。 ここで選択したバージョンより低いOSではアプリがインストールできません。 バージョンの選び方。バージョン…
本記事では DataBinding の方法については省略します。 DataBinding の方法については以下の記事を参照下さい。 KotlinでAndroid Data Bindingを使ってみた - Qiita BindingAdapterとは? カスタムセッターを定義するものです。 BindingAdapterアノテーショ…
Kotlin で Crashlytics が正常動作検証した際に、build.gradleの修正に手間取ったのでメモしておきます。 手間取ったのはおそらく Kotlin が原因ではなく、 Android Studio の build.gradle の構成が変わってことが原因です。 build.gradle(Project) buildsc…
"UITextField 単位"でググるとこちらの記事がヒットしますが、rightViewMode = .Always にし、rightView に UILabel 設定すれば実現できそうです。 参考にしたサイト http://stackoverflow.com/questions/745453/add-label-to-uitextfield
気になる連載があったのですが、Indexがなかったので勝手にまとめました。 関数型プログラミング入門(1) – まえがき | anopara 関数型プログラミング入門(2) – FPとは | anopara 関数型プログラミング入門(3) – 再帰関数 | anopara 関数型プログラミング入門…
Assistant Editors を開いて、下記のようなコードで表示できます。 import UIKit import XCPlayground let window = UIWindow(frame: CGRect(x: 0, y: 0, width: 300, height: 300)) let viewController = UIViewController() viewController.view.backgroun…
初めにまとめサイト紹介 スライドの写真もある速記まとめ(3日目だけのまとめはない) 全日程の資料まとめ クラスメソッドさんのまとめ 個人まとめ "Motivation based library abstraction" レポート 業務の中で出てきた課題に対応するための3つのライブラリを…
初めにまとめサイト紹介 スライドの写真もある速記まとめ 全日程の資料まとめ クラスメソッドさんのまとめ 個人まとめ "実践的 “Boundaries”" : "Boundaries in Practice" レポート BoundariesはFunctional Programingでよく参照される内容。 https://www.de…
初めにまとめサイト紹介 スライドの写真もある速記まとめ 全日程の資料まとめ クラスメソッドさんのまとめ 個人まとめ "Swiftのエコシステムに飛び込む" : "Dive into Swift Ecosystem" レポート エコシステムに貢献する段階 使う。 Git HubならStarを付ける…
git reset --soft HEAD^
Vimチートシート http://www.namaraii.com/files/vim-cheatsheet.pdf 削除コマンド vimmer.blog5.fc2.com
デザインの指定で「高さはラベルいっぱいでお願いします。」とかあるので調べてみました。 結果 Font Size: 1, heihgt: 1.5 Font Size: 2, heihgt: 2.5 Font Size: 3, heihgt: 4.0 Font Size: 4, heihgt: 5.0 Font Size: 5, heihgt: 6.0 Font Size: 6, heihg…
SwiftのArrayには removeAll や removeAtIndex はありますが、removeしたい element を渡して remove するメソッドがありません。 そこで、removeメソッドを追加しました。参考にしたのはstackoverflowのこちらの記事です。 stackoverflow.com上記の記事で紹…
将来的は地方で働きたいという思いがあるので、こちらのAdvent Calendarの全記事ざっと読みました。 記事の中で書かれている地方の特徴を簡単にまとめておこうと思います。www.adventar.org お金 家賃は安い。 家賃以外の生活費はあまり変わらない。 平均給…
ArgoはSwiftでJSONのParse処理を簡潔に記載できるライブラリです。github.comちょっと古い記事ですが まだSwiftyJSONで消耗してるの? - Qiita でも紹介されています。ただ、今回のアプリでは以下の振る舞いの方が都合が良くメソッドを追加しました。 JSON …
最近Android開発界隈で話題のKotlinについて国内の導入状況をまとめてみます。 見つけ次第随時更新していく予定です。 会社 導入状況 参考サイト 記事投稿日 Qoncept がっつり導入 Android開発を受注したからKotlinをガッツリ使ってみたら最高だった - Qiita…
こちらのスライドのまとめです。 Modelとそれ以外を分ける Modelとそれ以外(ここではEditor)に分ける。 ModelはUIに関わらない部分 EditorはUIに関わる部分 参照 OK:Editor -> Model の直接参照 NG:Model -> Editor の直接参照 ModelからEditorを参照する…
qiita.comViewControllerからロジックを分離する内容が書かれています。 protocol UITableViewDataSource もViewControllerから分離しよう。という提案がなるほどなと思いました。 他はMVCフレームワークとかで言われることと同じなので新鮮味は特にありませ…
たまに使うのですが、毎回忘れてしまうので記載しておきます。 let zeroHeightConstraint = NSLayoutConstraint( item: self, // 対象のViewインスタンス attribute: .Height, relatedBy: .Equal, toItem: nil, attribute: .Height, multiplier: 1.0, consta…
検証OS: iOS 9 beta 5 Xcode: Xcode 7 beta 5 対応前 let types: UIUserNotificationType = [.Alert, .Sound] let settings: UIUserNotificationSettings = UIUserNotificationSettings(forTypes: types, categories: nil) UIApplication.sharedApplication(…
避けるべきDDDの10の失敗 www.infoq.comInfoQで10個上げられていたので抽出しておきます。 永続化やデータストレージがモデルに影響を与えてしまう ドメインエキスパートと交わらない ドメインエキスパートの言葉を無視する 境界付けられたコンテキストを特…
iOSアプリはApple審査期間がありリリーススパンがWebに比べて長くなってしまいます。 WebではGitHub Flowやgit-flowが使われているようですが、iOSアプリではgit-flowをアレンジした下記に示す運用が良いと思います。なお、この運用は2,3人での開発を想定し…
いろんな情報が出てくるので一番手軽な方法をメモします。 ターミナルで下記コマンドを実行します。 swift -version 下記のように表示されます。私のバージョンは 1.1 でした。 $ swift -version Swift version 1.1 (swift-600.0.57.4) Target: x86_64-apple…
xcopyを使って下記コマンドで複数ファイルをコピーしようといします。 xcopy a.txt new_a.txt /R /Y xcopy b.txt new_b.txt /R /Yすると、下記メッセージが表示され入力待となってしまい、処理が止まってしまいます。 \(ファイル名) は受け側のファイル名で…