プロジェクト

全般

プロフィール

Wiki » 履歴 » バージョン 13

みぞ @mizo0203, 2018/05/27 23:00

1 1 みぞ @mizo0203
# Wiki
2
3
## 開発ツール
4
5
* GitHub
6
    * コード管理
7
        * プライベートリポジトリ(後にパブリックへ変更する)
8 5 みぞ @mizo0203
        * 中央集権型ワークフローを採用する
9
            * 中央リポジトリ: https://github.com/mizo0203/google-home-shiritori
10 1 みぞ @mizo0203
* Redmine
11
    * 要件管理
12
    * 不具合管理
13
    * Wiki
14
* Markdown + PlantUML
15
    * ドキュメント作成
16
    * 設計図作成
17
        * ※ Word・Excel・PowerPoint は使用禁止
18 4 みぞ @mizo0203
* CircleCI - 1 コンテナ無料(プライベートリポジトリでも可、ビルド時間 25h/month まで)
19 1 みぞ @mizo0203
    * ビルドチェック
20
    * 静的解析
21
        * Lint - コードの構文チェック 
22
        * FindBugs - 実行時に起こり得るバグの検出
23
    * 【できれば】Programming Tests
24
    * 【できれば】Deploy
25
* Slack
26
    * チャット
27
28
## 利用サービス
29
30
* DialogFlow
31 8 a a
    * [JSONフォーマット](https://dialogflow.com/docs/fulfillment#section-format-of-request-to-the-service)
32 11 みぞ @mizo0203
    * 参考:
33
        * Dialogflow入門 - https://qiita.com/kenz_firespeed/items/0979ceb05e4e3299f313
34
            * > User saysに「明日の福岡を予約」
35
                * 「User says」欄は現在存在しない、「Training phrases」欄に入力する 
36 12 みぞ @mizo0203
            * > 入力内容を元に自動的にEntityが検出されParameterとして設定されました。
37
                * 自動的には検出されないので、単語をクリックして Entity を追加すること
38
                * `@sys.date` は「明日の」ではなく「明日」を指定すること
39 11 みぞ @mizo0203
        * Dialogflowの使い方について - http://hiyo-ac.hatenablog.com/entry/2018/02/25/162729
40 1 みぞ @mizo0203
41
## 開発フロー
42
43
1. Redmine にチケットを作成
44
2. GitHub で各自ブランチを切って Commit & Push
45 2 みぞ @mizo0203
    * プリフィックス(範囲) + 英語のコミットメッセージ + #チケット番号 + @作業時間
46
        * ```feat(*): hogehoge. #999 @1.5h``` :新しい機能
47
        * ```fix(*): hogehoge. #999 @1.5h``` :バグフィックス
48
        * ```docs(*): hogehoge. #999 @1.5h [ci skip]``` :ドキュメントのみ変更(CI は実行しない)
49
        * ```style(*): hogehoge. #999 @1.5h``` :コードの意味に影響を与えない変更(空白、フォーマット、セミコロンの欠落など)
50
        * ```refactor(*): hogehoge. #999 @1.5h``` :バグを修正したり、機能を追加したりしないコード変更
51
        * ```perf(*): hogehoge. #999 @1.5h``` :パフォーマンスを向上させるコード変更
52
        * ```test(*): hogehoge. #999 @1.5h``` :既存のテストの欠落または修正の追加
53
        * ```chore(*): hogehoge. #999 @1.5h``` :ビルドプロセスやドキュメント作成などの補助ツールやライブラリの変更
54
            * 参考: [【今日からできる】コミットメッセージに 「プレフィックス」 をつけるだけで、開発効率が上がった話 - Qiita](https://qiita.com/numanomanu/items/45dd285b286a1f7280ed)
55
            * 参考: [angular.js/DEVELOPERS.md at master · angular/angular.js](https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#type)
56
    * 原則 1 Commit 1 チケット
57
        * ```fix(*): hogehoge. #99 @0.5h #999 @1h``` :例外的に複数チケットを 1 Commit で対処する場合
58
3. CircleCI でビルドチェック、静的解析、PT
59
4. みぞ + 1 名の 2 名でコードレビュー & マージ
60
5. CircleCI でビルドチェック、静的解析、PT、Deploy
61 1 みぞ @mizo0203
62
## 開発言語
63
64 6 a a
サーバーはJSONを処理できれば、何でも使用できる
65 7 HAO @nekonosukiyaki
66 9 みぞ @mizo0203
## Google App Engine for Java を利用する開発
67 1 みぞ @mizo0203
68 9 みぞ @mizo0203
* IntelliJ IDEA Community Edition で環境構築
69
    * https://cloud.google.com/tools/intellij/docs/quickstart-IDEA
70 10 みぞ @mizo0203
    * https://cloud.google.com/tools/intellij/docs/create-standard
71 13 みぞ @mizo0203
72
## 利用 OSS ライブラリ
73
74
| 名前 | License | URL |
75
|:----------:|:-----------:|:------------:|
76
| Apache Commons IO | Apache 2.0 | https://commons.apache.org/proper/commons-io/ |
77
78
### 利用目的
79
80
* Apache Commons IO
81
    * IOUtils: InputStream/OutputStream と String の相互変換