読者です 読者をやめる 読者になる 読者になる

エンジニア一年目、役に立った本そうでもなかった本

フルタイムのエンジニアとして働き始めて一年、いちおう技術書を読んできた。どんな本を読んできたか振り返る意味で、これは役に立った、これはそうでもなかったということを記録しておこうと思う。 前提として、自分はコンピューターサイエンスを学んできた…

スタブとモックの違い

Qiitaにも同じのを投稿しました スタブとモックの違い オブジェクト指向設計実践入門を読んで学んだことのまとめです。 具体的にRspecでモックを書くときはこうしましょう、といった具体的な話ではなく言葉の意味の説明がメインです。

「ITエンジニアのためのデータベース再入門」 第4章 DBMSの内部構造

(リレーショナル理論とかは飛ばして、まず内部構造の部分からノート。) 第4章 DBMSの内部構造 現代のRDBMSは与えられたSQLからアクセスするデータ量、データの分布、インデックスやパーティショニングの有無などから自動的にデータ取得アルゴリズムを決定す…

「オブジェクト指向設計実践ガイド」 第9章 費用対効果の高いテストを設計する

第9章 費用対効果の高いテストを設計する 変更可能なコードを書くのに必要な3つのスキル オブジェクト指向設計の理解 リファクタリングのスキル テスト設計のスキル ※リファクタリングとはコードの機能を変更せずに内部構造を変えること オブジェクト指向設…

「オブジェクト指向設計実践ガイド」 第8章 コンポジションでオブジェクトを組み合わせる

第8章 コンポジションでオブジェクトを組み合わせる 単一の責任を持ったオブジェクトを複雑な全体へと組み合わせることによりアプリケーションは作られる。 より大きい部分が部品を持つという関係でオブジェクトは関連付けられる。そして、それぞれはインタ…

「オブジェクト指向設計実践ガイド」 第7章 モジュールでロールの振る舞いを共有する

第7章 モジュールでロールの振る舞いを共有する 継承はクラスの継承のみにとどまらない。Rubyのモジュールを使い振る舞いを共有させることが可能である。 オブジェクト指向設計実践ガイド ?Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方作者: …

「オブジェクト指向設計実践ガイド」 第6章 継承によって振る舞いを獲得する

第6章 継承によって振る舞いを獲得する よいアプリケーションの設計とは、再利用可能なコードによって構成されていること。このためにこれまでは コンテキストを最小限にする 明確なインターフェースを定義する -依存オブジェクトを外部から注入する といっ…

「オブジェクト指向設計実践ガイド」 第4章 柔軟なインターフェースをつくる

第4章 柔軟なインターフェースをつくる オブジェクト指向アプリケーション≠クラスの集まり。オブジェクト指向アプリケーションはクラスから成り立つが、メッセージによって定義される。このメッセージのやりとりはインターフェースを介して行われる。 オブジ…

「オブジェクト指向設計実践ガイド」 第3章 依存関係を管理する

第3章 依存関係を管理する メッセージを受け取ったオブジェクトに望まれる振る舞いは、オブジェクト自身が知っている・継承している・そのメッセージを理解するほかのオブジェクトを知っている、のいずれか。この章では、最後について注目する。 前章で、適…

「オブジェクト指向設計実践ガイド」 第2章 単一責任のクラスを設計する

第2章 単一責任のクラスを設計する メッセージに注目する前に、クラスに注目してみる。 オブジェクト指向設計実践ガイド ?Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方作者: Sandi Metz出版社/メーカー: 技術評論社発売日: 2016/09/02メディ…

「オブジェクト指向設計実践ガイド」 第1章 オブジェクト指向設計

第一章 オブジェクト指向設計 オブジェクト指向の本質: 世界をオブジェクト間でのメッセージが受け渡しの連続としてモデリングすること 「手続き」をオブジェクトの中に隠蔽し、表面から「手続き」を見えないようにする。表面から見えるのはオブジェクトがメ…

Y/Zコンビネーターについて理解するまで

最近「アンダースタンディング コンピュテーション」という本を読んでいる。アンダースタンディング コンピュテーション ―単純な機械から不可能なプログラムまでposted with amazlet at 15.09.21Tom Stuart オライリージャパン 売り上げランキング: 155,740A…

knockout.jsを触ってみる MVVMのModelとは?

angular.jsとかreact.jsとかvue.jsとかriot.jsとか、〇〇.js系は星の数ほど…はないけど少なくとも太陽系の惑星くらいはある。electronでアップリケーションをつくってみたいので、ナウい感じのJavascriptの使い方を身につけたいなぁとは前から思っていたんだ…

Github atom Windowsでapm installできなかったのの解決

現在、Github製のatom.ioというエディタを使っている。今まで何もプラグインを入れずに使ってきたのだが、そろそろいろいろ入れようと思ってまずはアルバイト用のMacbookのでいろいろと試してみた。atomはgithubのアカウントと紐付け可能で、starをつけたプ…

やったぜ。 投稿者:変態糞Docker (8月16日(水)07時14分22秒)

最近、Dockerというのが流行っているというそうで、自分もDockerを使ってあるWebサイトの開発用環境をつくるスクリプトを作れ、という仕事を割り当てられた。そもそもDocker自体なんなのか?というところから調べなければならなかったんだけれども、今の時点…

うわあ・・・、これはTDDですね。なんだこれは・・・。たまげたなあ

Ruby on Railsで作られたとあるWEBサイトの運営に携わっているわけであるけれども、やはり趣味で作るプログラムなんかとは開発の流れが違う。いわゆるTDD(TDNじゃないよ。DBは出てくるけど)というやつだと思うんだけれども、「テスト」というのが開発サイ…

日の下には新しきものあらざるなり 下

Pythonのような言語を使う人はIDEなんか使わずにテキストエディタでやっちゃう人が多いというが、僕はIDEを使って開発したい派である。IDEを使うとひとつのウィンドウで必要なものがすべて制御できるというのがいい。意外と画面がちっちゃいPCで開発している…

日の下には新しきものあらざるなり 上

ComicInfoEditor、見た目はともかくついに目標としていた機能の実装は終わり、 初のメジャーリリース()が大々的になされた。…といいつつ今回はその話ではない。その話はComicrackの仕様との兼ね合いでいろいろとアレな部分があるので、ちゃんとドキュメント…