IT・コンピュータ - 吉川邦夫 - 翔泳社作品一覧
-
5.0Windowsカーネルを活用するドライバ開発に必要な環境構築と カーネルドライバ開発の最初の取っ掛かりを提供する 【本書の内容】 本書は Pavel Yosifovich, "Windows Kernel Programming", Leanpub Publishing, 2019 の邦訳です。 本書はWindows用のカーネルドライバの開発方法について解説した書籍です。 カーネルドライバは、ハードウェアを扱うのではなく、プロセスやスレッド、 モジュール、レジストリなど、Windows特有のシステム自体を扱います。 そのため、注意深く目を配らなければならない範囲は広大です。 とはいえ、Visual Studioとデバッガーをはじめとする数種類のツールの使いかた さえ理解できれば、Windowsカーネルが持っているパワーを最大限に活用できる ドライバのプログラミングは難しいことではありません。 『Windowsカーネルドライバプログラミング』は、プログラミングをはじめるに あたって必要となる環境構築と、システムを構成するオブジェクト群を解説し、 重要なイベントの監視やイベントの抑制などに役立つ、フィルタードライバの開発 まで紹介します。 【本書のポイント】 ・フィルタードライバ開発に向けた最短距離 ・必要最小限のAPI解説 ・プログラムコードはC/C++ 【読者が得られること】 ・カーネルドライバ開発の概要がわかる ・カーネルドライバ開発に入門できる ・各種ツールを扱えるようになる ・Windowsシステムが理解できるようになる ・ハッカーを気取れる ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
5.0誰も教えてくれなかった、 ゲーム開発の基本を徹底的に学ぼう! ・ゲームとはどんなプログラムなのか? ・「あの機能」はどうやって実装されているのか? 3Dグラフィックスからサウンド、AIまで。 ゲームプログラマーになりたい人のみならず、 すべてのゲーム開発者が知っておきたい「基本」が詰まった、 ゲーム開発の教科書! C++の初歩は習得済みで、本気でゲームプログラミングを学びたい人が、 新人になる前に、確かな基礎力を磨ける一冊。 ====目次==== Chapter 1 ゲームプログラミングの概要 Chapter 2 ゲームオブジェクトと2Dグラフィックス Chapter 3 ベクトルと基礎の物理 Chapter 4 人工知能(AI) Chapter 5 OpenGL Chapter 6 3Dグラフィックス Chapter 7 オーディオ Chapter 8 入力システム Chapter 9 カメラ Chapter 10 衝突検知 Chapter 11 ユーザーインターフェイス(UI) Chapter 12 スケルタル(骨格)アニメーション Chapter 13 中級グラフィックス Chapter 14 レベルファイルとバイナリデータ 付録A 中級C++の復習 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
-【本書の内容】 Kotlinは、Javaとの相互運用を可能にし、Android OSでGoogleがフルサポートする静的型プログラミング言語です。 この言語は、Javaだけでは十全ではない(Javaだけでは実装に手間がかかりすぎる)、軽量かつ豊かな表現形式や、他言語ではすでに実装されている最新の機能を盛り込んでいます。 本書はこの新しい開発言語・Kotlinを使った正しく、効果的な開発方法と、この言語がもっている主要な概念と基礎的なAPIを丹念に説明します。とくにJetBrainsのIntelliJ IDE開発環境についても紹介しています。 経験豊富なAndroid開発者でも、はじめてプログラミング言語を学ぶ新人開発者でも、Kotlinの最初の原則から高度な使い方まで導いてくれることでしょう。 【本書のポイント】 ・Kotlinはもちろん、開発環境のインストールから詳解 ・サンプルソースコードの変更点がひと目で分かる ・PCだけではなく、Androidアプリまで網羅 【読者が得られること】 ・Kotlinによるアプリケーション開発 ・IntelliJを使った開発方法 ・Javaとの相互運用方法 【対象読者】 ・プログラミング初学者 ・Androidアプリ開発者 ・JavaからKotlinに乗り換えたい開発者 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
-基礎知識こそ開発者にとっての “銀の弾丸”だ! 【本書の内容】 本書は Douglas E. Comer, "Essentials of Computer Architecture, 2nd Edition", Taylor & Francis Group, LLC. 2017 の邦訳版です。 「コンピュータアーキテクチャ」という学術分野は、コンピュータ科学とコンピュータ工学を抱合しているだけに、深く広大です。 この膨大な知識をすべて習得するのは、専門家ならいざしらず、いわゆるIT系技術者あるいは、そのトバクチに立っている初学者にとっては、無理筋というものです。 とはいえ、これらの知見があれば、より強固な知識の土台を形成し、開発者として一歩も二歩も先に進むことができます。 本書はその膨大な知見の中から「プロセッサ」「メモリ」「入出力(I/O)」の三分野に焦点を当て、プログラマやデベロッパー、それらの初学者にとって、有効な知識の武器となるパートを平易に解説し、より深い知識への踏み台を提供してくれます。 一般教養的なコンピュータの動作原理を、よりプログラミングに近いところで理解するには、本書を入り口に歩を進めるのが近道となるはずです。 【本書のポイント】 ・コンピュータアーキテクチャのマップが手に入る ・開発者として一回り大きくなれる ・原理がわかるので緊急時にも慌てないココロをもてる ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
3.7さまざまなCUIアプリケーションを通して システム言語としてのRustを徹底詳解 本書は、 Tim McNamara, "Rust in Action: Systems programming concepts and techniques" Manning Publications, の翻訳書です。 【本書の内容】 ダイレクトにメモリを操作し、OSのシステムコールを活用することで高速性を維持しつつ、コンパイラの進化によって安全性も確保した開発言語・Rust。 本書は、ファイルI/Oを使った入出力プログラムから、キーバリュー型のDB操作やメモリ操作、生のTCPを使うネットワークプログラム。そしてプロセスやスレッド、割り込みや例外処理などの低レイヤからカーネルそのものまで扱うためのノウハウを、Rust固有のテクニカルタームとともに解説します。 著者のTim McNamaraは、15年以上の時間をかけて、テキストマイニング、自然言語処理、データ工学のエキスパートになりました。彼はRust Wellingtonのオーガナイザであり、Rustプログラミングのチュートリアルを、オフラインでも、TwitchとYouTubeを介したオンラインでも、定期的に開催しています。 【本書で取り上げるジャンル】 ・メモリ操作 ・ファイルとストレージ ・ネットワーク ・時間管理 ・プロセスとスレッド ・カーネル ・割り込みと例外処理 【読者が得られること】 ・Rustによるプログラミング基礎 ・Rust固有のプログラミング手法 ・システムプログラミングの勘所 ・コンピュータサイエンスの知識 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
-1巻3,960円 (税込)※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 Node.jsのコアからサードパーティモジュールまで、実働サンプルとともに味わい尽くす Node.jsとは、Ryan Dahlが「スケーラブルなネットワークプログラムを簡単に作成できる環境」として開発したものです。ここで重要なのは“簡単”ではなく“スケーラブル”という点です。JavaやPHPなどの言語による環境では、ハードウェアの制限が顕在化し、サーバーで処理ができる接続数を容易に拡張することができません。 Node.jsでは、接続方法を変えることでこの問題に対処し、ユーザーからの過剰な要求にもサーバー側ですぐに対処できるようにしたのです。だからといって、Node.jsだけで現状のネットワークプログラム実行環境すべてをまかなえるわけではありません。そのために日々Node.jsを拡張するモジュールが作成され、Node.js自体も更新されています。 本書は現在進行形で開発が進むNode.jsと、これを拡張するモジュールを使って(あるいは作って)、スケーラビリティを重視するネットワークプログラムの作成方法をイチからじっくり学びます。 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
4.5jQueryの開発者が語ったプログラミングの秘密 JavaScriptは現在のホームページ作りには欠かせないプログラミング言語です。GoogleやFacebookなどの先進のWebアプリケーションはjQueryなどのJavaScriptライブラリを利用して作られていますが、本書はjQueryの開発者であるジョン・レシグが自ら書き起こしたJavaScriptの開発技法書です。JavaScript言語の各種機能の利用方法から、バグ発見の方法、複数ブラウザへの対応方法まで、JavaScript開発者垂涎のテクニックをふんだんに盛り込みました。「Ninja」とは英語圏ではエキスパートやスーパープログラマの意味で使われる言葉です。本書では“モダンJavaScript開発”における一流プログラマの知識をまとめています。 ※本電子書籍は同名出版物を底本とし作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
2.0アセンブラとC11でIntel 64ビットプログラミングモデルを堪能する! 「IoT」というコトバが爆発的に広がり、老若男女だれもが知っているIT用語となった昨今ではあるけれど、そのインフラストラクチャとしてのPCアーキテクチャは、大多数の人々にとってはブラックボックスのままです。 とはいえ、そのブラックボックスを十全に理解し、各種ブラックボックスをフル活用できなければ、IoT自体の活用や発展・進歩はありえません。 本書はアセンブリとC言語を使用し、インテル製アーキテクチャの64ビット版が、コンパイルされたプログラムをどのように処理し、データをどのように、そしてどこに配置し、それらを使用しているのか、を克明に解説した1冊です。 すなわち、ネットワークにぶら下がって各種データをやり取りしているPCの、ごくごく基本的な動作原理をプログラミングすることで紐解きながら学ぶ、歯ごたえと滋養に満ちた学習書といえるでしょう。 アセンブラやC言語を多少なりとも知っていれば、知識の深度と対象への理解が増しますし、知らなくても必要最小限の知識を提供しているので、熱意さえあれば性能を重視したプログラムを書けるまで成長できるでしょう。 【本書の目的】 Intel x64をベースに、低レベルプログラミング領域における堅実な知識の蓄積と洞察力の向上を手助けすることです。最終的に、以下の事柄を目指します。 ・アセンブリ言語で自由自在に書くことができる。 ・Intel 64のプログラミングモデルを理解する。 ・C11で、保守が容易で堅牢なコードを書ける。 ・コンパイルのプロセスを理解し、アセンブリを解読できる。 ・コンパイルされたアセンブリコードのエラーをデバッグできる。 ・適切な計算モデルを使うことで、プログラムの複雑さを大きく減らせる。 ・性能が重視されるコードを書ける。 【本書の特徴】 C言語やアセンブリを知らなくても、それらの必要最小限の知識とともに、順序立てて体系を解説しています。 また、各章末には適切な問題を配置し、自身の理解度を把握できます。それらの解答はすべてGitHub上に展開されているので、容易に確認できますし、必要であればコンパイルし、実行して結果を確認することも可能です。 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
4.0※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 【本電子書籍は固定レイアウトのため7インチ以上の端末での利用を推奨しております。文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。ご購入前に、無料サンプルにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください】 分散型バージョン管理システム「Git」は、現代のプログラム開発では必須の技術となってきました。現在のソフトウェア開発は多人数のプロジェクトとなり、バグフィックス、バージョンアップ、異なるエディション(Windows版/Macintosh版など)への分岐が生じます。Gitは、プログラムの開発の履歴を管理し、以前のバージョンへ戻したり、改編箇所の衝突を回避したりといったソースコードの管理が可能です。 本書は、いままでGitを使っていなかった方でもしっかりとした知識が身に付くように執筆された入門書です。バージョン管理システムは以前からありましたが、Gitは分散開発への対応が充実しており、「決定版」として普及しています。また、インターネットのGit Hubと組み合わせたオープンなソフトウェア開発も実現可能です。 本書を読むことで、Gitの基礎が身につくのはもちろん、さまざまな使いこなし、プロジェクトへの適用方法、開発支援サービスの利用についての知識が得られます。たんなるGit解説書としてではなく、一から学べる入門書としてお読みいただけます。丁寧かつ充実した内容で、現場で応用可能な技術がしっかりと身に付く一冊です。 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
4.5【本書の内容】 比較的小さいけれど、どのようなスキルのプログラマ(含む予備軍)にとっても有用で有益なプログラミング言語がGoです。 本書は2009年に発表され、以来、コンパクトさとシンプルさを残したまま、さまざまなスキルをもったプログラマに愛される言語として成長してきたGo言語を意のままに操れるレベルを目指せる学習書です。 ビギナーにとっても、Webにある実行環境を使用することで掲載されたサンプルプログラムや、練習問題を実行できるよう配慮されていますし、スクリプト言語を使った経験があれば、ウォーミングアップは終わっています。スクラッチやエクセルのフォーミュラを使ったことがあったりHTMLを書いた経験があれば、本格的なプログラミング言語の第一歩を踏み出す格好のきっかけになるはずです。 もちろん、それなりの忍耐とか努力は必要ですが、火星探査機を構築しながら(!?)Go言語を完全習得できる、最初の1冊となるでしょう。 【本書のポイント】 ・特定のテーマごとに学習単元をユニット化 ・ユニットはさらに特定のトピックを扱うレッスンに分割 ・レッスン後はクイックチェック ・さらに練習問題を配置して知識を根付かせ応用力を ・問題に対する模範解答も完備 ・ローカルに開発環境を持っていなくても学習できる ・GitHub上にも最新の解答例を掲載 【読者が得られること】 ・Go言語の構文を理解できる ・Go言語を使ったプログラミング ・特色とメリットを活かした開発技法の習得 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。 (翔泳社)
-
3.5JavaScript(ES2015以降)をフル活用して 柔軟性に富んだWebアプリを作成しよう! フロントエンドもバックエンドも JavaScriptのスキルを120%活用する 本書は 「Get Programming with Node.js」 Jonathan Wexler, Manning Publications Co, 2019 の翻訳書です。 アプリケーションを構築できるプラットフォームは数多く存在します。Node.jsは、そのひとつですが、Webアプリケーション(インターネットを介してリクエストを処理し、応答として処理したデータとビューを返すアプリケーション)の構築に適している点が最大の特徴です。 本書は、純粋にJavaScript(ECMAScript 2015以降)だけを使ってアプリケーションを構築する手法と、その手立てを提供します。そのため、JavaScriptの機能と使い所の極意を否が応でも学ぶことになります。 また同時に、本書はWeb開発への導入編となるでしょう。Webアプリケーションを構築したことがないとか、内部的な仕組みを完全に理解していなかったという人は、本書で、その全貌を学ぶことができます。 本書の目標は、サンプルやコードを通じて、これらのコンセプトを説明することであり、サンプルを使い・変更して、読者が自分のアプリケーションを作れるようにすることにあります。 【本書のポイント】 ・9つのユニットと38の短い章構成 ・節ごとの理解度チェック ・章ごとの練習問題 ・豊富な補足事項とポイント解説 【読者が得られること】 ・Node.jsを使ったWebアプリケーション構築の基礎知識 ・Node.jsによる実用的なプログラミング能力 ・ECMAScript 2015以降の新しい機能を使ったプログラミング手法 ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
4.0API設計、非同期プログラミング、動的プログラミング、 並列処理をクールに使い倒す50の方法 【本書の内容】 “Effective SOFTWARE DEVELOPMNET SERIES”のC#エディション最新版。 もちろん、最新機能の完全網羅ではなく、日常的に遭遇しそうな問題を 解決する、実用的なアドバイスをさまざまなサンプルとともに提供します。 通常、これまでのバージョンにおいて、実装するにあたって困難だったり 手順が入り組んでいるなど、開発者の負担を軽減するために導入されるのが 新機能です。 馴染みのやり方ではなく、新しい手法を導入するのは心理的なハードルが 上がる場合もありますが、本書ではそのハードルをさげるため、なぜ言語の 補強によってより良い方法が可能になったのかまで、詳説しています。 【本書のポイント】 ・最新版C#に搭載された新機能を把握できる ・上記新機能を的確に使えるようになる ・なぜそうしたほうがよいのか、を理屈ベースで理解できる ・よりよいプロダクトを構築できるようになる 【本書の目次】 第1章:データの型 第2章:API設計 第3章:タスクベースの非同期プログラミング 第4章:並列処理 第5章:動的プログラミング 第6章:グローバルなC#コミュニティに参加しよう ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。
-
4.6単なる延命策ではない、進化させるという発想! コードがレガシーになるのはなぜでしょう。その要因を特定し、 コードベースの品質を上げるためには、なにをすればいいのでしょう。 本書はこれらの古くて新しい質問に真摯に答えてくれるでしょう。 単純な(でも難解な)クラスやメソッドレベルのリファクタリングから、 モジュールあるいはコンポーネント全体を視野に入れた、広い範囲のリファクタリング。 また、最終手段としてのリライトに関するノウハウ(機能低下の予防方法や回避方法、 各種データのスムーズな移行など)を示します。 また、単に手を動かすだけではなく、いつもソフトウェアをフレッシュにしておくべく、 自動化のための方法論や、そのインフラストラクチャの作り方を詳解します。 「動いているものは触るな」が鉄則のソフトウェアを、それでも要請に応じて よりレスポンシビリティの高い、そして新機能を盛り込まれた、 メンテナンスしやすいソフトウェアへと進化させるためのノウハウを学んでください。 【目次】 第1部:はじめに 第1章:レガシープロジェクトの難題を理解する 第2章:スタート地点を見つける 第2部コードベース改良のためのリファクタリング 第3章:リファクタリングの準備 第4章:リファクタリング 第5章:リアーキテクティング 第6章:ビッグ・リライト 第3部リファクタリングの先へ― プロジェクトのワークフローと基盤を改善する 第7章:開発環境を自動化する 第8章:テスト、ステージング、製品環境の自動化 第9章:レガシーソフトウェアの開発/ビルド/デプロイを刷新する 第10章:レガシーコードを書くのはやめよう! ※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。 ※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。 ※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。 ※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。