【2023最新】「デザインパターン」のおすすめ本!人気ランキング
- CODE COMPLETE 第2版 上 完全なプログラミングを目指して
- 増補改訂版Java言語で学ぶデザインパターン入門
- オブジェクト指向における再利用のためのデザインパターン
- エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)
- Head Firstデザインパターン 第2版 ―頭とからだで覚えるデザインパターンの基本
- 増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編
- Effective Java 第3版
- Java言語で学ぶデザインパターン入門第3版
- リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- Game Programming Patterns ソフトウェア開発の問題解決メニュー (impress top gear)
並行処理の基礎から応用まで、Javaのコードで徹底解説。 Java言語のスレッド マルチスレッドプログラムの評価基準 Single Threaded Execution-この橋を渡れるのは、たった1人 Immutable-壊したくとも、壊せない Guarded Suspension-用意できるまで、待っててね Balking-必要なかったら、やめちゃおう Producer‐Consumer-わたしが作り、あなたが使う Read‐Write Lock-みんなで読んでもいいけれど、読んでる間は書いちゃだめ Thread‐Per‐Message-この仕事、やっといてね Worker Thread-仕事がくるまで待ち、仕事がきたら働く Future-引換券を、お先にどうぞ Two‐Phase Termination-あとかたづけしてから、おやすみなさい Thread‐Specific Strage-スレッドごとのコインロッカー Active Object-非同期メッセージを受け取る、能動的なオブジェクト マルチスレッドプログラミングのパターン・ランゲージ
Java8で新たに導入されたラムダとストリームに関する章を新規に追加し、第2版の78項目から90項目に増加した。 Javaプログラマーにとって必読の定番書『Effective Java』の改訂第3版。 この第3版では、Java 8で新たに導入されたラムダとストリームに関する章が新規に追加されたほか、オプショナル、インタフェースでのデフォルトメソッド、try-with-resources文、@SafeVarargsアノテーション、モジュールなどの機能を扱った項目を含み、第2版の78項目から90項目に増加しています。 今日ではJavaは大きく複雑になり、並列実行から、繰り返し、各種データの表現まで、多くの事柄に対して多様な抽象化を持ち合わせています。 この大きさと複雑さを考えると、最新のベストプラクティスの指導書はなおさら重要です。 本書は多くのデザインパターンとイデオムを示すコード例を含んでおり、プログラミング言語Javaの正しい理解と、簡潔で明瞭で正確なソフトウェアの設計に役立つでしょう。 日本語版によせて 訳者まえがき Effective Javaによせて まえがき 謝辞 第1章 はじめに 第2章 オブジェクトの生成と消滅 第3章 すべてのオブジェクトに共通のメソッド 第4章 クラスとインタフェース 第5章 ジェネリックス 第6章 enumとアノテーション 第7章 ラムダとストリーム 第8章 メソッド 第9章 プログラミング一般 第10章 例外 第11章 並行性 第12章 シリアライズ 付録 第2版に対応する項目 参考文献 索引
ソフトウェア開発の原則・デザインパターン・プラクティス完全統合。すべての悩めるプログラマのための処方箋。Software Development誌Jolt Award受賞作。 第1部 アジャイル開発 第2部 アジャイル設計 第3部 給与システムのケーススタディ 第4部 給与システムのパッケージング 第5部 気象観測所のケーススタディ 付録
どうすれば、きれいで読みやすいコードになるのか?Javaの実例を通して学ぶリファクタリング入門書の決定版。ファウラーの名著『リファクタリング』に登場する、すべてのリファクタリングのエッセンスを簡潔にまとめた「リファクタリング一覧」(巻末付録)付き。 リファクタリングとは シンボリック定数によるマジックナンバーの置き換え-ソースに100と書いてあったら 制御フラグの削除-制御フラグでコードが読みにくいなら アサーションの導入-「これが成り立つはず」というコメントがあったら ヌルオブジェクトの導入-nullチェックが多すぎるなら メソッドの抽出-コードが長すぎて読みにくいなら クラスの抽出-クラスの責任が多すぎるなら クラスによるタイプコードの置き換え-オブジェクトの識別にintが使われていたら サブクラスによるタイプコードの置き換え-タイプコードごとに振る舞いが違うなら(1) State/Strategyによるタイプコードの置き換え-タイプコードごとに振る舞いが違うなら(2) 例外によるエラーコードの置き換え-エラー処理が散らばっているなら Factory Methodによるコンストラクタの置き換え-クラス名がnewでハードコードされていたら 観察されるデータの複製-モデルとレビューが混在していたら 委譲による継承の置き換え-IS‐A関係じゃないのに継承してたら 委譲の隠蔽-委譲先まで見えてたら 継承の分割-継承がもつれていたら
計算機の力を限界まで引き出すプログラミングテクニックが満載!基本ツールの使い方、GCCの拡張機能、セキュアプログラミング、さらにOSのシステムコールやインラインアセンブラを駆使した高度なテクニックまで解説。名うてのハッカーたちがこの一冊のために集結し、低レイヤのプログラミング技術の活用法とディープな楽しみ方を明らかにする。 1章 イントロダクション 2章 オブジェクトファイルHack 3章 GNUプログラミングHack 4章 セキュアプログラミングHack 5章 ランタイムHack 6章 プロファイラ・デバッガHack 7章 その他のHack
RESTというWebのアーキテクチャスタイルについて解説する初めての本格的な書籍。RESTFulなアーキテクチャの概念、RESTFulなサービスの特徴について述べ、RESTful Webサービスを設計するための基本的なルールであるリソース指向アーキテクチャについて解説する。現実のRESTFulなサービス、AmazonのS3、AtomPub、地図アプリケーションなどを例に挙げ、さらに、del.icio.usのAPIなど、RESTの制約を満たしていないが、よく知られているサービスを取り上げ、それらをRESTFulに再設計する方法も紹介する。 プログラマブルWebとWebサービス Webサービスクライアントの作成 RESTfulサービスの特徴 リソース指向アーキテクチャ(ROA) 読み取り専用のリソース指向サービスの設計 読み取り/書き込み可能なリソース指向サービスの設計 サービスの実装 RESTとROAのベストプラクティス サービスの基本要素 リソース指向アーキテクチャと大Webサービス RESTクライアントとしてのAjaxアプリケーション RESTfulサービスのためのフレームワーク RESTおよびRESTfulリソースの参考文献 最もよく使用される42のHTTPレスポンスコード 最もよくしようされるHTTPヘッダー
機械学習システムを実用化する設計・開発・運用ノウハウが身につく! 機械学習システムを実用化する 設計・開発・運用ノウハウが満載 【本書の概要】 本書は前著『AIエンジニアのための機械学習システムデザインパターン』(ISBN 978-4798169446)では触れられなかった、 機械学習システムを構築する上で実際に発生する課題を想定し、 動いているシステムやワークフローに機械学習を組み込む方法を解説した書籍です。 特にニーズの高い以下の機械学習システムの例を用意しています。 ・需要予測システム ・違反検知システム 【本書で学べる内容】 本書を読むことで、ケーススタディとして機械学習を実用化するための、 ・課題設定 ・ワークフロー設計 ・システム開発 ・チーム設計 を学ぶことできます。 【対象読者】 AI エンジニア、システムエンジニア 【目次】 第1章 課題、チーム、システム 第2章 需要予測システムを作る 第3章 動物画像アプリで違反検知システムを作る 第4章 動物画像アプリの検索に機械学習を活用する 【著者プロフィール】 澁井 雄介(しぶい・ゆうすけ) Launchable Inc所属。 MLOpsエンジニア、インフラエンジニア、バックエンドエンジニア、Androidエンジニア、ネコ2匹の飼い主。家に猫用ハンモックが4台ある。 本業でDeveloper ProductivityのためのMLOps・データ基盤を開発しつつ、MLOpsコミュニティの運営や副業に精を出している。 過去にはSIer、外資ソフトウェアベンダー、スタートアップで新規プロダクトの起ち上げ、大規模システム運用、チームマネジメントに従事。 前々職のメルカリにて機械学習をシステムに組み込むデザインパターンを執筆、公開。 ・GitHubで「mercari/ml-system-design-pattern」と検索 第1章 課題、チーム、システム 第2章 需要予測システムを作る 第3章 動物画像アプリで違反検知システムを作る 第4章 動物画像アプリの検索に機械学習を活用する
難解なスレッド処理を、理論から実践までやさしく解説。第一線の開発者=著者陣による、並行処理のすべて。 第1部 基礎編(スレッドセーフ オブジェクトを共有する ほか) 第2部 並行アプリケーションの構造を作る(タスクの実行 キャンセルとシャットダウン ほか) 第3部 生存、実行性能、試験(生存事故を防ぐ 実行性能とスケーラビリティ ほか) 第4部 高度な話題(明示的なロック カスタムシンクロナイザを構築する ほか) 付録A 並行処理のためのアノテーション
Pythonはリバースエンジニアやソフトウェアテスターといったセキュリティのプロにも人気の言語です。本書では、ハッキングツールやテクニックの概念を解説したうえで、Pythonを使ったバイナリ解析技法について詳しく解説します。読者は、独自デバッガの構築、バグを発見するためのツールの作り方、オープンソースのライブラリを活用した処理の自動化、商用ソフトとオープンソースのセキュリティツールを連動させる方法などについて学ぶことができるでしょう。日本語版では、本書をより深く理解するための補足情報とリバーシングに役立つツールについての解説を加筆しました。 開発環境のセットアップ デバッガの基本原理 Windowsデバッガの構築 PyDbg-ピュアPythonのWindowsデバッガ Immunity Debugger-両方の世界をまたにかけ フック DLLインジェクションとコードインジェクション ファジング Sulley Windowsドライバのファジング〔ほか〕
本書は「ブラウザ」に関連する、インターネットで使用される様々なネットワーク技術をまとめたものです。WebSocketやHTTP/2.0やWebRTCのように最新ブラウザで簡単に動作する新しい技術から、そのような技術の土台となるTCPやUDPやトランスポート層についてまで幅広くカバーします。 1部 ネットワークの基礎(レイテンシ・帯域幅入門 TCPの構成要素 ほか) 2部 ワイヤレスネットワークのパフォーマンス(ワイヤレスネットワーク入門 WiFi ほか) 3部 HTTP(HTTPの歴史 Webパフォーマンス入門 ほか) 4部 ブラウザAPIとプロトコル(ブラウザネットワーク入門 XMLHttpRequest ほか)
第1章 はじめに 第2章 オブジェクトの生成と消滅 第3章 すべてのオブジェクトに共通のメソッド 第4章 クラスとインタフェース 第5章 ジェネリックス 第6章 enumとアノテーション 第7章 メソッド 第8章 プログラミング一般 第9章 例外 第10章 並行性 第11章 シリアライズ
『メタプログラミングRuby』の改訂版。Ruby 2.xとRuby 1.9、Rails4に対応したことが最大のポイント。 『メタプログラミングRuby』の改定版! 本書改訂版はRuby 2.xとRuby 1.9、Rails4に対応したことが最大のポイント。言語のアップデートに伴い文法も変わっています。さらにJRubyに対応しています。
C言語にはじめて接するという人を対象に、C言語の基本的な知識を確実に身につけてもらうことを目的としました。利用頻度の高い知識だけを整理して提供し、誰でも簡単なプログラムをすぐに書けるように導いていきます。 はじめに覚えること どのように実行するのか プロトタイプがミスを防いでくれる 数値と文字列のあつかい よく使われる演算子 分岐とくりかえし Cプログラムの基本パターン 関数の作りかた なれると便利なポインタ プリプロセッサで前処理をする 標準ライブラリ関数を使う
ネットワークの定番構成パターンを徹底解説 長年の実務経験でしか得られないネットワークの物理設計・論理設計・運用管理のポイントがこの1冊で手に入る――。 本書では、現代のネットワークを社内LAN、インターネット接続、サーバLAN、拠点間接続の4つに分け、それぞれの構成の最適解を提示しています。 それぞれの最適解については、機器構成設計、物理構成設計、VLAN設計、IPアドレス設計、ルーティング設計、STP設計、FHRP設計、スタック構成設計、リンク冗長化設計、帯域拡張設計、経路冗長化設計などなど、詳細まで踏み込んで解説。 ネットワークを設計する方、情報システムの提案書/提案依頼書を描く方から、ネットワークの技術力を向上したい方まで、ネットワークにかかわるすべてのエンジニアの実務に耐えうる一冊です! <主な対象読者> ●知識をどう使えばよいかわからないネットワークエンジニア 資格試験やテキストなどを通じてネットワークの基礎知識をマスターしたネットワークエンジニアが最初にぶち当たる壁、それが現場のネットワークとのギャップです。実際に現場に出て、ネットワークを構築してみると、「あんなに勉強したはずなのに…」「おかしいな…」とギャップに苦しむことも多々あるでしょう。本書は現場で目にすることが多いネットワーク構成を、基礎知識レベルで解説していきます。そのギャップを埋める助けになることでしょう。 ●ネットワークを知る必要が出てきたサーバエンジニア 仮想化技術やストレージネットワーキング技術など、今やシステムに欠かせないものとなった技術の多くはネットワークをベースとしたアーキテクチャを採用しています。今やサーバはネットワークとともにあり、サーバエンジニアもそれ相応にネットワークの知識を求められることになるでしょう。本書は「サーバは得意なんだけど、ネットワークは苦手なの…」という、そんな少し偏食気味なサーバエンジニアにもネットワークを好きになってもらえるように、図を多用して説明しています。 ●社内ネットワークを運用管理するエンジニア 長く社内ネットワークを運用管理していると、サーバのサービスが壊れたり、ネットワーク機器が壊れたりと、いろいろなトラブルに見舞われます。トラブルシューティングをするときに最も役に立つ情報が「過去事例」です。本書は、過去に実際に起きたトラブル事例やその原因、運用管理に役立つTipsなどを詳しく説明しています。 Chapter0 本書の使い方 0.1 ネットワークデザインパターンの役立て方 0.2 本書の流れ Chapter1 Trustゾーンのネットワークデザインパターン 1.1 コアエッジ構成 1.2 有線+無線構成 1.3 2層STP+FHRP構成 1.4 2層スタック構成 1.5 3層フルルーテッド構成 1.6 3層フルスタック構成 Chapter2 Untrustゾーンのネットワークデザインパターン 2.1 シングルUTM構成 2.2 シングルUTM+デュアル回線構成 2.3 FHRP冗長化構成 2.4 Untrustワンアーム構成 2.5 シングルISPマルチホーミング構成 2.6 デュアルISPマルチホーミング構成 Chapter3 DMZゾーンのネットワークデザインパターン 3.1 ミニマム冗長化構成 3.2 サーバ仮想化構成 3.3 負荷分散インライン構成 3.4 負荷分散ワンアーム構成 3.5 ブレードサーバインライン構成 3.6 ブレードサーバワンアーム構成 Chapter4 WANゾーンのネットワークデザインパターン 4.1 IPsec VPN接続構成 4.2 マルチサイトIPsec VPN接続構成 4.3 デュアルWAN回線+シングルWANルータ構成 4.4 ハブアンドスポーク型IPsec VPN接続構成 4.5 EIGRP/BGP冗長化構成 4.6 OSPF冗長化構成 Chapter5 総合構成のネットワークデザインパターン 5.1 ゾーンとゾーンの接続パターン 5.2 小規模クラス総合構成 5.3 中規模クラス総合構成 5.4 大規模クラス総合構成
本巻は、シリーズ全体で使われる基本概念を説明しているという意味で、シリーズ全体の「共通部分」と考えることができる。他の巻と併読すべき参考書であるばかりでなく、データ構造、離散数学、機械語プログラミングのテーマについての講義用、自習用テキストとしても使える。新版では、元の文章の若々しい勢いを保ちながら、おそらく以前よりは成熟したと思われる判断を追加するために、文字通り一字一句を見直した。新しい演習問題が数十個追加された上、古い数十個の演習問題の解答を新しい改良されたものに置き換えた。 第1章 基礎概念(アルゴリズム 数学的な基礎 ほか) 第2章 情報構造(線形リスト 木 ほか) 付録A 数表(基本定数(十進) 基本定数(八進) ほか) 付録B 表記法索引
コンテナを使った分散システムの設計と実装について解説。分散システムの構築や運用を簡易化し、コンポーネントの再利用性を高める。 本書は、コンテナを使った分散システムのデザインパターンについて解説する書籍です。 コンテナとコンテナオーケストレーションを使うことで、分散システムの設計をパターン化でき、スケーラブルで信頼性の高いサービスをすばやく構築できます。 はじめにシングルノードパターンとして、分散システム内の個別ノード上に存在する再利用可能なパターンやコンポーネントについて説明し、次にWebアプリケーションのように継続的にサービスを提供するシステムを対象にしたマルチノードの分散パターンを紹介します。さらにイベント駆動処理、ワークフローの統合を含む大規模なバッチデータ処理の分散システムパターンを解説します。 可用性の高い分散システムの開発が効率的に行えるパターンを多数紹介する本書は、開発及びインフラエンジニア必携の一冊です。
驚異のベストセラー「プログラムはなぜ動くのか」第6弾。登場から10年、誰も書かなかったJavaの本質を解き明かします。 第1章 Javaとはそもそも何か 第2章 すべてのハードウエアを同じに扱う 第3章 すべてのOSを同じに扱う 第4章 言語仕様、実行環境ともにオブジェクト指向を追求 第5章 メモリー管理を自動化する 第6章 企業システムに必要な機能を搭載 第7章 オープンテクノロジーである意味 第8章 Javaが本当に目指すもの
「伝説のプログラマー」とプロジェクトチームの死闘。史上最大のパソコンソフト開発プロジェクトに秘められた人間模様を、熱いタッチで描くノンフィクションの名作。 第1章 コードの戦士 第2章 コードの王者 第3章 郎党 第4章 袋小路 第5章 熊の咆哮 第6章 ドッグフード 第7章 出荷モード 第8章 死の行進 第9章 バグ 第10章 ショーストッパー
機械学習で繰り返し登場する課題を30のパターンに分類し各々にベストプラクティスを提示・解説。初心者にも、現場でも役に立つ。 機械学習のベストプラクティスが学べるデザインパターン集! タイトルに「デザインパターン」とあるように、機械学習で繰り返し登場する課題を30のパターン(データ表現、問題表現、モデルの訓練、再現性、柔軟性、接続性、説明性、公平性などに関するもの)に分類し、それぞれについてベストプラクティスを提示・解説します。手を動かしながら機械学習を試したい初心者の実践的な入門書としても、現場のデータサイエンティストのリファレンスとしても読んでもらえる内容となっています。アメリカ海洋気象庁の研究者として、さらにGoogle Cloudのデータ分析&AI部門トップとしての豊富な経験に基づく実用本位の一冊です。 機械学習で繰り返し登場する課題を30のパターンに分類し各々にベストプラクティスを提示・解説。初心者にも、現場でも役に立つ。
ブラウザにURLを入力してからWebページが表示されるまでの道筋を探検。ネットワーク技術に関する説明内容を全面的に見直し、基礎的な解説を大幅に加筆した改訂版。 第1章 Webブラウザがメッセージを作る-ブラウザ内部を探検 第2章 TCP/IPのデータを電気信号にして送る-プロトコル・スタックとLANアダプタを探検 第3章 ケーブルの先はLAN機器だった-ハブとスイッチ、ルーターを探検 第4章 アクセス回線を通ってインターネットの内部へ-アクセス回線とプロバイダを探検 第5章 サーバー側のLANには何がある 第6章 Webサーバーに到着し、応答データがWebブラウザに戻る-わずか数秒の「長い旅」の終わり
2万4000部突破のベストセラーが5年ぶりの改訂!ネットワークにかかわるすべてのエンジニアの実務に耐えうる一冊。 2万4000部突破のベストセラーが5年ぶりの改訂! VLAN設計、アドレス設計、冗長化、仮想化などなど、オンプレミスなサーバサイトのネットワーク構築に必要な基礎技術と設計のポイントを、実際の構成例をもとに400超の図を用いて徹底解説。 第2版では、第1版の内容に加え、昨今のネットワークトラフィックの加速度的な増加によって新たに必要になってきた高速化設計や最適化設計、そしてそれらの現実についても説明していきます。 クラウドとオンプレミスの共存環境が進む中にあっても、ネットワークにかかわるすべてのエンジニアの実務に耐えうる一冊です! <主な改訂内容> ・ネットワークを高速化する技術(2.5G/5GBASE-T、10GBASE、40GBASE、100GBASE) ・サーバ/ネットワーク仮想化を前提とした設計手法 ・解説全体をよりわかりやすくブラッシュアップ ・ネットワーク設計と構築についての新しいノウハウを随所に追加 ・代表的な製品名などの情報を追加 第0章 本書の使い方 0.1 ネットワーク構築の流れ 0.1.1 ネットワーク構築は6フェーズで構成されている 0.1.2 ネットワーク構築は基本設計がポイント 第1章 物理設計 1.1 物理層の技術 1.1.1 物理層は規格がいっぱい 1.1.2 ツイストペアケーブルはカテゴリと距離制限が重要 1.1.3 光ファイバケーブルはガラスでできている 1.2 物理設計 1.2.1 構成パターンは2種類 1.2.2 安定している機器を選ぶ 1.2.3 最も大きい値で機種を決める 1.2.4 仮想アプライアンスをうまく利用する 1.2.5 安定したバージョンを選ぶ 1.2.6 配置と目的に応じてケーブルを選ぶ 1.2.7 意外と重要なポートの物理設計 1.2.8 上手にラックに搭載する 1.2.9 電源は2系統から取る 第2章 論理設計 2.1 データリンク層の技術 2.1.1 データリンク層は物理層を助けている 2.1.2 データリンク層はL2スイッチの動きがポイント 2.1.3 ARPで物理と論理をつなぐ 2.2 ネットワーク層の技術 2.2.1 ネットワーク層はネットワークをつなぎ合わせている 2.2.2 ルータとL3スイッチでネットワークをつなげる 2.2.3 IPアドレスを変換する 2.2.4 DHCPでIPアドレスを自動で設定する 2.2.5 ICMPでトラブルシューティング 2.3 論理設計 2.3.1 必要なVLANを洗い出す 2.3.2 IPアドレスは増減を考えて割り当てる 2.3.3 ルーティングはシンプルに 2.3.4 NATはインバウンドとアウトバウンドで考える 第3章 セキュリティ設計・負荷分散設計 3.1 トランスポート層の技術 3.1.1 アプリケーションを通信制御し、識別する 3.1.2 ファイアウォールでシステムを守る 3.1.3 負荷分散装置でサーバの負荷を分散する 3.2 セッション層からアプリケーション層の技術 3.2.1 HTTP がインターネットを支えている 3.2.2 SSL/TLSでデータを守る 3.2.3 FTPでファイル転送 3.2.4 DNSで名前解決 3.3 セキュリティ設計・負荷分散設計 3.3.1 セキュリティ設計 3.3.2 負荷分散設計 第4章 高可用性設計 4.1 冗長化技術 4.1.1 物理層の冗長化技術 4.1.2 データリンク層の冗長化技術 4.1.3 ネットワーク層の冗長化技術 4.1.4 トランスポート層からアプリケーション層の冗長化技術 4.2 高可用性設計 4.2.1 高可用性設計 4.2.2 通信フローを整理する 第5章 管理設計 5.1 管理技術 5.1.1 NTPで時刻を合わせる 5.1.2 SNMPで障害を検知する 5.1.3 Syslogで障害を検知する 5.1.4 CDP/LLDPで機器情報を伝える 5.2 管理設計 5.2.1 ホスト名を決める 5.2.2 オブジェクト名を決める 5.2.3 ラベルで接続を管理する 5.2.4 パスワードを決める 5.2.5 運用管理ネットワークを定義する 5.2.6 設定情報を管理する
信頼度&完成度No.1!C++デザインパターン習得に絶好の教科書。23のパターンを解読するC++ソースコードを一挙掲載。 第1部 オブジェクト指向とデザインパターン(オブジェクト指向とUML デザインパターンとは) 第2部 使用頻度が高いパターン(シングルトン ファクトリメソッド ほか) 第3部 使用頻度が中程度のパターン(コンポジット アダプター ほか) 第4部 使用頻度が低いパターン(ビルダー ブリッジ ほか)
システムハザード=コンピュータ制御システムに忍び寄る危険。解決の処方箋はここに!NASAのスペースシャトル事故調査委員会で貴重な改善点を数多く提供してきたナンシー・G・レブソン氏が、システムとソフトウェアの安全に携わるすべての読者に贈る珠玉の1冊。 第1部 リスクの性質(近代社会におけるリスク コンピュータとリスク 事故の階層的考察 事故の根本原因 ヒューマンエラーとリスク 自動化システムにおける人間の役割) 第2部 システム安全への序論(システム安全の創設 システム安全の基本) 第3部 定義とモデル(用語 事故とヒューマンエラーモデル) 第4部 セーフウェアプログラムの要素(安全を管理すること システムとソフトウェア安全プロセス ハザード分析 ハザード分析モデルと技法 ソフトウェアハザードと要求分析 安全性のための設計 ヒューマンマシンインターフェースの設計 安全性の検証) 付録(医療機器:Therac‐25の歴史 航空宇宙:アポロ13号、DC‐10型機、およびチャレンジャー号 化学産業:セベソ、フリックスボロー、ボバール 原子炉事故:ウィンズケール、スリーマイル島、およびチェルノブイリ)
『最新AWSサービス対応 新時代のアーキテクトを創る Amazonクラウドのノウハウをこの1冊に凝縮』 本書は、クラウドサービス「Amazon Web Services(AWS)」を使ってシステムを構 築するための設計パターンを集めた実務書です。改訂版では、最新のAWSに対応した57 パターンを収録しています。例えば、スケーラビリティーを活かすための設計やシス テム全体で耐障害性を高める設計、コストメリットを考慮した設計など、クラウド特 有のメリットを活かした設計を支援します。 クラウドでの典型的な問題とそれに対する解決策をこの1冊に凝縮。クラウドで何 ができるか知りたいといった初心者から、これからの新時代を切り拓くITアーキテク トの方まで、幅広くお役立ていただける1冊です。 【1章】 CDP(Cloud Design Pattern) [基本パターン] Snapshot/Stamp/Scale Up/Scale Out/Ondemand Disk [可用性向上パターン] Multi-Server/Multi-Datacenter/Floating IP/Deep Health Check/Routing-Based HA [動的コンテンツの処理パターン] Clone Server/NFS Sharing/NFS Replica/State Sharing/URL Rewriting/Rewrite Proxy/ Cache Proxy/Scheduled Scale Out/IP Pooling [静的コンテンツの処理パターン] Web Storage/Direct Hosting/Private Distribution/Cache Distribution/Rename Distribution/ Private Cache Distribution/Latency Based Origin [データアップロードのパターン] Write Proxy/Storage Index/Direct Object Upload [リレーショナルデータベースのパターン] DB Replication/Read Replica/Inmemory DB Cache/Sharding Write [非同期処理/バッチ処理のパターン] Queuing Chain/Priority Queue/Job Observer/Fanout [運用保守のパターン] Bootstrap/Cloud DI/Stack Deployment/Server Swapping/Monitoring Integration/ Weighted Transition/Log Aggregation/Ondemand Activation [ネットワークのパターン] Backnet/Functional Firewall/Operational Firewall/Multi Load Balancer/WAF Proxy/ CloudHub/Sorry Page/Self Registration/RDP Proxy/Floating Gateway/Shared Service/ High Availability NAT 【2章】 CDPの適用シナリオ 2-1. 画像動画配信サイト ・Web Storage パターン ・Direct Hosting パターン ・Cache Distribution パターン ・Rename Distribution パターン ・Storage Index パターン ・Write Proxy パターン ・Private Cache Distribution パターン ・Direct Object Upload パターン 2-2. Eコマースサイト ・Floating IP パターン ・Server Swapping パターン ・Multi-Server パターン ・DB Replication パターン ・Multi-Datacenter パターン ・Deep Health Check パターン ・Stack Deployment パターン ・Weighted Transition パターン 2-3. キャンペーンサイト ・Clone Server パターン ・Scale Out パターン ・NFS Sharing パターン ・NFS Replica パターン ・Read Replica パターン ・URL Rewriting パターン ・Ondemand Disk パターン ・Rewrite Proxy パターン ・Cache Proxy パターン ・Log Aggregation パターン ・Scheduled Scale Out パターン 【付録】 基本用語解説/クラウドコンポーネント/クラウドアーキテクティング原則
Oracleを安定して効率よく運用し、パフォーマンスを発揮させるために必要なノウハウをまとめた実践的な解説書。日本オラクルでDBコンサルタントとして活躍してきたエキスパート達が執筆しており、現場で培った"ワザ"を惜しみなく披露しています。Oracleの重要機能について、どのような思想のもとに実装されているのかを紹介し、それを踏まえた運用・管理手法を解説しています。 1 目からウロコのパフォーマンス分析テクニック 2 Oracleの頭脳を探れオプティマイザ徹底研究 3 性能が跳ね上がる秘伝のコネクションプーリング 4 こんなに使える!Enterprise Manager 5 Oracleの文字化け徹底対策 6 Oracleの正しいアップグレード指南
『AWSの基本操作からサイト構築まで 本書の手順に沿うだけで実践できる!』 クラウドサービス「Amazon Web Services(AWS)」を活用してWebサイトやシステムを構築するための実践書です。 AWSでアカウントを作成して仮想サーバーを立てるところからはじめ、Webサーバーをインストールしたり、 IPアドレスを割り当てたり、操作画面を付けて丁寧に説明します。 さらに、定型的な設計パターンを使って、画像動画配信サイトやEコマースサイトなどの構築まで実践します。 手順に沿って進むだけで、インターネットストレージ、データベースサービス、DNSサービス、 仮想ロードバランサーなど、AWSの各種サービスを使いこなせるようになります。 初めてAWSを利用する人から、AWSのサービスを使いこなせるようになりたい人まで必見の書です。 【1章】 Amazon EC2の基本操作 【2章】 基本クラウドデザインパターン 【3章】 画像動画配信サイトの構築 【4章】 Eコマースサイトの構築 【5章】 キャンペーンサイトの構築
「NOSQL」は、AmazonやGoogle、Facebook等に使われているデータベース技術の総称です。従来の常識だったSQLデータベースとは異なる仕組みとコンセプトで"ビッグデータ"に対応。これからのDB技術の要と目されています。本書はその全貌を、主要16製品の特徴、性能テストの結果まで含め、平易に解説しています。 序章 ビックデータの時代 第1章 NOSQLとは何か? 第2章 NOSQLのデータモデル 第3章 アーキテクチャの基本概念と技術 第4章 HadoopはNOSQL? 第5章 主なNOSQLデータベース製品 第6章 NOSQLデータベースの選択基準 第7章 NOSQLを使うビジネス
クロスプラットフォーム対応「PowerShell Core」の基本から活用まで詳細に解説! 従来は、Windows用のコマンドラインシェルとして普及していたPowerShellは、2018年1月にリリースされたPowerShell Core 6.0(以降PowerShell 6.0)から、macOSやLinuxにも対応してクロスプラットフォームで動作するようになりました。従来は、Windowsにおける自動化やシステム管理に特化していたPowerShellですが、クロスプラットフォーム対応になったことで活躍の場も広がりました。UNIXやオープンソース文化にも敬意を払いつつ、API指向でオブジェクトを扱うPowerShellは、これから学ぶ人にもやさしく、UNIXツールを使いこなすプロフェショナルにも対応する次世代のシェル・スクリプト言語です。 本書は、このPowerShell 6.0にフォーカスして、言語仕様と実践的な利用方法を解説したガイドブックです。本書のターゲットは、これからPowerShellを学ぼうという方、システム管理者(ITプロフェッショナル)、そしてソフトウェアやWebの開発者です。どの層の読者にとっても、PowerShellの持つ構造化データの扱いやすさやクロスプラットフォームを前提とした管理操作は、自動化の助けになることでしょう。 はじめに 第1章 PowerShellとは何か? なぜ使うのか? 1.1 PowerShellで何ができるのか 1.2 PowerShellをインストールする 1.3 PowerShellを起動する 1.4 PowerShellを触ってみる 1.5 サンプルを動かしてみる 1.6 PowerShellのスクリプティング 1.7 コマンドプロンプトとPowerShell 1.8 BashとPowerShell 1.9 クラウドとPowerShell 1.10 第1章のまとめ 第2章 PowerShellの基本 2.1 PowerShellとは 2.2 ヘルプ 2.3 基本的なシンタックス 2.4 変数 2.5 オブジェクト 2.6 演算子(オペレーター) 2.7 配列 2.8 パイプライン 2.9 フォーマッティング 2.10 モジュール 2.11 第2章のまとめ 第3章 PowerShellによる管理操作 3.1 ロギングとセキュリティ 3.2 リモーティング 3.3 ジョブ 3.4 認証 3.5 PSドライブとPSプロバイダー 3.6 第3章のまとめ 第4章 スクリプティングと自動化 4.1 制御構文 4.2 オブジェクトの操作 4.3 基本的なスクリプティングと関数 4.4 出力オブジェクトのカスタマイズ 4.5 スコープ 4.6 高度な関数 4.7 モジュール 4.8 エラー処理テクニック 4.9 クラス 4.10 第4章のまとめ 第5章 実践:PowerShell 5.1 実世界のPowerShell 5.2 困ったときに 5.3 クラウドプラットフォーム 5.4 .NETの相互運用 5.5 Desired State Configuration 付録 付録A オンラインリソース 付録B 各種一覧 付録C サンプルコード
Don Boxが解き明かすCLRの仕組み。 第1章 COMの改良版として見た共通言語ランタイム 第2章 コンポーネント 第3章 型の基本 第4章 型を利用したプログラミング 第5章 インスタンス 第6章 メソッド 第7章 メソッド(上級編) 第8章 ドメイン 第9章 セキュリティ 第10章 アウトサイドCLR
第1章 概要 第2章 開発環境の作成 第3章 C言語とオブジェクト指向 第4章 C言語とデザインパターン 第5章 C言語とリファクタリング 第6章 継続的インテグレーションとデプロイ 付録A サンプルプログラム
第1章 インフラデザインパターンとは何か 第2章 可用性要件の実現策-システムをダウンさせない 第3章 セキュリティ要件の実現策-システムを脅威から守る 第4章 性能・拡張性要件の実現策-システムの性能低下を防ぐ 第5章 運用・保守性要件の実現策-システム障害を見逃さない 第6章 インフラ構成の設計方式 第7章 クラウドコンピューティングを使った実現策 第8章 「実践」パターンベース設計
前著『ザ・ゴール』で、工場閉鎖の危機を見事に救ったアレックス。それから10年が経ち、ユニコ社多角事業グループ担当副社長として手腕を振るっていた。そんな彼をグループ会社の売却問題、家庭の問題など次々と難題が襲う…。ジョナに授けられた問題解決手法で、再び危機を乗り越えることはできるのか。
今後の主流は、アジャイル開発になる!どのアジャイル手法を使えばよいのか?その答えを抜群の説得力で解説!これから実践する人へ、名匠ラーマンが贈る入門書の決定版。 第1章 はじめに 第2章 反復型と進化型 第3章 アジャイル 第4章 物語 第5章 導入理由 第6章 根拠 第7章 スクラム 第8章 エクストリーム・プログラミング 第9章 統一プロセス 第10章 Evo 第11章 プラクティスのヒント 第12章 FAQ
「ピープルウエア」の著者トム・デマルコがすべての開発者に贈る、プロジェクト成功の極意。 チャンスとの出会い 管理ごっこ シリコン・バレジット 管理者の最初の仕事 支配者 世界最強のプロジェクト管理者 管理者の採用 リスク管理と生産性 人材管理の智将 モデルとシミュレーション〔ほか〕
プログラミングを人の行為の側面から考察した古典的名著。 第1部 人の活動としてのプログラミング(プログラムを読む よいプログラムとは ほか) 第2部 社会活動としてのプログラミング(プログラミンググループ プログラミングチーム ほか) 第3部 個人の活動としてのプログラミング(プログラミング作業の多様性 性格上の要因 ほか) 第4部 プログラミングの道具(プログラミング言語 プログラミング言語の設計原理 ほか) 第5部 エピローグ
第1章 市場を選ぶ(先んずるか、やられるか 需要と供給 ほか) 第2章 製品に投資する(魚の釣り方を学ぶ ビジネスの仕組みを学ぶ ほか) 第3章 実行に移す(今すぐに 読心術 ほか) 第4章 マーケティング…スーツ族だけのものじゃない(視点が違えば認識も異なる アドベンチャーツアーガイド ほか) 第5章 研鑽を怠らない(既に時代遅れである 君は既に職を失っている ほか)
日本最大級となる60万件以上の求人情報サイト「イーキャリアJobSearch」の主任設計者ほか数多くの経験を持つ著者が「現場でこんなことに困っていた」「解決策としてこうやった」「その結果こうなった」というリアルな経験と「なぜ、そうするのか」をふまえて解説! 1 小さくまとめてわかりやすくする 2 場合分けのロジックを整理する 3 業務ロジックをわかりやすく整理する 4 ドメインモデルの考え方で設計する 5 アプリケーション機能を組み立てる 6 データベースの設計とドメインオブジェクト 7 画面とドメインオブジェクトの設計を連動させる 8 アプリケーション間の連携 9 オブジェクト指向の開発プロセス 10 オブジェクト指向設計の学び方と教え方
「僕」の心をときめかす、数式と二人の少女。オイラー生誕300年に捧ぐ魅惑の数学物語。 第1章 数列とパターン 第2章 数式という名のラブレター 第3章 ωのワルツ 第4章 フィボナッチ数列と母関数 第5章 相加相乗平均の関係 第6章 ミルカさんの隣で 第7章 コンボリューション 第8章 ハーモニック・ナンバー 第9章 テイラー展開とバーゼル問題 第10章 分割数