Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

変数・構造体・関数の定義は上に書いた方が初学者に優しいかも? #591

Open
Hiroshiba opened this issue Aug 28, 2023 · 0 comments
Labels
機能向上 要議論 実行する前に議論が必要そうなもの

Comments

@Hiroshiba
Copy link
Member

内容

VOICEVOX COREのコードは、内部で使われる関数やクラスの定義を、使った箇所よりも下側に書くようなことが多くなっています。
これは他の言語では一般的ではなく、新しくRustに関わる方は特に混乱する対象になりそうです。
実際にRustもそのソースコード全体に降ってくるようなimportは一番上に書いていると思います。またソースコードは上から下へ実行されるという統一規則があるため、下のものが上の出力に依存していると人間は直感しやすそうに思います。

もしこの記述方式が一般的でなかったり、賛否両論になっているのであれば、初学者の方が親しみやすいように定義を上に書くようにしていくのはどうでしょうか。

ただ実際ソースコードを書いている時はコードジャンプが使えるので、慣れていくと問題ないとは思います。
ファーストコンタクトした時の混乱具合を避けれるかなという程度なので、慣習的にそちらの方が多数なのであれば、習慣に従っても別にそこまで問題ではないと思います。

Pros 良くなる点

初学者にとって読みやすい。
コードジャンプがないGithub上で読みやすい。
書き方を統一できる。(?)

Cons 悪くなる点

もし習慣的にそれが普通でないのであれば、習慣に逆らってしまうことになる。

実現方法

地道に置き換えていく。あるいはフォーマッターがあるならもっとも良さそう。

その他

Githubでプルリクエストを見るときは、必ず上から下へ読んでいき、かつコードジャンプがまだないので、メンテナ的にはどっちでもいいのであれば上から下に書いてもらえる方が直感的だったりします。
でもまあ慣習に抗うほどではないかなという気持ちです。

@Hiroshiba Hiroshiba added 機能向上 要議論 実行する前に議論が必要そうなもの labels Aug 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
機能向上 要議論 実行する前に議論が必要そうなもの
Projects
None yet
Development

No branches or pull requests

1 participant