LoginSignup
1
0

More than 1 year has passed since last update.

レビューで良く指摘されやすいコードの書き方

Last updated at Posted at 2023-02-27

はじめに

綺麗なコードの書き方はいくらでもあると思いますが、
最近、プルリクエストのコードレビューで指摘された部分をまとめました。
例文のコードは下記の形で記載させていただきます。

- 変更前
+ 変更後 

省略できる部分

- return $a > $b ? true : false;
+ return $a > b;

三項演算子を使う必要がない

- $a ? $a : $b;
+ $a ?: $b;

演算子にはいろんな種類があることが認識できてない

必要ない部分

use Illuminate\Foundation\Http\FormRequest;
// 残したままになっている
use Illuminate\Validation\Rule;

class SearchRequest extends FormRequest
    /**
     * Get the validation rules that apply to the request.
     *
     * @return array<string, mixed>
     */
    public function rules()
    {
        'keyword' => [
            'nullable',
            # 仕様変更により、条件で必須にする必要がなくなった
-           Rule::requiredIf($request->flg),
+           
    -       'max:50',
        ],
    }

使用していた部分を削除後に上のuseの消し忘れ

推奨されている書き方ではない

<MyComponent

- ></MyComponent>
+ />

中身を持たないコンポーネントは、 単一ファイルコンポーネント 、文字列テンプレート、および JSX の中では自己終了形式で書くべき

Vueの書き方の理解が足りない

インデントのずれ

PHP 4つのスペース

インデントには4つのスペースを使用し、タブは使用してはいけません。

Vue 2つのスペース

エディタの設定や、自動整形ツールなどの拡張機能を使う場合が多く基本的には問題ないと思いますが、筆者はSQLのEloquentで良くズレがありました。

$user = User::where('email', $email)
-  ->where('first_name', $first_name)
-  ->first();
+    ->where('first_name', $first_name)
+    ->first();

シングルクォーテーションとダブルクォーテーション

シングルクォーテーション

書いたままの形式で出力

ダブルクォーテーション

変数名が展開される

- #ダブルクォーテーション
- $a = "ダブルクォーテーション";
+ #シングルクォーテーション
+ $a = 'シングルクォーテーション';

PHPで、クォーテーションの使い分けが理解できてない

1行の文字数

PSR-2

行の長さに対してハードリミットがあってはいけません。ソフトリミットは120文字を上限とし、実際は80文字以内に抑えるべきです。

VSCodeの場合、下記を追加

settings.json
"editor.rulers": [120]

キャプチャ.PNG

わかりにくい命名規則

これに関しては複合的な問題があるため、別でまとめたいと思います。

さいごに

人が見てもわかりやすいコードが書けるようになりたい。
まずは、同じことを繰り返さないようにしないと

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0