ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

システムの機能を作成するときは、なるべく小さな機能を寄せ集めるように作成する

普段仕事でコーティングする際に心がけているのは、なるべく単純な機能に処理を分けて、機能を組み合わせることでシステムとして必要な機能を実現ことです。
例外もあって、処理を分け切れない場合もありますが、例外がないように考えるようにしています。

単純な機能に分けると、組み合わせる手間が増える気がします。
実際は、組み合わせる手間よりも、単純な機能によるわかりやすさ、チェックのしやすさ、流用のしやすさが勝ります。

f:id:AJYA:20181209062430p:plain
unsplash-logoDanial RiCaRoS

チェックのしやすいさは、単純な機能しかないので、結果を見て正しいのか間違っているのかすぐにわかります。
流用のしやすさは、ほとんど同じで一部だけ違うという似たような機能を作ることになったときに、一部だけ違う部分を新たに作れば済みます。

ほとんど同じで一部だけ違うという似たような機能を作成するときに、リファクタリングすればいいやと実装して、後からリファクタリングしている時間が無かったり、同じ部分の修正が発生して2度手間で直したりといったことが、往々としてあります。
誰でもわかる リファクタリング入門 | 技術トピックス | ウルシステムズ株式会社


どのように機能をわけるべきか悩まされ、実装しているときには効果を実感しにくいです。
後から効果を感じることができるので、後から単純な機能で実装してよかったと実感することを期待して作成しています。

1週間の振り返り(2018/12/1〜2018/12/7)

味噌カツ丼とそばのセットを食べるときに、子どもに欲しい?と聞くと、そばを欲しがったので少しあげました。
f:id:AJYA:20181208061458p:plain
もうすぐ食べ終わるというときに、味噌カツを欲しがられ、残念ながらあげられませんでした。

  • 2018/12/1(土)
    以前試着したユニクロのチノパンが安くなっていたので購入しました。
    ちょうどチノパンを買わなければと考えていたので、助かります。
  • 2018/12/2(日)
    姉の家に行って、妻と姉があれこれ話していました。
    子どもは慣れない環境で最初おとなしくしていましたが、30分もすれば慣れて僕と遊んでいました。
  • 2018/12/3(月)
    新たなシステムの作成で、データをCSV形式のファイルでアップロードしてデータベースに登録する部分を作成しました。
    データを登録する前にチェックロジックを作ったり、データから検索した上でデータベースに登録する部分を作ったりと、簡単にはできないので、時間がかかります。
  • 2018/12/4(火)
    お客さんからメールで、なぜこの文字列が英文と認識されないのかとありました。
    確認した結果、ダブルクオートが全角になっていました。
    Wordの自動変換でダブルクオートが全角になって、そのままコピーしたのではないかと予想しました。
  • 2018/12/5(水)
    年に1回利用するシステムの設定作業を一気に行いました。
    設定自体は30分もかかりませんが、設定結果で出力されるデータが正しいのかの検証に時間がかかりました。
  • 2018/12/6(木)
    他社のシステムとの連携のための仕様が提示されましたが、取得できる情報が事前に思っていたより少ないため、入力欄の追加が必要になりました。
    結構な数の入力欄の追加が必要になるので、本当に追加するのかと思いながら、見積を作成していました。
  • 2018/12/7(金)
    水曜日に設定したシステムとは別の、年に1回利用するシステムの設定作業を行いました。
    設定作業をしながら、手間がかかる部分の改修も行っていて、正しく動作しなかったために原因探しに時間がかかりました。


子どもの副鼻腔炎は、11/30に処方された5日間飲む薬が効果あって、鼻水が出なくなり、咳もなくなりました。
このまま完治となって、薬を飲まなくなって欲しいです。

読書メモ:一生使える「人を動かす」話し方

Kindleで0円で販売されていて、それで「人を動かす」方法がわかるのかと読みました。
この記事を書いている時点でも0円で販売されています。

内容は「人を動かす」というより、人と上手く付き合う方法に思えました。
人と上手く付き合えなければ、「人を動かす」こともできないので、間違いではないです。

テクニックを知りたいだけなら、第4章から読めば終わります。
会話するときの表情の作り方が説明されていますが、イラストもあった方がわかりやすいのにと思いました。

読者限定特典として、広告(?)のようなものが途中挿入されています。
広告(?)のようなもののおかげで0円で販売できて、著者の収入につながっているのかもしれません。