- 中古
- 店舗受取可
- 書籍
- 書籍
- 1211-08-05
ちょうぜつソフトウェア設計入門 PHPで理解するオブジェクト指向の活用
定価 ¥3,080
1,815円 定価より1,265円(41%)おトク
獲得ポイント16P
在庫あり
発送時期 1~5日以内に発送
店舗受取サービス対応商品【送料無料】
店舗到着予定:3/4(水)~3/9(月)
店舗受取サービス対応商品
店舗受取なら1点でも送料無料!
店舗到着予定
3/4(水)~3/9(月)
商品詳細
| 内容紹介 | |
|---|---|
| 販売会社/発売会社 | 技術評論社 |
| 発売年月日 | 2022/12/10 |
| JAN | 9784297132347 |
- 書籍
- 書籍
ちょうぜつソフトウェア設計入門
商品が入荷した店舗:0店
店頭で購入可能な商品の入荷情報となります
ご来店の際には売り切れの場合もございます
オンラインストア上の価格と店頭価格は異なります
お電話やお問い合わせフォームでの在庫確認、お客様宅への発送やお取り置き・お取り寄せは行っておりません
ちょうぜつソフトウェア設計入門
¥1,815
在庫あり
商品レビュー
4.4
6件のお客様レビュー
Software Designに紹介されていたのと、表紙に騙されて買いました。 何となくの単語や概念は知っているけど、実際に使おうとなると全く手が動かない状態.... そんな状況を打破するためとして読んでみました。 「なぜそうなるのか」「こうなったら嬉しい」みたいな背景が比較...
Software Designに紹介されていたのと、表紙に騙されて買いました。 何となくの単語や概念は知っているけど、実際に使おうとなると全く手が動かない状態.... そんな状況を打破するためとして読んでみました。 「なぜそうなるのか」「こうなったら嬉しい」みたいな背景が比較的丁寧に書かれている&本全体の流れができているので、納得感が高かったです。 挿し絵も秀逸でそのセクションでの理解の助けになるものでした。 見映えだけを意識した、初心者ホイホイなんちゃって技術書と違い、根拠が明確なのがよきでした。( 受けそうなキーワードだけをだして、説明を放置しない) 「第9章 アジャイル開発」での筆者による主張が良い意味で強く、「Oh...」の域でした。 「周囲にソフトウェア工学、アーキテクチャについての知識を持っている人がいないから自分で勉強する!」という人の取っ掛かりとしては、良い一冊です。
Posted by 
クリーンアーキテクチャ、SOLID原則、テスト駆動開発、デザインパターン、アジャイル開発(一部ドメイン駆動設計)といったソフトウェア開発における開発手法について書かれた本。 かわいらしい表紙とは裏腹に、内容はかなり本格的で分かりやすくまとまっていたソフトウェア設計についての本だっ...
クリーンアーキテクチャ、SOLID原則、テスト駆動開発、デザインパターン、アジャイル開発(一部ドメイン駆動設計)といったソフトウェア開発における開発手法について書かれた本。 かわいらしい表紙とは裏腹に、内容はかなり本格的で分かりやすくまとまっていたソフトウェア設計についての本だった。 特に最後の第9章『アジャイル開発』に書いてあったウォーターフォールについての話が面白かった。この名前がでてきたのって1998年だったのか。もっと前からあるイメージだった。 サブタイトルにもある通り、サンプルコードはPHPで書かれたるのだけど、思っていた以上にコードの登場する場面は少なかったし、PHPが分からなくても読めるコードだと思った(しいていうなら、mixedというのが知らない人だと分からないかも。TypeScriptのanyみたいなものだけど)。 自分はプログラミングを書くようになって20年ぐらいたつけど、まったくいい設計のコードが書けてなかったなと思う。ともすると、1ファイルだけで、ロジックどころかモデルまで書こうとしてしまうという…。 この本に、「分けて難しくなる心配は後でもできる」「小さく分けてあるほうが問題を理解しやすくなってきます」とあるので、もっとうまく分かれるようになりたい。 「単一責任原則に従えば、ニュース記事の操作をすべてひとつのクラスにするのは間違いです。そして、データベースドライバは読み書きを両方持ったクラスにするのが正解です」とあって、すぐには理解できなさそうだなと感じた。 もっとうまく、単一責任原則に従ってコードを分けれるようになりたい。 FizzBuzz問題をSOLID原則に則って書いたコードには感動した。本当、FizzBuzzみたいな単純な問題だったとしても、こんなキレイに分けることができるのかと…。この書き方は、自分だと思いつかないだろうなぁ。 こういうコードを書けるようになりたい。 なお、このFizzBuzz問題を思いついたのはテスト駆動開発で設計したからとのことで、テスト駆動開発がただたんにテストファーストを行うということだけではないということを初めて知った。 自分の能力だと、テスト駆動開発は難しくて躊躇していたけど、そもそも設計がうまくできてないからテスト駆動開発もできてないのだろうなと思った。 途中、FizzBuzz問題のコードで、3や5で割り切れない数字においての関数において、 if($n % 3 == 0 || $n % 5 == 0){ return ""; } とダメな例が提示されていたけど、まさにうちの会社の2年目の若い子がこういうことやる子だなと思った。 プログラミング自体はできる子なのだけど、なぜか特定の条件でうまく動かない時に、なぜうまくいかないのかを調べずに、その特定の条件の場合でも動くコードを書いたりしてね…(その特定の条件の場合は、フラグをたてる等) そうはいっても、自分も全くやらないかというと多分そんなことはないので、気を付けたいと思う。 ソフトウェア設計においては、インターフェースという記述が重要になってくるのだろうなと。プログラミングを書く上で、抽象クラスを書くことはあっても、インタフェース(interface)を書くことって滅多にないので、活用していきたいと思った。 後、依存性注入についても、もっと活用していきたいと思った。ただたんにコンストラクタの引数で受け取るというイメージしかなかったけど、重要な概念なのだろうなと思う。
Posted by 
- ネタバレ
※このレビューにはネタバレを含みます
# PHPで書かれた極めて素晴らしい設計の技術書 ## 面白かったところ - 想定読者が中級者向けの設計本に関わらず採用言語がPHPで、絶妙に痒い所に手が届かない感じが味わえるところ - クリーンアーキテクチャからドメイン駆動設計、テスト駆動開発まで幅広く `PHP` で学べる点 ## 微妙だったところ - サンプルコードをコピー&ペーストできるリポジトリがなかったところ ## 感想 初心者、入門者用PHPの技術書やフレームワークの専門書は夜にあふれているが、設計に関する本はなかなかない。 他の言語で上梓された設計本を手にとって自分なりにPHPで写経したことは今までで何度もあったけれど、1つの答えとして当本を手に取れたことはとても良かった。 デザインパターン周りはイマイチ頭に残っていないので、また必要になったら開きたい。
Posted by 
