こんにちは、エンジニアのs4kr4です。
今回の勉強会は、keima氏による
「イケてるコードを書きたいんじゃぁ~~~ (:3」∠)」
です。
資料はこちら。
※ 内容はあくまでも登壇者の一意見です
イケてるコード
みなさんは「楽しくプログラミング」していますか?
エンジニアの本職はコードを書くことなわけですが、せっかくなら「楽しく」「イケてる」コードを書きたいですよね。
どんなコードが「イケてる」のか、というとまたいろいろ意見が分かれると思いますが、今回挙げられたポイントは以下の4点。
- 優れた設計
- 少ないコードで多くの解決
- テクニック
- 困難な課題を解決する
優れた設計
「どんな設計が優れているか」というのは、時代によっても案件の規模によっても違ってきます。
案件の規模によって最適なアーキテクチャを選択できるように、普段から(雰囲気だけでも)様々なアーキテクチャに触れておくことが大事です 💪
少ないコードで多くの解決
同等の動作を短いコードで実現できるなら、積極的にそうするべきではあります。
しかしワンライナーに近いような短すぎるコードになると、今度は可読性などの観点で良くないコードになってしまいます。
一連の処理に名前をつけて関数に切り出すなどして、コードの情報量(エントロピー)を適切にコントロールできるようになりましょう👨🏫
テクニック
いわゆるハック的な話ではなく、どんな知識でも思わぬ場面で役に立つことがあるよ、というお話でした。
keima氏の実体験として、カメラアプリ開発時の端末の発熱問題への対策に、それ以前に読んだモバイルゲーム開発時の熱対策に関する記事が参考になったということがあったそうです。
様々なものに関心を持ち、情報を収集していれば、いつかどこかで使える日が来るかもしれません。
困難な課題を解決する
まだ自分も他人もやったことがないこと、業界内でも先進的なこと、経験したこともない大規模な案件などなど……
仕事をする中で、こうした困難にぶち当たることは度々あるでしょう。
ではどういった心持ちでこのような問題に望めば良いのでしょうか?
まず多くの人は、こうした問題にはできるだけ立ち向かわない方が良いとのことでした。
もし問題が解決できたとしても、その過程でいたずらに肉体や精神を消費してしまうのはあまりよくありません。
それでも問題に立ち向かっていきたい・立ち向かう必要がある場合は、それ一辺倒の生活を過ごすことはせず、必ず逃げ道を作っておきましょう🏃🏃🏃
また、その課題を達成した暁には、必ずそれに見合った評価を得られるように外堀を固めていきましょう。
チームにそういった雰囲気が醸成されていけば、もっともっと仕事が楽しくなり、気軽にコードレビューもできるようになり、プロダクションにイケてるコードがガンガン乗るようになるのかもしれません(最後無理やり繋げた感)
以上です。次回の記事もお楽しみに〜👋