タグ

ブックマーク / www.oreilly.co.jp (11)

  • 脳に収まるコードの書き方

    ソフトウェアは複雑さを増すばかりですが、人間の脳は限られた複雑さしか扱えません。ソフトウェアが思い通りに動くようするには、脳に収まり、人間が理解できるコードを書く必要があります。 書は、拡張を続けても行き詰ることなくコードを書き、複雑さを回避するための実践的な方法を解説します。最初のコードを書き始めるところから機能を追加していくところまでを解説し、効率的で持続可能なペースを保ちながら、横断的な問題への対処やトラブルシューティング、最適化を行なう方法を説明します。自分のチェックリストからチームワーク、カプセル化から分解、API設計から単体テストまで、ソフトウエア開発の重要な課題に対する考え方やテクニックを紹介します。サンプルプロジェクトで使うコードは、Gitリポジトリの形で入手でき、試しながら学べます。 有効に機能するプロセスを選び、効果のない方法論から脱却する方法。チェックリストを使うこ

    脳に収まるコードの書き方
  • 詳解 Rustアトミック操作とロック

    Rustでは並行性を持つプログラムを安全に記述することができます。書はその並行プログラムの基盤となる、アトミック操作とロックの仕組みについての理解を深め、より安全で効率の良いコードを書くための指南書です。難解だと思われがちなアトミック処理、ロック、メモリオーダリングのような低レイヤを詳細に理解し、アーキテクチャやOSによる相違を知ることで、安全で高性能な並行処理プログラムを実装できるようになります。Rustユーザはもちろん非ユーザにとっても低レイヤプログラミングの優れたリソースとなる一冊です。 序文 まえがき 1章 Rust並行性の基 1.1 Rustのスレッド 1.2 スコープ付きスレッド 1.3 所有権の共有と参照カウント 1.3.1 static 1.3.2 リーク 1.3.3 参照カウント 1.4 借用とデータ競合 1.5 内部可変性 1.5.1 Cell 1.5.2 RefC

    詳解 Rustアトミック操作とロック
  • ソフトウェアアーキテクチャの基礎

    ソフトウェアアーキテクチャとは、ソフトウェアシステムの成功に欠かせない重要な土台です。そのためソフトウェア開発者には、効果的なアーキテクチャを実現するスキルが求められます。書は、そうした効果的なアーキテクチャを設計、構築、維持するアーキテクトになるために必要なスキルや知識を、現代的な視点から整理して包括的に解説する書籍です。 ソフトウェアアーキテクチャの定義から、アーキテクトの役割、モジュールや結合、アーキテクチャスタイルといったアーキテクチャ設計の基礎、チームやステークホルダーと効果的にコラボレーションしていくために必要なソフトスキルまで、さまざまなトピックについて実践的な例とともに説明します。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正

    ソフトウェアアーキテクチャの基礎
  • セキュリティエンジニアのための機械学習

    情報セキュリティエンジニアや研究者を読者対象とした機械学習の入門書。フィッシングサイト、マルウェア検出、侵入検知システムなどの情報セキュリティ全般の課題に対して、機械学習を適用することでどのようなことが可能になるのか? 書ではサイバーセキュリティ対策でとても重要なこれらの知識を実装レベルで身につけることができます。また、どうすれば機械学習による検出を回避できるか、という点についても同時に解説します。サンプルコードはPython 3対応。Google Colaboratory上で実際に手を動かしながら学ぶことができます。 訳者まえがき まえがき 1章 情報セキュリティエンジニアのための機械学習入門 1.1 なぜ情報セキュリティエンジニア機械学習の知識が必要なのか 1.2 書のコードサンプルの実行環境 1.2.1 Google Colaboratory入門 1.2.2 GPU/TPUラ

    セキュリティエンジニアのための機械学習
  • ゼロトラストネットワーク

    ゼロトラストネットワークとは、ファイアウォールやVPNに代表される従来型のセキュリティ(境界防御モデル)が通用しなくなった現状を踏まえ、すべてのトラフィックを信頼しないことを前提とし、検証することで脅威を防ぐというアプローチです。近年、クラウドサービスやモバイルの普及により、セキュリティで守るべき内外の境界があいまいになってきたことにより、強く注目を集めています。書は、ゼロトラストネットワークの概念と実装するために必要な知識が学べる解説書です。基的な概念の説明に始まり、デバイス、ユーザー、アプリケーション、トラフィックの信頼を実際にどのように確立していくかについて、詳しく紐解いていきます。また、Googleのゼロトラストモデル「BeyondCorp」を含む2つの詳細なケーススタディも収録しており、実装に役立つ知識を深めることができます。 はじめに 1章 ゼロトラストの基礎 1.1 ゼロ

    ゼロトラストネットワーク
  • O'Reilly Japan - ベタープログラマ――優れたプログラマになるための38の考え方とテクニック

    プログラマとしてのキャリアをスタートすると、構文や設計を理解するだけでなく、その他の様々な事柄を理解し習得する必要があると気づきます。書は、優れたコードを作りだし、人々と効率的に働く生産性の高いプログラマになるための考え方とテクニックを38のテーマで紹介します。はじめに、コード1行1行の書き方、デバッグやエラー処理、コードの改善方法など開発現場でのコーディングを取り上げます。次にコードを単純に保つこと、コード変更やテスト、リリースなどソフトウェアを開発する際の考え方や心構えを扱います。個人的な活動として、継続的な学習方法と停滞を避けるための課題の見つけ方など、自らを成長させる方法も紹介。さらに組織の中で他の人とコミュニケーションを取りながら、効果的に働くための習慣を解説します。『Code Craft』の著者Pete Goodliffeが、自らの経験を元に「優れたプログラマ」になるための考

    O'Reilly Japan - ベタープログラマ――優れたプログラマになるための38の考え方とテクニック
  • サーバーレスシングルページアプリケーション

    Webアプリケーションにまつわる様々なリスクとコストを取り除くサーバーレスアーキテクチャをとり入れれば、強力なWebアプリケーションを素早く構築することができます。書は、実際に動くアプリケーションを作りながら、サーバーレスアーキテクチャの特徴について学びます。 S3でアプリケーションをすばやくデプロイする方法、CognitoでGoogleやFacebookなどのIDプロバイダと接続しユーザーIDを管理する方法、DynamoDBでブラウザから直接ユーザーデータを読み書きし、API GatewayAWS Lambdaでカスタマイズしたマイクロサービスを構築する方法などについて豊富なサンプルコードを使って解説します。サーバーレスアプローチのシングルページアプリケーションを設計、コーディング、テストして、再び設計にフィードバックする一連の流れを実践的に学べる書はエンジニア必携の一冊です。 正

    サーバーレスシングルページアプリケーション
  • ゼロから作るDeep Learning

    ディープラーニングの格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優れているのか? なぜ層を深くすると認識精度がよくなるのか? といった“Why”に関する問題も取り上げます。 関連ファイル サンプルコード 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正

    ゼロから作るDeep Learning
  • Serverspec

    書は、Serverspecの開発者自身により書かれた初の書籍です。機能の詳細、動作仕様や内部のアーキテクチャ、ソースコードレベルで拡張する方法、開発に至る経緯や開発に関する哲学など、開発者自身にしか書けない包括的な内容を紹介。Serverspecとその周辺について既にある程度の知識や理解があるが、さらに踏み込んだ内容が知りたい、自分の手足のように使いこなしたい、もっと高度で詳細な情報を知りたい、思い通りに拡張したいと考える開発者やシステム管理者なら必携の一冊。伊藤直也氏による「まえがき」を収録。 まえがき はじめに 1章 Serverspecの紹介 1.1 Serverspecが生まれた経緯 1.2 Serverspecとは何か 1.3 Serverspecの利用目的 1.4 Serverspecの必要性 1.5 Serverspec開発の哲学 1.6 Serverspecのオフィシャル

    Serverspec
  • 実践 遺伝的アルゴリズム

    書は、人工知能技術の1つである遺伝的アルゴリズムを用いて、「ナンバーエリア」または「四角に切れ」と呼ばれる、数字だけではなく長方形という図形的な要素が入ったパズルの問題の自動生成について説明します。 理論の説明は最小限にし、実装を詳細に説明。後半ではパズル作家が問題を作る際に考慮するような、パズル問題として差をつける特長をプログラムに組み込むことも説明します。書でナンバーエリアに挑戦することで、さまざまなパズル生成への応用力が身につき、パズル以外への適用も可能になるでしょう。 なお、書はEbook版のみの販売です。 まえがき はじめに 書の表記 サンプルコードの使用について 意見と質問 導入部 遺伝的アルゴリズムとは 巡回セールスマン問題への適応例 1章 遺伝的アルゴリズムとは 最適化問題 遺伝的アルゴリズム 2章 巡回セールス問題への適用 巡回セールスマン問題 GUIプログラム

    実践 遺伝的アルゴリズム
  • 実践 機械学習システム

    書は、実際に手を動かしながらシステムを作成し、そのエッセンスを身につけることを目的とした機械学習システムの実践的な解説書です。「データといかに向き合うか」という視点から、生のデータからパターンを見つける方法を解説します。Python機械学習の基、ライブラリの使い方をはじめ、具体的な例に基づいたデータセット、モデル化、レコメンドと、その改良、音声や画像の処理など、より重要な問題についても解説します。さらに、テキストや画像、音声に対して機械学習の手法を適用する方法を学び、機械学習関連技術の評価方法や、最適な選択を行うための比較方法について学びます。書で学んだツールと知識があれば、実際の問題を解決できる独自のシステムを作成できるようになるでしょう。 謝辞 原書の監修者について はじめに 1章  Pythonではじめる機械学習 1.1 機械学習Pythonはドリームチーム 1.2 

    実践 機械学習システム
  • 1