
去年末(2019/12)にオススメ書籍をまとめてみたことがあったので、それを少し更新して公開します。 上にある書籍がよりオススメというわけではないです。 対象者は「PHP中級者」です。中級者が何かは難しいですが、初心者、初級者では決してないとは言えます。 改めて一覧にしてみると、かなり偏っているかも知れません(笑 こういうのはコンテキストというのがあるため、それが合わないと「お前は何を薦めているのだ?」となるでしょうね。 キーワードは、「モデリング」「オブジェクト指向プログラミング」「TDD」「デザインパターン」「DDD」「チーム開発」「アジャイルソフトウェア開発」「スクラム」でしょうか。 PHP中級者のイメージ たぶん、PHP中級者であれば、PHPに関することはPHPマニュアルなどを調べて解決できるでしょう。PHPのオープンソースプロジェクトに貢献しており、自分でプロジェクトを持っている
こんにちは、クラウドワークスの新規事業のエンジニアとして仕事をしている高梨です! 最近、「実践ドメイン駆動設計」という本を読みました! 500ページ近くもある技術書で、なかなか量は多かったのですが、DDDがどんなものなのか一通り大枠を掴めた気がします。 ただ読み終わった後にこんな疑念や不安をいだきました。 「たしかにかなり面白そうだけど、実際にやるとどれだけ工数かかるんだろう...?」 「設計の話は全然出てこなかったけど、DDDで作るとなるといったい何から始めればいいんだ?」 「戦術についての知識はついたけど、実際に書こうとしたらできなそうだな...」 そこで、そういった疑念や不安を解決するために、実際にDDDでサンプルプロダクトを作ってみようと思ったわけです。 実際に作ってみるのが、結局一番理解が進みますしね。 今回は、そのプロダクトがリリースされるまでの過程や感想を、作成した設計書やソ
※この記事は著者の増田さんの了解の上で限定公開させて頂いております。 https://twitter.com/masuda220/status/1215122054795522049?s=20 オブジェクト指向、設計がなぜ必要か = ソフトウェア全体の整理整頓をするため 第1章 小さくまとめてわかりやすくする 変更が大変なプログラムの特徴 メソッドが長い クラスが大きい 引数が多い 関心事を詰め込みすぎている ちょっとずつゴミコードが追加されていった結果 重複しているコードをutil神クラスに押し込むと、あらゆる関心事が集中してしまう 変更に強いプログラムの書き方 メソッドは短く、クラスは小さく 略語は使わない 意味のまとまりで空行をうまく使う 説明用のローカル変数の導入(変更の影響範囲を局所化) 1つの変数に代入を繰り返す破壊的代入を避ける 意味のあるコードのまとまり(段落)を「メソッド
CodeZineの人気連載、「IDDD本から理解するドメイン駆動設計」を1冊にまとめました。 DDDとは、「顧客と開発者が業務を戦略的に理解し、共通の言葉を使いながらシステムを発展させる手法」です。「DDDという言葉を知っているものの、全容を理解できていない」「どのように開発現場に導入したらよいのか分からない」開発者の方は、意外と多いのではないでしょうか。 図版を多く用い、DDD初心者にも分かりやすく解説した本書は、そんな方にピッタリの1冊です。ぜひ、『実践ドメイン駆動設計』と併せて読んで、理解を深めていただければ幸いです。 以下、本書「はじめに」からの引用です。 2013 年、ヴァーン・ヴァーノン( 以下Vernon )氏の書籍『Implementing Domain‑Driven Design』(邦題『実践ドメイン駆動設計-エリック・エヴァンスが確立した理論を実際の設計に応用する』)が
本書は、初めてDDDを学ぶ方、もしくは実際に着手して「難しい!!」と感じているエンジニアの方を対象とした、ドメイン駆動設計(以下、DDD)についての解説書です。 近年、ソフトウェアのレガシー化が社会的に問題になっていると言われています。 DDDはレガシー化への対策として非常に有用なものですが、日本語で出ている書籍「エリック・エヴァンスのドメイン駆動設計」や「実践ドメイン駆動設計」は非常に重厚かつ難解で、初学者が実用に到達するまでには長い時間と試行錯誤が必要なのが実情です。 そこで本書では、迷子になりがちな「DDDの目的」や「モデル」の解説からはじめ、 具体的なモデリングを行い実装まで落とす事例を元に、DDDの魅力や効果を体感することを目指します。 また、その後にはレイヤーごとの個別のトピックについて、1章ずつ詳しく解説します。 ■本書の構成 本書は以下の構成になっています。 「第1章 DD
ドメイン駆動設計には興味を持ちつつエリック・エヴァンスのドメイン駆動設計は数年前に積んだまま、という状態で何年か立ってしまったのですが、新しくDDD の本が出ていたので読んでみたところよかったので紹介させていただきます。 ドメイン駆動設計入門 ボトムアップでわかる! ドメイン駆動設計の基本 本書は、 『エリック・エヴァンスのドメイン駆動設計』(ISBN978-4-7981-2196-3、翔泳社)、 『実践ドメイン駆動設計』(ISBN978-4-7981-3161-0、翔泳社) に感銘を受けた著者が贈る、ドメイン駆動設計の入門書です。 (https://www.shoeisha.co.jp/book/detail/9784798150727 より。) というわけで、ボトムアップで理解出来る章立てで書かれたドメイン駆動設計の入門書です。 個人的には、ドメインモデルの組み立てをどうやればいいのか
いわゆるGoFの23個のデザインパターン。知っておくに越したことはないが、フレームワーク・ライブラリに溶け込みすぎていて、現代では知らないうちに使ってることになるので、余裕があれば。
皆さんこんにちは。 虎の穴ラボのY.Fです。 今回は、いつものプログラミング系の記事とは趣向を変えて、株式会社オライリー・ジャパン様から発刊されている『ゼロトラストネットワーク』を読んだので、感想などをつらつら書いていきたいと思います。 www.oreilly.co.jp 読んだ動機 弊社ではオライリーの年間定期購読に申し込んでいます。なので、なんとオライリーの新刊が発売日には読み放題です! これを活かさない手はないと発売前から気になっていた『ゼロトラストネットワーク』を読んでみた次第です。 (過去届いた書籍の一部はこちら) gramho.com gramho.com 目次 本書の目次は以下になります。 目次 はじめに 1章 ゼロトラストの基礎 1.1 ゼロトラストネットワークとは何か 1.2 境界モデルの進化 1.3 潜在的な脅威の進化 1.4 境界モデルの弱点 1.5 信用の在りか 1
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 『Domain Modeling Made Functional』という関数型ドメインモデリングの本を読んでみた。とても面白かったので紹介したい。 はじめに 著者について 『Domain Driven Design with the F# type System』 という面白いスライドで、関数型のテクニックを使って BLOBA1 をエレガントにコーディングする技法を提案していた Scott Wlaschin という人。 おすすめしたい人 特に次のような人は、きっと面白く読めるのではないかと思う。 ふだん純粋関数型言語を使っていて計算機科
オブジェクト指向言語でドメインモデルを実装することが当然のように行われていますが、Go で開発したり、Haskell で遊んだりしている中で、他のパラダイムの言語で実装するのはどうなんだろうかという想いがありました。 そんな時に出会ったのが、Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# という本です。 概要 構成 ドメインを理解し、モデリングする 端的なフレーズ Database-Drive-Design や Class-Driven-Design との違い 型、型、型 関数型言語による実用例 恐怖のモナド さいごに 参考 概要 本書は、とある会社の受注とその関連業務をドメインとし、モデリングして、実装していくという内容です。紙ベースで行われている業務
「この本にはお世話になったなぁ〜」 「今でもたまに読み返してます」 「マジでめちゃめちゃ影響受けた」 「そう、こいつが俺のエンジニア人生を変えやがったんだ...」 ↑「こんな本を紹介してください!」と社内チャットで投げてみたら、すんごいことになったのでそのリストをシェアさせていただきます。 ※推薦理由はあくまで推薦者による個人的な意見や思い入れたっぷりなので、それを踏まえてお楽しみください。 目次 アプリケーション/プログラミング ドメイン駆動設計 Java言語で学ぶデザインパターン入門 Pro Git BINARY HACKS Effective Java リバースエンジニアリング―Pythonによるバイナリ解析技法 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 リーダブルコード メタプログラミングRuby 第2版 Head First デザインパターン テスト駆動開発 C
AmazonでMartin Kleppmann, 斉藤 太郎, 玉川 竜司のデータ指向アプリケーションデザイン ―信頼性、拡張性、保守性の高い分散システム設計の原理。アマゾンならポイント還元本が多数。Martin Kleppmann… 手軽に扱えるデータの量や種類が増える一方、CPUの性能はムーアの法則通りには成長しなくなり、大規模データ処理では、多数のマシンを活用する分散処理が欠かせなくなってきました。クラウドの普及とともに多数のマシンを自ら調達せずとも分散システムを構築できるようにもなっています。 しかし驚くべきことに、今までこの分野に入門するための定番の書籍がありませんでした。分散処理にデータ処理が加わる融合分野である上、オープンソースプロジェクトの進化も速く、専門家同士でも共通の理解を構築するのが非常に難しかった分野です。この本を上手に使うと、既存のOSSプロジェクトの位置付けや、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く