🚀

Amazon CodeGuruワークショップの参加メモ

2021/09/18に公開

Amazon CodeGuruワークショップの参加メモ

AWSの基礎を学ぼう 特別編 最新サービスをみんなで触ってみるに参加したときのメモ

Amazon CodeGuru

  • プロファイラーは動かすには実行環境が必要でアプリケーションパフォーマンスを可視化する。
  • reviewerはコードリポジトリに接続してコードを評価する。

今回はreviewerだけで、プロファイラーはデモのみ。

  • コードレビューは2種類
  • 増分コードレビュー: PRみて差分だけ分析する。
  • フルリポジトリレビューは全部分析

リポジトリの関連付けのときの注意:ソースブランチはmasterを指定する。mainであっても、master。

CodeGuruの指摘の特徴

  • バグは指摘しない。
  • OWASPやAWS独自の指摘。

実施してみた結果

今回出た指摘

To create a list, try to use list comprehension instead of a loop. List comprehension is the preferred way to make a list using Python, and it's simpler and easier to understand than using a loop.

Learn more

Similar issue at line number 91.

指摘された箇所

    if date in dead_dict.keys():  
        for code in dead_dict[date]: <--- ココ
            if code in portfolio.stocks:
                order_list.append(
                    SellMarketOrder(code, portfolio.stocks[code].current_count)
                )

PRつくって、マージした。増分レビューがされた。
増分レビューは2回されていた。PRつくったときと、マージされたときそれぞれでレビューが実行されるよう。

上記修正した部分は指摘が消えた。

メモ

  • PRマージ前にcodeguruをgithub actionで実行させることもできる
  • code pipelineで実行させることもできる

プロファイリングデモ

aws sdk使っている部分でも指摘がでる。
コストかかりますよとか。
あとはCPU使用率が高い処理とかがでる。

pythonのプロファイルはまだGAではないらしい。

8月にGAされていたと主催者の亀田さんから教えていただけました。ありがとうございます!

所感とかその他

プロファイリングデモやレビューのワークショップではJavaのコードでされていた。
その指摘をみると、言語ごとの特徴を考慮されていてよいと感じた。
aws sdk使っている部分でも指摘がでるのは特によいと感じた。
固定月額制とのことなので、修正頻度が少ないのならば、4半期に一回ぐらいでやるといいかも。

いままでは新しいサービスをさわる会だったけど、温故知新ということで以前からあるサービスをさわるワークショップをする予定のこと。
毎回、丁寧な説明で理解が深まりやすいので参加したい。

Discussion