姑プログラマの技術日記

作ったものをえらそーに解説したら幸せになれるかな

PICOLを丸裸。使ったものとか書いてみる

PICOL第三弾目です

naochi-interrupt.hatenadiary.com

naochi-interrupt.hatenadiary.com

体制

開発に携わる人はざっくり分けて

  • マネジメントする人
  • サーバー側の人
  • UIデザインする人
  • クライアントのアプリの人

って感じで私が担当したのは最後のアプリの人のところです。

プロジェクト管理ツール

  • Kibela
    • 議事録を残す
  • Github
    • ソース管理とクライアント側のAPIドキュメント
  • Slack
    • GithubのログとかTrelloでメンションされたときに通知が届くのが便利だった
  • Trello
    • タスク、バグ管理

技術的なやつ

サーバー側

クライアント

  • swift
    • XCTest,UITestとか
  • Crashlytics,Fabric
  • Alamofire
  • RXSwift
  • jazzy

なんか、クライアントはswiftって書いてそれで終わりなんだけど、ひねり出してみた。

サーバーの方が数段働き者です。もっとあるし!とかはらさんにいわれますたぶん。AWSのS3にあげるのもAPIがやってくれてるし。クライアント側からはノータッチです。

Alamofireとかとかも色々書いていますが、SwaggerCodegenがAPIにアクセスするときのモデルとか、API接続用のクラスとか自動生成してくれましたので使っています。

APIドキュメントと、クライアント側のモックサーバーも作ってくれまして。これはすごいって思いました。

qiita.com

自分のMacにサーバーが立っているので、データを自由にいじってテストできるし、すごく便利でした。最初、nameがintになってて有無を言わさず全然データがとれないとかそういうのが多発しましたが、そのうち慣れてきたし。

ビルドスキームはこんなかんじ

  • ローカルデバッグの時
    • ローカルに立てたRubyのサーバーでApiを投げる。あ、なのでローカルにPostgreSQLのDBが立ってます。開発機にデプロイする前の開発中のサーバーのソースも、指定されたブランチをcloneしてrake db:migrateとかして、ローカルでサーバー立てれば開発が進められます。この辺のことは、前の仕事でRuby on RailsでWebサイトを立ち上げていたのでなんとかできた。やっといてよかった。
  • みんなでデバッグの時
    • FabricでAdhocを配信、接続先は開発用サーバー
  • 本番ビルド
    • 本番機接続

それにしても、もっとかっこいい言葉で説明できるようになりたいです。