かきあげせいろはラーメンがたべたい

技術プログラミングいろいろ記録メモ備忘にゃーん!

設計Night2018@自分用理解メモ

builderscon2018で(@shinpei0213)さんによる発表「開発現場で役立たせるための設計原則とパターン」を聞きました。 https://nekogata.hatenablog.com/entry/2018/09/10/163206

現場において暗黙知となっている部分、例えばコードレビュー時にどのコードが良い悪いなどを議論する際に、その現場で技術的に優れている人(もしくは年数が長い人とか)だけが把握している"良い悪い"を、設計原則(単一責任原則や開放閉鎖原則)などを"良い悪い"の基軸として据えることで、議論のテーブルに持っていくことができるのではないか。

という問題提起から、

「問題に対して、その設計原則が最適である」というのはどのように判断するのか?

「結局はケースバイケース」という答えのようで答えになっていない結論とするしかないのか?

というさらなる問題に対して、

デザインパターンなどを利用し、構造やコードを作成する」⇄「設計原則を利用し問題に対して良い構造になっているか見直す」

というサイクルを繰り返すことで、最適な状態を削り出していくのが良いのではないか。

という発表でした。

私はまだまだ経験の少ないプログラマーで、入門書の次のレベルとはどういうことなのだろうか?そもそも良いコードとはどういうことなのだろうか?デザインパターンや設計原則を少し学んだけど、現場で活かせているような気がしない。という疑問でしばらく悩んでいました。

この発表は、上記の疑問に一定の答えを示してくれていると感じ、大変感動しました。

その発表の続編(上記だけでは解決できていない問題がテーマ)に当たる勉強会に参加してきました。

設計Night2018 powered by Classi

https://connpass.com/event/104821/

続きを読む

builderscon tokyo 2018 に参加してみた(その2)(自分用メモ&感想)

全てのエンジニアに知ってもらいたいOSの中身について

  • OSのレイヤーが自分の手から離れると怖い
  • OSを知るとちょっと幸せ
  • OSを知ってみよう
  • ブートシーケンスからOSの動きを紐解く
  • プロテクトモード
    • 特権かんり
      • 自分の権限より上位の権限を利用するときにシステムコールする
      • OSにアクセス => 一般保護例外
    • メモリ管理
      • メモリアドレス指定方法(ページんぐ)(リニアアドレス):ページ(OFFSET) => PTE => PDE
      • セグメント
    • タスク管理(マルチタスク)
      • TSSが管理している(メモリやレジスタの状態保持)
続きを読む

builderscon tokyo 2018 に参加してみた(その1)(自分用メモ&感想)

産業でガチ利用されるRaspberry Piの話

  • OS => Debian(ラズビアン)
  • プロトタイピングとかに便利

  • 実際にどう利用しているか

  • 手順

    1. サーバーで生成したマイコンバイナリダウンロード
    2. 基盤のマイコンへ流し込み
    3. 基盤検査
    4. サーバに検査結果送信
続きを読む