英単語は同じ言葉でも使われる範囲が広く意味が明確に伝わるとは限らないからです。
そこで私は変数名(クラス名、関数名、などを含めて識別子などという)に日本語も使うのですが、
キチンとルールを決めて使っています。
ライブラリ、フレームワーク、OS、プログラミング言語などで習慣的に使われている変数名は
「英数字」しか使いません。
税金、会計、簿記、仕入、フランチャイズなどの用語が関わる変数名は日本語を使います。
何故かと言うと
「Account」というとログインユーザーの情報という意味だけでなく
銀行口座などの意味があります。
これらの混同を防ぐために、敢えて日本語を変数名に取り入れているのです。
あと、WEBブラウザに渡す時の変数名、データーベースのテーブル名やカラム名、API(アプリケーション・インターフェイス)など外部通信を伴うものは英語にしておくのが無難です。
データーベースに関してはORM
で日本語名と英語名の併記が出来るので便利です。
日本語変数名には賛否両論があるのですが
もっとも早くから日本語対応に舵を切った「マイクロソフト社」のプログラミング言語で文字化けが多かったことに由来します。
現在はほとんどのプログラミング言語でユニコードという、全世界共通の文字コードを標準で使っているので文字化けはほとんど起きません。