タグ

ブックマーク / blog.jnito.com (7)

  • 僕が考える「良いコード」 - give IT a try

    こんなコードだとわかりやすい 僕が考える良いコードの特徴(条件)を挙げてみると、 ぱっと見たら、だいたい何をやっているのかがわかるメソッド名 ぱっと見たら、だいたい中身が何なのか想像がつく変数名 ぱっと見たら、だいたい何をやっているのかが把握できるメソッドの内の処理フロー 驚きが少ないメソッド 副作用が少ないメソッド(責務が1つしかないメソッド) DRY原則を守っているコード だいたいこんな感じ。 つまり「すんなり読めて、すんなりわかるコード」が理想。 プログラムが小さいうちや、一人で開発しているうちは「汚くてわかりにくいコード」であっても「自分さえわかればOK」で済んじゃうけど、プログラムの規模が大きくなったり、複数人で開発するようになると、「汚くてわかりにくいコード」は絶望的に開発効率を下げる。 こんなコードはわかりにくい たとえば上の反対で、 メソッド名だけ見ても何をやっているのか想

    僕が考える「良いコード」 - give IT a try
    otihateten3510
    otihateten3510 2023/07/13
    “驚きが少ないメソッド” この表現いいね、変なこととか変わったことしてないやつね
  • 雑に作って、それから作り込んで、最後にテストを書く「テストラスト」開発 - give IT a try

    (この話は最初Twitterに書こうと思ったけど、長くなるのでブログに書くことにしました) 僕はRSpecやMinitestでテストを書くのは得意ですが、常にテストファースト(TDD)で開発するとは限りません。 今業務でやってるタスクはこんなふうに進めてます。 雑に動くものを作る ↓ 見た目をきれいにする&機能を作り込む ↓ テストを書く ↓ リファクタリングする この順番で開発する理由を以下に述べます。 雑に動くものを最初に作る理由 最初は見た目とか、異常系とか、細かい仕様とかを無視して、正常系が一通り動くものを作ります。 これはこれから作ろうとしているものの認識が合っているかどうかをPO(プロダクトオーナー)に確認するためです。 実際に動く画面を見せると「こんな感じでOK」とか「ここはこういうふうにしたい」というフィードバックをもらうことができます。 また、開発者としてもコードを書きな

    雑に作って、それから作り込んで、最後にテストを書く「テストラスト」開発 - give IT a try
    otihateten3510
    otihateten3510 2023/02/17
    TDDは宗教だから取り合わないほうがいい
  • プログラミング初心者は変数名やメソッド名を略さない方がいいよ、という話 - give IT a try

    今回のエントリでは先日、僕が勤めているソニックガーデンで話題になったプログラミング関連の小ネタを書きます。 それは何かというと、「プログラミング初心者は変数名やメソッド名を略さない方がいい」という話です。 長い変数名やメソッド名はつい略したくなります。 実際、僕も長い名前を略すときはよくあります。 ですが、略称を使うのは長年の経験から「この略称は一般的だから誤解を招くことはきっと少ないだろう」とか「前後の文脈から、変数の中身は誰が見ても明らかだろう」という想像が付いた場合だけです。 一方、プログラミング初心者の人は経験が浅いため、「一般的かどうか」とか、「誤解が発生しないかどうか」といった判断ができません。 そのため、他の人が見たときに「え、何この変数名?」と思ってしまうような略称を付けてしまう恐れがあります。 たとえば、先日のコードレビューで、初心者の人がrev_noという名前の変数を定

    プログラミング初心者は変数名やメソッド名を略さない方がいいよ、という話 - give IT a try
    otihateten3510
    otihateten3510 2020/10/21
    ベテランですが省略しません。省略見るとイラッとします。よろしくお願いいたします。
  • 恥ずかしがらずにオープンな場で積極的に質問していきましょう、という話 - give IT a try

    はじめに 先日、Teratailに以下の質問が挙がっているのを見つけました。 Ruby - irbと打つと「can't find gem irb」とエラーが出ます。どうしたらいいでしょうか|teratail 質問の内容は、「rbenvのインストール後、irbを起動しようとするとエラーが出て起動しない」というものです。 質問者の方は拙著「プロを目指す人のためのRuby入門」の学習を進めようとして、この問題に遭遇したそうです。 エラーが出てirbが起動しない、という現象は今まで聞いたことがありません。 irbはRubyが持つ基機能の一つだからです。 原因は僕もはっきりわからなかったのですが、"rbenv-communal-gems"というあまり聞き慣れないrbenvプラグインを使っていたので、もしかしたらこれが原因ではないかと推測しました。 そこで、「もしかすると"rbenv-communa

    恥ずかしがらずにオープンな場で積極的に質問していきましょう、という話 - give IT a try
    otihateten3510
    otihateten3510 2019/07/02
    真のフリーライダーは質問せずにStackoverflowを漁る輩だ。つまり俺だ!/恥というか何も考えていない説ある、もしくはそもそも興味が無いとか
  • 男女の参加バランスが良く、託児室があって、懇親会でぼっちにならないRuby勉強会を開催しました #tokyogirlsrb - give IT a try

    はじめに このブログでも何度か紹介してきた「女性も参加しやすい(でも女性限定ではない)Ruby勉強会」、TokyoGirls.rb Meetupの記念すべき第1回を2019年3月2日に開催しました。 TokyoGirls.rb Meetupを開催しようと思った目的や背景は以前書いたこちらのエントリにまとめてあります。 今回のエントリでは、「男女の参加比率」「無料託児室」「懇親会のぼっち対策」という3つのポイントに注目しながら、当日の様子や運営上の工夫を書いてみたいと思います。 【もくじ】 はじめに ポイントその1. 「男性ばかり」でも「女性ばかり」でもない男女比率になりました 参加者の感想(と僕自身の感想) 男性エンジニアにも何かしらの気づきを与えられる勉強会でした 「自分は男性だし、興味がないなあ」という方も ポイントその2. 無料の臨時託児室を提供しました なかなか大変だった臨時託児室

    男女の参加バランスが良く、託児室があって、懇親会でぼっちにならないRuby勉強会を開催しました #tokyogirlsrb - give IT a try
    otihateten3510
    otihateten3510 2019/03/08
    みんな薄々思ってたけどやらなかった部分にトライするのは勇気あるな/いっぱい話そうのテンプレートで俺はぼっちになりそうだよww 答えられないの多いな
  • ITエンジニアが誤った情報にツッコミを入れるのは「正しさハラスメント」ではない - give IT a try

    はじめに 先日、はてなブックマークで話題になっていたこちらの記事を拝見しました。 確かに「一理ある」といえばそうなんですが、僕個人はこの意見に対して率直に「NO」だと感じました。 僕は基的に自分の専門分野であれば、結構積極的に技術記事にツッコミを入れていくタイプです。 このエントリでは、なぜ僕は「NO」だと感じたのか、そしてなぜ積極的にツッコミをいれていくのか、その理由について書いていこうと思います。 元記事の要点 僕なりに元記事を要点をピックアップすると次のようになりました。 ITエンジニアの中には初心者の成功体験を折りに来る人がいる。 筆者は成功体験の「気持ちいい」状態を阻害する行為に疑問を覚える。 初心者にはセキュリティ周りについて教えても仕方がない。 初心者もいずれセキュリティ対策について知識を得るはずだ。 早すぎる指摘が生まれるのは「それが間違っているから」だ。 初心者にはまず

    ITエンジニアが誤った情報にツッコミを入れるのは「正しさハラスメント」ではない - give IT a try
    otihateten3510
    otihateten3510 2016/12/29
    「正しさを主張する人をウザイを思ってる人がいる」は事実だし、その事自体を「そんな人間は間違いだ」というのは人格否定に近く、個人的には賛成しない。会社ならいいけど、TPOと目的別で考えたいところ。
  • 「レンジで字が消える!」というYouTube動画を真似した息子がノートを黒焦げにした話(※追記あり) - give IT a try

    2016.10.30 追記:おわび この記事は元々、YouTubeをよく見ているお子さんを持つ保護者のみなさんに向けて、注意喚起をしたいと思って書いた記事でした。 ですが、YouTubeの利用規約には「サービスは13歳未満の子供による利用を意図していません。あなたが13歳未満の場合、YouTubeウェブサイトを利用しないで下さい。」との記述があります。 お恥ずかしいことに私はこの利用規約をちゃんと確認していませんでした。 利用規約を確認しないまま、子どもにYouTubeを視聴させてしまったことは、私の完全な注意不足でした。 大変申し訳ありませんでした。 また、記事の中で「おそらく動画を投稿した人たちはそこまでの危険性があるとは自覚していないのでしょうが、もう少し想像力を働かせて上記のような問題点に配慮してほしかったなと思います。」と書きましたが、私もこのブログを公開することで動画を投稿

    「レンジで字が消える!」というYouTube動画を真似した息子がノートを黒焦げにした話(※追記あり) - give IT a try
    otihateten3510
    otihateten3510 2016/10/26
    笑い話じゃない気がしてきた。情報発信者が個人の情報が世界的に広まるって、ゴシップ以下の情報が子供の手の届くところにあるようなもんだよね?リテラシーにも限界がある、薬品と同列の扱いになるんじゃないかな
  • 1