2017-07-01から1ヶ月間の記事一覧

(8) コンポジションでオブジェクトを組み合わせる

(7) モジュールでロールの振る舞いを共有する

(6) 継承によって振る舞いを獲得する

(5) ダックタイピングでコストを削減する

(4) 柔軟なインターフェースをつくる

インターフェース クラス間の窓のようなもの。界面や接触面、中間面。クラス内のメソッドと、何をどのように外部に晒すのか。 オブジェクト志向アプリケーションはクラスから成り立つが、「メッセージ」によって定義される。 アプリケーション設計で中心とな…

(3) 依存関係を管理する

オブジェクトは単一の責任を持っている→複雑な問題を解決するためにはオブジェクト間で共同作業をする必要がある 一方のオブジェクトに変更を加えたとき、他方のオブジェクトも変更しなければならない=依存関係がある class Gear def initialize(hoge, fuga…

(2) 単一責任のクラスを設計する

TRUE 変更が簡単なコードに伴う性質 Transparent(見通しが良い) 変更するコードにおいても、そのコードに依存する別の場所のコードにおいても、変更がもたらす影響が明白 Reasonable(合理的) どんな変更があってもかかるコストは変更がもたらす利益にふ…

(1) オブジェクト指向設計 from オブジェクト指向設計実践ガイド

システムを、あらかじめ決められた手続きの集まりではなく、オブジェクト間で受け渡されるメッセージの連続としてモデル化 部品が相互に作用しあい、全体の振る舞いが生まれる 部品がオブジェクト、相互作用はオブジェクト間で受け渡されるメッセージ メッセ…

学校の課題でhtml/css/js縛りでなんか作るっていうのがあったので、shell scriptを書いてみた

要件 紙芝居、ページは画像と文字列、ボタン(次のページへ)で構成されており、たまにある入力の値の条件分岐によってページの遷移先を変える その入力値はページ間で保持する必要がある(縛りがあるのでDBとかは使えない。JSだけというか) 実装したこと …

先輩のtweetを見て危機感を感じてrmのaliasを設定した

qiita.com qiita.com 最近twitterの有用性に気づいた。 あと学習について、思ったことがあって、エンジニアって一生勉強だから、ある課題にあたった時にそれを今そのタイミングで掘るか、ペンディングして休日にやるか、一週間後くらいにやるかいろいろ考え…

指示の本質を理解する

少し短い記事になってしまうのですが、あるタスクで指示を受けたときにその本質を理解する必要があると感じたこと。ゴールを明確にするとかと共通している部分があるとは思うけど。 たとえばstaging環境にnofollowが付いていないため、SEOランキングが下がる…

エンジニアの勉強について

まず勉強には二種類あると思っている。それでこれら二つってお互いにすごく関連している気がする。たとえばあの基礎が抑えられてないから、これが理解できなくて、調べ方の指針もたたないみたいなことがたまにある。 仕事に必要な知識を得るための勉強、勉強…

SEOまとめ

SEOと検索エンジン Webマーケティング メルマガ アフィリエイト RSS プレスリリース Twitter SEM(Search Engine Marketing) PPC(Pay Per Click)クリック課金の広告 SEO(Search Engine Optimization)検索エンジン最適化←ここ SEOとは、検索エンジンを利用する…

junior engneerがインターン先Rでそこそこちゃんと仕事をして思ったことまとめ

ライブラリの選定 何かプラグインなり、ライブラリを使いたい時は、なぜそれを使いたいのか、なぜそれが良いと思うか、どう使いたいかを伝える。 ライブラリ導入時のチェック項目 [ ] issueの数 [ ] 星の数 [ ] それに関連する技術のバージョンを調べる [ ] …

これを見るだけで読んだ気になれるリーダブルコードチェックリスト +α

名前に情報を詰め込む [ ] 明確な単語を選べていますか? 類語辞典 send, deliver, announce, distribute, route find, search, extract, locate, recover start, launch, create, begin, open make, create, set up, build, generate, compose, add, new [ …