言語・プログラミング - 技術評論社作品一覧
-
4.5※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-13149-4)も合わせてご覧ください。 ITシステムやソフトウェアの基盤OSとして幅広く使われているLinux。エンジニアとしてLinuxに関する知識はいまや必須とも言えますが,あなたはそのしくみや動作を具体的にイメージすることができるでしょうか。 本書では,Linux OS における,プロセス管理,プロセススケジューラ,メモリ管理,記憶階層,ファイルシステム,記憶階層,そして仮想化機能,コンテナなど,OS とハードウェアに関するしくみがどのように動くのか,実験とその結果を示す豊富なグラフや図解を用いてわかりやすく解説します。 改訂に際しては全面フルカラー化。グラフや図解がさらにわかりやすくなり,ソースコードはC言語から,Go言語とPythonにアップデートしています。さらに仮想化,コンテナなどの章が加わりました。今どきのLinuxのしくみを本書でしっかり理解しておきましょう。
-
-◆MCPを制するものが生成AI技術を制する。◆ 現在のAIは確かに賢くなりました。ChatGPT、GeminiやClaudeは、人間のような自然な会話ができ、複雑な質問にも的確に答えてくれます。しかし、1つだけ決定的に足りないものがあります。それは「手」です。どんなに賢くても、ファイルを読むことも、データベースに接続することも、外部のAPIを呼び出すこともできません。 この限界を突破するのが、本書で学ぶMCP(Model Context Protocol)です。MCPは、AIに「手」を与える革命的な技術です。Anthropic社が2024年11月にオープンソース化したこの技術により、AIは単なる会話パートナーから、実際に作業を実行するパートナーへと進化します。 ■こんな方におすすめ ・生成AIを本格的に開発に利用したい、プログラマー、ITエンジニア、研究者、大学生、高専生など。 ■目次 序章 AIのUSB-Cが変える開発の未来 第1章 MCPを30分で体験する 第2章 MCPとは何か 第3章 最初のMCPサーバーを作る 第4章 JSON-RPCを理解する 第5章 MCPをもっと便利に使う2つの通信方式 第6章 データベース連携サーバー 第7章 外部API連携サーバー 第8章 汎用MCPツール群を作る――Web検索編/コード実行編 第9章 MCPホストを自作する――FastMCPで作る基本クライアントとマルチサーバー管理 第10章 MCPエージェントを作る――対話型AIアシスタントの実装 第11章 独自MCPサーバーの公開・共有 ■著者プロフィール 小野哲:ソフトウェア開発歴40年を超えるプロ技術者。当社では『逆算式SQL教科書』『最新図解 データベースのすべて』『3ステップで学ぶOracle入門』『ソフトウェア開発にChatGPTは使えるのか?』『生成AIアプリ開発大全――Difyの探求と実践活用』などの書籍がある。そのほかに『現場で使えるSQL』(翔泳社)など。ウェブアプリからデータベースまで幅広い知見と技術を持つ。昨今では生成AIやPythonによるソフトウェア開発のコンサルも行う。
-
-◆実行計画から読み解く高効率で読みやすいコード◆ SQLはデータベース操作に特化した言語で、柔軟にデータを操作できます。ただし、独自のロジックに基づいているため、それを正しく理解しなければ、読みづらくパフォーマンスの出ないSQLになってしまいます。本書では、「条件分岐」「集約」「ループ」「結合」「更新」など日常的に実行する処理の良い書き方・悪い書き方を解説します。その際、データベース内部でどう処理が実行されているかを示す実行計画を読み解くことで、「なぜそう書くと効率が良いのか」「可読性や保守性が向上するのか」を実感を持って理解することを目指します。改訂に伴い、SQLに追加された機能など現在の現場に対応する形に加筆・修正しています。 ■こんな方におすすめ ・SQLにあまり詳しくないWebアプリケーションプログラマ、応用的な知識を身に付けたい初級のDBエンジニア ■目次 第1章:DBMSのアーキテクチャ──この世にただ飯はあるか ・1.1 DBMSのアーキテクチャ概要 ・1.2 DBMSとバッファ ・1.3 DBMSと実行計画 ・1.4 実行計画がSQL文のパフォーマンスを決める ・1.5 実行計画の重要性 第2章:SQLの基礎──母国語を話すがごとく ・2.1 SELECT文 ・2.2 条件分岐、集合演算、ウィンドウ関数、更新 第3章:SQLにおける条件分岐──文から式へ ・3.1 UNIONを使った冗長な表現 ・3.2 集計における条件分岐 ・3.3 それでもUNIONが必要なのです ・3.4 手続き型と宣言型 第4章:集約とカット──集合の世界 ・4.1 集約 ・4.2 カット 第5章:ループ──手続き型の呪縛 ・5.1 ループ依存症 ・5.2 ぐるぐる系の恐怖 ・5.3 SQLではループをどう表現するか ・5.4 バイアスの功罪 第6章:結合──結合を制する者はSQLを制す ・6.1 機能から見た結合の種類 ・6.2 結合のアルゴリズムとパフォーマンス ・6.3 結合が遅いなと感じたら 第7章:サブクエリ──困難は分割するべきか ・7.1 サブクエリが引き起こす弊害 ・7.2 サブクエリの積極的意味 第8章:SQLにおける順序──甦る手続き型 ・8.1 行に対するナンバリング ・8.2 行に対するナンバリングの応用 ・8.3 シーケンスオブジェクト・IDENTITY列・採番テーブル 第9章:更新とデータモデル──盲目のスーパーソルジャー ・9.1 更新は効率的に ・9.2 行から列への更新 ・9.3 列から行への更新 ・9.4 同じテーブルの異なる行からの更新 ・9.5 更新のもたらすトレードオフ ・9.6 モデル変更の注意点 ・9.7 スーパーソルジャー病:類題 ・9.8 データモデルを制す者はシステムを制す 第10章:インデックスを使いこなす──秀才の弱点 ・10.1 インデックスと言えばB-tree ・10.2 インデックスを有効活用するには ・10.3 インデックスによる性能向上が難しいケース ・10.4 インデックスが使用できない場合どう対処するか Appendix A:PostgreSQLのインストールと接続設定 Appendix B:MySQLのインストールと接続設定 Appendix C:演習問題の解答 ■著者プロフィール ミック:主に大規模データベースシステムの構築やパフォーマンス設計およびチューニングを専門とするDBエンジニアとして活動。2018年より米国シリコンバレーに活動拠点を移し、技術調査とビジネス開発に従事した後、2021年に帰国。現在は先進技術の調査に従事している。著書に『SQL緊急救命室』(技術評論社)、『達人に学ぶ DB設計徹底指南書 第2版』(翔泳社)、『センスの良いSQLを書く技術』(KADOKAWA)など多数。
-
5.0「脅威インテリジェンス」とは,攻撃者が利用した攻撃手法,攻撃の目的や動機など,脅威となる攻撃者の情報を収集・分析し,導き出された知見を防御に役立てていくという考え方です。本書では,脅威インテリジェンスの基礎理論を紹介した後,組織ごとの目的を意識した脅威インテリジェンスの活用方法,各種フレームワークの使い方,インテリジェンスの収集・分析・活用・共有方法などを丁寧に解説します。脅威インテリジェンスが組織にどのようなメリットをもたらすのか,どのようにインテリジェンスを利用すれば良いのか,本書を読むことで正しく理解・実践できるはずです。
-
4.4※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-12784-8)も合わせてご覧ください。 本書は,より成長させやすいコードの書き方と設計を学ぶ入門書です。 システム開発では,ソフトウェアの変更が難しくなる事態が頻発します。コードの可読性が低く調査に時間がかかる,コードの影響範囲が不明で変更すると動かなくなる,新機能を追加したいがどこに実装すればいいかわからない……。 変更しづらいコードは,成長できないコードです。ビジネスの進化への追随や,機能の改善が難しくなります。 成長できないコードの問題を,設計で解決します。
-
-◆あなたのGoのコードを「一段階」レベルアップするテクニック集がGo 1.24に対応◆ Go言語ユーザーとして、「もう一段レベルアップしたい」「開発に使いたい」と思っている方に向けた、Go言語の解説本です。関数やパッケージの使い方、並行処理、テストといった基本的なトピックにおいて、「こう書くと綺麗になる」「こう書くとパフォーマンスが上がる」といったエッセンスを紹介します。後半ではCLIアプリ/Webアプリの開発手順や、現場で使われている便利なパッケージなど、著者が業務やOSSの開発で培った技術をふんだんに紹介します。改訂にあたり、Go言語のバージョンを1.24.2に対応させたほか、新たに導入されたiterパッケージとlog/slogパッケージの活用法、AIやWebAssemblyについてのトピックを追加しました。 ■こんな方におすすめ ・Go言語をこれから使おうとする方 ・すでにGo言語を使っており、レベルアップしたい方 ■目次 第1章 プログラミング言語Goとは 第2章 開発環境の準備 第3章 基本的な文法 第4章 基本テクニックとベストプラクティス 第5章 Webアプリケーションの開発に必要な要素 第6章 速いプログラムのためのテクニック 第7章 テストにおけるテクニック 第8章 ベンチマークにおけるテクニック 第9章 GoによるCLIアプリケーション開発 第10章 GoによるWebアプリケーション開発 第11章 GitHubでの開発における勘所 第12章 データベースの扱い方 第13章 Goとクラウドサービス ■著者プロフィール mattn(まっつん):さまざまなOSSにコントリビュートを行うITエンジニア。月刊誌「Software Design」にて連載記事「Vimの細道」のほか、Vim、Go言語に関する記事を多数執筆。共著に『みんなのGo』。Google Developers Expert(Go)。
-
3.8「サービスのデザインはログのデザインから。」良いサービスを作り上げるには,ログデータを収集し,改善を続けるシステムの構築が必要です。本書は,ログデータを効率的に収集するFluentdをはじめ,データストアとして注目を集めているElasticsearch,可視化ツールのKibanaを解説します。本書を通して,ログ収集,データストア,可視化の役割を理解しながらデータ分析基盤を構築できます。2014年に刊行した「サーバ/インフラエンジニア養成読本ログ収集 可視化編」の記事をもとに最新の内容に加筆しています。
-
4.0システム運用はいま,転換期を迎えています。DX(デジタルトランスフォーメーション)の推進やクラウドサービスの普及により,運用に求められる考え方は急速に変化しました。クラウドをどう管理していくのか?サービスマネジメントに最適な運用とは?セキュリティへの意識は今のままでいいのか?時代の最先端に常にキャッチアップできる運用チームを作り上げるための,継続的な運用改善ノウハウをまとめました。
-
3.7アルゴリズムは,プログラミングを用いて問題を解決していくには欠かせない大切な道具です。一方,アルゴリズムを理解し,そして応用できるようになるためには,ある程度の数学的知識と数学的考察力も大切です。 本書では,中学レベル~大学教養レベルの数学的知識のうちアルゴリズム学習に必要なものについて扱うとともに,有名なアルゴリズムと典型的な数学的考察について丁寧に解説します。さらに,知識をしっかり身に付けるための例題・演習問題が全200問掲載されています。
-
-2018年9月に経済産業省が公表したDXレポートによって、DX(デジタルトランスフォーメーション)の重要性や、「2025年の崖」といった言葉が広く浸透しました。めまぐるしく変化するグローバル競争の時代に企業が生き残るためには、新たなデジタル技術を導入・活用することに加え、市場の急激な変化に迅速に対応・追随できるビジネスの圧倒的なスピードが必要です。サービスマネジメントによってサービスへの投資やサービスの品質を管理し、サービスの価値を維持・向上させ、新たな価値を生み出し続けることが、これまで以上に重要になってきました。 本書は、DXの時代に求められるサービスマネジメントの形や役割、根底に流れる考え方や、ビジネスの進化・スピード・新しい価値の創出を支えるさまざまな技術やツールについて解説することで、デジタル革命の荒波を生き延びるための力となることを目指します。
-
3.7◆プログラミングスキルを持たないビジネスパーソンが、Difyを活用して実用的な生成AIアプリを自ら開発できるようになるための実践ガイド!◆ 「ChatGPTは便利だけど、うちの会社特有の業務には使えない」ーこのように感じているのであれば、Difyがその解決策になるかもしれません。 本書は、プログラミングスキルを持たないビジネスパーソンが、Difyを活用して実用的な生成AIアプリケーションを自ら開発できるようになるための実践ガイドです。Difyは複雑なコードを書かなくても、業務に直結するAIツールを短期間で実現できます。本書では、Difyの活用に必要な知識を、実際のアプリ開発を通して段階的に学べるよう解説しています。 仕事での生成AI活用による効率化を実現するには、「業務を最も理解している人」がエンジニアに依頼することなく自らAIアプリを開発できることが重要です。Difyを活用すれば、あなたや周りの人の業務を楽にするAIアプリを作れるようになります。生成AIの活用を検討しているすべてのビジネスパーソンに読んでいただきたい一冊です。 ■こんな方におすすめ ・生成AIを業務効率化に活用したいビジネスパーソン ・自社システムに生成AIを利用したい担当者 ・生成AI、RAG、AIエージェントを活用したシステムのPoC(概念検証)を行いたいエンジニア ■目次 Chapter1 大規模言語モデル活用の基本 ──1.1 言語モデルの基本理解 ──1.2 言語モデル活用の課題とDifyの必要性 ──1.3 言語モデルの仕組みと特性 ──1.4 プロンプトエンジニアリングの基本理解 Chapter2 Difyの環境構築とセットアップ ──2.1 Difyの基本と特徴 ──2.2 クラウド版Difyで作る初めてのアプリケーション ──2.3 コミュニティ版Difyのセットアップ ──2.4 言語モデルの設定とAPIの基礎 ──2.5 アプリケーションタイプの選択 Chapter3 テキスト処理を行うアプリケーション開発 ──3.1 本書での学習リソースの概要 ──3.2 変数機能で作るレポート生成アプリ ──3.3 高度なアプリタイプの基本 ──3.4 文章校正アプリケーションの開発 ──3.5 条件分岐を活用した文章処理アプリの開発 ──3.6 JSONモードで作る文章アシストアプリ ──3-7 問い合わせ対応チャットボット開発 Chapter4 ファイル処理を行うアプリケーション開発 ──4.1 ファイル処理機能で作るQA自動生成アプリ ──4.2 チャットフローによるPDF対話アプリの開発 ──4.3 複数の方法で実現するPDF要約アプリの開発 ──4.4 ワークフローを活用した複数ファイルの一括要約 ──4.5 マルチモーダルモデルによる画像処理の基本 ──4.6 音声認識を活用した議事録作成アプリの開発 Chapter5 Difyで実現するRAGアプリケーション開発 ──5.1 RAGによるビジネス課題の解決 ──5.2 はじめてのRAGアプリケーション開発 ──5.3 RAGシステムの仕組みと検索技術の基礎 ──5.4 複数の業務文章を活用したRAGアプリケーションの実践 ──5.5 文脈を考慮したRAG検索システムの実装 ──5-6 RAGシステムの現状の限界 Chapter6 ツールを活用したDifyの機能拡張と外部システム連携 ──6.1 ツール機能の基礎 ──6.2 ウェブ検索ツールを活用した情報収集アプリの開発 ──6.3 Google スプレッドシートと連携したデータ管理の基礎 ──6.4 Dify とGoogle スプレッドシートの連携 ──6.5 再利用可能なカスタムツールの作成と活用 Chapter7 AIエージェントを活用したアプリケーション開発 ──7.1 AIエージェントの基本 ──7.2 AIエージェントを活用した基本アプリ ──7.3 AIエージェント導入の考え方 ■著者プロフィール にゃんた:都内で働くAIエンジニア。主に生成AIの最新情報や技術解説を発信。2025年3月時点のチャンネル登録者は4万7000人、Udemyでは受講者数6000人。YouTubeチャンネル https://www.youtube.com/@aivtuber2866
-
3.8※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-12752-7)も合わせてご覧ください。 最短最速で今必要な知識を身につけるために,「情報のハブ」というコンセプトで書き下ろした新しいAWS入門書です。 「情報が多すぎて何から手を付ければいいかわからない」 「ボリュームのある資料のうち今自分に必要な情報はどれかがわからない」 「そもそもこの資料でよいのか,ほかに読んでおくべき資料があるのかもわからない」 新しい技術を学ぼうとすると,こんなハードルにぶつかりがちです。 本書は,玉石混交な情報リソースの中から,AWSエンジニアとして押さえておきたい情報源をふまえ,現場で活躍するエンジニアたちが必須の基礎知識を解説。AWSの根本にある考え方や最低限のAWSの構成,現場で必須となるセキュリティなどを知識が身につけられます。 AWSパートナー・オブ・ザ・イヤーに選ばれたクラスメソッドのエンジニア陣が送る,AWS初学者必携の1冊です。
-
3.01巻2,420円 (税込)◆プロのためのWeb API開発入門◆ 『Software Design』特集記事のうち、大好評を博したWeb API特集記事を1冊に収めました。 もはやWebにとって、Web APIこそが要です。Web APIを適切かつ効率的に開発できるかどうかが、Webサービスのその後を大きく左右するとも言えます。本書は、今まさにWeb APIを開発・運用する中で得られた実践的な知見が凝縮されています。 第1章では、OpenAPIを題材に、Webの基礎からさかのぼってWeb APIを再考し、REST APIの設計要素と、OpenAPIによるREST APIの設計手法およびREST APIの開発の実際の部分までつまびらかにします。第2章では、代わってGoogleが開発したRPCフレームワーク、gRPCにフォーカスし、その概要と、重要な技術要素であるProtocol Buffersの基礎を確認し、設計ポイントに触れ、gRPCによるWeb APIの実装を体験します。続く第3章では、GraphQLによるWebアプリケーションの開発・運用手法を一挙に解説。GraphQLの導入、TypeScript+Apollo Serverによるサーバサイドの実装、urqlやgraphql-codegenを駆使したクライアントアプリケーションの実装、そしてDatadogによるモニタリングやSentryによるエラートラッキングをベースとしたAPIの拡張手法にまで踏み込みます。 もちろん、Web APIは品質も重要です。本書では「テスト」「セキュリティ」の2つの観点でWeb APIの品質確保について考えます。第4章では、テストスコープをキーワードとしてWeb APIをテストする意義を見つめ直した上で、CRUD操作やエラーハンドリング、認証・認可設定、データ漏洩、バリデーション、メトリクスなど何をテストすべきか考え、Web APIテストを現実的に進める上で、カバレッジの目安やパフォーマンステストの実施フェーズ、実験計画などの考え方について考察します。第5章は、石川朝久氏や徳丸浩氏といったセキュリティの第一人者を中心に、Web APIのセキュリティに正面から向き合う極意を伝授します。Web APIはどのような攻撃にさらされるのか、リスクや攻撃手法、脆弱性から紐解き、「DevOps」「シフトレフト」を起点に、Web API設計からセキュリティを組み込む考え方を紹介。脆弱性診断や認証・認可設定の具体的な実施方法まで解説します。 まさしく、Web APIがまるごとわかる1冊なのです。 ■こんな方におすすめ ・Web開発者 ・REST API/GraphQL/gRPC開発者 ・Web APIのテスト手法やセキュリティ対策など、一歩進んだ開発/運用について学びたい人 ■目次 第1章 Web APIの作り方 ・1-1. Web APIの目的と技術要素 ・1-2. REST APIの設計で検討・決定すること ・1-3. OpenAPIによるREST API設計 ・1-4. OpenAPIを使ったWeb API開発の実際 第2章 gRPCで始めるWeb API開発 ・2-1. gRPCの特徴と登場背景 ・2-2. gRPCの技術要素とProtocol Buffersの基本 ・2-3. gRPC利用時のAPI設計ポイント ・2-4. gRPCによるWeb APIの実装 第3章 GraphQLでアプリケーション開発 ・3-1. GraphQLとは ・3-2. GraphQL導入 ・3-3. サーバサイドの実装 ・3-4. クライアントアプリケーションの実装 ・3-5. GraphQLアプリケーションの実運用 第4章 Web APIテスト 実践ガイド ・4-1. Web APIテストの意義 ・4-2. Web APIテスト時のチェック項目 ・4-3. 実践的なWeb APIテストの考え方 第5章 ゼロから学ぶWeb APIセキュリティ ・5-1. Web APIに潜むセキュリティリスク ・5-2. Web APIセキュリティの重要ポイント ・5-3. 脆弱性 ・5-4. 認証・認可
-
5.0GPUの基本構造と技術動向に焦点を当てた『GPUを支える技術』の増補改訂版。GPU/AIアクセラレータの劇的進化に合わせて,解説も大幅に増強しました。 3Dグラフィックス,ゲーム,VR/AR,科学技術計算,ディープラーニング,人工知能/AIに至るまで,GPU/並列処理の存在感は高まる一方です。その背景にあるハードウェアや計算処理への要求とはどのようなものでしょうか。本書ではGPUの今を軸に,ハードウェア&ソフトウェアの観点の技術基礎,SIMT/SIMDなどの超並列処理のポイント,欠かせない周辺技術まで徹底解説。実製品や事例を豊富に盛り込み,広くエンジニアの方々へ現場で役立つ技術知識を凝縮してお届けします。
-
5.0※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-12817-3)も合わせてご覧ください。 成長戦略という錦の御旗のもと,システム化やDX推進の指示が増大しています。しかし,あわててITプロジェクトを始動したあなたに,次の法則が立ちはだかります。「プロジェクトの半分以上が失敗する」。これは一体なぜでしょうか? 著者によれば,プロジェクトは「上流がにごれば,下流はもっとにごる」もの。ITベンダーが決まるまでの長い道のり「超上流」に問題のほとんどが集約されています。本書は,前著では触れることのできなかったこの問題に焦点を当て,ユーザー企業が安易な選択をしてしまうワナから説き起こします。そして,ベンダー選定の究極ノウハウ「ファネル選定」を提唱します。前著をお読みでない方も,本書を手引きにまずはこの最優先課題に取り組んでください。
-
4.0「働き方改革」が実施され,会社員の副業解禁も話題となり,さまざまな副業が活性化しています。そんな中でも今,注目を集めているのが,プログラミング副業。 プログラミングというと難しいイメージがありますが,難易度が低いものも多く,今までプログラミングなんてしたことない!という文系の方や初心者の方でも,しっかりとステップさえ踏めば確実に副業にすることができます。 本書では,初心者がどのようにプログラミングを学び,プログラミング副業で月収を得るかを,実際にプログラミングを副業として活かしてきた著者が丁寧にガイドします!
-
-1巻2,068円 (税込)IoT(Internet of Things)システムがさまざまな業界で具体的に構築され始めています。新規のシステムをゼロから構築するケースもありますが,既存のシステムや事業を前提に,IoTシステムを構築するケースも多く見られます。従来のITシステムとは異なり,IoTではハードウェアとソフトウェア両面でどのように設計するか,多岐にわたる知識とノウハウが必要となります。本書では,すでにさまざまなIoTシステムの構築に取り組んできた著者陣が,IoTシステムの設計に必要な基礎知識と実践的なノウハウをわかりやすく解説します。
-
4.5いまや普及期に入りつつあるIoT、興味のある方も多いのではないでしょうか。しかし電子工作に馴染みのない方にとっては、どこからどうはじめればよいのかわかりづらいことも多いでしょう。本書はそんな方に向けた一冊です。「ESP32」とういマイコンを使い、インターネットにつながる機器を実際に作っていきながら、IoT開発の世界に飛び込みましょう!
-
4.1現在話題となっている機械学習(Machine Learning)のツールやライブラリは内部でどのような計算をしているのか? 計算で得られた結果にはどのような意味があり,どのようにビジネス活用すればよいのか?――という疑問を持つエンジニアが増えています。本書は機械学習理論を数学的な背景からしっかりと解説をしていきます。そしてPythonによるサンプルプログラムを実行することにより,その結果を見ることで機械学習を支える理論を実感できるようになります。
-
4.0前作の『ITエンジニアのための機械学習理論入門』から、5年経過しましたが、AI(人工知能)や機械学習に対しての期待と関心はまったく衰えません。むしろ機械学習の利用はIT業界で当然のものとなり、さらなる活用がさまざまな場所で行われています。前作では一般的な機械学習について解説しましたが、試行錯誤しながら1つの解をもとめていく「強化学習理論」についてくわしく・やさしく解説します。理論を表現するいろいろな数式とそれらをプログラミングするためのPythonコードを並列しながらその理論の神髄にせまり、強化学習の基礎となるさまざまなアルゴリズムを体系的に学びます。
-
-1巻2,178円 (税込)Software Designで完売御礼の特集号,ITエンジニアと線形代数,ITエンジニアと微分積分,ITエンジニアと数学の各特集記事を再編集しまとめました。各記事,それぞれ筆者が再検討し修正,場合によって加筆をしております。内容はほぼ高校から大学の教養課程の数学と,Pythonを使ったプログラミングが中心。しかし,Deep Learnningや機械学習,人工知能の基礎を学ぶことができます。ITと数学の組み合わせはとてもパワフルです。他にも十分に応用できる基礎を本書で得てください!
-
3.9本書は決して残業をやめて楽をしようという本ではありません。 「決められた勤務時間内を全力疾走して成果を出すために勤務時間外はきちんと休む」 「そのために残業をやめよう」 このようなことを目的とした本です。 本書では,月100時間のサラリーマンエンジニアだった著者が,年間6か月の残業0と有給消化100%を達成するために試行錯誤した「残業しない働き方」を伝授します。 残業はなにが問題なのか 自分の心の壁はどうの乗り越えるのか 残業をしない状態でどうやって周りの信頼を得るのか 決められた時間内に成果を出すためにどうするか 残業しない事で新たに生まれた時間をどの使うか これらのことを考え,そして「ITの専門家」として最大限成果を上げるためのノウハウが身につきます。 日々,残業でくたくたになったエンジニアはもちろん,業務でなかなか成果を出せないエンジニアにもぴったりな1冊です。
-
-※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 【必要なAccess VBAコードを自分のプログラムにさっと組み込めます。】 Access VBAによるアプリ開発のための、究極のレシピ集。 定番のテクニックから目からウロコの達人ワザまで、目的別に参照しやすいよう体系的に集めました。プログラミングの基礎から文字列処理/数値処理/テーブル/クエリ/フォーム/レポート/ファイル処理、SQL……充実したレシピを1冊に凝縮。業務で日常的に使用している方、日々プログラム開発されている方には手放せない内容です。Access 2021/2019/2016/Microsoft 365版に対応。 ■こんな方におすすめ ・Accessを業務で使用している方 ・Access VBAで開発をされている方 ■目次 Chapter 1 Access VBAの基礎 Chapter 2 VBEとエラー処理 Chapter 3 文字列処理 Chapter 4 数値計算 Chapter 5 日付・時間 Chapter 6 テーブル・クエリ操作 Chapter 7 フォーム操作 Chapter 8 フォームのレコード操作 Chapter 9 コントロール操作 Chapter 10 印刷・レポート Chapter 11 Excel等のファイル処理 Chapter 12 データベース接続 Chapter 13 SQL ■著者プロフィール 星野努(ほしのつとむ):ティーズウェア代表。Access登場初期の頃から開発に携わり、これまで個人からSQL Serverと連携した企業向けまで幅広く設計・開発を担当。主な著書は『仕事の現場で即使える!Accessデータベース作成入門』、『使いやすさを決める!Access2007フォーム作成ガイド』など。
-
3.6技術が進むにしたがって、コンピュータの中身が見えなくなってきています。コンピュータの頭脳としてCPUがあって、OSがあってプログラムが動く…。漠然とわかっていても、実際にどういうしくみで意図したとおりに動作しているのかとなると、なかなかイメージできないものです。本書はこのように、ブラックボックスになっているコンピュータのしくみを、「炙る」「揚げる」などの過激な手法も用いつつ、半導体レベルから実際に目に見える形でひもといていきます。
-
-本書は,アプリケーション開発者目線でコンテナ技術の価値を見なおし,Webアプリケーション開発のアジリティを高く保つために,それを活かせるようになることを目的とします。 第1部ではコンテナ技術の概要と動向を整理し,コンテナを活用したアプリケーション開発ワークフローを体験します。 第2部ではシンプルなコンテナアプリケーションの実行に適したAzure Web App for Containersを利用します。 第3部では,コンテナ実行基盤の事実上の標準であるKubernetesをベースとしたAzure Container Appsで,マルチコンテナアプリケーションを動かします。 本書を読むことで以下の知識を身に付けられます。 コンテナを使った開発環境構築の方法 コーディング,ビルド,テスト環境としてVisual Studio Code+Remote Container拡張の使い方 コンテナアプリケーションの運用負担を軽減するクラウド(Azure)のサーバレス,フルマネージドなコンテナサービスの使い方 回復性および可観測性のあるコンテナアプリケーションを開発する指針 異なる実行環境を知り,比べることで,コンテナの利点や活用にあたっての課題を,よりイメージしやすくなるでしょう。
-
-◆機械学習・LLM活用の現在地点◆ Azure Machine Learningは機械学習における学習から推論、運用までをエンドツーエンドでサポートするプラットフォームです。本書は、機械学習の活用を推進するエンジニアやデジタルトランスフォーメーションを担う人々に向け、Azure Machine Learningを使った機械学習モデルの構築から運用まで解説しています。基本から、自動機械学習(AutoML)機能を使った便利なモデル開発、MLflowと機械学習パイプラインを使った実践的なモデル開発を経て、MLOpsの実現を目指します。大規模言語モデルの活用にあたっては、モデルカタログやプロンプトフローの使い方を解説し、LLMOpsの概念にも触れます。 ■目次 ●第1部 Azure Machine Learningの基本 ・第1章 機械学習をビジネスに活かすには ・第2章 Azure Machine Learningの概要 ・第3章 Azure Machine Learningのセットアップ ・第4章 AutoMLの概要と実践 ●第2部 機械学習モデルの構築と活用 ・第5章 スクラッチでのモデル開発 ・第6章 MLflowによる実験管理とモデル管理 6.5 まとめ ・第7章 機械学習パイプライン ・第8章 モデルのデプロイ ・第9章 MLOpsの概要と実践 ●第3部 大規模言語モデルの活用 ・第10章 大規模言語モデルの概要 ・第11章 基盤モデルとモデルカタログ ・第12章 プロンプトフローの活用 ・第13章 LLMOpsへの招待 ●付録 ・付録A クライアント環境のセットアップ ・付録B Azure Machine Learningとデータ ・付録C MLflow Modelsによるノーコードコンテナビルドとデプロイ ・付録D 責任あるAIツールボックス ■著者プロフィール ●永田 祥平:元日本マイクロソフト株式会社 クラウドソリューションアーキテクト。大学院で分子生物学やバイオインフォマティクスを学んだあと、2020年より日本マイクロソフト株式会社に入社。クラウドソリューションアーキテクト(AI)として、おもにエンタープライズのお客様を対象に、Azureデータ分析・機械学習基盤や生成AIアプリケーションの導入・活用支援を行う。2024年より米国系SaaS企業に移り、プロダクトマネージャーとして日本、韓国、台湾市場に向けた生成AI・エージェント機能の企画開発を行っている。第1章から第3章、第10章の執筆と全体統括を担当。 ●立脇 裕太:日本マイクロソフト株式会社 クラウドソリューションアーキテクト。Softbank(SBT)、Deloitte、DataRobotでビッグデータ、クラウド、機械学習を活用してお客様のデータ活用を推進する経験を経て、日本マイクロソフトに入社。現職では、需要高まる生成AIの活用を支援する案件に従事しつつ、お客様のMLOps成熟度Level4実現に向けた支援にも従事。MLOpsCommunity(JP)のオーガナイザーでMLOpsやAIガバナンスに関する講演や記事執筆などを実施。第5章、第9章、第13章の執筆を担当。 ●伊藤 駿汰:日本マイクロソフト株式会社 クラウドソリューションアーキテクト/株式会社Omamori 取締役。本業でAI/ML開発(とくに自然言語処理方面)と利活用の技術支援、機械学習基盤やMLOps基盤の構築および活用の技術支援を行うクラウドソリューションアーキテクト、副業で自社サービスの開発を担うソフトウェアエンジニアとして活動。第6章、第11章、付録B、付録Cの執筆を担当。 ●宮田 大士:日本マイクロソフト株式会社 クラウドソリューションアーキテクト。情報学の修士号を取得後、製造業にてデータ分析/機械学習システムの構築/データ分析基盤の開発を経験し、日本マイクロソフトに入社。現職では、自動車産業・製造業を中心とした幅広い業界のお客様にAIの導入/活用を支援。第4章と第12章の執筆を担当。 ●女部田 啓太:Regional AI Architect Lead, Office of the Chief Technology Officer, Microsoft Asia。Oracle、SAS Instituteでのデータ分析、統計解析、機械学習の経験を経て、2018年よりMicrosoftに入社。現職では、アジア地域における重要な基盤モデルの開発・運用管理、AI Agentのシステム構築プロジェクトへの技術支援などを実施。第7章、第8章、付録A、付録Dの執筆を担当。"
-
-◆Astroを使ったSSG/SSRによる実践的なサイト制作を完全解説!◆ 本書は、近年モバイルファーストやSEOの観点から再び注目されている「静的サイトジェネレータ」(SSG)による静的サイトの制作に適したフレームワーク「Astro」の解説書です。これまでのJavaScriptフロントエンドフレームワークは、動的サイトの生成(CSR/SSR)を主目的としていましたが、Astroはビルド時にJavaScriptを最大限除去することで、シンプルで高速な静的Webサイトの生成を可能にしています。また、ReactやVueなどのフレームワークと連携することで、静的Webサイトのビルドツールとしても利用できます。本書では、Astroの基本からコンポーネントベースのWebサイト制作の進め方、SSGモードによる静的サイト制作/SSRモードによる動的サイト制作、エンドポイント/アクション/ミドルウェアなどのサーバサイド機能まで、Astroの機能を網羅して解説します。 ■こんな方におすすめ ・Astroを使った「静的サイトジェネレータ」(SSG)による静的サイトの制作を学びたい人 ■目次 ●第1章 Astroを初体験 ・1.1 Astroとは ・1.2 Astroの環境構築 ・1.3 Astroプロジェクトの作成と実行 ・1.4 本書で必要なTypeScript文法 ●第2章 Astroコーディングの基本 ・2.1 Astroのコンポーネントと基本構文 ・2.2 Astroコンポーネントでの変数の表示 ・2.3 Astroコンポーネントでの制御構文 ●第3章 コンポーネント間連携 ・3.1 コンポーネントの埋め込み ・3.2 コンポーネントのProps ・3.3 子コンポーネントをカスタマイズするSlot ●第4章 ルーティングとレイアウト ・4.1 ルーティングとルートパラメータ ・4.2 レイアウト機能 ・4.3 ページネーション ●第5章 コンポーネントベースのWebサイト制作 ・5.1 コンポーネントベースのWebサイト制作ケーススタディの概要 ・5.2 BaseLayoutの作成 ・5.3 TOPページの作成 ・5.4 ニュースページとマークダウンファイル ・5.5 デプロイの準備 ●第6章 動的サイトとSSR ・6.1 ケーススタディの概要と準備 ・6.2 天気情報コンポーネントの追加とSSGの問題点 ・6.3 Astroで動的処理を実現する方法 ・6.4 Astroのアイランド ・6.5 SSRデプロイ ●第7章 Astroでのコンテンツの扱い ・7.1 コンテンツコレクション ・7.2 動的ルートとSSRの組合せ ・7.3 Storyblokによるコンテンツ管理 ●第8章 Astroのその他の機能 ・8.1 バックサイドに関する機能 ・8.2 フロントサイドに関する機能 ■著者プロフィール 齊藤 新三(さいとう しんぞう):WINGSプロジェクト所属のテクニカルライター。Web系製作会社のシステム部門、SI会社を経てフリーランスとして独立。屋号はSarva(サルヴァ)。Webシステムの設計からプログラミング、さらには、Android開発までこなす。HAL大阪の非常勤講師を兼務。
-
-※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 本書は,情報処理技術者試験で使われている「CASL II」を題材に,アセンブリ言語のプログラミングの初歩を「豊富なイラスト」とサンプルプログラムを用いて初心者にもわかりやすく解説します。また,実際に使われているアセンブリ言語でのプログラミングについても実例を用いて解説します。CASL IIが動作する仮想コンピュータ「COMET II」の仕様もていねいに図解していますので,コンピュータ工学の最初の教科書としてもお読みいただけます。※本書は,2009年4月に発売された書籍の電子版です。
-
3.5「1画面を変更したつもりが,アプリ全体のUIが崩れてしまった」 「理想のデザイン通り実装したのにユーザーが使いにくい」 「コードが複雑に入り組んでいてもはやメンテナンス不能」 こんな課題の数々は,Atomic Designの考え方を使えば解決できます。 本書では,UI設計のこれまでの問題をあぶり出し,設計の本質から,具体的な手順,UIテスト,現場でひっかかりやすいポイントまでを,インターネットテレビ「Abema TV」のUI設計で実践導入した著者が解説。フロントエンドの方にオススメの1冊です。
-
5.0本書は,アプリケーションアーキテクチャの基本設計フェーズにおいて「何を作るか」ではなく「どう作るか」を設計する際のガイドです。心臓部となるサーバサイドを中心に,シングルページアプリケーションの台頭で再び重要性を増してきたクライアントサイド,SQLなどの伝統的な処理方式とビッグデータ技術という新潮流が混在するバッチ処理,システム間連携と,さまざまな分野を網羅します。アーキテクトやエンジニアが習得するべきコアのスキルとして,長きに渡って活用できる一冊です。
-
4.3クラウド環境(Amazon Web Services)を前提としてアプリケーション開発し,それを運用することはごく普通なものになりました。しかし,実際にシステムをサービス開始してみると,想定したパフォーマンスを達成できないことが多々あります。それはシステムにかかる負荷を正しく見積もっていないことが原因であるようです。本書では,クラウド環境での負荷試験のやり方や評価方法を解説します。筆者たちはさまざまなクラウド環境でのアプリケーションの開発と運用で実績を積んできました。その成果を余すことなく1冊にまとめました。
-
3.0※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 あのややこしそうなアルゴリズムがこんなにわかりやすいなんて! 動物たちの会話やアクションを読んだり見たりしていくだけで,むりなくアルゴリズムの基本が身につく,楽しい図鑑です。 お手元のパソコンで手軽に動かして実感できるPython実習つき。
-
4.0本書は,JavaScriptの定番SPA開発フレームワーク「Angular」の解説書です。データバインディング,コンポーネント,依存性注入といったAngularを理解するための基本要素をはじめ,ディレクティブ/パイプ,フォーム,ルーティング,モジュール/コンポーネントの技術解説,ディレクティブ/パイプ/サービスの自作やテストなどの応用的なテーマまでを網羅。また,Angular 4に対応し,5以降のアップグレードにも留意した解説を行っています。Angularによる動的Webアプリケーション開発に必要となる知識が,この1冊で身に付きます!
-
4.0動的Webアプリケーション開発の現場では,FlashやSilverlightを代表とするRIAが衰退し,JavaScriptとHTML5をベースとしたSPAが主流になりつつあります。本書は,Googleが提供する最新JavaScriptフレームワーク「AngularJS」を取り上げ,特徴的な双方向バインディング/DIコンテナー/ルーティングを駆使した開発手法から,ディレクティブ,フィルター,サービス,WebAPI,コントローラーなどの解説,ディレクティブ/フィルター/サービスの自作やテストなどの応用的な技術までを網羅します。AngularJSによるWebアプリケーション開発に必要となる知識が,この1冊で身に付きます。
-
-Ansibleは,コマンド1つで複数・大量のサーバに対して同一の環境を実現できる「構成管理ツール」の1つ。導入によって,サーバ構築・管理の作業を大幅に簡略化できます。本章はそのAnsibleについて,インストールから丁寧に解説する初心者向けの入門書です。入門に留まらず,PlayBookの高速化やWindowsホストの管理方法など実践的なノウハウも紹介します。さらに付録として,Ansibleコマンドのオプション一覧と設定ファイル(ansible.cfg)のマニュアルも掲載し,入門を終えた読者もしっかりサポートします。
-
5.0「iタウンページ」「ANA」「しゃべってコンシェル」などの開発実績を持つテックファームが,Androidアプリの開発手法をおしみなく紹介! 「プロジェクトの円滑な進め方」「意図しない動作の回避」「強制終了しない」「処理の切り分け」「品質を向上させる」「安全なリリースを行う」といった,開発会社の視点で気をつけなければならないポイントが満載です。「とりあえず動く」アプリの先を目指す,Androidアプリ開発者必携の1冊。 ※本書は2014年に刊行された『良いAndroidアプリを作る139の鉄則』の改訂版です。
-
-本書は,腕時計型デバイス向けのAndroid Wearアプリケーションを開発するために必要な知識をまとめた入門書です。Androidスマホアプリの開発経験はあってもAndroid Wearアプリははじめてという方のために,小さい操作画面,円形/四角形といった異なる画面形状,スマホとの連携といった,独特な考え方に対する解説と,必須となるコーディングテクニックをコンパクトにまとめました。開発環境はAndroid Studioです。Android Wearアプリ開発の最初の一冊として,標準的な機能を持ったアプリの設計・実装を独力で行えるようにします。
-
-Androidアプリ開発は,かつてはEclipse+Javaが主流でした。しかし,GoogleがAndroid Studio/Kotlinを正式採用し,EclipseベースのAndroid開発ツールのサポートが終了したことをうけ,今後Androidアプリ開発はAndroid Studio一択という状況になり,Android Studioの需要は高まっています。 本書はそんなIDEに焦点を当てた書籍です。本書は新人エンジニアに向けて,豊富な機能が揃ったIDEをどのように使いこなすかをわかりやすく解説した書籍です。Kotlin /Java両対応。
-
-【ご注意:本電子書籍は,紙の書籍として刊行した『Android Studio本格活用バイブル~効率的にコーディングするための使い方』を,電子版でアレンジしたものです。紙版には収録しきれなかった部分(A5判,約300ページ相当)までをすべて含めた内容となっています】Androidアプリの開発に欠かすことのできないGoogle謹製のIDE「Android Studio」。本書では,基本的な知識から導入方法,エディタの使い方,バージョン管理の方法,さらにはAndroid Studioを語る上では欠かせないリファクタリング機能や内部構造まで,Android StudioのベースとなったIntelliJ IDEAのエキスパートである著者が徹底解説しています。はじめてAndroidアプリを開発する方,これからAndroid Studioを学びたい方はもちろん,ソフトウェア開発に関わるすべての方必読の一冊です。
-
-
-
4.0データ分析によって価値ある意思決定につなげたいと考えるのがデータ分析者の本分ではないでしょうか。ところが「データ分析」を行うためには,さまざまな工程を経ることになります。データ分析に携わったことのある方であれば身に覚えがあるでしょう。 ExcelのGUI操作,可視化の設定,レポート,他ツールとの連携などで発生する繰り返し作業を減らすための手間を惜しんではいけません。これらの工程で発生する手作業を無自覚に受け入れることは,本来取り組まなければならない「分析」の時間を無駄にすることと同じです(1回の業務が5分短縮できたとしましょう。1年で300回同じ作業が発生したとしたら,1500分=25時間。約1日です。この時間で何ができるでしょうか?)。 あなたがRを利用していれば(これからRをはじめるという方も)ラッキーです。Rの豊富なパッケージを利用することでデータ分析のワークフローを効率化できます。本書は以下のような構成で,単純な作業をプログラミングによって自動化する方法を解説していきます。 1章 R環境の準備と基本操作 2章 Excel・CSV・TSVファイルの読み込みとデータ整形 3章 グラフ描画の基本と応用 4章 HTML・Word文書への出力と分析結果の共有 5章 Googleサービスとの連携 6章 Web上のデータ取得とWebブラウザの操作 7章 データフローの整理と定期実行 Excel操作,グラフ描画,レポート,Googleサービス連携,スクレイピングなどデータ分析に欠かせない工程が,本書の内容によって効率化できるかもしれません。Rでなんでも完結してしまいたいというR愛にあふれる執筆者が集まり,便利なパッケージの使いどころを解説していきます。 Rを使って自動化/効率化への第一歩を踏み出しましょう!
-
-ビジネスパーソンに向けた,脱Excel,プログラミングの入口につながるRでのデータ分析入門書! 日々の仕事の中で,こんな作業はありませんか? 表データに決まった手順でフィルターをかけて,それをグラフにする 複数のExcelファイルを1つのExcelファイルにまとめる 定型のPowerPointを作成する 単純なデータの加工や集計はExcelで事足ります。ただ,複雑な処理や繰り返しの処理が必要となったときには,より高度な関数やマクロを使いこなす必要が出てきます。 本書はマクロを含め,プログラミングにまったくふれたことがない人を対象に書かれています。Rの本としては珍しく,数式も統計学も出てきません。文系出身の普通のビジネスパーソンでも,普段行っているデータの加工がより楽に,効率的にできるようになります。 Rは,統計処理に特化したプログラミング言語と言われています。1990年代に作られて以降,統計だけでなくさまざまなところで利用されています。 表形式のデータを自由自在に加工・集計できる機能も含まれており,プログラムを書いてデータを取り扱うことができるというその性質から,ルーチンワークやたくさんのデータを処理する際に使われてきました。その便利さは,Excelの比ではありません。 本書は,オンラインコースのUdemyでベストセラーとなっている著者の人気コース「医師が教えるR言語での医療データ分析入門」をベースとし,Excelでのデータ加工と集計に特化して作成されました。オンラインでのレクチャー同様,「語りかける」ように解説します。 著者は企業の産業医をするかたわら,データの処理や分析を行ってきました。その中で,Excelより効率的にデータの加工・分析ができる,Rと出会いました。Rを普及させたい! そんな思いで本書を執筆しました。 Excelより効率的にデータを加工して,周りと差をつけたい。プログラミングに興味あるし,実務にも生かしてみたい。そんなあなたに,本書は最適な導入となるはずです。
-
5.0本書は野村総合研究所のシステムコンサルティング事業本部で実施している「アナリティクス研修」をベースにした書籍で、「統計的なモデリングとは何か?」「モデルに基づく要因の分析と予測の違いとは?」「具体的なモデルの作り方」「結果を解釈する際の落とし穴の見分け方」など、ビジネスの現場感を重視した構成です。実務で遭遇するデータ品質や加工のポイント、さらにRとPythonを利用し、データからモデルを作成して結果を得るという基本的な手順を体験できます。これからデータ分析や統計解析、機械学習を学び、現場でそれらを活用したい方に最短学習コースでお届けします。
-
5.0本書は野村総合研究所のシステムコンサルティング事業本部で実施している「アナリティクス研修」をベースにした増補改訂版で,「統計的なモデリングとは何か?」「モデルに基づく要因の分析と予測の違いとは?」「具体的なモデルの作り方」「結果を解釈する際の落とし穴の見分け方」など,ビジネスの現場感を重視した構成です。実務で遭遇するデータ品質や加工のポイント,さらにRとPythonを利用し,データからモデルを作成して結果を得るという基本的な手順を体験できます。これからデータ分析や統計解析,機械学習を学び,現場でそれらを活用したい方に最短学習コースでお届けします。
-
5.01巻3,740円 (税込)セイバーメトリクスとは、ベースボールのデータを利用して戦術を分析することです。本書は、データアナリスト、野球愛好家にRを利用したセイバーメトリクスを紹介します。Rは、データの読み込み、適切なフォーマットへの変換、グラフによるデータの視覚化、統計分析の実行まで、すべての分析ステップを完結できる便利なソフトウェアです(使用されているすべてのデータセットとRコードはオンラインから利用できます)。 第2版では、Rのモダンなデータ分析を可能にするtidyverseを採用し、選手やボールの動きを高速・高精度に分析するために必須となったStatcastによるプレーヤ追跡データを加筆しました。初版のすべてのコードをtidyverseに準拠して修正しました。さまざまなベースボールのプレーとそのデータを通して、モダンなRの利用方法とセイバーメトリクスについて学習できます。
-
-RStudioはR言語のIDE(開発環境)です。エディタ,コンソール,グラフなどを1つの画面内で確認できるほか,データ分析プロジェクトをスムーズに進めるための機能が豊富に用意されているので,RユーザにとってRStudioを利用したデータ分析はスタンダードになっています。本書はRStudioの基本的な機能を解説したあとに,データ分析ワークフローを一通り解説していきます。データの収集(2章),データの整形(3章),可視化(4章),レポーティング(5章)など,データ分析に欠かせないこれらの要素の基礎を押さえることができます。また,本書はtidyverseパッケージを用いてこれらのデータ分析ワークフローを解説している側面を持ちます。tidyverseの考えに触れ,モダンなデータ分析をはじめましょう。
-
5.0※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-13237-8)も合わせてご覧ください。 Rには多くの分析手法を実行するパッケージが提供されていますが,同じ用途であってもパッケージごとに関数の記法が違ったり,データの入力形式や出力形式が違ったりするため,データの前処理やモデルの評価といった工程におけるコーディングは,意識しなければバラバラになってしまいます。また,これが原因でスムーズな分析パイプラインを作成できず,分析環境で行ったモデリングを本番システムへ移行することを考えると,その保守は困難を極めます。 これらの問題を解消するために開発され,統一的なインターフェースを提供するのがtidymodelsです。データ整形における同様のコーディングの問題を解決するためのパッケージ群で知られるtidyverseのプロジェクトの1つとして注目を浴びています。 データ分析の工程には,データ準備,モデルの作成,モデルの評価,モデルの改善,モデルの運用といった一連の工程があります。本書ではそれぞれの工程をtidymodelsパッケージ群で行う方法について解説します。tidymodelsパッケージ群を利用することで,スムーズなデータ分析パイプラインを効率的に構築できるようになるでしょう。
-
3.7※本書は2009年に発行された書籍の電子版になります。 【技術が苦手でも、これならわかる。】 オブジェクト指向はなぜ難解なのか。わかったつもりになっても、実はよくわからないのはなぜか。その理由は、オブジェクト指向の持つ“二面性”にある。「理解」と「創造」の二面性を理解することで、いままで難しいと思っていたオブジェクト指向が、驚くほど簡単にわかるようになる。 豊富な具体例を用いてわかりやすく解説する、いちばんやさしいオブジェクト指向入門の決定版。 ■こんな方におすすめ ・オブジェクト指向がわかるようになりたい人 ・オブジェクト指向の本質をつかみたい人 ・ソフトウェア開発でレベルアップしたい人 ■目次 ●第1章 それはシリコンバレーから始まった~オブジェクト指向の歴史 きっかけはアラン・ケイ/コンピューティング環境Smalltalk/シミュレーションのためのSimula/Smalltalk後のオブジェクト指向~C++/Javaの衝撃/UMLの登場/21世紀:オブジェクト指向の一般化/理解するのが難しい理由 ●第2章 ケーキとDVDソフト~オブジェクト指向の概念を理解する あるSEの日常/オブジェクト/メッセージ/オブジェクト指向/オブジェクト指向の使い道/メッセージとオブジェクトの振る舞い/属性/状態/属性と状態/オブジェクトと仕事/責務/クラス/クラスの定義/クラスがあると何が嬉しいのか/オブジェクト指向とクラス指向/クラスどうしの分類/オブジェクト指向の本質は二つだけ ●第3章 プログラミング言語進化論~オブジェクト指向プログラミングへの道 プログラミングの進化の歴史/抽象化へ至る道/手続き抽象/構造化プログラミング/データ抽象/大規模化の壁/機能分割の課題/課題1:大規模分割を最初に行うことの難しさ/課題2:仕様変更の影響範囲の広さ/課題3:類似性の散在/データに関する課題/課題4:データの定義と利用箇所の乖離/課題5:名前の衝突/課題6:アクセス違反/モジュール化/課題1の解決/課題2の解決/課題3の解決/課題4の解決/課題5の解決/課題6の解決/モジュール化を取り入れたプログラミング言語/モジュール化の課題/オブジェクト指向/モジュールを型にする/継承 ●第4章 抽象化と分割の歴史がもたらしたもの~オブジェクト指向プログラミングの特徴 オブジェクト指向で作ったシステムの構造/オブジェクトの定義と生成/カプセル化とアクセス制御/オブジェクト指向システムの動作に関する特徴/オブジェクトの組み合わせ/メッセージの送信/イベントとメッセージ/継承による差分プログラミング/ポリモーフィズム(多態性)/オブジェクト指向プログラミングの七つの特徴 ●第5章 ショートケーキはなぜショートケーキなのか~オブジェクト指向分析 「理解する」ということ/「内包」/特殊な概念と一般的な概念/概念の上下関係/「外延」/「属性」/人間の理解/人間の理解とオブジェクト指向の関係/オブジェクト指向分析の利点/(1)人間の理解の枠組みに対応した表現方法の存在/(2)メッセージの存在/(3)UMLという標準表記法の存在/オブジェクト指向分析の落とし穴/(4)必ずしも正解が手に入るとはかぎらない/(5)すべてを表現できるわけではない ●第6章 中央集権から地方分権へ~オブジェクト指向設計 オブジェクト指向設計の特徴/(1)結合度・凝縮度をコントロールする方法の増加/(2)設計思想の変化/【1】権限の委譲/【2】動くもののやり取り/【3】オブジェクト指向分析に基づく設計/オブジェクト指向らしさとは/(3)新しいメカニズム ●第7章 よくあるQ&A~オブジェクト指向への疑問とその解答 Q1 オブジェクト指向は「重くて使えない」と聞きましたが、本当ですか?/Q2 オブジェクト指向を使うと、生産性や品質が向上するのですか?/Q3 Javaを使えば、オブジェクト指向のメリットが得られるのですか?/Q4 オブジェクト指向で分析・設計をすると、何が嬉しいのですか?/Q5 本当に、現実世界をそのままモデル化できるのですか?/Q6 オブジェクト指向では「シームレスな開発ができる」と聞きましたが、これはどういう意味ですか? 参考文献 ■著者プロフィール 井上樹(いのうえたつき):2000年より(株)豆蔵。現在は組込み系ソフトウェア開発を中心に、オブジェクト指向、プロセス、コンサルティング、セミナーを担当。著書に『オブジェクト嗜好度向上計画』(いずれも翔泳社)などがある。
-
4.01巻2,178円 (税込)※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 本書は,Webシステムのセキュリティを支える技術を幅広く解説します。具体的には,公開鍵暗号,共通鍵暗号,ディジタル証明書,電子署名,認証・認可などの基礎技術の用語や理論の説明から,それらを応用したSSL/TLS,SSH,OAuth,OpenID Connectなど各種の規約やプロダクトの使い方までを解説します。 今やWebシステムは社会や経済を支える基盤となっており,Webシステムの開発・運用に携わるITエンジニアは前述の技術の理解が欠かせません。暗号技術,認証・認可にかかわる基礎教養と具体的な規約・プロダクトをこの1冊で学べます。 本書は,IT月刊誌『Software Design』の暗号技術,認証・認可に関連する特集記事などを再編集した書籍です。
-
-※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 小学校におけるプログラミング教育の必須化に伴い、最も広く使われているプログラミング言語がスクラッチ(Scratch)です。 スクラッチによるプログラミングの機会が増えていることから、子供にプログラミングを学ばせたい親や、教材として使用したい先生から注目されています。 本書は「今すぐ使えるかんたん」シリーズとして、スクラッチによるプログラミングを一手順ごとに丁寧に解説しています。 また、ゲーム的な要素を多めに取り入れ、子供が取り組みやすい内容にしてあります。 本書は総ルビ(全かな入り)となっておりますので、小学生が一人でも読み進められるように編集されています。 さらに、家庭や学校での学習だけでなく、ビジネスマンが時間の合間に楽しく読める教養書としてもご利用頂けます。
-
-※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 HTML5の要素とCSS3のプロパティに関する情報を,コンパクトなサイズにまとめました。よく利用される要素やプロパティを重点的に解説していますので,これから学習を始める人はもちろん,仕事でHTMLやCSSを使っている人にも役立つ内容です。必要な情報を探しやすいよう索引機能も充実! 本書を手元に置いておけば,「この要素はどうやって使うんだったかな?」というときにすぐに調べられます。お勧めの1冊です。
-
-※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 本書はSQLを学習する人に向けた,新感覚な入門書です。イラストを中心に解説することで,SQLがわかりやすくスラスラ理解できます。重要な内容は全てイラストに示されているので,イラスト部分だけを読むことでも,SQLがマスターできます。また,付属のCD-ROMには,本書オリジナルのSQL体験学習アプリが収録されているので,アプリを使って,実体験もできます。
-
5.01巻4,180円 (税込)因果推論とは,ある要因が何を(どれくらい)引き起こしたのかを判断するためのツールです。本書は,因果推論に関する最近までの進展をまとめ,学生や実務家を対象として,因果関係に関する意味のある回答を導き出すために必要な統計的手法を解説していきます。 本書の最大の特徴は,理論だけでなく,統計プログラミング言語(R,Stata)による実装を重視している点にあります。例題には,読者が利用できるデータとコードが添付されており,すぐに手を動かして実践することができます。本書は機械学習に関するトピックを含まない一方で,理論的な解説が詳細であるほか,DAGや合成コントロール法といった発展的なトピックを扱っています。これらのトピックは,近年の因果推論の理論的進展において重要ですが,入門レベルの書籍において解説している点で希少性があります。
-
3.0IntelliJ IDEAはチェコのJetBrains社が開発した,快適な操作性と豊富な言語サポートが特長の統合開発環境(IDE)です。もともとはJavaエンジニアのために開発されたIDEでしたが,近年はKotlinやScalaといったそのほかの言語のユーザからも人気です。Android開発用のIDE「Android Studio」のベースに採用されたことでも注目が集まりました。本書はそのIntelliJ IDEAの入門書です。第1部では,編集・実行・デバッグ・移動・バージョン管理・データベースとの接続について,短いコードを書きながらハンズオン形式で解説していきます。第2部では,Java EEやSpring,ScalaやKotlinのプロジェクトを取り上げ,現場での開発を想定した操作方法を解説します。無償版のIntelliJ IDEA Community Editionの機能を中心に,Ultimate Editionの高度な機能も紹介するので,PhpStormやRubyMineといったJetBrainsのほかのIDEを使っている方にも有用な1冊です。
-
-本書はIDEに焦点を当てた書籍です。IDEは豊富な機能が揃っているため、Java開発を行う際、IDEを使うのはデファクトスタンダードになっています。IntelliJ IDEA はJava開発におけるIDEとしてEclipseと双璧をなしており、デバックの取り扱いなどEclipseと比べシンプルな点で海外ではEclipseより支持されています。また、Javaのみならず最近話題のKotlin/ScalaなどのIDEとしても人気があります。本書は新人エンジニアに向けて、豊富な機能が揃ったIDEが裏で何をやっているかをわかりやすく解説した書籍です。なお,本書でとりあげるJUnit/GradleといったツールはScalaなどJava以外の言語にも対応しているため,Javaユーザ以外にも役立つ内容になっています。
-
5.0アクセシビリティとは「利用可能な状況の幅広さ」のこと。より多くの人が,より多くの環境で,より多くの状態で利用できることです。もちろんそこには視覚・上肢・認知などに障害があるケースも含みます。日々繰り返し利用するWebアプリケーションにこそ,アクセシビリティが求められます。 Webサイトに比べて,多くのインタラクションを行うWebアプリケーションでは,アクセシビリティの確保はやや難易度が高いものです。特に既存のWebアプリケーションは複合的な課題を抱えていることが多く,教科書どおりの方法では必ずしも改善できません。 本書では,Webアクセシビリティの基礎である「HTMLとWAI-ARIA」を解説したうえで,Webアプリケーションの要である「フォーム」,色やテキストなど「UIデザインの基本」,モーダルダイアログや通知など「少し複雑なUIパターン」の3分野に分けて,よくある事例を取り上げながら,現実的で段階的な改善方法を紹介します。 さらには,デザインシステムの活用や組織での推進法など,アクセシビリティの取り組みを定着・推進・向上させるためのノウハウも詳説します。
-
4.0Webアプリ開発には幅広い知識と,多様な技術を使いこなせることが求められます。HTTP・Webサーバ・サーブレット・JSP・Cookie・セッション・プロキシサーバ・TLS・認証・JavaScriptでのDOM操作・Ajax。これらを正しく説明できますか?使いこなせますか? 人に聞いただけでは忘れるかもしれません。読んで理解しただけでは使えないかもしれません。しかし,自分で試して納得した技術は使えるようになります。本書では,Webサーバを作りつつ,実際に動かして結果を見ながら,先に挙げた技術要素を1つ1つ解説します。
-
3.0特集1 競技プログラミングの過去問で学ぶアルゴリズム 本特集では,競技プログラミングサイト「AtCoder」で実際に出題された問題を通じて,アルゴリズムを学んでいきます。競技プログラミングではアルゴリズムが重視され,そこで培われる計算量を改善する能力はWeb開発の現場でも必要とされています。アルゴリズムは時代に流されない技術であり,扱うデータ量が増えた今だからこそ重要性を増しています。ぜひこの機会に学び,問題を解く力を身に付けてください。 特集2 iOS 13徹底活用 iOS 13では,ダークモード,Sign in with Apple,Core NFCの機能強化といったユーザー向けの機能のほかにもARKit3,Core ML 3といった開発者向けの機能が多数追加されました。本特集では,最初にiOS13で追加された新機能を紹介します。そして,新しいUI作成フレームワークSwiftUI,ダークモードへの対応方法,Swift Packages in Xcodeによるパッケージ管理,非同期処理フレームワークCombineといった開発者向けの注目機能について詳しく解説します。 特集3 小一時間でゲームを作る 「プログラミングはできるけどゲームは作ったことがない」という方に,ゲーム開発のおもしろさを体験していただく特集です。グラフィックなど細部の作り込みは省いてゲームとして重要な部分のみにフォーカスして,4つのジャンルのゲームを開発します。JavaScriptを使って解説しますので,ブラウザで読み込むだけで開発途中の動作も確認できます。本特集の解説を見ながらゲームを開発していき,少しずつ確実に完成に近付いていく過程を味わってください。
-
-特集1 接続エラー,性能低下,権限エラー,クラウド障害 AWSトラブル解決 原因調査・対応・予防のノウハウ 本特集ではAWS(Amazon Web Services)特有のよくあるトラブルについて,原因調査方法と解決策を紹介します。「つながらない」トラブルとしては,権限設定,ネットワーク設定に起因する事例を取り上げます。運用上のトラブルとしては,アプリケーションにエラーが発生した場合,パフォーマンスが悪い場合の対処法を紹介します。そして最後にAWS 側の障害や変更に起因するトラブルを取り上げます。実際のトラブルは多種多様ですが,トラブルシューティングの流れは変わりません。本特集の内容は多くのシーンで活用できるはずです。 特集2 Ruby書き方ドリル 要点解説と例題で身に付く! Rubyコードを書いて仕事をしているけどいまいちうまく書けている感じがしない方を対象に,Rubyコードの書き方をドリル形式で解説します。まずRubyの概念上の重要ポイントを解説し,そのあと例題を提示します。例題に対しては,さまざまなレベルの解答を紹介し,それを評価します。例題と解答は,筆者が所属しているマネーフォワード社内やほかのOSSのリポジトリ,Web上の質問サイトのコードやPull Requestで見かけたものや,ありがちなものをもとにしています。 特集3 体験 ドメイン駆動設計 モデリングから実装までを一気に制覇 ドメイン駆動設計(DDD)は,ソフトウェアを適用しようとする領域をドメインと定めて,ドメインを基軸としながら設計とコードが正しく連携するように促す手法です。多くのメリットがありながらも,伝統的な開発手法と比べるといささか重厚/複雑で,敬遠されがちな面があるのも事実です。そこで本特集では,DDD の要であるモデリングからそれを実装に落とし込む過程を一気に,けれどていねいにたどります。DDD を具体例とともに追体験することで,そのハードルはきっと下がるはずです。DDD の力の片鱗をぜひ感じ取ってください。 一般記事 FigmaによるUIデザイン デザイナーとエンジニアがオンラインで協業できる! 一般記事 入門 SwooleによるPHP非同期処理 高速化のための並列実行はどのように書くのか
-
-特集1の前半では,TypeScriptの基礎を学びます。後半では,JavaScriptで構築されたアプリケーションをTypeScriptへと段階的に移行する過程を通して,実践的な使い方を身に付けます。 特集2では,Amazonが提供するAWS(Amazon Web Services)とGoogle が提供するGCP(Google Cloud Platform)のコストコントロールについて解説します。 特集3ではWindows10ユーザーのために開発環境の今を紹介します。
-
-特集1 React/Vue.jsで実践! コンポーネント設計 モダンフロントエンドの構造化と分割の新提案 昨今のWebアプリケーション開発ではコンポーネント指向による開発が活発化していますが,コンポーネントの分割や役割の持たせ方は現場でも悩みのタネです。本特集ではそれを解決するために,「メンタルモデル」を活用したビューコンポーネントの設計/実装方法を提案します。「関心の分離」によって疎結合を実現して部品の再利用性を高めるとともに,並列的でスムーズな開発フローの実現を目指します。 特集2 RDBMS徹底比較 PostgreSQL,MySQL,SQL Server,Oracle Database 本特集では,PostgreSQL,MySQL,SQL Server,Oracle Databaseの4つの代表的なRDBMSを,OSから見たアーキテクチャ,SQL,オブジェクトの3つの視点から比べ,その違いをまとめて説明します。本特集でとりあげるのは,RDBMSの違いのほんの一部ですが,RDBMSを選定するときや移行するときに知っておきたい基礎的な部分を紹介します。 特集3 実践Scala オブジェクト指向×関数型 オブジェクト指向と関数型プログラミングの特徴を合わせ持ち,型安全・簡潔・エレガントな表現ができるように設計され,じわじわと人気が高まっているプログラミング言語Scala。 本特集では,基本的な文法からSlack APIを使ったWebアプリケーション開発までを解説します。さらに,2019年6月にリリースされたScala 2.13.0で進した点にも触れ,Scala の持つ奥深い魅力や楽しさも紹介します。 一般記事 自作キーボードのススメ デザイン,配列,打鍵感……自由自在
-
-特集1 開発環境の整備,効果的な議論,評価制度 実践リモートワーク オフィスに集まれない課題の解消方法 COVID-19が世界中で流行し,われわれの活動は変化を余儀なくされました。そこで注目を集めたのがリモートワークです。しかし,いざ行ってみると,今までオフィスでの開発では現れなかった問題が発生します。本特集では,以前から準備を進め2020年6月よりリモートワークを基本とする勤務体制に移行したGMOペパボのエンジニアにより,リモートワークをどう導入していったか,そして実践して浮かび上がった問題点とその対策など,現場のノウハウ満載で解説します。 特集2 Pythonデータ可視化入門 COVID-19/家計調査/財政データで実践! 本特集ではPythonによるデータの前処理と可視化,さらにその情報のWebアプリケーション化を解説します。政府などが公開するオープンデータを自分の手元で,自分の見たい形に可視化する実践を通して,データ処理の手法と見せ方の工夫を自分のものにしましょう。 特集3 ツールで簡単! はじめての脆弱性調査 Rails,nginx,サブドメイン,DB,OpenSSL 本特集では,脆弱性の発見に役立つツールの使い方を紹介します。静的解析ツールやネットワークスキャナなどを用いることで,Ruby on Railsやnginxなどのミドルウェア,サーバやネットワーク機器の脆弱性を簡単に発見できます。脆弱性の修正コストは,開発後よりも開発中のほうが低いため,昨今,開発プロセスにセキュリティ対策を組み込むDevSecOpsの重要性が叫ばれています。脆弱性の見つけ方を知っておくことは,開発者にとっても大切です。
-
-特集 安全運用のためのベストプラクティス! AWS/GCPセキュア化計画 本特集では,AWSとGCPでの安全な設定の指針を解説します。クラウド利用者にとってセキュリティは最優先事項です。また,クラウドには,従来のオンプレミスとは異なる特有のセキュリティ項目があります。本特集では,AWSとGCPそれぞれの特性を踏まえて,最小の工数で高いセキュリティレベルを実現する方法を説明します。さらに,セキュリティで必須となる監査において,結果の集中管理と可視化を行う方法を紹介します。 特集2 生体認証でさよならパスワード 作って学ぶWebAuthn WebAuthnは,2019年3月にW3Cで標準化されたパスワードの代わりに公開鍵を使用するWeb認証の仕様です。フィッシング被害を撲滅する安全性と,簡単にログインできる利便性を両立します。本特集では,まず第1章で,パスワードや2段階認証など従来の認証が抱える問題を,WebAuthnがどのように解決するのか紹介します。第2章でWebAuthnの仕様を詳しく解説します。第3章からは実践編として,WebAuthnの一番の魅力であるパスワードレス認証を実装します。第3章で開発環境を構築したうえで,第4章では公開鍵の生成と登録処理を,第5章では署名の生成と認証処理を実装します。 特集3 カード発行,決済,個人間送金の舞台裏 Kyash開発ノウハウ大公開 モバイルアプリからプリペイド式Visaカードの発行や個人間送金が誰でも簡単に行えるKyash。リアルカードを発行すれば,オンラインだけでなく実店舗でも決済ができます。本特集では,Kyashのカード決済システムやカード情報を守るためのセキュリティ,そして2019年10月から提供を開始したカード発行と決済を提供する企業向けサービスKyash Directの設計と実装を紹介します。 19周年記念エッセイ 経験,技術力の向上,技術の進化を経た今,思うこと 過去の自分へコードレビュー これまでに,みなさんもたくさんのコードを書いてきたと思います。自分のコードを年月を経て今見返すと,自分が成長したことにより,また取り巻く技術が進化したことにより,当時は気付かなかったことが見えてくるのではないでしょうか。本エッセイでは,各分野で活躍されているエンジニアの方々に,過去の自分のコードに対しレビューをしていただきます。Web開発者の方だけではなく幅広いジャンルの方々にご執筆いただいているので,新しい発見があるはずです。
-
-特集1 はじめてのトラブルシューティング 本特集では,トラブルシューティングの基礎知識から実践までを紹介します。トラブルシューティングを行うためには,前提となる基礎知識が不可欠です。Webアプケーションであれば,フロントエンドからバックエンドまでの幅広い知識が必要ですモバイルアプリであれば,Webアプリケーションとは異なるリリースフローを意識しければなりませんし,OSごとの違いを知っておく必要もあります。 トラブルシューティングは備えあれば憂いなし。本特集を参考に,できることから始めていきましょう。 特集2 [実践]AWS CodeDeploy 本特集では,現場で活きるデプロイ環境の構築技術を身に付けることを目標に,AWS CodeDeployを使ったWebアプリケーションのデプロイを実践します。デプロイは,信頼性の高いサービスを提供するうえで欠かせない重要な役割を担っています。AWSCodeDeployにより,柔軟にスケールできる/安定状態にすぐロールバックできる/高速に自動デプロイできる,信頼性の高いデプロイを簡単に実現します。 特集3 アプリケーションアクセシビリティ 世の中のアクセシビリティについての情報は伝統的なWeb ページを前提としたものが多く,アプリケーションのUIに関する情報はあまり流通していません。また,モバイルアプリケーションでのアクセシビリティの実装方法もあまり知られていません。そこで本特集では,Web/モバイルアプリケーションでのアクセシビリティについて取り組み方から改善のノウハウ,よくある問題の解決法まで,先進的な取り組みで知れるfreeeでの実例も交えながら紹介していきます。
-
4.5特集1 自作OS×自作ブラウザで学ぶ Webページが表示されるまで HTMLを運ぶプロトコルとシステムコールの裏側 ブラウザは,開発者にとってもユーザーにとっても,もはや日常の一部と言えるほど身近なソフトウェアです。しかし近年のブラウザはあまりにも高機能かつ巨大になってしまったため,そのしくみを詳しく理解することは難しくなっています。そこで,ブラウザ上でWebページを開くまでに裏側ではいったい何が起きているのかを大まかに解説しつつ,非常に単純な自作ブラウザを自作OS上に実装することで,ブラウザとその裏側を上からも下からも理解していきましょう。 特集2 最新Vue.js 3入門 コアチームが解説! 基本から新機能まで完全網羅 Vue.jsは,ビュー層に特化したライブラリです。必要最小限の学習コストですぐに動かすことができ,規模の大きなシステムにも対応できます。2020年9月に,2年以上をかけて開発されたバージョン3がリリースされました。これは,Vue.jsの歴史の中で過去最大のリリースです。本特集では,Vue.jsコアチームメンバーが,Vue.js 3で開発するうえで必要となる基礎を包括的に解説します。 20周年記念企画 これからのWeb開発 技術を追い,今を知り,この先を見据える 毎年恒例の記念号企画ですが,今回は20周年記念。拡大版として9人の方に3ページずつご執筆いただきました。しかも,テーマはそのものずばり「これからのWeb開発」。Web開発の中心である9つの分野について,第一人者の方々に「これから」を論じていただきます。もちろん変化の激しいこの世界ですから,未来予測はむずかしいもの。けれど,これまでの動向をふまえて現状を確認し,そのうえで語る「これから」は,きっとみなさんにとって大きな指針となるはずです。
-
-特集1 [さらに速く! さらに書きやすく!] 詳解Ruby 3 JITコンパイラ,並列プログラミング,静的型解析 2020年12月25日にリリースされたRuby3には,「JITコンパイラ」「並列プログラミング」「静的型解析」の3つの新機能が追加されました。本特集では,これらがどのような機能で,どのような意図で実装されたのか,どう使うのが効果的なのかを,Rubyの開発を行っているコミッターの方々に解説いただきます。最終章では,言語設計者であるまつもとゆきひろ氏にRubyのこれからを語っていただきます。 特集2 UIKit,SwiftUI,iPadOS,ウィジェット iOS 14最前線 本特集では,iOSやiPadOSアプリのUI 開発に関する最新情報を解説します。第1章では,Appleプラットフォームの現状を整理します。第2章と第3章ではそれぞれ,2008年の公開以来アップデートを続けるUIKitと,2019年に新しく登場したSwiftUIという2つのUIフレームワークを用いて,UI開発を行う方法を見ていきます。第4章では,iOSアプリをiPadOSとmacOSに最適化する方法を解説します。第5章では,iOS 14の最大の新機能であるウィジェットについて学びます。 特集3 個人と組織の目標がリンクする管理手法 OKR運用指南 OKRは,開発にも適した目標管理手法で,Objective(目標)の「O」とKeyResult(成果指標)の「KR」を組み合わせたものです。組織の掲げる大きな目標とそれを達成するための成果指標から,最終的には個人の目標とそれを達成するための成果指標までが数珠つなぎになることで,最も重要な目標に注力でき,組織の透明性が上がり,一人一人の自律性やモチベーションが高まります。本特集では「個人のOKRを設定する」(第2章),「チームにOKRを導する」(第3章),「OKRの運用を改善する」(第4章)といった具体的なシナリオを通じてOKRの実践的な運用方法を紹介していきます。
-
-※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-13001-5)も合わせてご覧ください。 特集1 イミュータブルデータモデルで始める 実践データモデリング 業務の複雑さをシンプルに表現! 良いデータモデルとは,モデリングの過程で,考慮されていない要求の穴やエッジケースの発見につながるものです。本特集では,データモデルを書くことを通して,顧客やチームとの対話をいかに進めていくかを解説します。 本特集では,データの更新に着目し,事実の記録は更新されないように整理・分類していくイミュータブルデータモデルという手法を紹介します。「更新」を手がかりに,分析の足りない箇所を洗い出し,堅牢なモデルになっていくさまを皆さんにも体験いただけたら幸いです。 特集2 いまはじめるFlutter iOS/Android両対応アプリを開発してみよう 本特集はマルチプラットフォームフレームワークFlutterの入門記事です。2022年5月にはmacOSとLinuxにも正式対応し,モバイル,Webフロントエンド,デスクトップのアプリケーション開発効率を大きく変える存在になりました。iOS/Android両対応アプリの開発を体験し,導入の足がかりにしてください。 特集3 作って学ぶWeb3 ブロックチェーン,スマートコントラクト,NFT 近年,「Web3」という言葉が注目を集めています。ただ,誇大広告ともとれる話や,暗号資産(仮想通貨)絡みの詐欺的な活動も横行していて,懐疑的な目で見ている方も少なくないと思います。本特集では,Web3の技術的な側面にフォーカスして解説します。どのようなことができるのか,そしてどのようなことができないのか,Web3という技術の,現在の等身大の姿を見ていきます。
-
-※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-13112-8)も合わせてご覧ください。 特集1 [高速|安全|高生産性] Rust入門 言語の強みをWeb開発に活かす Rustは,パフォーマンス,信頼性,生産性に重きを置いたプログラミング言語です。習得が難しいという印象を持たれがちですが,フレームワークやツールの充実とともに,Webアプリケーションの開発もしやすくなっています。本特集でRust習得の一歩を踏み出してみませんか? 特集2 保守性・拡張性に優れた関数型言語 はじめてのElixir 本特集では,パターンマッチをサポートする関数型言語Elixirを取り上げます。第1章~第5章でElixirの基礎的な部分を網羅的に解説し,最終章では前章までの知識を活用して実践可能なプロジェクトの作成を行います。Elixirの魅力は,保守性や拡張性に優れた開発が可能であることです。本特集を読むことで,それらを実感してください。 特集3 実装して学ぶHTTP/3 通信の高速化をいかに実現しているか 2022年6月6日,HTTP/3が正式勧告になりました。HTTP/2に存在した数々の問題点が改善されています。なかでも通信の高速化は,Web開発者にもユーザーにも大きなメリットをもたらす重要なポイントです。本特集ではHTTP/3サーバを実装することで,HTTP/3がどのようなしくみで動作しているかを学びます。どういった情報がやり取りされているのか,どういう工夫により高速化を実現しているのか,HTTP/2から進化した点をしっかりと理解できるはずです。
-
-特集1 識者がたどり着いた最適解 TypeScript最新活用 リンタ,バンドラ,ランタイム,エッジ TypeScriptはWebフロントエンドにおける実装言語として確固たる地位を築いていますが,昨今ではそれ以外の領域においても活用されています。本特集ではTypeScriptが使われる各領域に詳しい著者を招き,TypeScriptエコシステムに関わる具体的な技術領域について動向を概観し,各々の「推し」の技術を語ってもらいます。 特集2 コミッター直伝! 速習Ruby 3.2 Wasm対応,ReDoS対策,性能改善 2022年12月25日にRuby 3.2がリリースされました。本特集では,Ruby 3.2の新機能や改善点をコミッターの手により徹底解説します。まず,大きな変更点であるWebAssembly/WASIへの対応とReDoSへの対策について詳細に解説します。そのあと,新機能,新メソッド,仕様変更,性能改善などを徹底的に解説します。 特集3 Tailwind CSS実践入門 まず作ってから,あとで共通化する CSSフレームワークのTailwind CSSが注目を集めています。その特徴は,flex,pt-4,text-centerといったユーティリティクラスの組み合わせだけで,ほとんどすべてのスタイリングをしてしまおうという大胆なアプローチです。これまでのベストプラクティスと真っ向から対立するようなやり方ですが,だからこそ享受できるいくつもの強みがあります。本特集では,そうしたTailwind CSSの考え方や,具体的な使い方について紹介します。
-
4.0※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-13246-0)も合わせてご覧ください。 特集1 古い常識を捨て適切に使う オブジェクト指向神話からの脱却 抽象データ型,ステートマシン,レイヤ構造 オブジェクト指向は1990年代を中心に大流行し開発技術を発展させ,プログラミングにおいて不可欠な技術になりました。その後コンピュータの発展とともにそのままでは適用が難しくなり定義があいまいになっても,「オブジェクト指向を使うと良いプログラムが作れる」といった神話のように扱われています。本特集ではオブジェクト指向技術がどういったものかを解説し,その特性がどのように分解されて現在のプログラミングに適用されているかを明確にすることで,神話のような状況から脱却することを目指します。 特集2 Swift 5.7,Regex,SwiftUI,Charts iOS 16最前線 2022年9月から10月にかけて,iOS 16,watchOS 9,tvOS 16,iPadOS 16,mac OS Ventura がリリースされました。また,Swift 5.7 とXcode 14も,iOS16と同時にリリースされています。本特集では,iOS 16とSwift 5.7を中心に,これらのアップデートを解説します。 特集3 開発を止めずに安全に移行する コンテナ化実践ガイド 長く稼働してきたモノリシックなシステムでは開発速度の低下や運用作業の増加が課題になります。コンテナ化やマイクロサービス化でこれらの課題を解決する事例は増えてきましたが,壁の高さを感じて,なかなか一歩が踏み出せずにいる方も多いのではないでしょうか。本特集では,仮想マシンや物理サーバで動いているシステムの開発・運用を続けながらコンテナ化を進めるための具体的なスケジュールの立て方からありがちな落とし穴まで,筆者の実施経験を基に解説します。
-
4.0特集1 仕様ファーストでいこう! 実践API設計 堅牢で,保守性に優れたWebサービスの実現 本特集では,筆者自身が長年考えて実践してきたことに基づいて,「API仕様ファースト」という聞き慣れない言葉を中核として,Webサービスでのバックエンドサービスの開発方法について説明します。多くのソフトウェアエンジニアは,最初にAPI仕様をきちんと書いて,さらにテストファースト開発を行うことに慣れていません。しかし,本特集で説明することをきちんと実践することは,優れたソフトウェアエンジニアになる,あるいは優れた開発組織となってサービスの成長を支えるうえで重要です。 特集2 はじめての画像回帰テスト Storybook&Chromaticで品質も生産性も向上! 数あるフロントエンドのテストの中でも比較的運用が簡単で費用対効果の高い,画像回帰テストを実装・運用するための方法を紹介します。フロントエンドのテストにおける画像回帰テストの立ち位置と,画像回帰テストを採用するメリットを紹介したうえで,StorybookとChromaticを使った画像回帰テストの導入方法,簡単なチュートリアル,そして,複雑なコンポーネントのテスト方法を解説します。Appendixとして,Storybookをアクセシビリティテスト,UI検証で活用する方法も紹介します。 特集3 画像生成AIのしくみ Stable Diffusionの内部を探る 画像生成AIの一種であるStable Diffusionは,生成画像の自然さ,動作速度の高速さなどにより,登場してすぐに大きな注目を集めました。さらに衝撃的だったのは,「ソースコード」および「学習済みのAIの中身」が無償で公開されたことです。これにより,画像生成を行うだけではなく,そのしくみを詳しく知ることができます。本特集ではStable Diffusionがどのように動作しているのか,これらの情報を噛み砕きわかりやすく解説します。
-
-※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-12891-3)も合わせてご覧ください。 特集1 Reactの深層 最新バージョンから読み解く! 変わる常識と変わらない思想 本特集はReact 18のリリースを受け,これまでのReactについて復習するとともに,React 18の新機能を紹介します。新機能を使いこなすにあたり,前半ではこれまでのReactの使い方やAPIに込められた思想を確認し,後半ではReactユーザーが対応を迫られる新しい常識を解説します。将来にわたってReactらしいコーディングをするための考察です。 特集2 できるところから無理なく導入! 小さく始めるデザインシステム 「デザインシステム」という用語を耳にする機会が増えました。しかし,重要な概念であることはわかっていても,考えなければいけないことがたくさんあり導入に踏み切れない方も多いのではないでしょうか。もちろんデザインシステムはすべての要素を考慮するのが理想ですが,完璧を目指すあまり採用を見送ってしまうのはもったいないと思います。本特集では「小さく始める」ことをコンセプトに,できるところから無理なく始め,そのメリットを知ってもらうことを目的としています。 特集3 最新レコメンドエンジン総実装 協調フィルタリングから深層学習まで レコメンドエンジンとは,ECサイトやWebサイト上で,ユーザーにお勧めの商品やコンテンツを表示するためのシステムです。本特集では,Python言語を用いてレコメンドエンジンを実際に作成し,理解を深めていきます。実サービスに導入できるレコメンドシステムのしくみ,汎用的なものから深層学習までのレコメンドエンジンの実装,良いレコメンドエンジンとは何かを評価する方法を紹介します。
-
1.0特集1 作って学ぶプログラミング言語のしくみ インタプリタ,構文解析器,文法 プログラミング言語のしくみを,プログラミング言語自体を作ることで学ぶ特集です。「言語を作るのは難しい」と考えている人が多いと思います。しかし,プログラミング言語を作るだけならば,想像しているよりずっと簡単です。そして,実際に作ってみることで,どのようなしくみで動作しているのかをしっかりと楽しく理解できます。この経験は,新たに言語を作るときだけではなく,新しい言語を習得するときなどさまざまな局面で役に立つはずです。 特集2 GraphQL完全ガイド RESTの先へ! フロントエンドに最適化されたAPI GraphQLは,Web APIのためのクエリ言語です。近年の高度で複雑なクライアントサイドアプリケーションにおいては,REST APIでは通信量が多くなったり,レイテンシが大きくなったりすることがあります。GraphQLでは,そういったケースでも効率的にデータを取得できます。そのため,Facebook,GitHub,Netflixなど,多くの企業が採用しています。本特集では,GraphQLの活用に必要な情報を徹底解説していきます。 特集3 速習DynamoDB AWSフルマネージドNoSQLの探求 Amazon DynamoDBは,ご存じAmazon Web ServicesのNoSQLデータベースサービスです。フルマネージドなので機材管理の負荷なくスケールでき,パフォーマンスも自動で最適化されるなど,開発チームにとってはサービス自体を良くする作業に集中できる点が魅力です。とはいえ,よりパフォーマンス良く,よりコストを抑えられるチューニングのポイントはあります。AWSソリューションアーキテクト直伝の本特集でより深い使いこなし方を知ってください。
-
-特集1 実践リファクタリング 凝集度と結合度を学び,保守性と生産性を高める 凝集度と結合度は,保守性と生産性の高いコードを書くための尺度です。順次,選択,反復という要素を持つ構造化プログラミングをベースとした,現代の多くの言語に適用できます。オブジェクト指向固有のデザインパターンやSOLID原則以上に,日常的に使う機会が多いかもしれません。本特集では,関数の分け方の基準として凝集度と結合を学び,実際のコードをどのようにリファクタリングしていけば良いか解説します。 特集2 Elixirによる高速なWeb開発! 作って学ぶPhoenix 本特集では,ElixirとPhoenixでWebアプリケーションを開発する方法を解説します。Elixirは,低遅延で高い可用性を実現するプログラミング言語で,その文法はRubyから大きく影響を受けています。Phoenixは,ElixirにおけるデァクトスタンダードなWebアプリケーションフレームワークで,リッチなフロントエンドを持つ昨今の開発で求められる要素がすべて組み込まれています。特集を通してRealWorldという一つのWebアプリケーションを作ることで,ElixirとPhoenixについて実践的に学んでいきましょう。 特集3 入社した会社にすばやく適応する 事業構造,カルチャー,コードの把握 転職もしくは新卒エンジニアとして働き始めるとき,すばやく会社やチームに適応できるに越したことはありません。そのためには,その会社の事業や組織,開発についての情報のインプットと,自分自身の言葉によるアウトプットとで良い循環を生み出すことが重要です。本特集は,まったく違う文化,組織へ転職した筆者が,できるだけ早くパフォーマンスを出して貢献できるようになるために行ったことを紹介します。
-
-特集1 上から下まで全レイヤ解説! 複雑化した世界を体系的に学ぶ Web技術総整理 Web技術は,インターネットの普及/拡大に伴いその範囲が広がり,複雑化してきました。今Web技術を学ぼうとすると,どこからどう学べばよいかわからない人も多いと思います。本特集ではこれからWeb開発に携わる方に向けて,それぞれのWeb技術がどのような役割で,ほかのWeb技術とどのような関係なのかが整理できるよう,体系立てて解説します。複雑なWebアプリケーションを開発することになったとき,本特集の基礎知識が必ず役に立つはずです。 特集2 新バージョン登場! PythonによるWeb開発の基本 はじめてのDjango 新しいことを学び始めるなら人気のPythonはどうですか? 本特集でWebアプリケーション開発をやってみましょう!使うのは,Python定番のWebフレームワーク「Django」です。開発未経験でも順を追って進めていけば,Python+DjangoでのWebアプリケーション開発のいろはが学べます。 特集3 Rustで実装! 作って学ぶRDBMSのしくみ Webアプリケーションにおいて欠かせないRDBMSは,重要なシステムであるにもかかわらず,複雑さゆえに使いこなすのが難しいシステムです。また,実用的なRDBMSのコード量は多く,学習目的で読み解くには適していません。そこで,本特集では大きなRDBMSのコードを読むのではなく,小さなRDBMSを実装します。ミニRDBMSを実際に作りながらその内部を知り,RDBMSをもっと活用できるようになりましょう。
-
-※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-12790-9)も合わせてご覧ください。 特集1 演習で慣れる! データベース入門 SQL操作,テーブル設計,分析用データ処理 本特集は新人エンジニアのみなさんに知っておいてほしいデータベースの基礎をまとめました。データベース全般,SQL言語,Webサービスとデータ分析基盤でのデータベースの使われ方について知っているつもりの知識を整理し,データベースに触れたことがない方も簡単な演習を通して使い方の一端を実体験としてください。 特集2 クラウド構築ツールの大本命! ゼロから学ぶTerraform Terraformは,インフラをコードで定義して構築するInfrastructure as Codeツールです。操作がシンプルで文法がわかりやすく,GCPやAWS,Azureといったさまざまなクラウドに対応していることから,クラウドインフラを構築するツールとしてデファクトスタンダードの地位を確立しつつあります。本特集ではTerraformについて,ゼロから徹底解説していきます。 特集3 チャットやIssueでちゃんと伝えたい! エンジニアのための英語 Web開発をしていると,海外のエンジニアと英語でやりとりする機会が多くあります。最新情報やドキュメントはまず英語で書かれることが多いですし,ライブラリなどの開発や議論の多くは英語でやり取りが行われています。英語でコミュニケーションができると,さまざまな可能性が開けるのです。本特集では,英語でやりとりするために必要な基礎の復習と,GitHubやコミュニケーションツールでよく使われる表現などを解説します。
-
-特集1 開発環境から本番環境まで一気通貫! 実践コンテナ活用 VS Code,Docker,Kubernetes,Azure めまぐるしく変化する社会や技術に適応するため,アプリケーション開発者は「頻繁なリリースと迅速なデプロイ」「道具,環境の多様化」「役割分担とコラボレーション」といった課題に追われています。本特集ではコンテナ技術を使い,手もとの開発環境構築,アプリケーション開発と運用の実践を通じて,こうした課題の多くが解決できることを紹介します。 特集2 iOS 15開発最前線 Swift 5.5,UI開発,通知管理,Xcode Cloud 本特集では,iOS 15 以降のアプリ開発で使える新機能を解説します。Swift 5.5 では,非同期処理と同時並行処理を書くためにSwift Concurrency が追加されました。SwiftUI やUIKit によるUI開発,開発環境のXcode,アプリの通知管理や配信環境にも,多くの機能が追加されています。これらの新機能を使いこなし,魅力的なアプリを効率良く提供しましょう。 特集3 作って学ぶ検索エンジンのしくみ Goで実装! 膨大な情報からどう高速に探すのか 検索エンジンで知りたいことを調べる行為は,今や日常になっています。では,膨大なWebページの中から,なぜ一瞬で目的のページを探せるのでしょうか。それは,検索エンジンに使われているさまざまな工夫によるものです。本特集では検索エンジンをGo言語で作ってみることで,そのしくみを学びます。ユーザーが入力したキーワードがどう処理されるのか,検索のためのデータがどう保持されているのかなど,実装することでしっかりと理解できるはずです。
-
4.7「あなたの会社のWebサイト,遅くないですか?」 ふとした興味でWebにアクセスすると,重たくて読みたい情報が読めない……。Googleの調査では,Webページの読み込みに3秒かかると53%の人が,別のページに行ってしまいます。Webページを速くする,これはビジネスで成功するために必須の条件と言えます。本書は,Webページの高速化を図るための実践ノウハウを,Webデザイン,HTMLコーディングなどの見地から多面的にまとめました。Googleの提供するツールであるPageSpeed Insight,Chrome DevToolsを徹底活用し,客観的でかつ実際に効果が出る実践テクニックを紹介します。Web担当者,HTMLコーダー,Webデザイナーの皆さんの仕事を活性化します!
-
1.0大好評! HTML5とCSS3のよく使われるタグ,プロパティに内容をしぼったリファレンスです。最新のブラウザ,HTML5の仕様に対応して増補改訂しました。誰もが知りたい目的別だから,使いやすく,引きやすい。あのタグ,どう書くんだっけ?というときにサッと調べられます。サンプルもシンプルで,わかりやすくて,しかも楽しい。ポケットサイズだから机の上でかさばらず,持ち運びやすい。開発業務で必要な方だけでなく,ブログやサイトを運営している方にもおススメです。
-
4.01巻3,278円 (税込)本書は,中級以上のGoプログラマーがツール開発・プロダクト開発で必要とされるプログラミングテクニックおよび周辺知識を学ぶための実践集です。 Goはコマンドラインツール,Webサービス開発,ソフトウェアやクラウドサービスの拡張機能開発,IoTなど利用範囲の広いプログラミング言語です。これらの用途でGoを使うには,基本的な文法だけでなく,Goの特徴を活かした定石のコードの書き方,ライブラリの知識,テストなどの開発手法,Go以外の周辺知識などの理解も必要です。文法解説が主の入門書では,これらを学ぶことは難しいです。そこで本書では,現役のGoプログラマーが実務や趣味で開発したオープンソースソフトウェア(OSS)を紹介します。その開発の過程で書かれたコード,参照された資料,使われた開発手法を解説しつつ,より詳しく学ぶための参考資料を提示します。入門レベルを脱して,自ら応用力を身につけるための取っ掛かりとなる情報を提供します。
-
4.0◆SREの基本の知識と実践方法をこの1冊で!◆ Googleが提唱したシステム運用の方法論「SRE(Site Reliability Engineering)」。アジャイル型への転換の中で、システムの利便性や安定性を「価値」ととらえ、その向上を目指すSREに注目が集まっています。「システムの安定的な運用」のために、SREを担当するエンジニアには開発と運用、双方のスキルが必要です。 本書では、SREを学びたい、開発に取り入れたいエンジニアを対象に全体像を解説しつつ、今後の学習のための情報源を多く紹介します。基本的な知識だけでなく、代表的なプラクティスや組織の運用など、実践的な内容まで解説します。 ■目次 第1章 SREとは ・1.1 SREの概要 ・1.2 なぜSREが重要なのか ・1.3 SREの価値観 ・1.4 SREに必要なスキル ・1.5 本書の歩き方 第2章 信頼性を定義して組織で運用する ・2.1 SLOを理解するための4つの要素 ・2.2 なぜSLOが重要なのか ・2.3 エラーバジェットの理解と活用 ・2.4 SLO導入ステップ 第3章 システムの状態を観測する ・3.1 システムを観測するための基本概念 ・3.2 モニタリングの基本 ・3.3 アラート通知の基本と運用 ・3.4 オブザーバビリティツールの構成 ・3.5 オブザーバビリティにおける5つの重要なシグナル ・3.6 オブザーバビリティツールの選定と実装 第4章 障害を学びにつなげる ・4.1 ポストモーテム ・4.2 ポストモーテムのフレームワーク ・4.3 ポストモーテムの実践 ・4.4 再発防止策の重要性と効果的な実施方法 ・4.5 ポストモーテムの運用と文化 ・4.6 複数チームにまたがるポストモーテムの実施 ・4.7 ポストモーテムをテーマにしたワークショップの提案 第5章 障害対応のプロセスや体制を作る ・5.1 オンコール ・5.2 オンコール担当者の役割 ・5.3 オンコール体制の設計 ・5.4 オンコールトレーニング ・5.5 オンコールに対する手当て ・5.6 Runbookの作成と活用 ・5.7 燃え尽き ・5.8 SEVレベル ・5.9 心理的・身体的ケア 第6章 手作業を自動化し効率化する ・6.1 トイルとは ・6.2 トイルを管理する 第7章 サービスのリリースを事前にレビューする ・7.1 PRR ・7.2 GitLabのPRR事例 ・7.3 PRRとほかのプラクティスの関係 第8章 SREの組織構造 ・8.1 SREにおける組織構造の重要性 ・8.2 SREの組織構造を考えるヒント ・8.3 SREの組織パターン ・8.4 SREの実装モデルとパターン ・8.5 SREの実装モデルとパターンの選び方 第9章 SREの実践 ・9.1 とある組織におけるSREの実践事例 ・9.2 SREの実践のコツ ・9.3 広がるSREの世界 ・9.4 SREと??? ■著者プロフィール 北野 勝久:【第1章担当】一般社団法人SRE NEXT代表理事。株式会社スタディストのCTOを務めつつ、自社内のSRE活動にも携わる。 近藤 健司:【第2章担当】教育系ITサービス開発組織の部長。SLOの組織への導入をリードした。 小林 良太郎:【第3章担当】SaaS型オブザーバビリティプラットフォームベンダーのTAMとして、日夜オブザーバビリティやモニタリングの重要性を顧客に説いている。 渡部 龍一:【第4、5章担当】株式会社IVRy所属。SREとして、電話AI SaaSの信頼性向上に注力。障害対応やEOL対応に加え、SLI/SLOの設計や運用、システム改善を通じて、継続的なサービス品質向上に取り組んでいる。 齊藤 拓朗:【第6、7章担当】株式会社ビズリーチ所属。「HRMOS(ハーモス)」シリーズのSREとして、複数プロダクトの自動化、信頼性向上、パフォーマンス最適化、インシデントレスポンスなどを推進。 柘植 翔太:【第8章担当】株式会社サイバーエージェントの横断SRE組織のGeneral Manager兼Principal SREとして、社内外のサービス・組織へのSRE推進や組織開発、人材育成支援などを行っている。 横山 達男:【第9章担当】株式会社マネーフォワード所属。SRE組織の副部長/テックリードとして、各プロダクト組織におけるSREの導入や推進などを担当している。
-
3.7※本書は2009年に発行された書籍の電子版になります。 【何が足りないのか? 何をすべきなのか?】 ムックとしては異例の5年にわたるロングセラーとなった『SEライフ』第1弾が、さらに読みやすい新装版として再登場。そろそろ若手ではなく、中堅としての活躍・貢献が期待される28歳。この年齢をいかに迎えるかが、その後のSE人生を大きく左右します。本書では、現場の第一線で活躍する執筆者たちが、28歳までにぜひ身につけておきたい力を28に分類して紹介。聞く力、10分の力、創り上げる力、納得させる力、考える力、覚える力、自己分析の力、ライセンスの力…。日々の仕事やこれからの人生の大きな力となるはずです。 ■こんな方におすすめ ・プログラマーやSEになって、まだ間もない方。 ・これからプログラマーやSEになりたい方。 ・SEとしてのこれからに不安を感じたり、悩みをかかえている方。 ■目次 ●Chapter1 交渉力 1 守る力 2 伝える力 3 聞く力 4 話す力 5 書く力 ●Chapter2 管理力 6 終える力 7 10分の力 8 残す力 9 分ける力 10 使われる力 ●Chapter3 実務力 11 根底を成す力 12 創り上げる力 13 くみ取る力 14 乗り切る力 15 納得させる力 16 立場を作る力 17 選ぶ力 ●Chapter4 勉強力 18 考える力 19 調べる力 20 覚える力 21 英語の力 ●Chpter5 自己力 22 自己分析の力 210 23 目標設定の力 216 24 ライセンスの力 資格なんて無意味?/どんな資格があるのか/資格をキャリアに生かす/身の丈に合った資格を 25 辞める力 26 保つ力 ●Chapter6 生活力 27 ストレスとつきあう力 28 家庭で生きる力 ■著者プロフィール 石川 説明堂(いしかわ せつめいどう):情報伝達のノウハウを提供する個人事業主。業務マニュアル制作、ウェブテキスト執筆、各種文書のわかりやすさ改善などを手伝っている。 伊藤 直也(いとう なおや):株式会社はてな 執行役員 最高技術責任者。青山学院大学物理学修士。株式会社ニフティを経て2004年9月に株式会社はてなに入社。共著作に『Blog Hacks』(オライリー・ジャパン)など多数。 今井 孝(いまい たかし):活躍の場をITという仕組みから、コミュニティという仕組みに拡大し、経営コンサルティングや研修講師を行っている。独自のコミュニティ・マネジメント方法論を体系化し、教育・支援した企業・団体は数百に上る。 中尾 真二(なかお しんじ):フリーランスのライター、エディター。アスキーの書籍編集から始まり、オライリー・ジャパン編集長を経て、翻訳や執筆、取材などを紙、ウェブを問わずこなす。IT系が多いが、たまに自動車関連の媒体で執筆することもある。 南方 司(みなかた つかさ):電子決済やセキュリティ、ネットワーク設計を得意とするSEだったが、デスマーチプロジェクトを境にSEから足を洗うことを宣言。現在は大手外資系ソフトウェア会社で政策渉外・国際標準化活動などに従事する傍ら、いくつかの大学で教鞭をとる。 山内 美香(やまうち みか):CORRECT Inc.(コレクト)代表。大手情報系出版社に入社後、企画・編集業務を経て独立。情報システムの戦略的利用が進んだ90年代からIT分野にも関与。PMとして国内最大シェア携帯電話キャリアのWWW社内研修システムを構築するなど、おもに企画・提案・構想・要求定義フェーズの実績を持つ。
-
4.5システム開発の現場では、プログラミング言語と同じくらい、SQL(データベースのデータを参照/更新するための言語)が使われています。しかし、プログラムは書けても、SQLはよくわからないというITエンジニアは意外と多いです。SQLやデータベースの理解不足のまま開発すると、アプリケーションは作れても、「性能がでない」「メンテナンス性が悪い」といった問題が発生し、あとで苦労することになります。 本書は、SQLの文法は学んだもののSQLに苦手意識を持っているITエンジニアのための書籍です。複雑なSQLを読める/書けるようになるには、データベースの表をカタマリで操作する考え方(集合志向)を理解する必要があります。本書では、「データベースの表をカタマリで操作するイメージ」を持てるように、文法の解説はいったん脇に置き、どのようにイメージすれば良いか、ほかの手続き型言語とどう違うか、というポイントを豊富な図を使って入念に解説します。 また、SQLやデータベースで起こりがちな性能、メンテナンス性、開発効率などの問題を解決するには、データベースのしくみを理解し、アプリケーションとデータベースの役割を適切に分担する必要があります。こちらについても、さまざまな図と例を使って、問題が起きるメカニズムと解決のアイデアを紹介します。
-
3.0本書は,「iPhoneアプリを開発してみたい!」と思う人が,最初に手に取っていただくことを想定した解説書です。難しいことは気にせず,開発ツールである「Xcode」をとにかく説明文のとおりに操作すればアプリを作ることができます。画面上の操作も,1つひとつのステップを掲載しました。プログラミング言語「Swift」のことをまったく知らなくても,iOSアプリを作れます。iOSアプリの開発は,SwiftのプログラムとStoryboardでのグラフィカルな設定の組み合わせで成り立っています。本書では,とくにStoryboardでの作業に重点をおき,極力プログラムを書く量を少なくしています。
-
4.4※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 社会のさまざまな場面で使われるようになった人工知能(AI)。AIは,気づかないうちに私たちの社会や生活に深く入り込んでいて,多くの恩恵がもたらされるとともに,さまざまな課題も発生しています。本書は,社会を映す「鏡」でもあるAIについて,深層学習など技術の基本から,公平性や不平等,監視と安全のトレードオフ,分断やフェイクニュースといった社会の問題に対する影響と課題までをマンガとイラストでわかりやすく解説しました。AIというレンズを通して,今の私たちの社会を見つめなおし,技術とのかかわり方を考える1冊です。
-
3.3※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。 情報通信技術(ITC)が高度に発展した今日,私たちは,さまざまなデータに囲まれて暮らしています。データがなければ,ありふれた日々の営みですらスムーズには行えません。そんな現代社会で必須の「データ」を扱う科学が,「データサイエンス」です。本書は,データサイエンスの概観がざっくりと把握できるよう,イラストや図をたくさん使って,やさしく解説した「入門の入門書」です。難しい数式は使っていないので,数式が苦手な方にもおすすめです。Excelでデータサイエンスを体験できるダウンロードデータ付き。
-
5.0◆MSXで基礎から学べるBASICプログラミングの入門書◆ 当時はプログラミングに挫折した人に贈る、MSX-BASICを使用したゲームプログラミングの入門書です。制御構文や変数といったプログラミングの基礎から表現の幅を広げる工夫まで、まだプログラミングをしたことがない人でも理解できるように解説します。MSX-BASICは簡単な記述でゲームを作れるように設計されており、テキストベースのゲームからシューティング、アクション、RPGと、BASICの基礎を身につけながらステップアップすることで自分の作品を作れるようになります。特典として、MSX公式エミュレーター「MSXPLAYer」をダウンロードできます。 ■こんな方におすすめ ・あの頃はゲーム開発者になりたかった大人 ・新MSXからレトロゲーム開発をやってみたい人 ■目次 第1章 MSXとは ・MSXの概要 ・MSXのエミュレーター ・MSXPLAYerの使い方 ・MSX0 Stack ・MSX0 Stackの使い方 ・以前販売されていたMSX実機を利用する 第2章 MSX-BASICをはじめよう ・BASICとは ・まずは簡単なプログラムから ・MSXの基本操作 ・変数とは ・BASICの基本命令・構文 第3章 ブロックくずし ・テキストベースのブロック崩し ・しくみを考える ・ラケットの表示と移動 ・ボールの表示と移動 ・ラケットとボールの当たり判定 ・残機とスコアの表示 ・ブロックの表示と当たり判定 第4章 シューティング ・スプライトを使ったシューティング ・しくみを考える ・スプライトについて ・自機の処理 ・敵の処理 ・撃墜とゲームオーバー処理 ・効果音をつける 第5章 アクション ・PCGを使ったアクション ・スプライト定義 ・壁等のグラフィック定義 ・足場の処理 ・プレイヤーの処理 ・残機の管理とゲームオーバー処理 第6章 タイピング ・MSXでは珍しいタイピングゲーム ・課題文字列をまとめる ・キーボード入力の処理 ・その他の処理 第7章 アドベンチャー ・謎解きアドベンチャー ・図形を描く ・画面を作成する ・コマンド入力を実装する ・各コマンドでフラグを管理する 第8章 RPGのバトル画面 ・コマンド選択式バトル ・ゲーム画面を作成する ・メインループを作成する ・勇者のコマンドを実装する ・ドラゴンの行動を実装する 付録A VRAMアクセス 付録B MSXのドキュメント 付録C 便利なツール類 付録D BASIC命令まとめ ■著者プロフィール 山田 直樹(やまだ なおき):インディゲームクリエイター。スマホ向けのゲームアプリの個人製作を経て、2018年からMSX-BASIC等の再学習をはじめブログにまとめる。MSX用同人カートリッジゲーム「大仏パラダイス」やMSXゲーム製作解説の同人誌を製作。 米澤 遼(よねざわ りょう):「余熱」名義で、同人誌や同人ハードウェアの製作・販売を行う。近年はFPGA評価ボード向けMSX互換I/O拡張ボード「DEOCM」などMSX関連のアイテムを多くリリース。山田氏とは「大仏パラダイス」の製作を通じて交流を深め、その後の同人誌執筆などもサポート。著書:『CPU自作入門』(共著、技術評論社)
-
-◆プロトタイプから一歩進んだ実践的なMCPサーバー◆ MCP(Model Context Protocol)は、LLM(大規模言語モデル)とツールを連携させる革新的なプロトコルとして急速に普及しています。MCPによってAIエージェントに各種のタスクを任せることが現実になりました。同時に重要性を増しているのが、自サービスのMCPサーバーを完備してAIフレンドリーにすることです。サービスやデータベースは「AIから使えるかどうか」によってその価値が大きく変わります。 本書はMCPの基礎概念からMCPサーバー開発のための環境構築、基本的な実装、複雑なドメインヘの応用、そして品質保証を扱います。書籍内では実例として、初歩的な天気予報サーバーや、実践的な社内ドキュメントサーバーを作成します。また、著者が独自に考案した「4層テスト戦略」は、従来のAPIテストでは対応困難なMCP特有の課題に対する解決策を提示します。さらにはCI/CDおよび自動テストの構築という運用面まで、MCPサーバー開発のすべてを学べる1冊です! ■こんな方におすすめ ・実践的なMCPサーバーを作りたい方 ・自身や自社の持つデータ資源をAIエージェントに活用させたい方 ・LLMが介在するシステムのテストや品質保証に関心のある方 ■目次 第1章 MCPサーバー開発の基礎知識 ・1.1 MCPとは何か ・1.2 MCPサーバーの基本アーキテクチャ ・1.3 開発環境の構築 ・1.4 まとめ 第2章 MCPアーキテクチャの理解 ・2.1 MCPプロトコルの全体像 ・2.2 MCPサーバーの設計パターン ・2.3 MCPサーバーのスケーラビリティ ・2.4 セキュリティアーキテクチャ ・2.5 他のプロトコル・アーキテクチャとの比較 ・2.6 まとめ 第3章 基本的なサーバー実装 ・3.1 公式サンプルの解析 ・3.2 HTTP APIとの連携 ・3.3 天気予報MCPサーバーの構築 ・3.4 まとめ 第4章 複雑なサーバー設計 ・4.1 複雑な処理フローの設計 ・4.2 実例:過ごし方提案MCPサーバー ・4.3 応用:社内ドキュメントサーバー ・4.4 スケーラビリティとパフォーマンス ・4.5 設定管理とデプロイメント ・4.6 まとめ 第5章 MCPサーバーのテスト戦略 ・5.1 4層テスト戦略 ・5.2 Layer 1:単体テストの実装 ・5.3 Layer 2:プロトコルテストの実装 ・5.4 Layer 3:カスケードテストの実装 ・5.5 Layer 4:E2Eテストの実装 ・5.6 まとめ 第6章 CI/CD統合 ・6.1 GitHub Actionsでの自動テスト ・6.2 テストカバレッジの測定と改善 ・6.3 デプロイメント自動化 ・6.4 その他の品質保証のベストプラクティス ・6.5 まとめ ■著者プロフィール ●岡 翔子(おか しょうこ):大阪在住。AWSジャパンを経て現在はLINEヤフー株式会社でエンジニアとして勤務。LLMの応答に関する論文執筆経験をもち、個人でMCPサーバーの開発を行っている。趣味は読書と現代美術鑑賞。X:@0xshooka ●高山 洪銘(たかやま こうめい):どちらかといえばソフトウェアエンジニア。モバイルアプリケーション開発やSDK開発のほか、ソフトウェアテストの自動化にも長年従事。近年は開発者支援や組織的なナレッジ共有にも注力する傍ら、機械学習やデータ分析にも関心を持ち、一部のAI作曲コンテスト等にも出没している。 ●餌打 優太(えうち ゆうた):LINEヤフー株式会社でエンジニアとして勤務。LINE公式アカウントのMCP Server(line-bot-mcp-server)の立ち上げを行う。また、株式会社Bocekでエンジニアリングマネージャーを務める。ポートフォリオ:https://euchi.jp
-
5.0システムとデータの両面にスポットを当て,データ分析基盤の整備/運用/活用の指針をまとめた入門書。 データ分析の中心にある「データ分析基盤」を取り巻く環境は,大きく変わりました。機械学習/ディープラーニング,マーケティング,需給予測,不正検知を筆頭にデータ利用が多角化し,データ分析基盤に求められる役割も多様化が進んでいます。 本書では,データ分析基盤の「今」に焦点を合わせ,基本用語の整理から歴史,クラウドをはじめとしたインフラ,主要な技術スタック,システムモデル,データドリブンのための可視化&測定術まで徹底解説。 合わせて,長期視点に立ったユーザー中心の運用に欠かせない「セルフサービス」「SSoT」に基づいたルール作り,それらを実現するためのゾーン/タグ管理,メタデータ管理,データの品質管理も平易にまとめました。 広くデータ分析基盤に関わるエンジニア/ユーザーの方々へ,ユーザーが自然と集まり,データ活用を促進するシステムの実現のために,実践で活かせる考え方をお届けします。
-
3.5エンジニアのためのマネジメント入門書です。 エンジニアのキャリアパスの1つに「マネジメント」があります。 エンジニアリング領域の知見を生かして,複数のチームメンバーをマネジメントする。エンジニアリングマネージャーとも呼ばれる,この仕事は,エンジニアにとっては多くの場合未知の領域です。エンジニアリングとマネジメントでは求められるスキルも異なり,仕事の進め方も大きく異なるからです。 マネジメントを成功させるには,マネジメントの知識を学び,エンジニアからマネージャーへの「転職」ともいえる大きな変化を乗り越える必要があります。 本書ではマネジメントの基礎知識や実践的なトピックを扱い,エンジニアがマネージャーとして働くための第一歩を解説します。
-
-Unityはゲームエンジンとして多くの機能を持ち,ゲーム製作の現場で多くの支持を得ています。エディタの操作から簡単にゲームを作成することはできますが,本格的なオリジナルのゲームを作成するにはスクリプト処理でのプログラミングが必要になります。本書は,ゲームクリエイターのゲーム開発を効率化するために,Unityの基本的な操作とスクリプトの解説をリファレンス形式で解説します。スクリプトの解説はC#で行いますが,JavaScriptのサンプルコードも掲載しています。
-
4.5WordPressを使った開発案件は依然多く,それに携わるWebエンジニアも多数存在します。ただし,モダンな開発手法に慣れたWebエンジニアがWordPressに初めて触れたとき,その独特のアーキテクチャやシステムの構成に戸惑いを感じることがあるかもしれません。だが,WordPressは,それらを補ったうえにさらに強力なメリットを持ち合わせています。本書は,PHPプログラマがWordPressで開発する際に必要な基礎知識から,現場で役立つ具体的なカスタマイズ手法や開発のポイントについて詳しく解説しています。
-
4.0労働人口の減少をITシステムの活用による生産性の向上で補う傾向は今後も続く。それを補うため、現在各社はさまざまな手段で業務システムの効率化を模索している。クラウドに移行し、スピーディーにサービスを立ち上げることもそのひとつだが、いざやるとなると純粋に技術面以外での障害も多い。 本書は、銀行システムという、基幹系のなかの基幹系システムのクラウド化を現在進行系で推し進める著者が、これまでに直面し、克服してきたクラウド化に際しての課題や解決策を解説する。技術的な側面だけでなく、体制づくりからマネジメントで気をつけるべきこと、個々のエンジニアの環境づくりまで指針を示す。
-
4.0UIデザインの中でも普段はあまり注目されることのない細かい部分にフォーカスした書籍です。デザイナーがどのような意図を持ってUIをデザインしているのかを解説します。身近なサービスを例として取り上げているので,実感を持って理解できます。筆者のデザイナーとしてのノウハウがふんだんに織り込まれているので,WebサービスのUIデザインをもっと良くするためのヒントになるはずです。
-
-ディープラーニングの適用範囲が拡がり,画像認識や音声認識の精度が高くなる一方,モデルに対して細工した画像を送り,誤った分類結果を引き起こす攻撃などが懸念され始めています。海外では非常に活発な研究領域です。たとえば,敵対的サンプル(Adversarial example)として,パンダ(Panda)の画像にノイズを少し加えることでテナガザル(Gibbon)と誤認識させる現象が有名です。 本書では,これらを理解するためにディープラーニングの基礎からハンズオンによる実装方法まで解説しています。ディープラーニングは数式などがあって難易度が高く感じる方にも最適な一冊です。 本書で利用するソースコードは次のWebページからダウンロードできます。 https://github.com/tagomaru/ai_security/releases
-
4.0データサイエンティストと呼ばれる職種が登場して、いまや10年以上が経過しようとしています。ビッグデータやディープラーニングなど技術的な流行も後押しして、AI・データ分析プロジェクトに取り組む企業も増えました。また、データサイエンス、データエンジニアリングに関する技術情報は次第に増え、データ分析コンペティションの盛り上がりもあって技術的な知識を持つ方が増えているのは事実です。ところが、実際にAI・データ分析プロジェクトに取り組んでみると、そううまくはいかないようです。プロジェクトを進めるには技術知識だけでなく「ビジネス⼒」が必要なのです。 そこで、本書はこれまでメインテーマとして語られることのなかった「ビジネス⼒」に焦点をあてて、データ分析プロジェクトを一通り解説していきます。プロジェクトの⼊⼝として「組織の立ち上げ方」から「案件獲得」にふれ、続く実際のデータ分析プロセスにおいては、課題とゴールを明確にして、分析結果は出して終わりではなく共有、評価のサイクルが必要であることを解説します。最後に出⼝となる「収益化」に関する情報をまとめます。 先を行くデータ分析者達は、これまでさまざまな罠にかかり、見えない落とし穴にはまっても奮闘してノウハウを蓄積してきたのがこの10年です。これからAI・データ分析プロジェクトに取り組む方/関わる方へ向けて、先人たちのノウハウをまとめたのが本書です。
-
-クラウドサービスの代名詞とも言えるAWS(Amazon Web Services)。いまや,Web 業界だけでなく基幹系システムや業務システムでも合理的な選択肢として避けて通ることのできない存在になりました。しかし実際のところはまだ,ホスティングの代わりにAWS を利用しているに過ぎないようなケースも多く見られます。本書では,AWS のメリットであるスケーラビリティ,アジリティ(俊敏性),マネージドプラットフォームを享受する,クラウドのポテンシャルを120% 活かした「クラウドネイティブ」なアーキテクチャを実現するにはどうすればよいのか,実案件で実践してきたエンジニア陣が解説します。
-
3.3家は「高額で一生ものだから」とよく考えて買うのに,なぜ中堅企業でさえ数千万から数億円になるシステム開発では思考停止してしまうのか?なぜ,要件定義がうまくいってもまったく使えないシステムが出来上がってしまい,お金をドブに捨てるハメになってしまうのか?システムコンサルタント兼公認会計士という異色の著者が,“稼げるシステム”の作り方を教えます。ベンチャーから中堅企業まで50社以上,業務設計・改善から会計監査さらにIPO支援まで20年近いコンサルティング実績があるからこそ書けたノウハウが満載!
-
4.5オブジェクト指向設計の名著として名高い“Practical Object-Oriented Design in Ruby”,待望の翻訳版!使いこなせるようになるととても便利なオブジェクト指向ですが,「なんとなく」の理解で使っていると,大きな罠にかかってしまいます。本書は,保守性を上げて運用コストを下げるアプリケーションをつくるために,クラス設計から基本概念,継承のテクニック,ダックタイプ,そしてテスト設計まで,幅広くカバーしています。オブジェクト指向言語を使用するすべての人におすすめの1冊です。
-
4.0オブジェクト指向ユーザーインターフェース(OOUI)とは、オブジェクト(もの、名詞)を起点としてUIを設計すること。タスク(やること、動詞)を起点としたUIに比べて、画面数が減って作業効率が高まり、また開発効率や拡張性も向上する、いわば「銀の弾丸」的な効果を持つ。ブログや雑誌記事などで大きな反響を得たこの設計手法について、前半部では理論やプロセスを詳説。そして後半部の「ワークアウト(実践演習)」では18の課題に読者がチャレンジ。実際に考え、手を動かし、試行錯誤をすることにより、OOUIの設計手法を体得できる。