【2023最新】「ゲームプログラミング」のおすすめ本!人気ランキング
この記事では、「ゲームプログラミング」のおすすめ本をランキング形式で紹介していきます。インターネット上の口コミや評判をベースに集計し独自のスコアでランク付けしています。
Amazonで詳しく見る
紹介文
必ず身につく世界最良の学習メソッド
なぜ、世界中の成功者はプログラミングの基本を学んでいるのか。その答えと、具体的な学び方が一冊に!
世界中で2億人以上が夢中になった学び方!
バラク・オバマ(アメリカ大統領)、ビル・ゲイツ(Microsoft創業者)、マーク・ザッカーバーグ(Facebook創業者)らも賛同した、
「世界最良の学習メソッド」を徹底紹介!
抜群の面白さとわかりやすさで、小学生から大人まで全世代がハマる!
★★こらからはじめる人にオススメの1冊です!★★
・なぜ、世界中の成功者はプログラミングの基本を学んでいるのか?
・プログラミングの基本を最少の時間で確実に習得できる学び方とは?
世界最先端の学習研究が「学び方」を劇的に変えた。
この知識は決して無駄にはなりません。
プログラミングの基礎知識は、近い将来、必ず役立つスキルになります。
◆◆本書の対象読者◆◆
・ できるだけ効率よく、とプログラミングの基本を習得したい人
・ プログラミングに興味はあるが、そもそもの「学び方」がよくわからない人
・ 社会人の一般教養として「プログラミングの基本」を身につけておきたい人
・ 子どものプログラミング教育に興味のある人
ぜひご一読ください。
本書掲載の「新しい学び方」は、あなたの「プログラミング」に対する見方を
完全に変えるかもしれません。
第1部 新しいスキルを獲得しよう!
第1章 プログラミング・スキルの想像以上の価値
第2章 効率よく、確実にプログラミング・スキルを習得する方法
第2部 世界最高の学習メソッドで学ぶ、はじめてのプログラミング
第3章 主な学習サービスの概要と特徴
第4章 はじめてでも絶対につまずかない「Hour of Code」
第5章 最もシンプルかつ強力な学習ツール「Lightbot」
第6章 世界最高峰の叡智が作った「Scratch」
第7章 コード入力による制御・処理を学べる「CodeMonkey」
第3部 「プログラミング」の全体像を理解する
第8章 1つのプログラムを最初から最後まで作ってみよう!
第9章 他者のプログラムを活用することの大切さ
第4部 入門者からの脱却 ~もう1つ上のステップへ~
第10章 どのプログラミング言語を学ぶべきか
第11章 本格的にプログラミングを学ぶための手引き
Amazonで詳しく見る
紹介文
この本では、「コード」を書いてゲームを作りながら、プログラミングを楽しく学んでいきます。パソコン上でProcessingを使いますので、Javaベースのプログラムを、面倒な設定なしで直感的にどんどん書きながら理解することができます。PythonやJavaScriptは難しくて手が出せなかったという人でも、この本なら大丈夫。小学校高学年以上のどなたでも読むことができます。Scratchではちょっともの足りない人も、ぜひ試してみましょう。
イントロダクション
●第1章 Processingでプログラミングを始めよう!
1-1 なぜプログラミングをするの?
プログラミングは「道具」
本書の目的
1-2 「Processingがオススメ!」の理由
プログラミング言語とは?
なぜProcessingがオススメなの?
1-3 Processingを始めよう!
Processingの実行環境
Processingをダウンロードしよう
Processingをインストールしよう
Processingを起動しよう
●第2章 Processingで図形を描こう
2-1 「 こんにちは、世界」~ Processingの世界にようこそ
Hello Worldとは?
プログラムのコードを入力しよう
「Hello World」プログラムを実行しよう
2-2 画面のサイズと座標を理解しよう
画面のサイズを指定する
画面の座標を理解しよう
2-3 いろいろな図形を描こう
線を描こう
四角形を描こう
円を描こう
三角形を描こう
2-4 図形に色をつけよう
図形を黒く塗りつぶしてみよう
光の三原色を使って色をつけよう
カラーコードを使って色をつけよう
画面の背景の色を指定しよう
2-5 課題図形を組み合わせてクマを描いてみよう
図形を組み合わせてクマを描く
クマの顔の輪郭を描く
クマの耳を描く
クマの手を描く
クマの目を描く
クマの口周りを描く
クマの鼻を描く
●第3章 Processingプログラミングの基本―関数、変数、画像表示、乱数
3-1 絵を動かすために必要なsetup関数とdraw 関数を作ろう
まず関数とは何かを理解しよう
マウスの位置に四角形を表示するプログラムを作ろう
setup 関数とdraw関数の役割を知ろう
setup 関数とdraw関数を書いてみよう
setup 関数とdraw関数を書くときの注意点
3-2 「変数」とは何かを理解しよう
変数=名前付きの箱
自動で右に移動する四角形を表示するプログラムを作ろう
変数の宣言方法を理解しよう
1つの四角形が自動で右に移動するプログラムを作ろう
マウスの位置に四角形がついてくるプログラムを作ろう
draw関数の実行回数をカウントしよう
算術演算子を利用しよう
3-3 画像を画面に表示しよう
まずは画像を準備しよう
耳の長いネコの画像を表示しよう
耳の長いネコの画像がマウスについてくるプログラムを作ろう
3-4 「乱数」を使って画面の表示を変化させよう
なぜ乱数を利用するのか
実行のたびに色が変わる円を表示するプログラムを作ろう
値を返す関数と値を返さない関数
実行のたびに色がカラフルに変わる円を表示するプログラムを作ろう
クリックするたびに円の色がランダムに変化するプログラムを作ろう
初心者あるある問題~変数のスコープ
3-5 課題マウスにクマの絵がついてくるプログラムを作ろう
クマの絵を動かすためのヒント
setup 関数とdraw関数を使う
変数を使って座標を指定する
クマの絵の表示位置を調整する
●第4章 Processingプログラミングの基本―条件分岐、繰り返し
4-1 条件分岐を理解しよう
if ~もし○○なら□□をする
比較演算子を使って条件式を書く
左右に動く円を描くプログラムを作ろう
キーボードで円を動かすプログラムを作ろう
4-2 画像のアニメーションを作ろう
アニメーションの基本と画像の準備
ネコが歩くアニメーションを作ろう
ネコが自然に歩くようにアニメーションを修正しよう
4-3 条件分岐を使って「当たり判定」を行おう
「画面がクリックされたら」~当たり判定
マウスを四角形の上に置いたら色が変わるプログラムを作ろう
4-4 繰り返し処理を理解しよう
四角形を60 個並べるプログラムを作ろう
for ~条件を満たす間処理を繰り返す
複数の四角形がいっせいに動くプログラムを作ろう
4-5 関数を自分で定義しよう
関数について今まで学んできたこと
オリジナルの関数を作ろう
4-6 まとめチュートリアル間違い探しゲームを作ろう
間違い探しゲームを作ろう
① setup 関数とdraw関数を書こう
②まずは黒い四角形を1つ描こう
③黒い四角形を横に5 個並べよう
④繰り返し処理を使って黒い四角形を横に5 個並べよう
⑤今度は黒い四角形を縦に5 個並べよう
⑥横5×縦5=25 個の四角形を描こう~その1
⑦横5×縦5=25 個の四角形を描こう~その2
⑧四角形の色をランダムに変更しよう
⑨1個目の四角形だけ色を変えよう
⑩色が変わる四角形をランダムに変更する
⑪ クリックされるたびに色が違う四角形が変わるようにしよう
⑫関数を作って同じ処理を1つにまとめよう
⑬正解の四角形をクリックできるようにしよう
⑭スコアを表示しよう
⑮間違い探しゲームの完成!
⑯カスタマイズしてみよう
●第5章 配列と繰り返し処理でさまざまな表現を作ろう
5-1 配列とは何かを理解しよう
まずは配列を体験してみよう
配列の宣言方法を理解しよう
配列の要素を個別に操作しよう
初心者あるある問題~配列の添字
5-2 配列を使ってさまざまな表現を作ろう
雨を降らせるプログラムを作ろう
雪を降らせるプログラムを作ろう
宇宙を表現するプログラムを作ろう
5-3 配列を使ってアクションゲームを作ろう
アクションゲームを作ろう
① setup 関数とdraw関数を書こう
②プレイヤーとなる白の球体を動かそう
③敵となる球体を表示しよう
④敵の球体を1体ずつ出現させてみよう
⑤敵のスピード、サイズ、色をランダムにしよう
⑥当たり判定を作ろう
⑦敵が自動で出現するようにしよう
⑧敵とぶつかったときの処理を修正しよう
⑨ゲームオーバーの処理を作ろう
⑩スタート画面を作成しよう
●第6章 クラスとオブジェクトを活用しよう
6-1 クラスを理解しよう
「モノ」を表すオブジェクトに値をまとめよう
クラスを定義しよう
オブジェクトを生成して利用しよう
6-2 配列と一緒にクラスとオブジェクトを使ってみよう
風船が上昇するプログラムを作ろう
配列と一緒に使って風船をたくさん表示するプログラムを作ろう
6-3 クラスとオブジェクトを使ってシューティングゲームを
作ろう
シューティングゲームを作ろう
① setup 関数とdraw関数を書こう
②自機となるプレイヤーを仮表示しよう
③プレイヤーを動かそう
④プレイヤーの動きをスムーズにしよう
⑤敵機を作ろう
⑥自機と敵機に共通するクラスを作ろう
⑦自機を戦闘機の画像にしよう
⑧自機の戦闘機をアニメーションにしよう
⑨敵機の戦闘機をアニメーションにしよう
⑩配列でアニメーションを管理しよう
⑪戦闘機が弾丸を発射できるようにしよう
⑫戦闘機がたくさんの弾丸を発射できるようにしよう
⑬当たり判定を作ろう
⑭ isHit関数を使って弾丸が敵に衝突したかを判定しよう
⑮弾丸を遮る壁を作ろう
⑯弾丸が壁に跳ね返るようにしよう
⑰弾丸とプレイヤーが当たるようにしよう
⑱敵機が動くようにしよう
⑲壁にしかけを加えよう
⑳ゲームクリアとゲームオーバーを作ろう
?ゲームの演出を強化しよう
●第7章 総まとめドローンを操作するアクションゲームを作ろう
7-1 プレイヤーが操作するドローンの画像を表示しよう
アクションゲームを作ろう
① setup 関数とdraw関数を書こう
②ドローンの画像を表示しよう
7-2 キーを押してドローンを動かしてみよう
③プレイヤーを表すクラスを作ろう
④ Playerクラスを使ってドローンを表示しよう
⑤ドローンが上昇、下降、横に移動するようにしよう
7-3 安全ブロック、危険ブロック、ゴールブロックを作ろう
⑥ブロックを表すクラスを作ろう
⑦ Blockクラスを使って安全ブロックを表示しよう
⑧衝突を判定するisHit関数を作ろう
⑨ドローンがブロックの上に着地するようにしよう
⑩危険ブロックとゴールブロックを作ろう
7-4 縦と横に画面をスクロールする「カメラ」を作ろう
⑪カメラを表すクラスを作ろう
⑫カメラからの位置を計算して座標に変換する関数を作ろう
⑬カメラの移動範囲を制御しよう
7-5 ゲームクリアを作ってゲームを完成させよう
⑭ゲームクリアを作ろう
⑮自分だけのオリジナルステージを作ろう
⑯見た目を整えて完成させよう
おわりに
付録:関数一覧
索引
Amazonで詳しく見る
紹介文
大手メーカーで活躍してきたクリエイターが
ゲーム開発のノウハウをゼロから教えます!
本書はPythonを使用した、ゲームプログラミングの解説書です。
類書とは異なり、終始一貫「ゲーム開発」に焦点を当て、
今書いているプログラムがどのような"動き"に反映され、
どのような"面白さ"に結びつくのかを、正しく学ぶことができます。
一般的なソフト開発ではなく「ゲーム開発の作法」をきちんと学ぶことによって、ゲーム好きな読者の皆さんの就職や趣味といったリアルな世界がより充実してくれることを願い、出版されました。
【読者対象】
○ゲーム業界に就職したい学生・社会人
○SNSや同人で自作ゲームを発表したい方
○落ち物パズル、RPGの作り方を知りたい方
○一般ソフトとゲーム制作の違いを知りたい方
○Pythonを始めたけど作るものが浮かばない方
……高校生ぐらいから読めます!
【本書の特長】
○業界の基礎知識やプログラマーの役割からきちんと解説
○Pythonの基本文法をしっかり解説、プログラミング初心者も安心
○プログラム1行ごとに説明を付けており、理解しやすい
○豊富な図解とイラストを用い、イメージで理解できる
○開発に必要な素材はすべて無償ダウンロードできる
クイズ、すごろく、おみくじ、診断アプリ、迷路、自動生成ダンジョン、落ち物パズル、本格PRGなど……簡単なミニゲームから難しいものまで幅広く教材を用意しています。
さらに、読者特典として3つのおまけゲームもプレゼント!
すべてのゲームをつくり終えた時、あたなのプログラミングスキルは何倍にも向上しているに違いありません。
本書を機に、ぜひゲームプログラミングの世界に飛び込んでみてください!
Prologueゲームプログラマーになろう!
Chapter 1 Pythonのインストール
Lesson 1-1 Pythonとは?
Lesson 1-2 Pythonのインストール
Lesson 1-3 Pythonを起動しよう
COLUMN ゲームクリエイターって儲かるの?
Chapter 2 Pythonを始めよう
Lesson 2-1 計算してみる
Lesson 2-2 文字列を出力する
Lesson 2-3 カレンダーを出力する
Lesson 2-4 プログラミングの準備
Lesson 2-5 プログラムを記述しよう
Lesson 2-6 入出力命令を知ろう
Lesson 2-7 プログラムの記述の仕方
COLUMN ゲームが完成するまで
Chapter 3 プログラミングの基礎を学ぼう
Lesson 3-1 変数と計算式
Lesson 3-2 リストについて
Lesson 3-3 条件分岐について
Lesson 3-4 繰り返しについて
Lesson 3-5 関数について
COLUMN ゲームの開発費はどれくらい? その1
Chapter 4 importの使い方
Lesson 4-1 モジュールについて
Lesson 4-2 カレンダーの復習
Lesson 4-3 日時を扱う
Lesson 4-4 乱数の使い方
COLUMN RPGで逃げるのに失敗する確率
Chapter 5 CUIでつくるミニゲーム
Lesson 5-1 CUIとGUI
Lesson 5-2 クイズゲームを作る
Lesson 5-3 すごろくを作る
Lesson 5-4 消えたアルファベットを探すゲームを作る
COLUMN ゲームの開発費はどれくらい? その2
Chapter 6 GUIの基礎1
Lesson 6-1 GUIについて
Lesson 6-2 ラベルを配置する
Lesson 6-3 ボタンを配置する
Lesson 6-4 キャンバスを使う
Lesson 6-5 おみくじを引くソフトを作る
COLUMN キャンバスに図形を表示する
Chapter 7 GUIの基礎2
Lesson 7-1 テキスト入力欄を配置する
Lesson 7-2 複数行のテキスト入力欄を配置する
Lesson 7-3 チェックボタンを配置する
Lesson 7-4 メッセージボックスを表示する
Lesson 7-5 診断ゲームを作る
COLUMN RGBによる色指定
Chapter 8 本格的なゲーム開発の技術
Lesson 8-1 リアルタイム処理を実現する
Lesson 8-2 キー入力を受け付ける
Lesson 8-3 キー入力で画像を動かす
Lesson 8-4 迷路のデータを定義する
Lesson 8-5 二次元画面のゲーム開発の基礎
COLUMN ゲームソフトを完成させるには
Lesson 8-6 ゲームとして完成させる
COLUMN デジタルフォトフレームを作る
Chapter 9 落ち物パズルを作ろう!
Lesson 9-1 ゲームの仕様を考える
Lesson 9-2 マウス入力を組み込む
Lesson 9-3 ゲーム用のカーソルの表示
Lesson 9-4 マス上のデータを管理する
Lesson 9-5 ブロックを落下させるアルゴリズム
Lesson 9-6 クリックしてブロックを置く
Lesson 9-7 ブロックが揃ったかを判定するアルゴリズム
Lesson 9-8 正しいアルゴリズムを組み込む
Lesson 9-9 タイトル画面とゲームオーバー画面
Lesson 9-10 落ち物パズルの完成
COLUMN winsoundで音を鳴らす
Chapter 10 Pygameの使い方
Lesson 10-1 Pygameのインストール
Lesson 10-2 Pygameのシステム
Lesson 10-3 画像を描画する
Lesson 10-4 図形を描画する
Lesson 10-5 キー入力を行う
Lesson 10-6 マウス入力を行う
Lesson 10-7 サウンドを出力する
COLUMN Pygameで日本語を使う
Chapter 11 本格RPGを作ろう! 前編
Lesson 11-1 ロールプレイングゲームについて
Lesson 11-2 迷路を自動生成する
Lesson 11-3 ダンジョンを作る
Lesson 11-4 ダンジョン内を移動する
Lesson 11-5 戦闘シーンを作る その1
Lesson 11-6 戦闘シーンを作る その2
Lesson 11-7 戦闘シーンを作る その3
COLUMN ゲームの画面演出 287
Chapter 12 本格RPGを作ろう! 後編
Lesson 12-1 ロールプレイングゲームの全体像
Lesson 12-2 ファイルのダウンロードとプログラムの実行
Lesson 12-3 プログラムリスト
Lesson 12-4 プログラムの詳細
COLUMN Pythonでのファイル処理
Chapter 13 オブジェクト指向プログラミング
Lesson 13-1 オブジェクト指向プログラミングについて
Lesson 13-2 クラスとオブジェクト
Lesson 13-3 tkinterを使ってオブジェクト指向を学ぶ
Lesson 13-4 オブジェクト指向プログラミングをもっと学ぶ
COLUMN 筆者も苦労したオブジェクト指向プログラミング
Appendix 池山高校Python研究部
Intro ゲームをつくろう!
1つ目 一筆書き迷路ゲーム
2つ目 英単語学習ソフト
3つ目 ブロック崩し
Amazonで詳しく見る
紹介文
本書は「Pythonだけ」を学ぶ本ではありません。Pythonを使ってプログラミングを紹介していますが、伝えたい内容はPythonに限らない「プログラミング全般」の知識です。
本書の著者、コーリー・アルソフ(Cory Althoff)は、「独学プログラマー」です。本書は、彼が独学で、ゼロからプログラミングを学んだ体験に基づいて書かれました。
プログラミングを独学で身に付けるために、著者がPythonを通して学んだエッセンスが書かれています。彼の独学プログラマーとしての学び方は、Amazon.comでの本書の評価を見るとわかるように、多くの人に支持されています。
――訳者あとがきより
第1部(Part1)
第1章 イントロダクション
第2章 さあ、はじめよう!
第3章 プログラミング入門
第4章 関数
第5章 コンテナ
第6章 文字列操作
第7章 ループ
第8章 モジュール
第9章 ファイル
第10章 知識を1つにまとめる
第11章 ハマったときの助け
第2部(Part2)
第12章 プログラミングパラダイム
第13章 オブジェクト指向プログラミングの4大要素
第14章 もっとオブジェクト指向プログラミング
第15章 知識を1つにまとめる
第3部(Part3)
第16章 Bash
第17章 正規表現
第18章 パッケージ管理
第19章 バージョン管理
第20章 知識を1つにまとめる
第4部(Part4)
第21章 データ構造
第22章 アルゴリズム
第5部(Part5)
第23章 プログラミングのベストプラクティス
第24章 プログラマーとしての最初の仕事
第25章 チームで働く
第26章 さらに学ぼう
第27章 次のステップ
第6部(Part6)
補章 より良いコードにするために
補章 継続して学ぶために
謝辞
訳者あとがき
索引
第1部(Part1)
第1章 イントロダクション
第2章 さあ、はじめよう!
第3章 プログラミング入門
第4章 関数
第5章 コンテナ
第6章 文字列操作
第7章 ループ
第8章 モジュール
第9章 ファイル
第10章 知識を1つにまとめる
第11章 ハマったときの助け
第2部(Part2)
第12章 プログラミングパラダイム
第13章 オブジェクト指向プログラミングの4大要素
第14章 もっとオブジェクト指向プログラミング
第15章 知識を1つにまとめる
第3部(Part3)
第16章 Bash
第17章 正規表現
第18章 パッケージ管理
第19章 バージョン管理
第20章 知識を1つにまとめる
第4部(Part4)
第21章 データ構造
第22章 アルゴリズム
第5部(Part5)
第23章 プログラミングのベストプラクティス
第24章 プログラマーとしての最初の仕事
第25章 チームで働く
第26章 さらに学ぼう
第27章 次のステップ
第6部(Part6)
補章 より良いコードにするために
補章 継続して学ぶために
謝辞
訳者あとがき
索引
Amazonで詳しく見る
紹介文
バンダイナムコスタジオの開発者が伝授!
CEDEC Awards著述賞受賞タイトルが、Unity5に対応してリニューアル!
プロのゲーム開発者秘伝・遊びのレシピ! バンダイナムコスタジオ開発陣による10種のオリジナルゲームを題材に、知っておくべき「ゲームのしくみ」を徹底解説。 簡単に始められるUnityとC#で、ゲームを作るために必要な遊びのアルゴリズムをマスターできます。Unityでゲームを作り始めようとしているゲームプログラミング入門者に最適の1冊です。
本書は、ゲーム開発者カンファレンス「CEDEC 2013」において、著述賞を受賞した『ゲームの作り方』をUnity5対応・フルカラー印刷にリニューアルした書籍です。
第0章 Unityの概要
第1章 クリックアクションゲーム~おに
第2章 ジグソーパズル~ぷちパズル
第3章 ドットイートゲーム~ダンジョンイーター
第4章 3Dサウンド探索ゲーム~イン・ザ・ダーク・ウォーター
第5章 リズムゲーム~ヘドバン・ガールズ
第6章 全方向スクロールシューティング~スターバイター
第7章 並べ替えパズルアクション~イート・ザ・ムーン
第8章 ジャンピングアクション~(株)ねこ障子
第9章 ロールプレイングゲーム~一画面伝説レジェンド
第10章 ドライブゲーム~ナゾレバ・ハシレール(もちろん仮)
Amazonで詳しく見る
紹介文
Unity 2022に最速対応!いちばん売れているUnity入門書が最新バージョンに対応最新環境でゲーム制作を楽しく体験しましょう!■本書の特徴●初めてゲーム制作にチャレンジする人に最適!最初は簡単な2Dゲームの制作からスタートし、徐々に難しいゲームへと進めていきます。サンプルゲームの制作を通じて、Unityの機能と、ゲームを作るための知識が自然と身に付きます。●プログラムの書き方がわからなくても大丈夫!C#の基礎知識も掲載しているので、プログラミング経験のまったくない人でも、安心して学習を開始することができます。●ゲームを面白くするためのヒントを掲載!Unityの使い方だけでなく、ゲームの設計方法、レベルデザインなど、ゲームを面白く作るための知識も紹介しています。
Chapter1 ゲーム作りの準備 1-1 ゲームを作るのに必要なもの 1-2 Unityとは? 1-3 Unityのインストール 1-4 Unityの画面構成を知ろう 1-5 Unityに触れて慣れようChapter2 C#スクリプトの基礎 2-1 スクリプトとは? 2-2 スクリプトを作成しよう 2-3 スクリプトの第一歩 2-4 変数を使ってみよう 2-5 制御文を使ってみよう 2-6 配列を使ってみよう 2-7 関数(メソッド)を作ってみよう 2-8 クラスを作ってみよう 2-9 Vector型を使ってみようChapter3 オブジェクトの配置と動かし方 3-1 ゲームの設計を考えよう 3-2 プロジェクトとシーンを作成しよう 3-3 シーンにオブジェクトを配置しよう 3-4 スクリプトの作り方を学ぼう 3-5 スクリプトをアタッチしてルーレットを回そう 3-6 ルーレットが止まるようにしよう 3-7 スマートフォンで実行してみようChapter4 UIと監督オブジェクト 4-1 ゲームの設計を考えよう 4-2 プロジェクトとシーンを作成しよう 4-3 シーンにオブジェクトを配置しよう 4-4 スワイプで車を動かす方法を考えよう 4-5 UIを表示しよう 4-6 UIを書き換える監督を作ろう 4-7 効果音の鳴らし方を学ぼう 4-8 スマートフォンで実行してみよう Chapter5 Prefabと当たり判定 5-1 ゲームの設計を考えよう 5-2 プロジェクトとシーンを作成しよう 5-3 シーンにオブジェクトを配置しよう 5-4 キーボードでプレイヤを動かそう 5-5 Physicsを使わない落下方法を学ぼう 5-6 当たり判定を学ぼう 5-7 Prefabと工場の作り方を学ぼう 5-8 UIを表示しよう 5-9 UIを書き換える監督を作ろう 5-10 スマートフォンで実行してみようChapter6 Physicsとアニメーション 6-1 ゲームの設計を考えよう 6-2 プロジェクトとシーンを作成しよう 6-3 Physicsについて学ぼう 6-4 コライダの形を工夫してみよう 6-5 入力に応じてプレイヤを動かそう 6-6 アニメーションについて学ぼう 6-7 ステージを作ろう 6-8 プレイヤの移動に合わせてカメラを動かそう 6-9 Physicsを使った衝突検出を学ぼう 6-10 シーン間の遷移方法を学ぼう 6-11 スマートフォンで実行してみようChapter7 3Dゲームの作り方 7-1 ゲームの設計を考えよう 7-2 プロジェクトとシーンを作成しよう 7-3 Terrainを使って地形を作ろう 7-4 Physicsを使ってイガグリを飛ばそう 7-5 パーティクルを使ってエフェクトを表示しよう 7-6 イガグリを生産する工場を作ろう 7-7 スマートフォンで実行してみようChapter8 レベルデザイン 8-1 ゲームの設計を考えよう 8-2 プロジェクトとシーンを作成しよう 8-3 バスケットを動かそう 8-4 アイテムを落下させよう 8-5 アイテムをキャッチしよう 8-6 アイテムを生成する工場を作ろう 8-7 UIを作ろう 8-8 レベルデザインをしよう 8-9 スマートフォンで実行してみよう
Amazonで詳しく見る
紹介文
人類の叡智「プログラミング」。その歴史や日常で役立つ技術を天才プログラマーが解説。この一冊であなたが見ている世界は一変する!
もの言わぬ機械とコミュニケーションをとる唯一の手段「プログラミング」。「もはやそれは誰もが学ぶべき教養」というメッセージを掲げ、刊行から数年を経ても売れ続けるロングセラーが『教養としてのプログラミング講座』だ。同書はプログラミングの歴史から簡単な作成、日常生活に役立つテクニックなどを、国認定「天才プログラマー」が解説。プログラマーの思考法を手に入れることを可能としたベスト・ガイドブックだ。学習を啓蒙する書籍が続々刊行、スクールも多く創設されるなど、現実としてプログラミングが必修の“教養”であることが広く認知された今、同書の内容を増補。小中学校での必修化がスタートする今年、あらためて刊行する。ジョブズやゲイツ、21世紀の成功者はどんな世界を見ているのか?
Amazonで詳しく見る
紹介文
Web界隈やデザイナーに大人気!
【4年連続、売上第1位!】
【全国の書店員がオススメする本(2019年度 CPU大賞)第1位!】
ずっと、一番売れているHTML本!
大反響! 32刷突破!
読者の圧倒的な支持!シリーズ35万部突破の大ヒット!
全国の書店員がオススメする本(CPU大賞)第1位!
2019-2022年、年間売上 第1位!※
Web制作に必要な知識がすべて身につく!
※日販売上げランキング: HTML関連書籍
----------------------------------------------------------------------------
Web界隈やデザイナーに大人気!
Web関連の情報やデザインについて記事が学べる『Webクリエイターボックス』の管理人、
Manaによる渾身のHTML & CSSとWebデザインが学べる本
----------------------------------------------------------------------------
今のWebサイトの作り方が一気に学べる!
・知識ゼロから体系的に学べる!HTMLとCSSの基本
・最新の技術に対応!レスポンシブ、Flexbox、CSSグリッド
・手を動かしながら学べる!プロの現場で役立つテクニック
・コードの知識からデザインのことまで1冊ですべて学べる!
WebクリエイターボックスのManaが教える
Webサイト制作の定番&旬のスキル。
この1冊で必要なことがすべて学べる!
コードもデザインも全部学べる!
●本書の対象読者
・これからWebサイトを作り始める初心者
・HTMLとCSSを基本から学びたい人
・美しいデザインのWebサイトを作りたい人
・Webの最新技術を学びたい人
Web界隈やデザイナーに大人気!
CHAPTER 1 最初に知っておこう!Webサイトの基本
1-1 よいWebデザインとは
1-2 様々な種類のWebサイト
1-3 ユーザビリティとは
1-4 Webサイトの仕組み
1-5 デバイスの種類
1-6 ブラウザーの種類
1-7 制作の流れ
1-8 制作をはじめる前に
CHAPTER 2 Webの基本構造を作る!HTMLの基本
2-1 HTMLとは
2-2 HTMLファイルを作ろう
2-3 HTMLファイルの骨組み
2-4 HTMLの基本の書き方を身につけよう
2-5 見出しをつけよう
2-6 文章を表示しよう
2-7 画像を挿入しよう
2-8 リンクをはろう
2-9 リストを表示しよう
2-10 表を作ろう
2-11 フォームを作ろう
2-12 より使いやすいフォームにしよう
2-13 ブロック要素でグループ分けをしよう
2-14 よく使うHTMLタグ一覧
CHAPTER 3 Webのデザインを作る!CSSの基本
3-1 CSSとは
3-2 CSSを適用させる方法
3-3 CSSファイルを作ろう
3-4 CSSの基本の書き方を身につけよう
3-5 文字や文章を装飾しよう
3-6 Webフォントを使おう
3-7 色をつけよう
3-8 背景を彩ろう
3-9 幅と高さを指定しよう
3-10 余白を調整しよう
3-11 線を引こう
3-12 リストを装飾しよう
3-13 クラスとIDを使った指定方法
3-14 レイアウトを組もう
3-15 デフォルトCSSをリセットしよう
3-16 よく使うCSSプロパティ一覧
CHAPTER 4 フルスクリーンのWebサイトを制作する
4-1 フルスクリーンとは
4-2 フルスクリーンページの制作の流れ
4-3 「head」を記述しよう
4-4 「header」部分を作ろう
4-5 コンテンツ部分を作成しよう
4-6 ファビコンを用意しよう
4-7 フルスクリーンページのカスタマイズ例
CHAPTER 5 2カラムのWebサイトを制作する
5-1 2カラムのレイアウトとは
5-2 2カラムページの制作の流れ
5-3 ページ全体の見出しを作成しよう
5-4 フッター部分を作成しよう
5-5 横並びの設定をしよう
5-6 メインエリアを作ろう
5-7 サイドバーを作ろう
5-8 レスポンシブに対応させよう
5-9 カラムページのカスタマイズ例
CHAPTER 6 タイル型のWebサイトを制作する
6-1 タイル型レイアウトとは
6-2 タイル型レイアウトの制作の流れ
6-3 ページ上部の紹介文を作成しよう
6-4 タイル型レイアウトを設定しよう
6-5 レスポンシブに対応させよう
6-6 タイル型レイアウトのカスタマイズ例
CHAPTER 7 外部メディアを利用する
7-1 お問い合わせページの制作の流れ
7-2 フォームを設置しよう
7-3 地図を表示しよう
7-4 Facebookプラグインを挿入しよう
7-5 Twitterプラグインを挿入しよう
7-6 YouTube動画を挿入しよう
7-7 レスポンシブに対応させよう
7-8 OGPの設定をしよう
7-9 外部メディアのカスタマイズ例
Amazonで詳しく見る
紹介文
「実習」「講義」の形を取ることで、プログラムが動く仕組みを誰でも理解できるように解説した、初学者や非プログラマーのための入門書。
1 プログラミングの世界をのぞいてみよう-世の中にあふれるプログラム
2 コンピュータの仕組みと役割を理解しよう-プログラムが動く器
3 OSの仕組みと役割を理解しよう-プログラムを監督するプログラム
4 プログラミング言語の基礎知識-プログラミング言語の基本と分類
5 プログラミング言語を学ぼう1-JavaScript編
6 プログラミング言語を学ぼう2-C言語編
7 オブジェクトって何だろう-オブジェクト指向モデリング入門
Appendix 代表的なプログラミング言語とその特徴-補講
Amazonで詳しく見る
紹介文
やさしく学べる、入門書の決定版!
3万部突破のベストセラーが充実のアップデート!
JavaScriptをこれから始める人にも、前に挫折したことのある人にも。
手を動かしてサンプルをひとつずつ作っていくことで、知識だけでなく、
現場で活きる、応用・実践につながる基礎力が「この一冊で」身につきます。
ポイント1「サンプルが楽しい。」
よくある“勉強のためのサンプル”を可能な限り排除し、「こういうの見たことある!」「こういうのが作ってみたかった!」というような、実際に仕事に使えそうなサンプルを集めました。なので、最初の「やるぞ!」というモチベーションを維持したまま、最後のページまで読み進めることができます。
ポイント2「つまずきポイントを徹底カバー。」
初学者がつまずきやすい・挫折しやすいポイントを丁寧に拾って「これはどういうこと?」に対処する解説を用意しています。
共感しながら読み進められる文章で「絶対に挫折しない・させない」内容に仕上げました。
【第2版の主な改訂内容】
・ECMA Scriptの新規格に対応。新しい機能・文法のうち、入門者でも取り組みやすく便利なものを紹介
・書籍内の情報を2019年の状況にあわせて全面的にアップデート
・3~6章のサンプルを更新。解説内容をより丁寧にわかりやすくブラッシュアップ
・7章は全面刷新し、より現代的・実践的なテクニックを学べる内容に
【こんな方におすすめ!】
・HTMLとCSSは何となくわかっていて、JavaScriptもやらないと…と思いつつなかなか手がつけられない方
・「フロントエンドエンジニア」という言葉に惹かれる方
・Web業界に入りたい方、または入りたての方
・「他のWebデザイナーに差をつけたい!」というWebデザイナーの方
・「フロントエンドエンジニアやWebデザイナーとまともにコードの話をしたい!」というWebディレクターの方
やさしく学べる、入門書の決定版!
Chapter1 イントロダクション
1-1 これからJavaScriptを始める皆さんへ
1-2 JavaScriptってどういうもの?
1-3 JavaScriptの「プログラミング」と動作の仕組み
1-4 各章の概要
1-5 用意するツール
1-6 サンプルデータのダウンロード
1-7 テンプレートを準備して、いざ出発!
Chapter2 アウトプットの基本
2-1 コンソールにアウトプット ~開発ツールを使ってみよう
2-2 JavaScriptはどこに書く? ~タグとJavaScriptの記述場所
2-3 ダイアログボックスを表示する ~window.alert()
2-4 HTMLを書き換える ~要素を取得する・コンテンツを書き換える
Chapter3 JavaScriptの文法と基本的な機能
3-1 確認ダイアログボックスを表示する ~条件分岐(if)
3-2 入力内容に応じて動作を変更する ~変数、定数
3-3 動作のバリエーションを増やす ~条件分岐(else if)
3-4 数当てゲーム ~比較演算子、データ型
3-5 時間で異なるメッセージを表示する ~論理演算子
3-6 1枚、2枚、3枚…と出力する ~回数が決まっている基本の繰り返し
3-7 コンソールでモンスターを倒せ! ~回数が決まっていない繰り返し
3-8 税込価格を計算する ~ファンクション
3-9 FizzBuzz ~算術演算子
3-10 項目をリスト表示する ~配列
3-11 アイテムの価格と在庫を表示する ~オブジェクト
Chapter4 インプットとデータの加工
4-1 フォームの入力内容を取得する ~入力内容の取得とイベント
4-2 わかりやすく日時を表示する ~Dateオブジェクト
4-3 小数第◯位で切り捨てる ~Mathオブジェクト
Chapter5 一歩進んだテクニック
5-1 カウントダウンタイマー ~時間の計算とタイマー
5-2 プルダウンメニューで指定ページへ ~URLの操作、ブール属性の設定
5-3 プライバシーポリシー承認パネルを作る ~クッキー(cookie)
5-4 イメージの切り替え ~サムネイルのクリックによる画像の切り替え
5-5 スライドショー ~ここまでの知識を総動員
Chapter6 jQuery入門
6-1 開閉するナビゲーションメニュー ~要素の取得とclass属性の追加・削除
6-2 ドロワーを作ってみよう ~CSSと組み合わせてアニメーションを実現
6-3 空き席状況をチェック ~AjaxとJSON
Chapter7 外部データを活用したアプリケーションに挑戦!
7-1 あなたはいまどこ? ~位置情報(navigator.geolocation)
7-2 Web APIを使ってみよう ~OpenWeatherMap APIで天気予報
Amazonで詳しく見る
紹介文
今すぐゲーム作りの冒険の旅に出かけよう!13才の中学生でも猫でも誰でも簡単に楽しくゲームが作れる。無料ツール・無償開発ツールと豊富なサンプルソースコードですぐにはじめられる。
Training はじまりの村
Game Design ゲームデザインの森
Prototyping プロトタイピング山岳地帯
Data データの街
Publishing アプリの迷宮
3D Game 3Dプログラミングの塔
Sample Games 7匹の龍
Amazonで詳しく見る
紹介文
Pythonゲーム開発入門の決定版!
人気ジャンルを題材に
プログラミングの腕を磨こう!
大好評を博している『Pythonでつくる ゲーム開発 入門講座』に、第2弾『実践編』が登場!
前作同様、Pythonを用いたゲームプログラミングの基礎をまんべんなく解説しながら、今回は「アクション」「シューティング」「3Dカーレース」といった人気ジャンルの開発に挑戦します。
【本書の特長】
○複数の演習を通し、ゲーム開発の知識・技術を大幅UPできる
○三角関数、遠近法などの知識を開発に活かす方法を学べる
○マップエディタやランチャーなど関連ツールの開発も行う
○プログラム1行ごとに説明を付けており、理解しやすい
○豊富な図解とイラストを用い、イメージで理解できる
○開発に必要な素材はすべて無償ダウンロードできる
さらに、ゲーム開発でぶつかる"壁を乗り越えるためのヒント"も豊富に用意しました。
【開発のヒントが満載】
・マップやアイテムの配置はどうするのか?
・自機と敵機のヒットチェックはどうするのか?
・"弾幕"の軌道はどうやって計算するのか?
・面白さにつながる難易度とはどの程度なのか?
・エフェクトやサウンドはどうやって組み込むのか?
・坂道のカーブ、奥行、起伏はどう表現するのか?
・Pythonで3Dを表現するにはどうしたらよいのか?
……こんな疑問に答えます!
ゲーム素材400本、プログラム80本、遊んで面白いゲーム5本を無償提供!
本書を読み終えた頃、ゲーム開発の知識はかなり高いレベルに到達できるでしょう。
また、各プログラム内にPythonのプログラミング技術を多くちりばめたので、Pythonを使う力もぐんと伸びているはずです。
ゲーム開発の基礎を盤石にしたい方、Pythonの技術に磨きをかけたい方にオススメの1冊です。
Prologue ゲーム開発とプログラマー
Chapter1 ゲーム開発の基礎知識1
Lesson1-1 キー入力
Lesson1-2 リアルタイム処理
Lesson1-3 キャラクターのアニメーション
Lesson1-4 二次元リストによるマップデータ管理
Lesson1-5 床と壁の判定
COLUMN Python用の統合開発環境
Chapter2 ゲーム開発の基礎知識2
Lesson2-1 ヒットチェック その1
Lesson2-2 ヒットチェック その2
Lesson2-3 三角関数の使い方
Lesson2-4 インデックスとタイマー
Lesson2-5 ミニゲームを作ろう!
COLUMN ゲームの世界観について
Chapter3 アクションゲームを作ろう! 前編
Lesson3-1 ドットイートゲームについて
Lesson3-2 迷路を表示する
Lesson3-3 キャラクターを動かす
Lesson3-4 キャラクターの向きとアニメーション
Lesson3-5 キャラクターを滑らかに動かす
Lesson3-6 アイテムを取ってスコアを増やす
Lesson3-7 敵を登場させる
Lesson3-8 タイトル、クリア、ゲームオーバー
COLUMN BASICとPython
Chapter4 アクションゲームを作ろう! 後編
Lesson4-1 複数のステージを組み込む
Lesson4-2 主人公の残り数を組み込む
Lesson4-3 新しい敵を登場させる
Lesson4-4 エンディングを作ろう
Lesson4-5 色々なステージを用意しよう
Lesson4-6 マップエディタの制作 その1
Lesson4-7 マップエディタの制作 その2
COLUMN 有名アニメのゲーム開発秘話 その1
Chapter5 Pygameの使い方
Lesson5-1 Pygameについて
Lesson5-2 Pygameのインストール
Lesson5-3 Pygameの基本的な使い方
Lesson5-4 Pygameで画像を描く
Lesson5-5 画像の回転と拡大縮小表示
Lesson5-6 同時キー入力を行う
COLUMN レトロゲームについて
Chapter6 シューティングゲームを作ろう! 前編
Lesson6-1 シューティングゲームについて
Lesson6-2 Pygameで高速スクロール
Lesson6-3 自機を動かす
Lesson6-4 弾を発射する
Lesson6-5 複数の弾を発射する
Lesson6-6 弾幕を張る
COLUMN 有名アニメのゲーム開発秘話 その2
Chapter7 シューティングゲームを作ろう! 中編
Lesson7-1 敵機の処理
Lesson7-2 敵機を弾で撃ち落とす
Lesson7-3 爆発演出を入れる
Lesson7-4 シールド制を入れる
Lesson7-5 タイトル、ゲームをプレイ、ゲームオーバー
COLUMN たった3行でパーティゲームが作れるPython
Chapter8 シューティングゲームを作ろう! 後編
Lesson8-1 サウンドを組み込む
Lesson8-2 敵の種類を増やす
Lesson8-3 ボス機を登場させる
Lesson8-4 ゲームを完成させる
COLUMN ゲームパッドで操作できるようにしよう!
Chapter9 3Dカーレースゲームを作ろう! 前編
Lesson9-1 カーレースゲームについて
Lesson9-2 3DCGと疑似3Dについて
Lesson9-3 遠近法について
Lesson9-4 道路の見え方を考える
Lesson9-5 疑似3Dで道路を描く その1
Lesson9-6 疑似3Dで道路を描く その2
Lesson9-7 道路のカーブを表現する
Lesson9-8 道路の起伏を表現する その1
Lesson9-9 道路の起伏を表現する その2
COLUMN 道路を自在に変化させるプログラム
Chapter9 3Dカーレースゲームを作ろう! 中編
Lesson10-1 Pygameを用いる
Lesson10-2 コースを緻密に描く
Lesson10-3 カーブに合わせ背景を動かす
Lesson10-4 道路の起伏を表現する
Lesson10-5 車線を区切るラインを描く
Lesson10-6 コースの定義その1 カーブデータ
Lesson10-7 コースの定義その2 起伏データ
Lesson10-8 コースの定義その3 道路横の物体
Lesson10-9 プレイヤーの車の制御
COLUMN 処理落ちを測定する
Chapter10 3Dカーレースゲームを作ろう! 後編
Lesson11-1 コンピュータの車を走らせる
Lesson11-2 車の衝突判定を組み込む
Lesson11-3 スタートからゴールまでの流れ
Lesson11-4 ラップタイムを組み込む
Lesson11-5 車種を選べるようにする
COLUMN コンピュータゲーム用のAI
特別付録
Appendix1 Game Center 208X (ゲームランチャー)
Appendix2 落ち物パズル『あにまる』
Amazonで詳しく見る
紹介文
セガの新人教育カリキュラムから生まれたゲームプログラミング解説書。
1 2次元のゲーム(はじまりのゲーム
点から始める2Dグラフィックス
描いた絵を使う ほか)
2 3次元のゲーム(立体を描く
ライブラリの作り方
XMLモドキを読む ほか)
3 売り物への道(遅くない衝突検出
ローディング
floatの使い方 ほか)
Amazonで詳しく見る
紹介文
好評の『スクラッチプログラミングの図鑑』のスクラッチ3.0対応版です。ブラウザから公式サイトにアクセスして使うオンライン版と、Scratchデスクトップをインストールして使うオフライン版の両方に対応しています。スクラッチは、小学生からのプログラミング教育が本格化しているなか、はじめての言語として人気です。子供にプログラミングを学ばせたい親や、教材として使用したい先生に注目されています。本書は「まなびのずかん」シリーズとして、スクラッチによるゼロからのプログラミングをビジュアルふんだんの図鑑形式で解説。小学生でも始められる基礎的なところから、大人もうなる本格的なプログラミングまで扱っています。また、数学、国語、社会、音楽など教科をテーマにした章も設けており、先生や親がプログラミング教育を見据えた教材として使用することもできます。総ルビとなっており、本書1冊で永くご使用いただけます。
■1章 プログラミングとは
1 プログラムって何? プログラミングって何?
2 プログラムは何で作るの?
3 プログラムはどうやって使うの?
4 スクラッチを知ろう
5 スクラッチの画面を知ろう
6 スクラッチを使ってみよう
7 作ったプログラムを保存しよう
8 保存したプログラムを再開しよう
■2章 プログラミングの基本をマスターしよう
1 キャラクターを動かしてみよう
2 動かす量を変えてみよう
3 キャラクターの向きを変えてみよう
4 複数の動きを組み合わせてみよう
5 キャラクターの大きさを変えてみよう
6 キャラクターの色を変えてみよう
7 コスチュームを変えてみよう
■3章 プログラミングの世界を楽しもう
1 複数のキャラクターを表示させてみよう
2 複数のキャラクターを同時に動かしてみよう
3 キャラクターを作ってみよう
4 キャラクターの保存と読み込みをしてみよう
5 写真を読み込んで加工してみよう
6 音を鳴らしてみよう
■4章 かんたんなゲームを作ってみよう
1 ゲームの内容を考えよう
2 画面の背景を決めよう
3 キャラクターと役割を決めよう
4 プログラミングの最初に知っておこう
5 宇宙船を動かすスクリプトを作ろう
6 タマを撃つスクリプトを作ろう
7 ロボットを動かすスクリプトを作ろう
8 点数を表示しよう
9 自分なりの工夫をしてみよう
■5章 ミニゲームの作り方を学ぼう
1 マウスをおいかけるゲーム
2 キーボードでスプライトを動かそう
3 でたらめを楽しもう
4 数をあつかうゲーム
5 音をあつかうゲーム
■6章 本格的なゲームを作ろう
1 ゲームの内容を考えよう
2 迷路ステージを用意しよう
3 迷路の中を移動させよう
4 オープニングを作ろう
5 ゲームを改良しよう
■7章 教材を作ってみよう
1 絵本を作ってみよう(国語)
2 計算ドリルを作ってみよう(算数)
3 月の満ち欠けのしくみ(理科)
4 名勝案内を作ろう(社会)
5 名画を鑑賞しよう(図工)
6 曲を作ってみよう(音楽)
■8章 アルゴリズムを学ぼう
1 リストと乱数を知ろう
2 目的の数を探してみよう
3 成績判定をしてみよう
4 最大値を探してみよう
5 数を並べ替えてみよう
■付録
Amazonで詳しく見る
紹介文
最新のPython、ライブラリおよびWindoes 11に対応した「Python1年生」の第2版の登場!
おかげさまで8万部突破!
読者の声に応えて
第2版の登場
【本書の概要】
Web開発やデータ分析などの分野で、ユーザー数が増えてきているPython。
最近では、Pythonに触れる方も多くなってきています。
本書はそうしたPython初心者の方に向けて、
ヤギ博士とフタバちゃんと一緒に
基本的なプログラムの作成から、面白い人工知能アプリの作成までを体験。
対話形式でプログラミングのしくみを学ぶことができます。
【対象読者】
Pythonについて何も知らないプログラミング超初心者
【本書のポイント】
・対話形式で解説し、イラストを交えながら、基礎知識を解説します。
・初めての方でも安心して学習できるよう基本文法もしっかり解説します。
・平易なサンプルを用意していますので、安心してプログラムを体験できます。
・2022年時点の最新の環境(Windows 11、Python 3.10など)に対応しています。
・エラーでつまづいた場合の対応方法を巻末に掲載しています。
【目次】
第1章 Pythonで何ができるの?
第2章 Pythonを触ってみよう
第3章 プログラムの基本を知ろう
第4章 アプリを作ってみよう
第5章 人工知能くんと遊んでみよう
【著者プロフィール】
森 巧尚(もり・よしなお)
『マイコンBASICマガジン』(電波新聞社)の時代からゲームを作り続けて現在はコンテンツ制作や執筆活動を行い関西学院大学非常勤講師、
関西学院高等部非常勤講師、成安造形大学非常勤講師、大阪芸術大学非常勤講師、プログラミングスクールコプリ講師などを行っている。
近著に、『Python1年生』『Python2年生 スクレイピングのしくみ』『Python2年生 データ分析のしくみ』『Python3年生 機械学習のしくみ』
『Java1年生』『動かして学ぶ!Vue.js開発入門』『Python自動化簡単レシピ』(いずれも翔泳社)、
『ゲーム作りで楽しく学ぶ Pythonのきほん』『楽しく学ぶ Unity2D超入門講座』『楽しく学ぶ Unity3D超入門講座』(いずれもマイナビ出版)などがある。
第1章 Pythonで何ができるの?
第2章 Pythonを触ってみよう
第3章 プログラムの基本を知ろう
第4章 アプリを作ってみよう
第5章 人工知能くんと遊んでみよう
Amazonで詳しく見る
紹介文
Webサイト制作の初学者に最適の1冊目!作りながら楽しく基本を学べる入門書が登場です。豊富なイラスト・図解で理解を助けます。
Webサイト制作をこれから学ぶ人へ送る
“1冊目”に最適の入門書!【学びをサポートする4大特典つき】
本書は手を動かしてWebサイトを作りながら
HTML/CSSとWebデザインの基本を楽しく学べる入門書です。
初学者が1冊目に読む本としてふさわしい内容を盛り込んでいるため、
これを読めば必要な基礎知識がひととおり身につきます。
制作できるサイトは計4種。
初歩的な内容から少しずつレベルアップしていき、
Flexboxレイアウト・CSSグリッドレイアウト・
レスポンシブデザイン・CSSアニメーションも作れるようになります。
またコーディングの知識だけではなく、
学習を続ける上での学び方のコツやポイントも紹介。
知識ゼロからスタートした人でも、1冊を読み終えるころには
自ら学習を深めていけるようになるでしょう。
■わかりやすい!楽しい!ポイント
・やさしく要点をおさえた解説
・手を動かして作ることを重視した構成
・おしゃれでバリエーション豊かなサンプルサイト
・豊富な図解とイラスト、キャラクターによるガイド
・重要ポイントの理解を助ける補足動画
■こんな方におすすめ!
・Webサイト制作をゼロから学びたい初心者
・1冊目の入門書を探している人
・Web制作の仕事を目指している人
■学習をサポート!嬉しい4大特典つき
(※翔泳社サイトにて無料のID登録とダウンロードの必要があります)
1.サンプルサイトのXDデータ
- 画像の切り出しや色/数値抽出の練習用に
- デザインファイルの作り方の参考に
2.特典PDF:Webサイトの公開方法
- 最後に必要な公開作業の手順も解説!
- レンタルサーバー/ドメインについてやFTPソフトの使い方
3.制作に役立つおすすめサイト集
- 実際のしごとで使っているサイトを厳選!
- Webデザイン編/コーディング編と合計、約50サイトを紹介
4.初学者必携のチートシート
- 横において学習すると学びやすい!
- Flexboxレイアウト/CSSグリッドレイアウト/CSSのショートハンド/キーボード入力サポートの4種
Part1:HTMLを書いてみよう
01章 ウォーミングアップをしよう
02章 HTMLのきほんを学ぼう
Part2:SNSリンク集を作ってみよう
03章 CSSのきほんを学ぼう
04章 SNSリンク集のCSSを書いてみよう
Part3:2カラムページを作ってみよう
05章 ブログサイトのHTMLを書いてみよう
06章 ブログサイトのCSSを書いてみよう
Part4:1カラムページを作ってみよう
07章 Web招待状サイトのHTMLを書いてみよう
08章 Web招待状サイトのCSSを書いてみよう
09章 CSSアニメーションをつけてみよう
10章 レスポンシブウェブデザインに対応させよう
Part5:複数ページのサイトを作ってみよう
11章 制作の流れとWebデザインのきほん
12章 レストランサイトのCSSを書こう(モバイル)
13章 レストランサイトのCSSを書こう(PC)
14章 参考サイトの活用方法を学ぼう
15章 Webサイトを公開する準備をしよう
Amazonで詳しく見る
紹介文
言語に限定されない応用が効く基礎力をつける!インターネットのしくみがわかる!Webプログラムがどのように動いているかを学べる!正規表現やテンプレート、ライブラリ、セキュリティまでカバー!
1 WebブラウザでWebページが表示される仕組み
2 WebサーバからWebブラウザにコンテンツが届くまで
3 Webプログラムがコンテンツを作る仕組み
4 Webプログラムを動かしてみよう
5 Webプログラミングをしてみよう
6 ライブラリやJavaScriptを使ったプログラミング
7 ユーザーを追跡するCookieとセッション情報
8 データベースを使ったプログラミング
Amazonで詳しく見る
紹介文
世界中の小学生がプログラミングを学んでいる時代-。文系も、女子も、パソコン1台で簡単に「思いつき」を叶える方法!女優デビュー、慶應義塾大学卒業、いま、「タレント時々プログラマ」として注目される著者、初の書き下ろし。
1 プログラミングが好きになる7つの「ヒント」(「タレント時々プログラマ」のヒミツ
プログラミングが「つまらなさそう」な理由 ほか)
2 文系でも、飽きっぽくても続けられるプログラミングの「勉強法」(わからないところはスルーで充分
週末プログラマのすすめ ほか)
3 5つの入り口から選ぶギークへの「最初の一歩」(5つの入り口から選ぼう!
学んですぐに実践できる-Web ほか)
4 「考え方」がわかるプログラミング的思考(「おねだり」をマスターする
文字と数字は扱いが違う-データ型 ほか)
Amazonで詳しく見る
紹介文
プログラミング初学者に向けた独習シリーズに『独習Python』が新登場。山田祥寛氏によるPython入門書の決定版。
手を動かしておぼえるPythonプログラミング
――独学に最適な“標準教科書”
プログラミングの初学者に向けた独習シリーズに『独習Python』が新登場。
プログラミング言語入門書の執筆で定評のある山田祥寛氏による、
Python入門書の決定版です。
独習シリーズの強みである、手を動かしておぼえる(書いて実行して結果を確認する)
特長を生かし、Pythonの基本的な言語仕様から、標準ライブラリ、ユーザー定義関数、
オブジェクト指向構文、モジュールまで、サンプルプログラムを例示しながら
詳細かつ丁寧に解説します。
プログラミングの基礎知識がない方でも、解説→例題(サンプル)→理解度チェック
という3つのステップで、Pythonでプログラミングを行う際に必要な知識・概念・機能を
体系的に習得できます。
プログラミングの入門者、これからPythonで開発を始めたい初学者から、再入門者、
学生・ホビープログラマまで、「一からPython言語を学びたい」「Pythonプログラミング
の基本をしっかり身につけたい」という方におすすめの一冊です。
第1章 イントロダクション
1.1 Pythonとは?
1.2 Pythonの歴史と現状
1.3 Pythonアプリを開発/実行するための基本環境
1.4 Pythonプログラミングの基本
1.5 Pythonの基本ルール
1.6 開発/学習の前に押さえておきたいテーマ
第2章 Pythonの基本
2.1 変数
2.2 データ型
第3章 演算子
3.1 算術演算子
3.2 代入演算子
3.3 比較演算子
3.4 論理演算子
3.5 ビット演算子
3.6 演算子の優先順位と結合則
第4章 制御構文
4.1 条件分岐
4.2 繰り返し処理
4.3 ループの制御
4.4 例外処理
第5章 標準ライブラリ[基本]
5.1 ライブラリの分類
5.2 文字列の操作
5.3 日付/時刻の操作
第6章 標準ライブラリ[コレクション]
6.1 シーケンス型
6.2 セット(集合)型
6.3 辞書(dict)型
第7章 標準ライブラリ[その他]
7.1 正規表現
7.2 ファイル操作
7.3 ファイルシステムの操作
7.4 HTTP経由でコンテンツを取得する
7.5 その他の機能
第8章 ユーザー定義関数
8.1 ユーザー定義関数の基本
8.2 変数の有効範囲(スコープ)
8.3 引数のさまざまな記法
8.4 関数呼び出しと戻り値
第9章 ユーザー定義関数[応用]
9.1 デコレーター
9.2 ジェネレーター
9.3 関数のモジュール化
9.4 非同期処理
9.5 ドキュメンテーション
第10章 オブジェクト指向構文
10.1 クラスの定義
10.2 カプセル化
10.3 継承
10.4 ポリモーフィズム
第11章 オブジェクト指向構文[応用]
11.1 例外処理
11.2 特殊メソッド
11.3 データクラス
11.4 イテレーター
11.5 メタクラス
付録A 「練習問題」「このの理解度チェック」解答
Amazonで詳しく見る
紹介文
4万人が学んだベストセラーが、5年ぶりの大改訂!
小さなサイト作りを通してHTMLとCSSの基礎が学べる入門書の決定版!
第2版ではPCだけでなくスマホやタブレットにも対応したサイトが完成します。
ソースコードは現在のトレンドに合わせ、解説もいっそう丁寧にわかりやすくなりました。
これからWeb制作を始める人にも、HTML/CSSを学び直したい人にもおすすめの、充実の内容です!
最新HTML5.2準拠。Windows/Mac対応
chapter01 Webサイト制作を始める前に
01 Webサイトとその構成要素
02 Webブラウザの機能と種類
03 Webサイトを公開するまで
04 制作に使うソフトのインストール
chapter02 HTMLの基礎
01 HTMLはWebページを制作するための言語
02 HTMLの基本的な書式
03 親子、子孫、兄弟 ~HTMLの階層関係
chapter03 制作の準備と基本のHTML
01 Webサイト制作の準備
02 すべてのHTMLで共通するタグ
chapter04 見出し、段落、リスト
01 見出しテキスト
02 テキストの段落
03 ナビゲーションの設置
04 番号なしリスト(非序列リスト)
chapter05 リンクと画像の挿入
01 サイト内リンクと相対パス
02 外部サイトへのリンクと絶対パス
03 画像の表示
04 キーボードで入力しにくい文字の表示
05 ページの部分ごとに要素をまとめる
06 class属性
07 コメント文
chapter06 2ページ目以降を効率的に作成する
01 index.html以外のファイルの作成
02 段落にテキストと画像を含める
03 テキストを太字にする・改行する
04 id属性と特定の場所へのリンク
05 テーブル(表)
06 番号付きリスト(序列リスト)
07 CSS適用を考えた要素のグループ化
chapter07 CSSの基礎
01 HTMLの「見た目」を整えるCSS
02 CSSの基本的な書式
03 主なセレクタと書き方
04 CSSを書く場所
05 CSSファイルを作成する
06 HTMLファイルとCSSファイルを関連付ける
chapter08 CSSでページのスタイルを調整
01 背景色の設定
02 テキスト色、フォントサイズの設定
03 マージン、ボーダー、パディング
04 行間の調整
05 リンクテキスト色の変更
06 コンテンツの行揃え
07 ブロック表示/インライン表示の変更
08 背景画像の指定
09 スタイルを上書きする
10 繰り返さない背景画像
11 ページの最大幅の設定
12 ページに固有のスタイルを適用
chapter09 フロートとテーブルのスタイル
01 テキストの回り込み
02 テーブルの整形
03 フレックスボックスで2コラムレイアウト
04 access.htmlのスタイルを作成しよう
chapter10 フォームの作成
01 フォームの基礎知識
02 お問い合わせページの概要
03 フォーム全体の親要素
04 プルダウンメニュー
05 ラジオボタンとチェックボックス
06 テキストフィールド
07 テキストエリア
08 送信ボタン
09 ラベル
10 フォームのスタイルと属性セレクタ
chapter11 モバイル端末に対応する
01 レスポンシブデザイン
02 ビューポートの設定
03 画像をレスポンシブデザインに対応させる
04 メディアクエリとブレイクポイント
05 ページ全体とナビゲーションのモバイル対応
06 コラムレイアウトの調整
07 フォームの調整
chapter12 Webサイトの公開
01 Webサイト公開までの準備
02 Webサーバーに接続
03 ファイルのアップロード
04 Webサイトの最終確認
Amazonで詳しく見る
紹介文
株式会社セガのゲームプログラマが書いた、プログラムの初心者に入門書を読む前に読んでほしい「プログラムを根本から理解し考え出す能力を身につける」書籍です。世間一般のプログラム入門書は、プログラムを自分で作るにはどのように頭を動かせばいいのかという根本の考え方を教えてくれません。本書は『ゲームプログラマになる前に覚えておきたい技術』の著者が、プログラミングの未経験者や基本をやり直したいと考えている人のために、簡単なゲーム制作をとおして、プログラムを作る上でどのように頭を働かせればいいのかを学べるように工夫しました。
Chapter 0 この本は誰に何を提供するか
0.1 これまでの教え方が持つ三つの問題
0.1.1 要素がバラバラ
0.1.2 プロ向けの道具がもたらす挫折
0.1.3 できなくても仕方ないと思われている
0.2 この本は何が違うか
0.2.1 一つのプログラムを最初から最後まで作る
0.2.2 専用に道具を用意する
0.2.3 本当に初めての人を対象にする
0.3 では、始めよう!
Chapter 1 プログラム作りを始める前に
1.1 あのゲームを作るためにはどうしたらいいか
1.1.1 あのゲームに必要なプログラム技術とは何か
1.1.2 あのゲームはどんなものか
1.1.3 プログラムとは何なのか
1.1.4 この奇妙な文章は何なのか
1.1.5 君の目標はどのくらいの高さにあるのか
1.2 どこから手をつけるか
1.2.1 プログラミング言語の学び方
1.2.2 どこから作り始めるか
1.2.3 何か手のつけやすい要素を抜き出せないか
1.3 この章で伝えたかったこと
Chapter 2 メモリに触れてみる ~四角を描く~
2.1 書いたプログラムを動かす
2.2 四角を描く
2.2.1 四角を描くための最低限のルール
2.2.2 この一行は何を意味しているのか
2.2.3 メモリとは何か
2.2.4 メモリをいじると点が出るのはなぜか
2.2.5 コンピュータとはどういう機械か
2.2.6 画面の点は何番のメモリにつながっているか
2.2.7 メモリに覚えさせる数と色の関係
2.3 好きな場所に四角を描く
2.3.1 画面の真ん中に赤い四角を描く
2.3.2 1足したり引いたりが面倒だ!
2.3.3 なぜ0始まりか
2.3.4 これであのゲームの絵を描けるか
2.4 この章で伝えたかったこと
Chapter 3 くり返し ~プログラムを短くする~
3.1 行数を減らす
3.1.1 一行で複数のメモリをいじりたい
3.1.2 なぜくり返しか
3.2 くり返しの使い方
3.2.1 くり返しの文法
3.2.2 何があれば四角を描くのに使えるか
3.2.3 固定していない数
3.2.4 1回実行して終わりにする
3.2.5 2回実行して終わりにする
3.2.6 16回実行して終わりにするにはどうするか
3.2.7 好きな回数くり返す方法
3.2.8 くり返す度に別の画素を塗るにはどうするか
3.3 くり返しで四角を描く
3.3.1 だがそう簡単には行かない
3.3.2 くり返しをくり返すにはどうするか
3.3.3 このプログラムの何が悪いのか
3.3.4 頭の中で動かす
3.3.5 結果から考える
3.3.6 思ったように動かない時にすべきこと
3.3.7 くり返しで書くことに価値はあるか
3.3.8 画面の真ん中に描くにはどうするか
3.4 この章で伝えたかったこと
Chapter 4 プログラムの変形 ~四角をたくさん描く~
4.1 くり返しで壁を描く
4.1.1 四角を描くことをくり返す
4.1.2 20個描く
4.1.3 この調子で右の壁や底も描く
4.1.4 注釈
4.2 もっと短くしたい
4.2.1 くり返しをくっつける
4.2.2 まだやれることはないか
4.2.3 底も含めてもっと短く書く方法はないか
4.2.4 これはわかりやすいプログラムか
4.3 この章で伝えたかったこと
Chapter 5 プログラムを分ける ~四角を楽にたくさん描く~
5.1 行を使い回すための、くり返し以外の手段
5.1.1 参照が使えたとしたらどうなるか
5.1.2 参照のわかりやすさ
5.2 Sunabaにおける「参照」
5.2.1 実行について
5.2.2 部分プログラムが役立つために必要なもの
5.2.3 参照する度に違う点を塗りたい
5.3 部分プログラムを使って壁と底を描く
5.3.1 左右も部分プログラムを使って描くには
5.3.2 部分プログラムに価値はあるか
5.4 もっとわかりやすく
5.4.1 注釈はなぜ必要か
5.4.2 「変な数」に注目する
5.5 この章で伝えたかったこと
Chapter 6 動きのあるプログラム ~四角を落とす~
6.1 次は何をすべきか
6.2 四角を落とす
6.2.1 点を落としてみる
6.2.2 四角を落としてみる
6.2.3 間違いを直す
6.2.4 問題を直す
6.3 もっと速く塗りたい
6.3.1 手加減をやめさせるには
6.3.2 手加減とは何か
6.3.3 手紙を送る
6.4 ここまでを組み合わせる
6.4.1 まずはくっつけるだけ
6.4.2 壁と底を描く
6.4.3 手加減をやめる
6.4.4 落ちる四角を真ん中に
6.5 この章で伝えたかったこと
Chapter 7 メモリに名前をつける ~もっと日本語で~
7.1 今のプログラムは何が悪いか?
7.1.1 どんな道具がほしいか
7.1.2 番号を自分で決めたくない
7.2 Sunabaでメモリに名前をつける
7.2.1 とりあえず使ってみる
7.2.2 メモリの番号を決めなくていい、ということ
7.3 名前付きメモリのルール
7.3.1 名前付きメモリが作られるのはいつか
7.3.2 名前付きメモリは部分プログラムごと
7.3.3 くり返しの外からは見えない
7.4 この章で伝えたかったこと
Chapter 8 操作できるプログラム ~四角を動かす~
8.1 操作するとはどういうことか
8.1.1 キーボードに反応する
8.1.2 プログラムはどうやって外のことを知るか
8.2 操作できるようにする
8.2.1 押す暇がないし、押せてもわからない
8.2.2 動いている間にキーを押したい
8.2.3 点を動かしてみる
8.2.4 手加減をオフに
8.2.5 下以外にも動くように
8.2.6 四角を動かす
8.3 動きっぱなしを避ける
8.3.1 まずは小さく始める
8.3.2 動き続けないとはどういうことか
8.3.3 前回押されていなければ、をどうするか
8.3.4 ホワイトボードを見てどうするか決める
8.3.5 式を思いつく
8.3.6 上下左右に動けるようにする
8.3.7 四角に戻そう
8.4 落ちてくる四角を動かせるようにする
8.4.1 壁と底を描いて、すぐできる改造をする
8.4.2 落とす
8.5 この章で伝えたかったこと
Chapter 9 「計算」の本当の意味 ~ゆっくり落とす~
9.1 ゆっくり落とすということ
9.1.1 毎回動かないプログラム
9.1.2 前動いたら今回動かない
9.1.3 割り算を使う
9.1.4 もう一つの方法
9.2 条件実行
9.2.1 行を実行したりしなかったりする
9.2.2 くり返しを1回で止める
9.2.3 条件実行はおいしいか?
9.3 Sunabaで条件実行
9.3.1 前の例はどうなるか
9.3.2 ゆっくり線を引く
9.3.3 ここまでを組み合わせる
9.3.4 押しっぱなしへの対処を整理する
9.4 計算の本当の意味
9.4.1 条件式が正しいということ
9.4.2
Amazonで詳しく見る
紹介文
『プログラムはなぜ動くのか』14年ぶり、待望の改訂第3版!
『プログラムはなぜ動くのか』14年ぶり、待望の改訂第3版!
「これからの10年も通用する基本」を、より多くの読者に身につけてもらうために改訂しました。
プログラムがコンピュータの中でどのように動作するのかを、誰にでもわかるように説明します。プログラムは、メモリーにロードされ、CPUによって解釈・実行されます。その仕組みを、多数の図を使って、順序だてて解説します。
第3版では、あらためて全文を見直して、登場する製品や開発ツールなどを新しいものに置き換え、プログラミングが初めてという人でも戸惑わないように、本文や注釈に大幅な加筆を加えています。第2版で好評だったハードウエアに関する説明や、C言語によるサンプル・プログラムも更新しています。巻末の補章のC言語の解説「レッツ・トライ C言語!」も最新仕様に沿うよう改訂しています。
新たに書き下ろした第12章では、Pythonを使った機械学習を取り上げます。初めて機械学習を体験する読者は、コンピュータとプログラムの活用方法としての人工知能(AI)を身近に感じられることでしょう。さらに、巻末の補章にPythonの解説「レッツ・トライ Python!」を追加しています。
本書の特徴
◆プログラムの成り立ち、動作の仕組みを説明…基礎知識をきちんと解説!
◆メモリーについて充実した説明…プログラマの必須知識をしっかり解説!
◆HW、OS、アプリ、クラウドなど動作環境を網羅…実践・実装知識も解説!
何事にも言えることですが、ものごとの本質を知ることは、とても大切なことです。本質を知ってこそ応用が利きます。新しい技術が登場しても、容易に理解できます。本書によって、プログラムを奥底まで探究し、プログラムの本質に触れてください。
――「おわりに」より――
【目次】
第1章 プログラマにとってCPU とはなにか
第2章 データを2 進数でイメージしよう
コラム:ピカピカの小学生にCPU と2 進数を説明する
第3章 コンピュータが小数点数の計算を間違える理由
第4章 四角いメモリーを丸く使う
第5章 メモリーとディスクの親密な関係
第6章 自分でデータを圧縮してみよう
コラム:ゲームに夢中な中学生にメモリーとディスクを説明する
第7章 プログラムはどんな環境で動くのか
第8章 ソース・ファイルから実行可能ファイルができるまで
第9章 OS とアプリケーションの関係
コラム:スマホが大好きな女子高生にOS の役割を説明する
第10章 アセンブリ言語からプログラムの本当の姿を知る
第11章 ハードウエアを制御する方法
コラム:近所のおばあちゃんにディスプレイとテレビの違いを説明する
第12章 コンピュータに「学習」をさせるには
コラム:行きつけの居酒屋のマスターに機械学習の種類を説明する
補章1 レッツ・トライ C言語!
補章2 レッツ・トライ Python!
Amazonで詳しく見る
紹介文
Pythonの作者自らが書き下ろした手引書。入門者がおさえておくべき機能やコンセプトを解説し、さらに特徴的な機能を多く紹介。
Python初心者必読のチュートリアルが3.9対応で登場!
Pythonの作者Guido氏自らが書き下ろした、Python入門者のための手引書です。Pythonの言語と、入門者がおさえておくべきシステムの基本的な機能やコンセプトを解説し、さらにPythonの特徴的な機能を数多く取り上げて紹介することで、この言語の雰囲気とスタイルをわかりやすくつかめるよう配慮しています。5年ぶりの改訂版で、Python3.9.0に対応しました。入門者必読の書です。
Pythonの作者自らが書き下ろした手引書。入門者がおさえておくべき機能やコンセプトを解説し、さらに特徴的な機能を多く紹介。
Amazonで詳しく見る
紹介文
ディープラーニングの本格的な入門書。外部のライブラリに頼らずPython 3によってゼロからディープラーニングを作成できる。
実際にシステムを作りながらディープラーニングを学ぶ!
ディープラーニングの本格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優れているのか? なぜ層を深くすると認識精度がよくなるのか? といった“Why”に関する問題も取り上げます。
Amazonで詳しく見る
紹介文
コードは理解しやすくなければならない。本書はこの原則を日々のコーディングの様々な場面に当てはめる方法を紹介する。名前の付け方、コメントの書き方など表面上の改善について。コードを動かすための制御フロー、論理式、変数などループとロジックについて。またコードを再構成するための方法。さらにテストの書き方などについて、楽しいイラストと共に説明する。日本語版ではRubyやgroongaのコミッタとしても著名な須藤功平氏による解説を収録。
理解しやすいコード
第1部 表面上の改善(名前に情報を詰め込む
誤解されない名前
美しさ
コメントすべきことを知る
コメントは正確で簡潔に)
第2部 ループとロジックの単純化(制御フローを読みやすくする
巨大な式を分割する
変数と読みやすさ)
第3部 コードの再構成(無関係の下位問題を抽出する
一度に1つのことを
コードに思いを込める
短いコードを書く)
第4部 選抜テーマ(テストと読みやすさ
「分/時間カウンタ」を設計・実装する)
付録 あわせて読みたい
Amazonで詳しく見る
紹介文
『オブジェクト指向でなぜつくるのか』10年ぶり、待望の改訂第3版!
『オブジェクト指向でなぜつくるのか』10年ぶり、待望の改訂第3版!
「これからの10年も通用する基本」を、より多くの読者に身につけてもらうために改訂しました。
現在のソフトウエア開発技術の主役である、オブジェクト指向の全体像とそこに含まれる各技術を平易な文章で核心をズバリと解説します。
生産性のかぎを握るプログラム開発の主要技術をわかりやすく教えるという位置づけは変わりません。
そのうえで「今ドキのOOP」として人気言語(Java、Python、Ruby、JavaScript)の最新動向を新たに盛り込んでいます。
もちろん、すべての文章を細かく見直して現況に沿うよう更新しています。
本書の特徴
◆オブジェクト指向(OOP)の全体像と特徴がわかる
◆OOPのプログラムが動く仕組みが具体的にわかる
◆関数型言語の本質とOOPとの関係がわかる
◆アジャイル開発手法と実践手法がわかる
【目次】
第1章 オブジェクト指向はソフトウエア開発を楽にする技術
今ドキのOOP:とっつきやすくて、奥の深いPython
第2章 オブジェクト指向と現実世界は似て非なるもの
オブジェクトの向こう側:バズワードになったオブジェクト指向
第3章 OOPを理解する近道はプログラミング言語の歴史にあり
プログラミング昔話: COBOL コンパイラのニワトリとタマゴの話
第4章 OOPは無駄を省いて整理整頓するプログラミング技術
今ドキのOOP:ホームページツールから進化したPHP
第5章 メモリの仕組みの理解はプログラマのたしなみ
プログラミング昔話: OOPはダンプが見づらい?
第6章 OOPがもたらしたソフトウエアとアイデアの再利用
今ドキのOOP:Rails フレームワークでブレークしたRuby
第7章 汎用の整理術に化けたオブジェクト指向
オブジェクト指向の向こう側:言語が先か、コンセプトが先か
第8章 UMLは形のないソフトウエアを見る道具
第9章 現実世界とソフトウエアのギャップを埋めるモデリング
第10章 擬人化して役割分担させるオブジェクト指向設計
今ドキのOOP:クラスに縛られずに動くJavaScript
第11章 オブジェクト指向から生まれたアジャイル開発
プログラミング昔話:昔は許されなかったXP
第12章 オブジェクト指向を使いこなそう
補章 関数型言語でなぜつくるのか
今ドキのOOP:関数型言語の箱庭を用意したJava
Amazonで詳しく見る
紹介文
はじめてゲーム制作に取り組む人に最適!
Unityの使い方と、ゲームを作るためのヒントが満載の一冊です。
■本書の特徴
①初めてゲーム制作にチャレンジする人に最適!
最初は簡単な2Dゲームの制作からスタートし、徐々に難しいゲームへと進めていきます。サンプルゲームの制作を通じて、Unityの機能と、ゲームを作るための知識が自然と身に付きます。
②プログラムの書き方がわからなくても大丈夫!
C#の基礎知識も掲載しているので、プログラミング経験のまったくない人でも、安心して学習を開始することができます。
③ゲームを面白くするためのヒントを掲載!
Unityの使い方だけでなく、ゲームの設計方法、レベルデザインなど、ゲームを面白く作るための知識も紹介しています。
■本書の構成
Chapter1 ゲーム作りの準備
・Unityのインストール
・Unityの画面構成を知ろう
・Unityに触れて慣れよう
Chapter2 C#スクリプトの基礎
・スクリプトの第一歩
・変数を使ってみよう
・制御文を使ってみよう
・配列を使ってみよう
・関数(メソッド)を作ってみよう
・クラスを作ってみよう
Chapter3 オブジェクトの配置と動かし方
・ゲームの設計を考えよう
・シーンにオブジェクトを配置しよう
・ルーレットを回すスクリプトを作ろう
Chapter4 UIと監督オブジェクト
・スワイプで車を動かす方法を考えよう
・uGUIでUIを表示しよう
・UIを書き換える監督を作ろう
Chapter5 Prefabと当たり判定
・キーボードでプレイヤを動かそう
・Physicsを使わない落下方法を学ぼう
・当たり判定を学ぼう
Chapter6 Physicsとアニメーション
・Physicsについて学ぼう
・コライダの形を工夫してみよう
・アニメーションについて学ぼう
Chapter7 3Dゲームの作り方
・Terrainを使って地形を作ろう
・Physicsを使ってイガグリを飛ばそう
・パーティクルを使ってエフェクトを表示しよう
Chapter8 レベルデザイン
・バスケットを動かそう
・アイテムを落下させよう
・アイテムをキャッチしよう
Chapter1 ゲーム作りの準備
1-1 ゲームを作るのに必要なもの
1-2 Unityとは?
1-3 Unityのインストール
1-4 Unityの画面構成を知ろう
1-5 Unityに触れて慣れよう
Chapter2 C#スクリプトの基礎
2-1 スクリプトとは?
2-2 スクリプトを作成しよう
2-3 スクリプトの第一歩
2-4 変数を使ってみよう
2-5 制御文を使ってみよう
2-6 配列を使ってみよう
2-7 関数(メソッド)を作ってみよう
2-8 クラスを作ってみよう
2-9 Vector型を使ってみよう
Chapter3 オブジェクトの配置と動かし方
3-1 ゲームの設計を考えよう
3-2 プロジェクトとシーンを作成しよう
3-3 シーンにオブジェクトを配置しよう
3-4 スクリプトの作り方を学ぼう
3-5 スクリプトをアタッチしてルーレットを回そう
3-6 ルーレットが止まるようにしよう
3-7 スマートフォンで実行してみよう
Chapter4 UIと監督オブジェクト
4-1 ゲームの設計を考えよう
4-2 プロジェクトとシーンを作成しよう
4-3 シーンにオブジェクトを配置しよう
4-4 スワイプで車を動かす方法を考えよう
4-5 uGUIでUIを表示しよう
4-6 UIを書き換える監督を作ろう
4-7 効果音の鳴らし方を学ぼう
4-8 スマートフォンで実行してみよう
Chapter5 Prefabと当たり判定
5-1 ゲームの設計を考えよう
5-2 プロジェクトとシーンを作成しよう
5-3 シーンにオブジェクトを配置しよう
5-4 キーボードでプレイヤを動かそう
5-5 Physicsを使わない落下方法を学ぼう
5-6 当たり判定を学ぼう
5-7 Prefabと工場の作り方を学ぼう
5-8 uGUIでUIを表示しよう
5-9 UIを書き換える監督を作ろう
5-10 スマートフォンで実行してみよう
Chapter6 Physicsとアニメーション
6-1 ゲームの設計を考えよう
6-2 プロジェクトとシーンを作成しよう
6-3 Physicsについて学ぼう
6-4 コライダの形を工夫してみよう
6-5 入力に応じてプレイヤを動かそう
6-6 アニメーションについて学ぼう
6-7 ステージを作ろう
6-8 プレイヤの移動に合わせてカメラを動かそう
6-9 Physicsを使った衝突検出を学ぼう
6-10 シーン間の遷移方法を学ぼう
6-11 スマートフォンで実行してみよう
Chapter7 3Dゲームの作り方
7-1 ゲームの設計を考えよう
7-2 プロジェクトとシーンを作成しよう
7-3 Terrainを使って地形を作ろう
7-4 Physicsを使ってイガグリを飛ばそう
7-5 パーティクルを使ってエフェクトを表示しよう
7-6 イガグリを生産する工場を作ろう
7-7 スマートフォンで実行してみよう
Chapter8 レベルデザイン
8-1 ゲームの設計を考えよう
8-2 プロジェクトとシーンを作成しよう
8-3 バスケットを動かそう
8-4 アイテムを落下させよう
8-5 アイテムをキャッチしよう
8-6 アイテムを生成する工場を作ろう
8-7 UIを作ろう
8-8 レベルデザインをしよう
8-9 スマートフォンで実行してみよう
Amazonで詳しく見る
紹介文
■Chapter1 Unityをはじめる準備
1-01 Unityでできることを知ろう!
1-02 Unityをインストールしよう!
■Chapter2 Unityの画面と使い方
2-01 Unityエディターの画面構成
2-02 基本的な操作方法
■Capture3 Unityを使ってみよう!
3-01 プロジェクトを作ろう!
3-02 床と壁を作ろう!
3-03 坂を作ろう!
3-04 玉を作ろう!
3-05 重力を設定しよう!
3-06 ゲームをアレンジしよう!
■Chapter4 2Dゲームを作ってみよう!
4-01 プロジェクトを作ろう!
4-02 スプライトを切り分けよう!
4-03 ステージを配置しよう!
4-04 プレイヤーを配置しよう!
4-05 プレイヤーを操作できるようにしよう!
4-06 砲弾を撃てるようにしよう!
4-07 ヒヨコ玉を作ろう!
4-08 よりゲームらしく改良しよう!
■Chapter5 ゲームのUIを作ってみよう!
5-01 UnityのUIシステム
5-02 主なUIオブジェクト
5-03 ボタンクリックの処理を作ろう!
5-04 タイトル画面を作ろう!
■Chapter6 3Dゲームを作ってみよう!
6-01 プロジェクトを作ろう!
6-02 ゲームの素材をプロジェクトに取り込もう!
6-03 キャラクターを作ろう!
6-04 プレイヤーに合わせてカメラを動かそう!
6-05 ステージを作ろう!
6-06 障害物を設置しよう!
6-07 ステージにテクスチャを設定しよう!
6-08 ライトを追加しよう!
6-09 落下判定の処理を作ろう!
6-10 ステージのゴールを作ろう!
6-11 タイマー機能を作ろう!
6-12 リザルト画面を作ろう!
6-13 BGMを鳴らしてみよう!
■Chapter7 スマートフォン向けに改良しよう!
7-01 スマートフォン用のプロジェクトを作成しよう!
7-02 スマートフォンの操作に対応させよう!
7-03 スマートフォンで動かそう!
■Chapter1 Unityをはじめる準備
1-01 Unityでできることを知ろう!
1-02 Unityをインストールしよう!
■Chapter2 Unityの画面と使い方
2-01 Unityエディターの画面構成
2-02 基本的な操作方法
■Capture3 Unityを使ってみよう!
3-01 プロジェクトを作ろう!
3-02 床と壁を作ろう!
3-03 坂を作ろう!
3-04 玉を作ろう!
3-05 重力を設定しよう!
3-06 ゲームをアレンジしよう!
■Chapter4 2Dゲームを作ってみよう!
4-01 プロジェクトを作ろう!
4-02 スプライトを切り分けよう!
4-03 ステージを配置しよう!
4-04 プレイヤーを配置しよう!
4-05 プレイヤーを操作できるようにしよう!
4-06 砲弾を撃てるようにしよう!
4-07 ヒヨコ玉を作ろう!
4-08 よりゲームらしく改良しよう!
■Chapter5 ゲームのUIを作ってみよう!
5-01 UnityのUIシステム
5-02 主なUIオブジェクト
5-03 ボタンクリックの処理を作ろう!
5-04 タイトル画面を作ろう!
■Chapter6 3Dゲームを作ってみよう!
6-01 プロジェクトを作ろう!
6-02 ゲームの素材をプロジェクトに取り込もう!
6-03 キャラクターを作ろう!
6-04 プレイヤーに合わせてカメラを動かそう!
6-05 ステージを作ろう!
6-06 障害物を設置しよう!
6-07 ステージにテクスチャを設定しよう!
6-08 ライトを追加しよう!
6-09 落下判定の処理を作ろう!
6-10 ステージのゴールを作ろう!
6-11 タイマー機能を作ろう!
6-12 リザルト画面を作ろう!
6-13 BGMを鳴らしてみよう!
■Chapter7 スマートフォン向けに改良しよう!
7-01 スマートフォン用のプロジェクトを作成しよう!
7-02 スマートフォンの操作に対応させよう!
7-03 スマートフォンで動かそう!
Amazonで詳しく見る
紹介文
近年のゲーム開発では3DCGや物理シミュレーションなどの技術が多用されているため、その基盤である数学についての理解なしに商業ベースのゲーム開発はありえません。本書では、ゲーム開発や3DCGで用いられる数学的な要素-デカルト座標系、ベクトル、行列、線型代数、オイラー角、四元数、座標変換(平行移動、回転、拡大縮小)、幾何形状プリミティブの種類と構造体、プリミティブの可視性と衝突判定といった3D数学、さらにはグラフィックス用の3D数学-についてサンプルを多用しながらわかりやすく解説します。
デカルト座標系
複数の座標空間
ベクトル
ベクトルの演算
簡単な3Dベクトルクラス
行列入門
行列と線型変換
より詳しい行列の説明
3Dにおける方向と角変位
C++による座標変換
幾何形状プリミティブ
幾何テスト
三角形メッシュ
グラフィックス用の3D数学
可視性の決定
Amazonで詳しく見る
紹介文
最も簡単なC言語入門書の『Cの絵本』が改訂、シリーズラインナップもリニューアル!
C言語入門書の定番『Cの絵本』がリニューアルされました!
10年以上にわたって親しまれてきたC言語解説書『Cの絵本』は、プログラムのことを何も知らなくても勉強が始められるように考えられた、とてもやさしい入門書です。新版では、従来の分かりやすい部分はそのままに、内容を全体的に見直してお届けします。難しいと言われるC言語のポインタについても無理なくハードルを越えられるように配慮しました。従来は扱いが小さかった一部の項目についてはより実践的に解説し、現在のコンピュータの環境で気軽にC言語を試していただけるよう環境構築を新規に書きおろしました。
本書を読むのにプログラム言語の知識は一切不要です。もっとも親しみやすいC言語の入門書として、現代の環境に合わせてアップデートされた、安心して勉強を始められる一冊です。
【翔泳社の「絵本」シリーズのラインナップをアップデート】
翔泳社の「絵本シリーズ」は名前のとおり、絵本のように豊富なイラストと要点を押えた簡潔な解説でコンピュータ技術に入門できる初心者向けのシリーズです。すべての単元を2ページ単位で読みやすくまとめ、基礎に徹した内容で、言語/技術の初心者や手軽に習得したい方のお役にたてるようになっています。
このたび、翔泳社は「絵本シリーズ」を全面的に改訂し、内容を現在の技術にあわせて見直しました。シリーズラインナップ全体をリニューアルし、新パッケージでお届けします。
新しい「絵本シリーズ」では、旧来の分かりやすさ、親しみやすさ、基礎に徹した内容というコンセプトはそのままに、Web/ネットが全盛となった現在のコンピュータ技術の潮流に合わせた解説を心掛けます。『Cの絵本』『Javaの絵本』を皮切りにラインナップを順次刷新、さらに新しい仲間を増やしてラインナップを充実していきます。
C言語をはじめる前に
第1章 基本的なプログラム
第2章 演算子
第3章 制御文
第4章 配列とポインタ
第5章 関数
第6章 ファイルの入出力
第7章 構造体
第8章 プログラムの構成
付録
Amazonで詳しく見る
紹介文
Javaプログラミングの準備
ウインドウを表示してみよう!
文字を表示する
計算結果を表示する
文章作成マシーンを作ろう
おみくじゲームを作ろう
ダンスゲームをつくろう
じゃんけんゲームを作ろう
スロットマシーンを作ろう
今後の学習と総合問題
Amazonで詳しく見る
紹介文
Scratchを初めて学ぶ子どもと大人のために使い方や機能を丁寧に解説。子どもにとって意味が分かりにくい条件分岐や座標、関数については、考え方を詳しく解説し、大人がどうやって子どもに考え方を説明すればいいか身近な例をひもといて紹介している。
第1章 プログラミングを始めよう
第2章 Scratchを始めよう
第3章 音を鳴らしてみよう
第4章 自動で動く車を作ろう
第5章 迷路ゲームを作ろう
第6章 もぐらたたきを作ろう
第7章 オート紙芝居を作ろう
第8章 シューティングゲームを作ろう
第9章 電子スノードームを作ろう
第10章 クイズ!できるもんを作ろう
第11章 幾何学模様を作ろう
第12章 ブロックくずしを作ろう
Amazonで詳しく見る
紹介文
アクションやレーシングゲーム、迷路など、人気のプログラミング言語「スクラッチ」を使った8種類のゲームの作り方が学べる解説書。
『10才からはじめるプログラミング図鑑』に第2弾が登場!アクションゲームやレーシングゲーム、「迷路」や「音」を使ったゲームまで、人気のプログラミング言語「スクラッチ」を使った8種類のゲームの作り方が学べます。カラフルなイラストとわかりやすい図解で、楽しみながらプログラミングに取り組める解説書です。かんたんに作れて、自分だけのカスタマイズも自在!作ったゲームは仲間といっしょに遊んだり、オンラインで公開したりして楽しもう。スクラッチの面白くて奥深い世界が君を待っているぞ!*すべての漢字にふりがなつき。【この本で作れるゲーム】「スター・ハンター」 タコをよけながら星を集めよう!「チーズをさがせ」 迷路のなかでチーズを探そう!「サークル・ウォーズ」 てきと味方をまちがえないで!「おサルのジャンプ」 バナナをぜんぶ集めよう!「ホウキにのった魔女」 魔法の火の球でモンスターをたおそう!「犬のごちそう」 ジャンプしながら大好物のほねを集めよう!「氷の上のレース」 仲間といっしょに競争だ!「ドラムで音あそび」 鳴った音の順番をおぼえよう!
C・ヴォーダマンほか著/山崎正浩訳;0501;09;アクションやレーシングゲーム、迷路など、人気のプログラミング言語「スクラッチ」を使った8種類のゲームの作り方が学べる解説書。;20171201
1 コンピューターゲームとは?
よいゲームに必要なもの
ゲームのふん囲気
ゲームのジャンル
どのようにプログラムは動くのか
2 さあ始めよう!
スクラッチはどんな言語だろう?
スクラッチのインストールと起動
スクラッチのインターフェース
3 スター・ハンター
スター・ハンターの作り方
4 チーズをさがせ!
チーズをさがせ!の作り方
5 サークル・ウォーズ
サークル・ウォーズの作り方
6 おサルのジャンプ
おサルのジャンプの作り方
7 ホウキにのった魔女
ホウキにのった魔女の作り方
8 犬のごちそう
犬のごちそうの作り方
9 氷の上のレース
氷の上のレースの作り方
10 ドラムで音あそび
ドラムで音あそびの作り方
11 次はどうする?
リミックスとオリジナルゲーム
上手なプログラミング
次のレベル
ゲームを作る仕事
もっと楽しもう!
12 用語集と索引
Amazonで詳しく見る
紹介文
難解なプログラミングを、文字による解説だけで理解するのは困難。4章では、ブロック図を並べるというプログラミングの疑似体験を通して、「プログラミングの真髄」が視覚的に理解できる。続く5章では、実際にPythonを使って簡単なプログラムを作成しながら具体的な活用も体験し、理解を深める。
第1章 プログラミングとは何か
第2章 プログラミングの大きな流れを知ろう
第3章 どの言語にも共通するプログラミングの真髄を学ぼう
第4章 プログラミングを疑似体験しよう
第5章 Pythonでカンタンなプログラミングを体験しよう
第6章 スキルアップするために知っておきたいプログラミングの仕組み
第7章 最初に学ぶプログラミング言語は何にする?
第8章 これから後のプログラミング学習の進め方
Amazonで詳しく見る
紹介文
シリーズ累計50万部突破の定番入門書「スッキリわかるシリーズ」の『Java入門 実践編』に「第3版」が登場!最新Java16対応し、近年のJava改訂による新機能(Record等)の取り込みのほか、GitやMavenといったツール類の活用方法も具体的・実践的に解説! 新人エンジニア湊君の成長を傍らに、開発中に発生するJavaのいろんな「なぜ?」にしっかりと答えながら解説が進み、付録には「エラー解決・虎の巻」を用意して、独学に適した挫折しにくい紙面展開で、中級者に進むあなたを、効率的かつ、実践的にエスコートしていきます。
Amazonで詳しく見る
紹介文
ゲーム作りに初挑戦する主人公と一緒にプログラミングが学べる入門まんが。丁寧な解説付きで、考え方やネットマナーも身につく。
ゲーム作りに初挑戦する主人公と一緒にプログラミングが学べる入門まんが。プログラミングソフト「Scratch2.0」を使ってアクションゲームを作りながら、基本的な考え方や仕組みが習得できる。インターネットを使用する上で大切なマナーも紹介。
Amazonで詳しく見る
紹介文
ミニゲームを作りながら、プログラミング言語の王様Cを楽しく覚えよう!
1 Cをはじめよう-プログラムを作るための準備
2 まずは簡単なことからやってみよう-変数と計算
3 プログラムに判断させよう-条件分岐
4 たくさんのデータをパパッと料理する-ループと関数
5 ロールプレイング風ゲームを作ってみよう-ループと配列変数の応用
6 恋愛ゲームを作ろう-文字列の処理
7 プラネタリウムを作ろう-データ構造とメモリ管理
Amazonで詳しく見る
紹介文
「Scratch」は、マサチューセッツ工科大学の研究所「MITメディアラボ」が開発した、プログラミングツールです。わかりやすい画面で子どもから楽しめ、目的にたどりつくための論理的思考を鍛えられるようになっています。本書では、6つのゲームを作りながら、思考力やプログラミングの基礎力を養います。対象:小学3年生以上。
序章 スクラッチをさわってみよう
1章 「カエルになったナイト」-お城の中で、魔法使いと対決する劇を作ろう
2章 「ねこピアノ」-音色を変えられる電子ピアノを作ろう
3章 「パンダ先生の計算ゲーム」-自動で問題を出して解答できるゲームを作ろう
4章 「コウサギヘルプ」-カーソルキーで操作して敵をよけるゲームを作ろう
5章 「たこシューティング」-すみを発射して、敵を倒すゲームを作ろう
6章 「くまたまごキャッチ」-落ちてくるたまごとをマウス操作で拾うゲームを作ろう
Amazonで詳しく見る
紹介文
開発言語SwiftUI+Swiftを使って、iPhoneアプリ開発を始めよう! Xcode 14/Swift 5.7対応
●本書が対象とする方
・プログラムを書いたことはないけれど、iPhoneアプリを作ってみたい方
・iPhoneアプリをよく利用していて、自分でも作ってみたいと思った方
・中高生、大学生でiPhoneアプリ開発を学んでみたい方
・シルバー世代や中高年の方で再学習を実施したい方
・企業で入社前研修や企業導入研修での教材を検討している方
そんなiPhoneアプリを作ってみたい、すべての初心者が対象です。
アプリを作ることを「開発」するともいいます。開発といっても「難しいことをする!」と身構える必要はありません。プログラミングを楽しみながら、リラックスして読み進めてください。
●本書でできるようになること
初心者の方もサンプルアプリを作ることにより、動く体験と基本の知識が身につくようになります。
この書籍を終えるころには、他の入門書やプログラミング文法書を読む力もついていると思います。そして、作りたいアプリや学習したい分野も見えてくると思いますので、ぜひ、次の書籍を購入してステップアップを目指してください。
●本書の目次
はじめに
この本の読み方と使い方
ご利用の前に必ずお読みください
Day 1
Lesson 1 はじめてのアプリを開発する前に知っておこう
Lesson 2 アプリ開発の環境を整えて、Xcodeの使い方を学ぼう
Lesson 3 じゃんけんアプリを作ろう―Swiftの基本を学ぶ―
Lesson 4 楽器アプリを作ろう―音の扱い方を学ぶ―
Lesson 5 マップ検索アプリを作ろう―MapKitとクロージャを学ぶ―
Day 2
Lesson 1 タイマーアプリを作ろう―画面遷移とデータの永続化―
Lesson 2 カメラアプリを作ろう[前半]―カメラとSNS投稿―
Lesson 3 カメラアプリを作ろう[後半]―エフェクト機能の追加―
Lesson 4 お菓子検索アプリを作ろう―Web APIとJSONの使い方を学ぶ―
索引
Swiftビギナーズ倶楽部について
謝辞
執筆陣プロフィール
はじめに
この本の読み方と使い方
ご利用の前に必ずお読みください
Day 1
Lesson 1 はじめてのアプリを開発する前に知っておこう
Lesson 2 アプリ開発の環境を整えて、Xcodeの使い方を学ぼう
Lesson 3 じゃんけんアプリを作ろう―Swiftの基本を学ぶ―
Lesson 4 楽器アプリを作ろう―音の扱い方を学ぶ―
Lesson 5 マップ検索アプリを作ろう―MapKitとクロージャを学ぶ―
Day 2
Lesson 1 タイマーアプリを作ろう―画面遷移とデータの永続化―
Lesson 2 カメラアプリを作ろう[前半]―カメラとSNS投稿―
Lesson 3 カメラアプリを作ろう[後半]―エフェクト機能の追加―
Lesson 4 お菓子検索アプリを作ろう―Web APIとJSONの使い方を学ぶ―
索引
Swiftビギナーズ倶楽部について
謝辞
執筆陣プロフィール
Amazonで詳しく見る
紹介文
誰もが知っている古典的なゲームをパイソンで作成して
プログラミングとアルゴリズムの基本を学びましょう!
プログラミング解説書のベストセラー『Pythonでつくる ゲーム開発 入門講座』の著者による
オール図解のアルゴリズムの解説書。簡単かつ楽しい作例でスキルアップできる一冊です。
第1章 プログラミングとアルゴリズム
第2章 プログラミングの基礎
第3章 ミニゲームを作ろう
第4章 図形を描こう
第5章 神経衰弱を作ろう
第6章 三目並べを作ろう
第7章 リバーシ(オセロ)を作ろう〜前編
第8章 リバーシ(オセロ)を作ろう〜後編
特別付録 エアホッケーを作ろう
Amazonで詳しく見る
紹介文
ゲームを作りながらPythonを楽しく学ぶ!
プログラミングを習得する一番効率的な方法、それはゲームを作りながら学ぶこと。
文法だけを学んでも、何に、どうやって使うかわからないままでは、きちんとプログラミングを覚えたとは言えません。
本書の特徴は「プログラミング学習に最適なPythonを使って」、「ゲームを作りながらプログラミングの実践的な考え方を身に付けられる」ことです。
PART1では「Pythonの基礎知識」を学び、PART2ではその知識をもとにpygameを使って「ゲームを作る」2つのパートで構成されています。
「いきなりゲームを作るなんて難しそう!」
そう感じる人もいるかもしれませんが大丈夫。
まずは、サンプルコードを真似しながら手を動かしてプログラムが動くことを実感してみましょう。
Pythonに詳しいやさしいカエルくんがしっかり丁寧に教えてくれます。
サンプルファイルもダウンロードできるから、自分で書いたプログラミングが動かないときもしっかりサポート。
プログラミングで一番大切なことは、命令をたくさん覚えることでも、エラーなく正しく書くことでもありません。
もちろんそれらも大事。でも一番は、「自分で考えたアイデアをカタチにする」ことなんです。
「ゲームってこうやって作るんだ」「シューティングゲームってこうやって動いていたんだ!」
新しい発見をしながら学習した知識は、しっかり身に付きます。
自分で考えたゲームやアイデアを形にできる瞬間は、とても楽しいですよ。
「プログラミングには興味があるけど、どうやって勉強したらいいんだろう?」
「何度も挑戦してるけど難しくて脱落してしまった……」
そんなふうに考えているプログラミング入門者、Python入門者にぜひ手に取っていただきたい1冊です!
【本書で作るゲーム】
PART1ではPythonの基礎を学びながら「体重と身長を入力してBMI値を出す」簡単なアプリのようなものを作っていきます。
PART2ではpygameをインストールして、
・「衝突判定を使ったアクションゲーム」、
・「ボール反射を利用したブロック崩しゲーム」、
・「集大成のシューティングゲーム」
など本格的なゲームを作っていきます。
作れるゲームが増えていくことで感じる「できた!」という達成感は、まるでゲームをクリアしたときのような快感にも似ていますよ。
【本書の特徴】
・ゲームを作りながらPythonとプログラミングの基本が学べる
・Pythonに詳しいカエルくんがやさしく教えてくれる
・『お手本のコードを真似して書く』→『動かす』の積み重ねで知識が定着、しっかり身に付く
・ダウンロードできるサンプルファイルつき
==========================================================
PART 1 Pythonを学ぼう
==========================================================
CHAPTER 1 Pythonってなに?
----------------------------------------------------------
1.1 Pythonを始めよう
1.2 Pythonのインストール
1.3 IDLEでPythonに触れてみよう
1.4 最初の命令はprint
1.5 ファイルを作ってプログラミング
----------------------------------------------------------
CHAPTER 2 プログラムの基本1 順次、変数
----------------------------------------------------------
2.1 プログラムの3つの基本 順次、分岐、反復
2.2 順次 上から順番に、実行する
2.3 変数
2.4 データ型
2.5 ユーザーからの入力はinput
2.6 inputと計算でアプリを作ろう!
----------------------------------------------------------
CHAPTER 3 プログラムの基本2 条件分岐、ランダム
----------------------------------------------------------
3.1 分岐 もしも~だったら、○○する
3.2 ランダム コンピュータのサイコロ
3.3 if文とランダムでアプリを作ろう
----------------------------------------------------------
CHAPTER 4 プログラムの基本3 反復、たくさんのデータ
----------------------------------------------------------
4.1 たくさんのデータはリストに入れて使う
4.2 反復 同じ処理をくり返す
4.3 range くり返す範囲を決める
4.4 リストでアプリを作ろう
----------------------------------------------------------
CHAPTER 5 プログラムをまとめる 関数、ループ
----------------------------------------------------------
5.1 関数 仕事をひとまとめにする
5.2 モジュールで分割
5.3 ループ 条件を満たす間くり返す
5.4 関数とループでアプリを作ろう
==========================================================
PART 2 ゲームを作ろう
==========================================================
CHAPTER 1 pygameで絵を描こう
----------------------------------------------------------
1.1 pygameでゲームを作ろう
1.2 pygameの基本
1.3 図形や、文字、画像を描こう
1.4 グラフィックスを動かそう
----------------------------------------------------------
CHAPTER 2 キーやマウスで動かそう
----------------------------------------------------------
2.1 キーで絵を動かそう
2.2 マウスで絵を動かそう
2.3 ボタンを作ろう
----------------------------------------------------------
CHAPTER 3 画面の切り換えで紙芝居
----------------------------------------------------------
3.1 1ページを1つの関数にまとめる
3.2 一本道の紙芝居
3.3 枝分かれの紙芝居
----------------------------------------------------------
CHAPTER 4 衝突判定でアクションゲーム
----------------------------------------------------------
4.1 キャラクターを上下左右に移動する
4.2 他のRectとの衝突判定
4.3 複数のRectとの衝突判定
4.4 ワナをたくさんばらまく
4.5 ワナと衝突したらゲームオーバー
4.6 ゴールと衝突したらゲームクリア
4.7 追いかけてくるオバケ登場!
----------------------------------------------------------
CHAPTER 5 ボールを反射してブロック崩し
----------------------------------------------------------
5.1 ボールをバーで打ち返す
5.2 ボールが画面の下に移動したら、ゲームオーバー
5.3 ブロックをたくさん並べる
----------------------------------------------------------
CHAPTER 6 ブロック崩しから、シューティングゲームへ
----------------------------------------------------------
6.1 自機を左右に移動
6.2 UFOが落下する
6.3 自機とUFOが衝突したら、ゲームオーバー
6.4 弾とUFOが衝突したら、UFOが消える
6.5 星を降らせて、スコアを追加
==========================================================
APPENDIX 巻末付録 Pygameリファレンス
==========================================================
・Pygameの命令一覧
・色の名前リストプログラム
Amazonで詳しく見る
紹介文
「いつ、なにをする?」がわかれば、Unityが使えるようになる!
はじめてプログラムを作る、はじめてゲームを作る、という初心者向けのやさしいUnityと2Dゲームの作り方入門です。
作る時の「考え方」がわかれば、アプリ作りはぐっと楽になります。本書では、「簡単なゲームだけれど、自分で考えて作る方法」に注目して、解説しています。
具体的には、『最初にゲームに必要な部品を書き出して、次にそれぞれは「いつ、何をするものなのか?」という役割を考えていく』という方法で、解説を進めていきます。さらに、「いつ、何をするのか?」の部分を、「単純な役割の組み合わせ」で作っていきます。複雑に見えるゲーム内の動きも、整理すると実は単純な役割の組み合わせでできていることがほとんどです。単純な役割を簡単なプログラムで表現し、それを組み合わせることで、ゲームを作成していきます。
カリキュラムは次のようになっています。
Chapter1 Unityって何?
Unityの基本解説と、インストールをします。
Chapter2 体験してみよう
まずは、プロジェクトを作って、基本的な使い方を理解しましょう。
Chapter3 スクリプトで動かそう
「絵を移動させたいとき」は、「ずっと、絵の位置を変え続ける」というスクリプトで実現できます。
Chapter4 キー入力と衝突判定
「キーで移動させたいとき」は、「ずっと、キー入力を調べ続ける」というスクリプトで実現できます。
Chapter5 マウスでタッチしたものを調べる
「マウスのタッチで何か処理を行いたいとき」は、「マウスのタッチがものに衝突したとき、何かの処理を行う」というスクリプトで実現できます。
Chapter6 アニメーション
「パラパラマンガで動くキャラを作りたいとき」を解説します。
Chapter7 シーンを切り替える
「メインのゲーム画面の他に、タイトル画面や、ゲームオーバー画面を作りたいとき」のやり方を解説します。
Chapter8 プレハブでたくさん作る
「同じしくみのキャラをたくさん登場させたいとき」はどうしたらよいでしょう?
Chapter9 重力を使う
「横から見た2Dゲーム」を作ります。
Chapter10 UI テキストでカウンター
「ゲーム中に文字を表示させたいとき」の方法を解説します。
楽しいゲームを作りながら、Unityとプログラミングの基本をマスターしましょう!
サンプルファイルは本書のサイトからダウンロードできます。
Chapter1 Unityって何?
1.1 Unityは、ゲームを作るソフトウェア
1.2 インストールしよう
1.3 グラフィックソフトからの画像の書き出し方
Chapter2 体験してみよう
2.1 プロジェクトを作ってスタート
2.2 画面の説明
2.3 基本的な使い方
2.4 ゲームオブジェクトってなに?
2.5 スクリプトをアタッチすると動き出す
Chapter3 スクリプトで動かそう
3.1 スクリプトって何?
3.2 「ずっと、水平に移動する」
3.3 「ずっと、回転する」
3.4 「ときどき、曲がる」
3.5 「ときどき、反転する」
Chapter4 キー入力と衝突判定
4.1 この章で作るスクリプト
4.2 「上下左右キーを押すと、移動する(スプライト)」
4.3 衝突の機能をアタッチする
4.4 「上下左右キーを押すと、移動する(リジッドボディ)」
4.5 「ずっと、追いかける」
4.6 「ずっと移動して、何かと衝突したら、反転する」
4.7 「何かと衝突したら、ゲームをストップする」
4.8 「何かと衝突したら、何かを表示する」
Chapter5 マウスでタッチしたものを調べる
5.1 衝突判定でマウスのタッチを調べる
5.2 「タッチしたら、消える」
5.3 「タッチしたら、ずっと回転する」
5.4 「タッチしたら、ルーレットのように回転して止まる」
5.5 オブジェクトの重なり順
Chapter6 アニメーション
6.1 AnimatorとAnimationって何?
6.2 パラパラマンガ
6.3 「キーを押すと、アニメーションを切り換える」
Chapter7 シーンを切り替える
7.1 シーンって何?
7.2 「タッチしたら、シーンを切り替える」
7.3 「衝突したら、シーンを切り換える」
Chapter8 プレハブでたくさん作る
8.1 プレハブって何?
8.2 「タッチしたら、プレハブが登場する」
8.3 「ある範囲にときどき、プレハブが登場する」
8.4 「時間が経ったら、自分を削除する」
Chapter9 重力を使う
9.1 重力って何?
9.2 「キーを押すと、移動& ジャンプ」
9.3 「キーを押すと、ものを出して投げる」
9.4 広いマップを作る
Chapter10 UI テキストでカウンター
10.1 UIって何?
10.2 UIテキストの作り方
10.3 カウンターを作る
10.4 何かが起こったら、カウントする
10.5 カウンターが○○になったら、○○する
Amazonで詳しく見る
紹介文
Apple標準のSwift言語とSpriteKitフレームワークによる2Dゲーム開発を学べる書籍。
SpriteKitは、iOSに標準で組み込まれている2Dゲーム開発用のフレームワークです。SpriteKitフレームワークを使うと、ゲームキャラクターや物体を表示して動かすスプライト処理や重力をシミュレートする物理シミュレーション処理、爆発などのエフェクトを実現するパーティクル処理など、2Dゲームで必要となる機能を簡単に作り込むことができます。
本書は、Apple標準のプログラミング言語SwiftとSpriteKitフレームワークを使って6つのゲームを作りながら、2Dゲームプログラミングの基本と定番テクニックを学ぶ書籍です。
さまざまな物体をタワー状に積んでいく積み上げゲーム、パックマン風のドットイートゲーム、Flappy bird風の横スクロールアクション、加速度センサによるジャンプ系ゲーム、AIを使ったリバーシなど、人気6ジャンルのゲームを作ります。このゲーム作りを通じて、Swift言語とSpriteKitフレームワークの基本に加えて、人気・定番2Dゲームの作り方とその開発技法を学びましょう。
第1章 ゲーム開発の準備
第2章 Swiftの基本
第3章 積み上げゲームを作ろう――SpriteKitの基本
第4章 横スクロールアクションゲームを作ろう――SKActionをつかいこなす
第5章 ピンボールゲームを作ろう――物理エンジンを極める
第6章 ジャンプゲームを作ろう――加速度センサーの利用
第7章 ドットイートゲームを作ろう――タイルを使ったマップ描画
第8章 リバーシを作ろう――AIの作り方
Amazonで詳しく見る
紹介文
5~7歳を対象にしたiPadアプリ「ScratchJr」を使った知育・育児本。タッチ操作で楽しくプログラミングが学べる。
5~7歳を対象にした、無料のiPadアプリ「ScratchJr」を使った知育・育児本です。
親子で楽しみながら、プログラミングが学べます。
ScratchJrを使った効果的なアクティビティ(学習体験)を通して、
アイデアを思い浮かべて、その実現方法を考えながら、
筋道を立てて考える力、実際に作り上げる力、周りの人と楽しむことを育みます。
デジタルツールを駆使しながら、積み木やブロックのような感覚で、
創造力や問題解決力を養いましょう。
●で始まるのがお子様と読むページ、
◎で始まるのがおうちのかたが読むページです。
●みんなへの めっせーじ
◎おうちのかたへ 著者からのメッセージ
●すくらっちじゅにあを はじめよう
・はじめまして
・すくらっちじゅにあで あそぶ じゅんび
・ねこちゃんを うごかそう
・じぶんの きゃらくたーを えがこう
・じぶんの きゃらくたーを うごかそう
・おうちの ひとや おともだちに みせよう
●すくらっちじゅにあを たのしもう
・はじめる じゅんび
・うみの なかの ようす
・なんでも たべよう
・あみだくじを つくろう
・じゃんぷげーむを つくろう
・うごくえほんを つくろう
●たのしかったね
●どんな ぶろっくが あるかな
◎ScratchJrをつくった人たちからのメッセージ
◎日本の専門家からのメッセージ
◎ちょっとだけピョンキー
◎ScaratchJrの動作環境とインストール
●ScratchJrで たくさん あそべたかな?
Amazonで詳しく見る
紹介文
プログラミング言語の定番である「C言語」と、ゲーム開発に欠かせない「DirectX」の機能を簡単に利用できる「DXライブラリ」を使いながら、RPG(ロールプレイングゲーム)を作っていきます。
プロジェクトを新規作成する
コードを入力してコンピュータに命令する
「DXライブラリ」を使えるようにする
ゲームを作る前に
RPG設計
マップ
「ヘッダ・ファイル」と「関数」
「キャラクター」を表示して動かす
イベント設定
BGM〔ほか〕
Amazonで詳しく見る
紹介文
現場の第一線で活躍するプロフェッショナルが、Unityによるゲーム作成のノウハウをまとめました。Part1で約70ページにわたってシンプルな3Dゲーム作成の基本を解説したのち、モバイルAR、UI実装、Editor拡張、負荷削減、絵作り、AIについてのノウハウを紹介します。どれも、ゲームを形にするだけでなく、製品レベルのものに仕上げるためには必須の知識です。各Partは独立しているので、気になる個所、知りたい個所から読み進められます。より効率的に、より高品質なゲーム作成に取り組みたい方にお勧めします。
■■Part1 Unityでシンプル3Dゲーム作成
■第1章 Unityのインストールとプロジェクトの作成
Unityの概要
インストール
プロジェクトの作成
■第2章 画面説明と基本操作
Unity内の各画面の説明
基本操作
今回作るゲームの説明
■第3章 3Dを配置しよう
シーンの作成
ステージの配置
3Dのキャラクターの配置31
■第4章 3Dキャラクターを操作しよう
スクリプトの作成
移動の実装
回転の実装
ユニティちゃんへのモーションの流し込み
■第5章 UI を配置しよう
Canvasの作成と設定
画像の追加と設定
クリア画像の配置
残りのチョコレート数の配置
「もう一度」ボタンの配置
■第6章 ゲームシステムを実装しよう①
アイテムのPrefabの作成
アイテムの配置
アイテムの取得
アイテムの残数テキストの更新
■第7章 ゲームシステムを実装しよう②
終了処理の実装
終了時に決めポーズを取らせる
■第8章 エフェクトで画面を盛り上げよう
エフェクトの作成と配置
スクリプトによるエフェクトの操作
■第9章 操作に合わせて音を鳴らそう
サウンドシステムの説明
SEの実装
ボイスの実装
BGMの実装
■第10章 ゲームのビルドと実行をしよう
ゲームのビルド
ゲームの実行
最後に
■■Part2 モバイルAR 開発の実践
■第1章 AR の概略と環境構築
AR とは
開発環境
ARFoundationを使ってAR 環境を構築
■第2章 モバイル端末(実機)でアプリを動かす
ビルド用モジュールのインストール
iOS・Android共通のビルド設定
Xcodeを用いて実機(iOS端末)にインストール
Android端末にアプリをインストール
■第3章 AR ゲームを作ってみよう
ゲームの概要
プラットフォーム依存コンパイル
平面に物体を置いてみる
ゴール設置
ボールを投げて地面で弾ませる
ゴールリングでボールを弾く
■第4章 AR ゲームを盛り上げてみよう
ゲームとして仕上げる
得点を表示する
エフェクトを付ける
得点時にアニメーションを再生する
■■Part3 現場で使えるUI 実装
■第1章 uGUI入門
はじめに
UI 表示の基礎
RectTransform ──オブジェクトの位置調整
深度制御──重なり順
■第2章 uGUIを便利に使う
はじめに
ボタン── Buttonの機能拡張
ドラッグ& ドロップ── uGUIにない機能の作成
スクロール── Scroll Rectの機能拡張
まとめ
■第3章 DOTweenでアニメーションを付ける
DOTweenの概要
移動
拡縮
変色
回転
そのほかの値の操作
Sequence
まとめ
■■Part4 Editor拡張で開発効率化
■第1章 Editor拡張とは
はじめに
より効率的に開発をするには
Editor拡張とは
GUILayoutとEditorGUILayout
このPartのゴール
■第2章 インスペクタを拡張して情報を見やすく
Attributeとは
Unity C# で用意されているAttribute
Attributeを自作する
■第3章 Editor拡張によるリソース整理の自動化
Unityのアセット管理方法
ウィンドウの作成と右クリックからの起動
選択したオブジェクトの取得
参照されているAssetを探す
GUID の比較
結果の表示
■第4章 Editor拡張によるC# リファクタリング
目指すところ
メニューに追加
すべてのPrefabの中を精査し、メソッド情報を確保
該当のメソッドを持つもののみ抽出
まとめ
■■Part5 Unityアプリの負荷削減
■第1章 基準とする端末の選定
基準とする端末の選び方
スペックの確認と比較
■第2章 負荷測定
FPS ──処理速度の目安
負荷の原因のジャンル分け
ジャンル別の処理時間計測
実機での処理時間計測
FPS が低下した場合
■第3章 CPU負荷削減
重い処理を探す
GetComponentの呼び出し
距離やベクトルの長さの計算
Animatorコンポーネント
画面内に映らないオブジェクト
FBXのOptimize
Physics.Raycast
ログの出力
ガベージコレクション
■第4章 GPU負荷削減
解像度の最適化
ライトと影の設定
ドローコールを減らす
より細かい負荷削減
負荷軽減をしても目標FPS に満たない場合
まとめ
■■Part6 3Dゲームのための絵作り
■第1章 Unityにおける絵作り
Unityにおける絵作りとは
絵作りを行うための主な要素
■第2章 材質の設定
Unityにおける材質の絵作りとマテリアル
マテリアルとシェーダー
マテリアルの作り方
マテリアルのパラメータと効果
そのほかの設定項目
■第3章 直接光の設定
Unityにおける光源とLight
Lightの作り方
Lightの種類や活用法
■第4章 間接光の設定
Unityにおける間接光
Skybox
環境光の設定
■第5章 影の設定
Unityにおける影の表現
Quality Settings
コンポーネントごとの影の設定
まとめ
■■UnityにおけるAI
ゲームAI の基本
NavMeshを使った経路探索
ビヘイビアツリーによるキャラクターの意思決定
Unityで機械学習を行うライブラリ「ML-Agents」
Amazonで詳しく見る
紹介文
人気のPython言語で、あのゲームのあの動きを実際に作って "アルゴリズム"を学ぶ!!
あのゲームのあの動きを
実際に作って "アルゴリズム"を学ぶ!!
【みんな知ってる スマホゲームや
レトロゲームの あの動きは!?】
《まずは作ってみる》
●撃つ・当たる・爆発する。シューティングゲームのあの動きは?
●逃げる・追いかける・先回りする。迷路のモンスターのあの動きは?
●狙い弾・n-way弾・誘導弾。弾幕ゲームのあの動きは?
●ジャンプ・ダッシュ・スクロール。アクションゲームのあの動きは?
●引っ張る・飛ばす・跳ね返る。スリングショットゲームのあの動きは?
いろいろな動きを実際に作ってみるからよくわかる。
Amazonで詳しく見る
紹介文
現役シリコンバレーエンジニアが教える「最強のプログラミング」講義!
10万人が選んだ人気No.1オンライン講座が
超わかりやすくパワーアップして書籍化!
海外企業でも通用する
一流のプログラミング技術が学べます!
★基礎から応用、一流コードスタイルまで1冊で学べる★
【応用編】ではニーズの高い実践的テクニックを中心に、
【入門編】では基礎から1歩ずつ、わかりやすく解説。
シリコンバレーのトップIT企業で活躍する著者が
世界標準のPythonスキルを一気に伝えます。
★海外でも通用する
一流のプログラミング技術が身につく★
知っていましたか?
アメリカのエンジニアの年収は日本の5~10倍です。
本書は「いつか海外で活躍したい」、
そんな夢の実現も強力にバックアップしてくれる
「海外進出の道しるべ」ともなる一冊です。
★10万人が選んだ人気No.1講座の書籍化★
本書のもととなったのは、オンライン講座Udemyで人気No.1を獲得したPython講座。
本格的な内容をわかりやすく伝える著者の講座は人気が高く、延べ20万人以上が受講しています(全講座計)。
本書はさらに内容を充実させてパワーアップ! 自分のペースでしっかり学べます。
独学の強い味方、「サンプルコード」の無料ダウンロードサービス付き。
★エンジニアの成功戦略も教えます★
コラムでは、エンジニアのキャリア戦略の立て方、成功するポイント、独学のコツなども紹介。
文系出身、TOEIC300点代からスタートした著者が渾身のエールを送ります。
★用語集、Pointなども充実★
コードを書くときの注意点、知っておきたい豆知識、
開発の現場で必要なことなどは
「Point」としてたっぷり掲載。
巻末には「用語集」も収録し、
徹底して実践的な内容となっています。
オンライン講座Udemyで9万人以上が選んだ人気No.1講座を完全書籍化! 超わかりやすくパワーアップして、基礎から応用、一流コードスタイルまで、世界で通用する「最強のプログラミング」が学べる!
学習を始める前に ~Pythonの環境設定
【入門編】
Lesson 1 Pythonの基本
1 変数の宣言と数値の計算をマスターしよう
2 文字列のさまざまな操作方法
Lesson 2 データ構造
1 複数データを並列にまとめる
2 変更できないリスト? いえ、タプルです
3 キーと値をセットで記憶する辞書型
4 データ同士の演算ができる集合
Lesson 3 制御フロー
1 読みやすいコードを書こう
2 条件に応じて処理を分岐させよう
3 繰り返し処理でデータを一気に処理しよう
Lesson 4 関数と例外処理
1 何度も実行する処理の関数を作ろう
2 関数の応用をマスターしよう
3 内包表記でリストをシンプルに生成しよう
4 変数の有効範囲
5 例外処理
Lesson 5 モジュールとパッケージ
1 作成したパッケージをインポートしよう
2 Pythonのライブラリの使い方
Lesson 6 オブジェクトとクラス
1 クラスとメソッド
2 クラスをもっと活用してみよう
Lesson 7 ファイル操作とシステム
1 ファイルの基本的な操作
2 ファイルの便利な活用方法
3 圧縮ファイルを扱おう
4 さらに高度なファイルに関する操作
【演習編】
Lesson 8 簡単なアプリケーションを作ってみよう
【応用編】
Lesson 9 コードスタイル
1 Pythonのコードスタイル
2 さらにくわしくPythonの書き方を知ろう
Lesson 10 コンフィグとロギング
1 設定ファイルのさまざまな形式
2 ロギングの基本と適切な書き方
3 ログをメールで送信しよう
4 実行環境を切り替えて使う
Lesson 11 Webとネットワーク
1 Webでよく使うファイル形式
2 Pythonで通信してみよう
3 PythonでWeb サーバーを作ろう
4 Webスクレイピングしてみよう
Lesson 12 並列化
1 マルチスレッドで並列化しよう
2 マルチプロセスによる並列化
3 高水準のインターフェースを使って並列化しよう
Lesson 13 データ解析
1 データ解析を始める前に
2 データをまとめて扱うnumpy
3 pandasで表形式のデータを扱う
4 matplotlibでグラフを描画する
5 scikit-learnで機械学習を行う
6 株価のデータ解析と予測
Amazonで詳しく見る
紹介文
第1章 イントロダクション-コンピュータが日常的に使っているすごいアイデアはどんなものか
第2章 検索エンジンのインデクシング-世界最大の藁山から針を探す
第3章 ページランク-グーグルを起ち上げたテクノロジー
第4章 公開鍵暗号法-葉書で機密情報を書き送る
第5章 誤り訂正符号-自分で誤りを訂正するシステム
第6章 パターン認識-経験から学ぶ
第7章 データ圧縮-無から有を生み出す
第8章 データベース-一貫性の追求
第9章 デジタル署名-このソフトウェアを本当に書いたのは誰か
第10章 決定不能性とはなにか
第11章 まとめ-指先の天才はもっと賢くなるか
Amazonで詳しく見る
紹介文
Unityのゲーム開発現場で最も使われた決定版書籍が、大幅バージョンアップして登場!
Unityのゲーム開発現場で最も使われた決定版書籍が、大幅バージョンアップして登場!
本書は、ゲーム開発で最も使われている「Unity」の入門や初級レベルを卒業した方向けの書籍です。
ゲームの開発現場で、即実践できるスキルが身につくように、「37」の最新のトピックを網羅しました。
本書には、第一線の現場で活躍している23名の著者陣が参加しており、ゲーム開発のノウハウやTipsが満載されています。またほとんどのトピックでは、サンプルゲームがダウンロードでき、実際に動かしながら、実践的に学んでいくことが可能です。
Unityでのゲーム開発のさまざまな場面で、すぐに役立つ1冊となっています。
■基本コンポーネント(5セクション)
Prefab/カメラワーク/TextMesh Pro/Particle System/NavMesh
■グラフィックス(4セクション)
Light 2D/URP/シェーダー言語/Timeline
■拡張コンポーネント(7セクション)
Terrain/2D Animation/Anmation Rigging/Visual Effect Graph/ShaderGraph/Bolt/Unity ML-Agents
■ネットワーク(3セクション)
Firebase/Photon/MLAPI
■リソース/IO/xR(4セクション)
AR/VR/サウンド/Genvid
■C#スクリプティング(7セクション)
DOTS/C# JobSystem/C#新機能/UniRx/Zenject/システム設計
■開発支援(7セクション)
Editor拡張/プロファイリング/テストフレームワーク/Addressable Assets/ビルド管理/動画広告
Amazonで詳しく見る
紹介文
初心者でも大丈夫!アプリ開発を体験してみよう!
Pythonで
デスクトップアプリ開発を
体験してみよう!
【初心者でもできる!デスクトップアプリ開発を一緒に体験しよう】
Pythonの基礎知識はあるけど、
「アプリ開発って初心者には難しそう」
「プログラムで何か残るものを作ってみたい」
と思っていませんか?
本書はそうした方に向けて、初心者にも簡単に作れる方法を使ってデスクトップアプリ開発の基本をやさしく解説します。スマホアプリ、Webアプリに比べて、手軽に取り組めますので挫折することなく学習できます。本書を読んだあとは、スマホアプリやWebアプリ開発に挑戦してみてください。
【Python2年生について】
「Python2年生」は、「Python1年生」を読み終えた方を対象とした入門書です。ある程度、技術的なことを盛り込み、本書で扱う技術について身につけてもらいます。
『Python2年生 スクレイピングのしくみ』(ISBN:9784798161914)
『Python2年生 データ分析のしくみ』(ISBN:9784798164960)
も刊行されています。
【対象読者】
デスクトップアプリの作り方を知りたい初心者
【本書のポイント】
ヤギ博士&フタバちゃんと一緒に、デスクトップアプリ開発の考え方から丁寧に解説。デスクトップアプリ開発をする時に必要な前提知識からはじまり、デスクトップアプリ作りの基本、応用的なデスクトップアプリ、そしてゲームアプリ開発まで解説します。
【著者プロフィール】
森 巧尚(もり・よしなお)
アプリの開発や、技術書や電子工作マガジンなどでの執筆活動。関西学院大学非常勤講師、関西学院高等部非常勤講師、成安造形大学非常勤講師、プログラミングスクールコプリ講師など、プログラミングに関する幅広い活動を行っている。近著に、『Python1年生 第2版』、『Python3年生機械学習のしくみ』、『Python2年生 スクレイピングのしくみ』、『Python2年生 データ分析のしくみ』、『Java1年生』、『動かして学ぶ!Vue.js開発入門』(いずれも翔泳社)、『楽しく学ぶ アルゴリズムとプログラミングの図鑑』(マイナビ出版)などがある。
第1章 Pythonでアプリを作ろう
LESSON 01 デスクトップアプリってなに?
LESSON 02 Pythonをインストールしよう
LESSON 03 tkinterでアプリを作ろう
LESSON 04 PySimpleGUIでアプリを作ろう
第2章 アプリ作りの基本
LESSON 05 アプリの作り方を理解しよう
LESSON 06 配色を選べるよ
LESSON 07 レイアウトで画面を作ろう
第3章 計算アプリを作ろう
LESSON 08 変数で文字列を作るなら、f文字列が便利
LESSON 09 割り勘アプリ
LESSON 10 BMI値計算アプリ
LESSON 11 出生の秘密アプリ
LESSON 12 干支調べアプリ
第4章 時計アプリを作ろう
LESSON 13 時間を測ろう
LESSON 14 時計アプリ
LESSON 15 ストップウォッチアプリ
LESSON 16 時間割アプリ
第5章 ファイル操作アプリを作ろう
LESSON 17 ファイルの読み書きをしよう
LESSON 18 テキストエディタアプリ
LESSON 19 画像を表示するアプリ
LESSON 20 画像の加工アプリ
LESSON 21 QRコードメーカーアプリ
第6章 ゲームアプリを作ろう
LESSON 22 おみくじアプリ
LESSON 23 じゃんけんアプリ
LESSON 24 足し算ゲームアプリ
LESSON 25 数当てゲームアプリ
LESSON 26 31ゲームアプリ
LESSON 27 これから先は、どうしたらいいの?
Amazonで詳しく見る
紹介文
ECMAScript2015によって、いっそう安全で便利な言語へと進化をつづけるJavaScriptのプログラミングスタイルを基礎から解説。手軽さゆえに油断しがちな正しい文法から、進化を遂げた新記法、オブジェクト指向構文、実際の開発に欠かせない知識まで身につけられます。
1 イントロダクション
2 基本的な書き方を身につける
3 基本データを操作する-組み込みオブジェクト
4 くり返し利用するコードを1箇所にまとめる-関数
5 大規模開発でも通用する書き方を身につける-オブジェクト指向構文
6 HTMLやXMLの文書を操作する-DOM(Document Object Model)
7 クライアントサイドJavaScript開発を極める
8 現場で避けて通れない応用知識
Amazonで詳しく見る
紹介文
データ分析の現場にあって入門書にない「汚いデータ」(ダーティデータ)に対応する、プロのノウハウを解説します。
これがリアルなデータ分析だ!
君は「汚いデータ」を処理できるか?
データ分析の現場にあって入門書にないもの――それは、「汚いデータ」(ダーティデータ)です。本書は、データ分析の現場では①どんなデータに出会い、②どのような問題が生じ、③どう対応すればよいのかというノウハウを解説。
事前の加工(視覚化)から機械学習、最適化問題まで、100本ノックをこなして、ビジネス現場で即戦力になれる「応用力」を身につけよう!
データ分析の現場にあって入門書にない「汚いデータ」(ダーティデータ)に対応する、プロのノウハウを解説します。
朝練 100本ノックに備えて準備運動を行いましょう。
序章 朝練
朝練1:Google Colaboratoryをつかってみよう
朝練2:プログラムを書いて実行してみよう
朝練3:変数を使ってみよう
朝練4:ライブラリを使ってみよう
朝練5:コードセルを分けて効率よくプログラミングをしよう
朝練6:本書のサンプルプログラムをGoogle Colaboratoryで動かしてみよう
朝練7:Google Driveからデータを参照してみよう
朝練8:絶対パスと相対パスについて
第1部 基礎編:データ加工
第1章 ウェブからの注文数を分析する10本ノック
ノック1:データを読み込んでみよう
ノック2:データを結合(ユニオン)してみよう
ノック3:売上データ同士を結合(ジョイン)してみよう
ノック4:マスターデータを結合(ジョイン)してみよう
ノック5:必要なデータ列を作ろう
ノック6:データ検算をしよう
ノック7:各種統計量を把握しよう
ノック8:月別でデータを集計してみよう
ノック9:月別、商品別でデータを集計してみよう
ノック10:商品別の売上推移を可視化してみよう
第2章 小売店のデータでデータ加工を行う10本ノック
ノック11:データを読み込んでみよう
ノック12:データの揺れを見てみよう
ノック13:データに揺れがあるまま集計してみよう
ノック14:商品名の揺れを補正しよう
ノック15:金額欠損値の補完をしよう
ノック16:顧客名の揺れを補正しよう
ノック17:日付の揺れを補正しよう
ノック18:顧客名をキーに2つのデータを結合(ジョイン)しよう
ノック19:クレンジングしたデータをダンプしよう
ノック20:データを集計しよう
第2部 実践編①:機械学習
第3章 顧客の全体像を把握する10本ノック
ノック21:データを読み込んで把握しよう
ノック22:顧客データを整形しよう
ノック23:顧客データの基礎集計をしよう
ノック24:最新顧客データの基礎集計をしてみよう
ノック25:利用履歴データを集計しよう
ノック26:利用履歴データから定期利用フラグを作成しよう
ノック27:顧客データと利用履歴データを結合しよう
ノック28:会員期間を計算しよう
ノック29:顧客行動の各種統計量を把握しよう
ノック30:退会ユーザーと継続ユーザーの違いを把握しよう
第4章 顧客の行動を予測する10本ノック
ノック31:データを読み込んで確認しよう
ノック32:クラスタリングで顧客をグループ化しよう
ノック33:クラスタリング結果を分析しよう
ノック34:クラスタリング結果を可視化してみよう
ノック35:クラスタリング結果をもとに退会顧客の傾向を把握しよう
ノック36:翌月の利用回数予測を行うための準備をしよう
ノック37:特徴となる変数を付与しよう
ノック38:来月の利用回数予測モデルを作成しよう
ノック39:モデルに寄与している変数を確認しよう
ノック40:来月の利用回数を予測しよう
第5章 顧客の退会を予測する10本ノック
ノック41:データを読み込んで利用データを整形しよう
ノック42:退会前月の退会顧客データを作成しよう
ノック43:継続顧客のデータを作成しよう
ノック44:予測する月の在籍期間を作成しよう
ノック45:欠損値を除去しよう
ノック46:文字列型の変数を処理できるように整形しよう
ノック47:決定木を用いて退会予測モデルを作成してみよう
ノック48:予測モデルの評価を行い、モデルのチューニングをしてみよう
ノック49:モデルに寄与している変数を確認しよう
ノック50:顧客の退会を予測しよう
第3部 実践編②:最適化問題
第6章 物流の最適ルートをコンサルティングする10本ノック
ノック51:物流に関するデータを読み込んでみよう
ノック52:現状の輸送量、コストを確認してみよう
ノック53:ネットワークを可視化してみよう
ノック54:ネットワークにノード(頂点)を追加してみよう
ノック55:ルートの重みづけを実施しよう
ノック56:輸送ルート情報を読み込んでみよう
ノック57:輸送ルート情報からネットワークを可視化してみよう
ノック58:輸送コスト関数を作成しよう
ノック59:制約条件を作ってみよう
ノック60:輸送ルートを変更して、輸送コスト関数の変化を確認しよう
第7章 ロジスティクスネットワークの最適設計を行う10本ノック
ノック61:輸送最適化問題を解いてみよう
ノック62:最適輸送ルートをネットワークで確認しよう
ノック63:最適輸送ルートが制約条件内に収まっているかどうかを確認しよう
ノック64:生産計画に関するデータを読み込んでみよう
ノック65:利益を計算する関数を作ってみよう
ノック66:生産最適化問題を解いてみよう
ノック67:最適生産計画が制約条件内に収まっているかどうかを確認しよう
ノック68:ロジスティクスネットワーク設計問題を解いてみよう
ノック69:最適ネットワークにおける輸送コストとその内訳を計算しよう
ノック70:最適ネットワークにおける生産コストとその内訳を計算しよう
第8章 数値シミュレーションで消費者行動を予測する10本ノック
ノック71:人間関係のネットワークを可視化してみよう
ノック72:口コミによる情報伝播の様子を可視化してみよう
ノック73:口コミ数の時系列変化をグラフ化してみよう
ノック74:会員数の時系列変化をシミュレーションしてみよう
ノック75:パラメータの全体像を、「相図」を見ながら把握しよう
ノック76:実データを読み込んでみよう
ノック77:リンク数の分布を可視化しよう
ノック78:シミュレーションのために実データからパラメータを推定しよう
ノック79:実データとシミュレーションを比較しよう
ノック80:シミュレーションによる将来予測を実施しよう
第4部 発展編:画像処理/言語処理
第9章 潜在顧客を把握するための画像認識10本ノック
ノック81:画像データを読み込んでみよう
ノック82:映像データを読み込んでみよう
ノック83:映像を画像に分割し、保存してみよう
ノック84:画像内のどこに人がいるのかを検出してみよう
ノック85:画像内の人の顔を検出してみよう
ノック86:画像内の人がどこに顔を向けているのかを検出してみよう
ノック87:検出した情報を統合し、タイムラプスを作ってみよう
ノック88:全体像をグラフにして可視化してみよう
ノック89:人通りの変化をグラフで確認しよう
ノック90:移動平均を計算することでノイズの影響を除去しよう
第10章 アンケート分析を行うための自然言語処理10本ノック
ノック91:データを読み込んで把握しよう
ノック92:不要な文字を除外してみよう
ノック93:文字数をカウントしてヒストグラムを表示してみよう
ノック94:形態素解析で文章を分割してみよう
ノック95:形態素解析で文章から「動詞・名詞」を抽出してみよう
ノック96:形態素解析で抽出した頻出する名詞を確認してみよう
ノック97:関係のない単語を除去してみよう
ノック98:顧客満足度と頻出単語の関係を見てみよう
ノック99:アンケート毎の特徴を表現してみよう
ノック100:類似アンケートを探してみよう
放課後練 さらなる挑戦
第11章 深層学習に挑戦する10本ノック
放課後ノック101:深層学習に必要なデータを準備しよう
放課後ノック102:深層学習モデルを構築しよう
放課後ノック103:モデルの評価をしてみよう
放課後ノック104:モデルを使った予測をしてみよう
放課後ノック105:物体検出YOLOを使って人の検出を行ってみよう
放課後ノック106:YOLOの学習を行うための準備をしよう
放課後ノック107:新たな学習データを使ってYOLOの学習モデルを生成してみよう
放課後ノック108:新たに学習させたモデルを使って人の検出を行ってみよう
放課後ノック109:YOLOとHOGの人の検出結果を比較して深層学習の精度を体感しよう
放課後ノック110:YOLOでの人以外の物体の検出のようすを確認しよう
第12章 データ加工に挑戦する10本ノック
放課後ノック111:“よくある”エクセルデータに挑戦
放課後ノック112:エクセルの社員マスタ加工に挑戦
放課後ノック113:正規化に挑戦
放課後ノック114:外れ値の加工に挑戦
放課後ノック115:欠損値の補完に挑戦
放課後ノック116:データのスクランブル化に挑戦
放課後ノック117:文字コードの自動判定に挑戦
放課後ノック118:センサーデータの加工に挑戦
放課後ノック119:JSON形式に挑戦
放課後ノック120:SQLiteに挑戦
付録
Appendix① データ結合とデータ正規化
Appendix② 機械学習
Appendix③ 最適化問題
Amazonで詳しく見る
紹介文
プログラミングは全く初めての人、他の入門書で挫折しちゃった人、つまづく所はみんな同じです。そこを徹底分析したメソッドで、全員ゴールに辿り着ける入門教室が秋葉原にあります。1日でWeb画面と簡単なDBまで作れるようになるとってもユニークな速習コース。その方法を1冊に凝縮した本書なら、いきなりの初心者でも、無理せず楽しくPHPとMySQLのエッセンスを習得できます。
1 なるほど!心の準備編-何から始めたらいいの?(とっても大切な心の準備!
挫折の落とし穴を跳び越えよう! ほか)
2 がんばろう!パソコン設定編-らくらく壁を跳び越えよう!(タダでサーバーを手に入れよう!
タダでテキストエディタを手に入れよう! ほか)
3 ワクワク!プログラミング編-プログラミングは楽しい!(30分で覚えるHTML!
初めてのPHPを体験しよう! ほか)
4 ドキドキ!データベース編-あなたにもデータベースができる!(データベースはこうなってる!
データベースの文字化け対策! ほか)
Amazonで詳しく見る
紹介文
こんどはデータ分析に挑戦!「数式一切なし」で理解できちゃう!データ分析のきほんとしくみ
Pythonでデータ分析を体験してみよう!
【データ分析を一緒に体験しよう】
スクレイピングなどで集めた大量のデータ。
どうやって分析してたらよいか、困っていませんか?
「数式があって難しそう」
「プログラムも大変そう」
と思っている方も多いはず。
本書は、そうした方に向けて、サンプルを元にやさしく
データ分析の方法を解説しています。
【Python2年生について】
「Python2年生」は、「Python1年生」を読み終えた方を対象とした入門書です。
ある程度、技術的なことを盛り込み、本書で扱う技術について身に着けてもらいます。
『Python2年生 スクレイピングのしくみ』(ISBN:9784798161914)も刊行されています。
【対象読者】
・データの分析方法を知りたい初心者
【本書のポイント】
ヤギ博士&フタバちゃんと一緒に、データ分析の考え方から丁寧に解説。
データを分析する時に必要な前処理の方法や、データの集まりの見方、
データを見やすいグラフにする方法、データの分布の見方、予測の立て方を
解説する書籍です。
【著者プロフィール】
森 巧尚(もり・よしなお)
アプリの開発や、技術書や電子工作マガジンなどでの執筆活動。関西学院大学非常勤講師、
関西学院高等部非常勤講師、成安造形大学非常勤講師、プログラミングスクールコプリ講師など、
プログラミングに関する幅広い活動を行っている。
近著に『Python1年生』、『Python2年生 スクレイピングのしくみ』、
『Java1年生』、『動かして学ぶ!Vue.js開発入門』(いずれも翔泳社)、
『楽しく学ぶ アルゴリズムとプログラミングの図鑑』(マイナビ出版)などがある。
第1章 データ分析って何?
LESSON 01 データ分析って何
LESSON 02 データ分析の手順:PPDACサイクル
LESSON 03 Jupyter Notebookをインストールしよう
LESSON 04 Jupyter Notebookの使い方
第2章 集めたデータは前処理が必要
LESSON 05 表データを読み込もう
LESSON 06 データをざっくりと眺める
LESSON 07 データのどこを使う?
LESSON 08 データのミスをチェックする
第3章 データの集まりをひとことでいうと?:代表値
LESSON 09 データを平らに均(なら)す
LESSON 10 平均値を代表といっていいの?
LESSON 11 平均値が同じなら、同じといっていいの?
第4章 図で特徴をイメージしよう:グラフ
LESSON 12 データのばらつきがわかる
LESSON 13 基本的なグラフを作ろう
LESSON 14 ばらつきのわかるグラフ
LESSON 15 グラフをわかりやすく調整する
第5章 これって普通なこと?珍しいこと?:正規分布
LESSON 16 データのばらつきを数値で表す
LESSON 17 自然なばらつき
LESSON 18 この値は普通なこと?珍しいこと?
LESSON 19 このデータは自然なばらつき?
LESSON 20 違うばらつきのデータでの比較ができる
第6章 関係から予測しよう:回帰分析
LESSON 21 2種類のデータの関係性の強さ:相関係数
LESSON 22 散布図の上に線を引いて予測
LESSON 23 総当たりで表示させる散布図
LESSON 24 アヤメのデータを見てみよう
Amazonで詳しく見る
紹介文
Pythonプログラミングを全力で学ぶならこの1冊!Pythonをこれから学ぶビギナーから、基礎力を得て現場で実践したい方まで、確実なスキルアップをはかれます。
1 準備:Python3をはじめよう(Python3の準備
プログラムを試してみよう)
2 基礎:Pythonの基本構文を学ぶ(値と変数
標準ライブラリ
条件分岐、繰り返し、例外処理
リスト
タプル
セット(集合)
辞書
ユーザ定義関数
関数の高度な利用
クラス定義)
3 応用:科学から機械学習まで(テキストファイルの読み込みと書き出し
グラフを描く
NumPyの配列
機械学習を試そう)
Amazonで詳しく見る
紹介文
プログラミングを勉強してみたけれど、なかなかうまくいかない。
プログラミングに漠然と興味があるけれど何からはじめていいのかわからない。
Progateなどの入門サイトで試してみたけれど、その後何をしたらいいかわからない。
そんなことを思っている方は多いのではないでしょうか?
独学でプログラミングをマスターするためには、実は最も大切なものがあります。
それが、学習方法です。
本書では、プログラミングの参考書を買う前に読んで欲しいプログラミングの学習方法をお伝えしていきます。
受験勉強や資格獲得、語学をマスターするためなどの勉強でこのような経験はないでしょうか?
毎日ひたすら勉強しているのに、まったく成績が上がらない。
他の人と比べて、知識が身につくのが遅い。
これらも全て、学習方法が原因なのです。
かつて僕も、がむしゃらに勉強をしていた時期がありました。
しかし、全く知識が身につかず、結局あきらめてしまったことも多かったです。
しかし、学習方法を改善してからは、知識がすんなり身につくようになったのです。
本書では、これからプログラミングを始める方のために、その学習方法をご紹介します。
またプログラミングを使って作りたいモノ別に、おすすめの学習ルートも紹介しています。
これからプログラミングを始める方、プログラミングを勉強中だけれど、身についているか実感がなく不安に思っている方、にぜひ読んでいただきたい内容となっています。
本書は、学習方法を知らないがゆえにプログラミングを断念してしまう人すべての人を救うために作られました。
そして本書が、一人でも多くの人がプログラミングというスキルを身につけ、自分の武器とするための道しるべとなれば嬉しいです。
第1章 プログラミングがなぜ注目されているのか?
1 IT技術者の需要が高まっている
2 世界は機械化している
3 プログラミング教育が世界で必修化されている
4 課題を解決するための新しい力が求められている
5 プログラミングは自己実現のための最強の武器
第2章 プログラミングって一体なんなのか?
1 プログラミングってそもそも何?
2 プログラミングの知識が必要な職業は?
3 60%の人間にはプログラミングの素質がない?
4 プログラミングで何ができるか
5 プログラミングでできる身近な事例
第3章 プログラミングができるようになるための9つの学習ステップ
1 プログラミングを学ぶ目的を作る
2 自己評価を上げる
3 作りたい目標を決める
4 作りたい物のための知識を得る
5 写経の次は改造して遊ぶ
6 得た知識を組み合わせて作品を作る
7 作品を公開して改善する
8 人に教える
9 インターリーブで学習をより効率的にする
Interlude 誰もやったことがないことが無限にある!
第4章 作品別プログラミング学習ルート
1 Webページを作ろう
2 Webアプリケーションを作ろう
3 作業自動化ツールを作ろう
4 ゲームを作ろう
5 AI(人工知能)を作ろう
6 スマホアプリを作ろう
7 VR・ARを作ろう
8 暗号資産(仮想通貨)を作ろう
第5章 <応用編>テーマ別プログラミング学習法まとめ
1 チーム開発手法
2 プロジェクト管理
3 デバッグ
4 設計
5 セキュリティ
6 サーバ
7 データベース
8 美しいプログラム
9 アルゴリズム
10 コンピュータサイエンス
第6章 プログラミングを楽しく体験してみよう
1 CodeMonkey
2 Hour of CodeのMineCraft
3 CODE COMBAT
第7章 プログラミングコンテストに参加してみよう
1 プログラミングコンテストに参加するメリット
2 国内の有名なプログラミングコンテスト
第8章 ハッカソンに参加してみよう
1 ハッカソンに参加するメリット
2 国内の有名なハッカソン一覧
Amazonで詳しく見る
紹介文
Scratch3.0対応。15の作例を紹介した入門書。タブレットでの遊び方やmicro:bit連携作品も紹介。
Scratch3.0で、楽しくプログラミングを学ぼう
Scratchは、米国MITによって開発された教育用プログラミング環境です。2019年1月に3.0にバージョンアップされ、見た目の変更や新機能が追加。スマホやタブレット対応、外部サービスとの連携など、ますます楽しく使いやすくなりました。
この本のテーマは「遊べて使えるScratch」です。福笑いやトントン相撲といった昔ながらのゲームから、イマドキの写真加工風アプリまで、Scratchで再現してみました。紹介するのは全15作品。教育用コンピューター・micro:bitとつなげてあそぶ作品も紹介します。「Scratchでこんなこともできるんだ!」というおどろきがいっぱいです。
この本を書いたのは、長年子どもたちとScratchプログラミングに取り組んできた実力者、倉本大資さんと和田沙央里さん。Scratchプログラミングが初めての人でも大丈夫。つくりながら、プログラミングの基本を学んでいきましょう!
〈ここがポイント!〉
●PCだけでなくスマホ・タブレットならではの作例・micro:bit連携など、Scratch3.0の最新機能を遊びつくせる!
●難易度がさまざまな15作例。Scratchコミュニティでよく見る作品もつくれるかも?
●注目の教育用コンピューター・micro:bitに連携してできる遊びを3作品収録。micro:bitを始めてみたい方にも最適
●遊びながら、プログラミング用語や基本操作が学べる
●共有・リミックスOK! ダウンロードして使えるオリジナル素材つき
〈こんな人におススメ〉
●プログラミングをはじめてみたい人
●親子で一緒に学んでみたい人
●子どもにプログラミングを教えてみたい人
●Scratchを少し触ったことがあるけど、もっと楽しんでみたい人
●Scratchとmicro:bitをつなげてあそびたい人
※対象年齢:11歳~
〈推薦のことば〉
●村井 裕実子 氏(マサチューセッツ工科大学(MIT)メディアラボ 博士研究員)「アイデアの幅を広げてくれる、ポップで楽しいあっと驚くようなプロジェクトであふれている本。ここから、あなただけのプロジェクトをはじめましょう」
●阿部 和広 氏(青山学院大学大学院 社会情報学研究科 特任教授)
「この本には、画面の中だけでなく、現実の世界に飛び出したアイデアがのっています。これからの世の中は、中とか外とか気にしなくてよくなるかもしれないですね。そんな新しい世界で暮らすための良いガイドになるでしょう」
■0 Scratchを使う準備をしよう
・Scratchのサイトにアクセスしよう
・Scratchのアカウントを作成しよう
■1 プレゼントを贈ろう
1-1 手づくりメッセージカード
1-2 ケーキシミュレーター
1-3 誕生日ボイスメッセージ
1-4 ラッピング用包装紙
■2 便利なツールをつくろう
2-1 みんなで使える伝言メモ
2-2 お料理レシピブック
2-3 おもしろ写真加工アプリ
2-4 スコアボード
■3 テーブルゲームであそぼう
3-1 Scratch福笑い
3-2 2人でハマる!○×ゲーム
3-3 ハラハラ危機一髪ゲーム
3-4 指のバトル!トントン相撲
■4 micro:bitとつなげよう
4-0 Scratchとmicro:bitをつなげよう
4-1 フリフリおみくじ占い
4-2 ジャンプでキャッチゲーム
4-3 崖っぷち!アクションゲーム
■【学ぼう!コラム】
・Scratchブロックの扱い方
・スプライトとステージ
・メッセージ
・x座標・y座標
・ペイントエディター
・演算ブロック
・コスチュームや背景の追加
・変数・リスト
・関数(ブロック定義)
・クローン
・タブレット・スマホ対応
Amazonで詳しく見る
紹介文
“標準教科書”が完全書き下ろしで11年ぶり新登場! Javaプログラミングに必要な知識・概念・機能を体系的かつ網羅的に習得!
“標準教科書”が完全書き下ろしで11年ぶり新登場!
Javaプログラミングに必要な知識・概念・機能を体系的かつ網羅的に習得!
Java言語の独学に最適な標準教科書として、長年にわたって読まれてきた『独習Java』。プログラミング言語入門書の執筆で定評のある山田祥寛氏による完全書き下ろしで新登場です!
独習シリーズの強みである、手を動かしておぼえる(書いて実行して結果を確認する)特長を生かし、Java開発で必要となる基本的な言語仕様から、標準ライブラリ、コレクション、オブジェクト指向、ラムダ式/Stream API、スレッド、マルチスレッド処理、アノテーション、モジュールまで、サンプルプログラムを例示しながら詳細かつ丁寧に解説します。
プログラミングの基礎知識がない方でも、解説→例題(サンプル)→理解度チェックという3つのステップで、Javaの文法を完全習得できます。
[ポイント]
●Java言語の独学に最適な教科書として好評の『独習Java』最新版。初心者がJava言語を学ぶにふさわしい一冊
●Javaでプログラミングを行う際に必要となる基本的な知識・概念・機能、文法・書き方を、網羅的かつ体系的に習得できる
Java言語の入門者、これからJava言語で開発を始めたい初学者から、再入門者、学生・ホビープログラマまで、
「一からJava言語を学びたい」「Javaプログラミングの基本をしっかり身につけたい」という方におすすめの一冊です。
●第1章 イントロダクション
1.1 Javaとは?
1.2 Javaアプリを開発/実行するための基本環境
1.3 Javaプログラミングの基本
●第2章 Javaの基本
2.1 変数
2.2 データ型
2.3 リテラル
2.4 型変換
2.5 参照型
●第3章 演算子
3.1 算術演算子
3.2 代入演算子
3.3 関係演算子
3.4 論理演算子
3.5 ビット演算子
3.6 演算子の優先順位と結合則
●第4章 制御構文
4.1 条件分岐
4.2 繰り返し処理
4.3 ループの制御
●第5章 標準ライブラリ
5.1 ラッパークラス
5.2 文字列の操作
5.3 正規表現
5.4 日付/時刻の操作
5.5 ストリーム
5.6 その他の機能
●第6章 コレクションフレームワーク
6.1 コレクションフレームワークの基本
6.2 リスト
6.3 セット
6.4 マップ
6.5 スタック/キュー
●第7章 オブジェクト指向構文―基本
7.1 クラスの定義
7.2 フィールド
7.3 メソッド
7.4 変数のスコープ
7.5 コンストラクター
7.6 クラスメソッド/クラスフィールド
7.7 引数/戻り値の様々な記法
7.8 パッケージ
●第8章 オブジェクト指向構文―カプセル化/継承/ポリモーフィズム
8.1 カプセル化
8.2 継承
8.3 ポリモーフィズム
●第9章 オブジェクト指向構文―入れ子のクラス/ジェネリクス/例外処理など
9.1 Objectクラス
9.2 例外処理
9.3 列挙型
9.4 入れ子のクラス
9.5 ジェネリクス
●第10章 ラムダ式/Stream API
10.1 メソッド参照/ラムダ式
10.2 Stream API
●第11章 高度なプログラミング
11.1 マルチスレッド処理
11.2 アノテーション
11.3 モジュール
●付録A 「練習問題」「この章の理解度チェック」解答
Amazonで詳しく見る
紹介文
まいぜんシスターズと一緒にゲーム感覚でプログラミングを理解できちゃう!
絶大な人気を集めるYouTuberコンビ「まいぜんシスターズ」が、プログラミング的思考を楽しく教えてくれる最強のガイドブックがついに登場!
まじめな「ぜんいち」とゆかいな「マイッキー」といっしょに、楽しくて心温まる大冒険にくり出そう!
みんなの大好きなエピソードを読み進めながら、途中にあらわれる問題をクリアしていくことで、2020年から小学校で必修となった「プログラミング学習」の基本をマスターできます。
●パソコンやスマートフォンがなくても、プログラミングの考え方がスラスラとわかるようになります。
●自由研究のアイデア探しにも最適! 「つくってみよう!」のコーナーでは、遊びながらプログラミング的思考を学べるゲームなどを自分でつくれます。
●「プログラミング学習って、一体何?」という保護者の方も、お子さまと一緒に楽しみながら基本を理解できます。
チャンネル登録者数110万人超! 絶大な人気を集めるYouTuberコンビ“まいぜんシスターズ”初のプログラミング入門書。パズル、謎解きなどワクワクする内容でプログラミングの基礎を学べます。
●1章 プログラミングの基本は「順次」「反復」「条件分岐」ぜんいちVSマイッキー マイクラでバトル!
●2章 「変数」「配列」「関数」をマスターしよう 友とMAGIC
●3章 「アルゴリズム」で問題解決! ぜんいち&マイッキー マイクラで遊ぼう
●4章 プログラミングがもっとわかる! 家族再会
Amazonで詳しく見る
紹介文
第1章 C言語でゲームを作ろう-C言語の紹介と開発環境
第2章 C言語のキホン-ソースコードの入力から関数の作成まで
第3章 DXライブラリのキホン-リアルタイム描画とユーザー入力
第4章 RPG風のアクションパズルを作ろう-2次元配列を使ったマップ作成
第5章 横スクロールアクションゲームを作ろう-大きなマップ上でのアクション
第6章 3Dダンジョン探検ゲームを作ろう-疑似3D表示とセリフデータの読み込み
Amazonで詳しく見る
紹介文
いちばん売れているRuby入門書の決定版。
初版から17年。改訂とともに変化しながら、ずっと読まれ続けている定番書です。
第6版では、最新のバージョンに対応。
プログラミング初心者でも読み解けるように、
チュートリアル、基礎、クラス、実践とテーマを切り分けて、平易に解説。
Rubyの基礎から応用までがわかる一冊。
第1部 Rubyをはじめよう
第2部 基礎を学ぼう
第3部 クラスを使おう
第4部 ツールを作ってみよう
Amazonで詳しく見る
紹介文
Webとプログラミングの根幹を知ることで、長く使える基礎力を身に付けよう!
ロングセラーが8年ぶりに全面改訂!
「これからWebプログラミングを学んでみたい」、
「色々なプログラミング言語に通用するような知識が欲しい」。
そんな風に思っている方にぴったりの1冊です。
本書では、例としてPHPやJavaScriptを取り上げながら、様々なプログラミング言語に共通する基本を学習していきます。言語によって少しずつ用語や特徴は違っていますが、根幹を理解しておくことで、新しい言語も短期間で身につけることができるでしょう。
また本書では、インターネットの仕組みや、Webページがコンテンツを表示する仕組み、Cookieやセッション、フレームワークやライブラリ、データベースといった技術に関しても、包括的にまとめています。
プログラムに関係する一連の仕組みもちゃんと理解することで、しっかりとした長く使える知識を身につけることができます。
今回の改訂版では、内容をすべて現状に合わせて見直し、変更したほか、チーム開発やコンテナなど、近年の開発環境・体制を説明する章を追加しました。
(以下本書より抜粋・編集)
Chapter1からChapter3では、インターネットやWebの仕組みを説明します。Webプログラムを作って動かすには、そもそも、それが動作するWebサーバが必要です。実際にインターネット上にWebプログラムを置く場合、Webサーバは、どのような環境のものを用意し、どこに構築すればよいのか、その要件も説明します。
Chapter4とChapter5では、プログラミングの基本的な話をします。
この2つの章は、実際に、簡単に試せる構成にしました。
Chapter4では、「XAMPP」というWebプログラムを実行できる環境をインストールし、PHPを使ってプログラムする方法を説明します。Chapter5では、PHPを題材に、実際に簡単なWebプログラムを示しながら、プログラムの基本的な流れと構文を説明します。
言語はPHPですが、ここで扱う内容は、文法の差こそあれ、どのようなプログラミング言語にも通用するものです。
Chapter6以降は、応用です。実際のWebプログラム開発の現場では、どのような技術が使われているのか、そのトレンドを紹介します。
Chapter6では、省力化できるライブラリや操作性を向上させるJavaScriptの扱い方を説明します。Chapter7では、ショッピングサイトで「カゴの中身」を実現するのに不可欠な、Cookieの仕組みを説明します。
そしてChapter8では、データベースの使い方を説明します。最後のChapter9では、開発ツールやチーム開発、そして、ユーザー体験を向上させるいまどきのプログラミングの作り方など、実際に仕事で開発する場面で必要となる情報をまとめました。
Chapter 1 WebブラウザでWebページが表示される仕組み
Chapter 2 WebサーバからWebブラウザにコンテンツが届くまで
Chapter 3 Webプログラムがコンテンツを作る仕組み
Chapter 4 Webプログラムを動かしてみよう
Chapter 5 Webプログラミングをしてみよう
Chapter 6 ライブラリやJavaScriptを使ったプログラミング
Chapter 7 ユーザー情報を保存するCookieとセッション情報、Web Storage
Chapter 8 データベースを使ったプログラミング
Chapter 9 いまどきのプログラミング
Amazonで詳しく見る
紹介文
今やパソコンでも家庭用ゲーム機でも「オンラインゲーム」が人気です。対戦相手がいつでもすぐに見つかる、料金が安い、といったあたりが人気の秘密でしょうか?本書ではそのオンラインゲームの作り方を説明します。付属DVDには、無料の開発環境(マイクロソフト製)を収録。
第1章 C言語とオンラインゲーム-開発環境のインストール
第2章 C言語の文法をおさらいしよう-Visual Studioの使い方とC言語の基礎知識
第3章 DXライブラリでアクションゲームを作ろう-ゲーム作りの基礎知識
第4章 オンラインゲームの基本-ゲームサーバを利用したチャットソフト
第5章 五目並べゲームを作ろう-非リアルタイムの対戦ゲーム
第6章 対戦落ちものゲームを作ろう-リアルタイムの対戦ゲーム
Amazonで詳しく見る
紹介文
データ収集の基本!スクレイピングを体験してみよう!
Pythonでスクレイピングを体験してみよう!
【スクレイピングとは】
機械学習やデータ分析になくてはならない「データ」。
このようなデータは、インターネット上に膨大にありますが、Pythonを使えば効率よくデータ収集できます。
こうした手法を「スクレイピング」といいます。
サイト自体もオープンデータ化が進んでおり、データを集めやすい環境が整ってきています。
【Python2年生について】
「Python2年生」シリーズは、「Python1年生」を読み終えた方を対象とした入門書です。
ある程度、技術的なことを盛り込み、本書で扱う技術について身に着けてもらいます。
【ターゲット】
・ネット上からデータ収集を行う初心者
・データ分析の手前の初心者
【本書の売り】
ヤギ博士&フタバちゃんと一緒に、インターネットからのファイルのダウンロード方法、
HTML解析の方法、いろいろなデータの読み書き、
APIの使い方といったデータ収集と便利なライブラリを利用した簡単な可視化手法を解説する書籍です。
また最終的にデータ収集を自動化する方法も簡単に解説します。
第1章 Pythonでデータをダウンロード
LESSON 01 スクレイピングってなに?
LESSON 02 Pythonをインストールしてみよう
LESSON 03 requestsでアクセスしてみよう
第2章 HTMLを解析しよう
LESSON 04 HTMLを解析してみよう
LESSON 05 ニュースの最新記事一覧を取得してみよう
LESSON 06 リンク一覧をファイルに書き出そう
LESSON 07 画像を一括ダウンロードしよう
第3章 表データを読み書きしよう
LESSON 08 pandasを使ってみよう
LESSON 09 さまざまなデータの加工
LESSON 10 グラフで表示してみよう
LESSON 11 Excelファイルを読み書きしてみよう
第4章 オープンデータを分析してみよう
LESSON 12 オープンデータってなに?
LESSON 13 郵便局:郵便番号データ
LESSON 14 e-Stat:政府統計の相互窓口
LESSON 15 キッズすたっと:探そう統計データ
LESSON 16 自治体のデータ:データシティ鯖江
第5章 Web APIでデータを収集しよう
LESSON 17 Web APIってなに?
LESSON 18 OpenWeatherMapってなに?
LESSON 19 現在の天気を調べよう
LESSON 20 現在から5日間(3時間ごと)の天気を調べよう
Amazonで詳しく見る
紹介文
無数の同時接続×ミリ秒のレイテンシ、いかにして両立させるのか。ゼロからオンラインゲームを作り上げるために必要とされる基礎知識を徹底解説。
第0章 速習オンラインゲームプログラミング-ネットワーク×ゲームプログラミングの技術基礎
第1章 オンラインゲームの歴史と進化-ゲームが「ネットワーク」を取り込んだ!
第2章 オンラインゲームとは何か?-さまざまな角度から見る「オンラインゲーム」
第3章 オンラインゲームのアーキテクチャ-ゲームのおもしろさ×技術的な制約との戦い
第4章 実践C/S MMOゲーム開発-常時稼働するゲームサーバの存在
第5章 実践P2P MOゲーム開発-専用サーバなしでアクションゲームを実装する
第6章 オンラインゲームの補助的システム-サービス強化に欠かせないしくみ
第7章 オンラインゲーム運営を支えるインフラ-構築、負荷テスト、運営開始
第8章 オンラインゲームの開発体制-チーム運営上の課題
Amazonで詳しく見る
紹介文
入門書のベストセラーが最新トレンドに対応
累計10万部のベストセラーが、現代のトレンドに対応して大改訂!
1つのストーリーに沿ってWebサイト作りとHTML&CSSの基本がスラスラ学べる、入門書の決定版!
第3版では現代のトレンドにあわせて制作するサイトを一新。PC・モバイル端末に対応したサイト作りの全手順を、図入りでとことん丁寧に解説しています。
これからWeb制作を始める人にも、HTML・CSSを学び直したい人にもおすすめの、充実の内容です!
最新のHTML Living Standardに準拠。Windows/Mac対応。
Chapter01 Webサイト制作を始める前に
01 Webサイトとその構成要素
02 Webブラウザの機能と種類
03 Webサイトを公開するまで
04 制作に使うアプリのインストール
Chapter02 HTMLの基礎
01 HTMLはWebページを制作するための言語
02 HTMLの基本的な書式
03 親子、子孫、兄弟 ~HTMLの階層関係
Chapter03 制作の準備と基本のHTML
01 Webサイト制作の準備
02 すべてのページに共通するHTMLタグ
Chapter04 テキストの表示
01 見出し
02 段落
03 番号なしリスト(非序列リスト)
04 要素のグループ化
05 コメント文
06 ヘッダーにナビゲーションを設置
07 キーボードで入力しにくい文字の表示
08 テーブル(表)
Chapter05 リンクと画像の挿入
01 サイト内リンクと相対パス
02 外部サイトへのリンクと絶対パス
03 ページ内リンク
04 画像の挿入
05 画像+リンク
Chapter06 CSSの基礎
01 HTMLの「見た目」を整えるCSS
02 CSSの基本的な書式
03 主なセレクタと書き方
04 CSSを書く場所
05 CSSファイルの作成とHTMLとの関連付け
Chapter07 テキストのスタイル、背景色、ボックスモデル
01 CSSのコメント
02 ページ全体のフォントやテキストの設定
03 個別のテキストのスタイル変更
04 リンクテキストのスタイル
05 テキストと画像の行揃え
06 背景色の設定
07 ボックスモデル① マージンとパディング
08 ボックスモデル② ボーダー
09 メインコンテンツを中央揃えに
10 画像の伸縮
Chapter08 スタイルの上書き、フレックスボックス、テーブルの整形
01 スタイルの上書き
02 繰り返す背景画像
03 デフォルトCSSの調整 ~リストの「・」をなくす
04 ナビゲーションを横に並べる
05 繰り返さない背景画像
06 背景画像の表示方法を調整
07 テーブルの整形
Chapter09 2ページ目以降のHTMLとグリッドレイアウト
01 ホームページ以外のファイルを作成
02 各ページにヒーロー画像を表示する
03 番号付きリスト ~アクセスページのHTMLを編集
04 メニューページのHTMLを編集
05 メニューページのスタイルを設定
Chapter10 フォームを使うページの作成
01 フォームの基礎知識
02 お問い合わせページの概要
03 フォーム全体の親要素
04 セレクトリスト
05 ラジオボタンとチェックボックス
06 テキストフィールド
07 テキストエリア
08 送信ボタン
09 ラベル
10 フォームのスタイル
11 送信ボタンのスタイル
Chapter11 モバイル端末に対応する
01 レスポンシブデザイン
02 ビューポートの設定
03 メディアクエリとブレイクポイント
04 ナビゲーションを調整
05 メインコンテンツの左右にスペースを作る
06 ホームページのヒーロー画像のサイズを調整
07 メニューページの列数を変更
Chapter12 Webサイトを公開する
01 Webサイト公開までの準備
02 Webサーバーに接続
03 ファイルのアップロード
04 Webサイトの最終確認
Amazonで詳しく見る
紹介文
2010年の刊行から約100,000部の実績を誇るロングセラーを、ECMAScript 2022に対応した内容で200ページ増の大幅改訂。最新の基本文法から、開発に欠かせない応用トピックまで解説します。JavaScriptらしく書くために大切なオブジェクトの扱い方や、大規模開発でさらに実用的になったオブジェクト指向構文を学び、しっかりと動くプログラムの作り方を本質から理解できます。
Chapter 1 イントロダクション
1.1 JavaScriptとは?
1.1.1 JavaScriptの歴史
1.1.2 復権のきっかけはAjax、そしてHTML5の時代へ
1.1.3 JavaScriptライブラリからフレームワークの時代へ
1.2 標準JavaScript「ECMAScript」とは?
1.2.1 ECMAScriptのバージョン
1.2.2 ECMAScript仕様策定の流れ
1.2.3 ブラウザーの対応状況
1.3 JavaScript実行環境のもう1つの選択肢 Node.js
1.3.1 Node.jsとは?
1.3.2 実行環境によって利用できる機能は異なる
1.4 JavaScriptアプリを開発/実行するための基本環境
1.4.1 準備すべきソフトウェア
1.4.2 Visual Studio Codeのインストール
1.4.3 サンプルファイルの準備
1.5 ブラウザー付属の開発者ツール
1.5.1 開発者ツールを概観する
1.5.2 HTML/CSSのソースを確認する -[要素]タブ
1.5.3 通信状況をトレースする -[ネットワーク]タブ
1.5.4 スクリプトをデバッグする -[ソース]タブ
1.5.5 ストレージ/クッキーの内容を確認する -[アプリケーション]タブ
1.5.6 ログ確認/オブジェクト操作などの万能ツール -[コンソール]タブ
Chapter 2 基本的な書き方を身につける
2.1 JavaScriptの基本的な記法
2.1.1 JavaScriptで「こんにちは、世界!」
2.1.2 文字コードのルール
2.1.3 JavaScriptをHTMLファイルに組み込む - script要素
2.1.4 文(Statement)のルール
2.1.5 コメントを挿入する
2.2 変数
2.2.1 変数を宣言する
2.2.2 識別子の命名規則
2.2.3 よりよい命名のための指針
2.2.4 定数を宣言する
2.3 データ型
2.3.1 データ型の分類
2.3.2 論理リテラル(boolean)
2.3.3 数値リテラル(number)
2.3.4 文字列リテラル(string)
2.3.5 配列リテラル(array)
2.3.6 オブジェクトリテラル(object)
2.3.7 関数リテラル(function)
2.3.8 未定義値(undefined)とヌル値(null)
Chapter 3 値の演算操作を理解する - 演算子
3.1 演算子とは?
3.2 算術演算子
3.2.1 加算演算子(+)
3.2.2 インクリメント演算子(++)とデクリメント演算子(--)
3.2.3 小数点を含む演算には注意
3.3 代入演算子
3.3.1 基本型と参照型による代入の違い -「=」演算子
3.3.2 定数は「再代入できない」
3.3.3 分割代入(配列)
3.3.4 分割代入(オブジェクト)
3.4 比較演算子
3.4.1 等価演算子(==)
3.4.2 厳密な等価演算子(===)
3.4.3 小数点数の比較
3.4.4 条件演算子(?:)
3.5 論理演算子
3.5.1 ショートカット演算(短絡演算)
3.6 ビット演算子
3.6.1 ビット論理演算子
3.6.2 ビットシフト演算子
3.6.3 例:ビットフィールドによるフラグ管理
3.7 その他の演算子
3.7.1 配列要素、プロパティを削除する - delete演算子
3.7.2 値の型を判定する - typeof演算子
3.7.3 補足:型の変換
3.8 演算子の優先順位と結合則
3.8.1 優先順位
3.8.2 結合則
Chapter 4 スクリプトの基本構造を理解する - 制御構文
4.1 制御構文とは?
4.2 条件分岐
4.2.1 条件式の真偽で処理を分岐する - if命令
4.2.2 複数の条件式で多岐分岐を表現する - else if命令
4.2.3 if命令の入れ子
4.2.4 補足:中カッコの省略は要注意
4.2.5 条件式を指定する場合の注意点
4.2.6 式の値によって処理を分岐する - switch命令
4.3 繰り返し処理
4.3.1 条件式によってループを制御する - while/do...while命令
4.3.2 補足:無限ループ
4.3.3 指定回数だけループを処理する - for命令
4.3.4 連想配列の中身を順に処理する - for...in命令
4.3.5 配列の要素を順に処理する - for...of命令
4.3.6 配列を反復処理するための専用メソッド
4.4 ループの制御
4.4.1 ループを途中で終了する - break命令
4.4.2 特定の周回をスキップする - continue命令
4.4.3 入れ子のループをまとめて中断/スキップする - ラベル構文
4.5 制御命令のその他の話題
4.5.1 例外を処理する - try...catch...finally命令
4.5.2 例外をスローする - throw命令
4.5.3 JavaScriptの危険な構文を禁止する - Strictモード
4.5.4 デバッガーを起動する - debugger命令
Chapter 5 基本データを操作する - 組み込みオブジェクト
5.1 オブジェクトとは?
5.1.1 オブジェクト=プロパティ+メソッド
5.1.2 オブジェクトを生成するための準備 - new演算子
5.1.3 メソッド/プロパティの呼び出し - ドット演算子
5.1.4 静的プロパティ/静的メソッド
5.1.5 組み込みオブジェクトとは
5.2 文字列を操作する - Stringオブジェクト
5.2.1 文字列の長さを取得する
5.2.2 文字列を大文字⇔小文字で変換する
5.2.3 部分文字列を取得する
5.2.4 文字列を検索する
5.2.5 文字列に特定の部分文字列が含まれるかを判定する
5.2.6 文字列の前後から空白を除去する
5.2.7 文字列を置き換える
5.2.8 文字列を分割する
5.2.9 文字列が指定長になるように指定文字で補足する
5.2.10 文字列をn回繰り返したものを取得する
5.2.11 文字列をUnicode正規化する
5.3 数値リテラルを操作する - Numberオブジェクト
5.3.1 Numberオブジェクトの定数
5.3.2 数値形式を変換する
5.3.3 文字列を数値に変換する
5.3.4 基本的な数学演算を実行する
5.4 日付/時刻値を操作する - Dateオブジェクト
5.4.1 日付/時刻値を生成する
5.4.2 日付/時刻要素を取得する
5.4.3 日付/時刻要素を設定する
5.4.4 日付/時刻値を加算/減算する
5.4.5 日付/時刻の差を求める
5.4.6 日付/時刻値を文字列に変換したい
5.5 値の集合を管理/操作する - Arrayオブジェクト
5.5.1 配列を生成する
5.5.2 要素を追加/削除する
5.5.3 配列に複数要素を追加/置換/削除する
5.5.4 配列から特定範囲の要素を取得する
5.5.5 配列の内容を検索する
5.5.6 入れ子の配列をフラット化する
5.5.7 配列内の要素を結合する
5.5.8 配列内の要素を移動する
5.5.9 配列ライクなオブジェクトを配列化する
5.5.10 配列を複製する
5.5.11 配列の要素を並べ替える
5.5.12 配列の内容を順に処理する
5.5.13 配列を指定されたルールで加工する
5.5.14 任意の条件式によって配列を検索する
5.5.15 条件式に合致する要素が存在するかを判定する
5.5.16 配列から条件に合致した要素だけを取得する
5.5.17 配列内の要素を順に処理して1つにまとめる
5.6 連想配列を操作する - Mapオブジェクト
5.6.1 マップを初期化する
5.6.2 マップの値を設定/取得する
5.6.3 マップから既存のキーを削除する
5.6.4 マップからすべてのキー/値を取得する
5.6.5 Object⇔Mapを相互変換する
5.6.6 弱い参照キーのマップ
5.7 重複しない値の集合を操作する - Setオブジェクト
5.7.1 セットを初期化する
5.7.2 セットの値を追加/削除する
5.7.3 セットの内容を取得/確認する
5.8 正規表現で文字列を自在に操作する - RegExpオブジェクト
5.8.1 正規表現の基本
5.8.2 RegExpオブジェクトを生成する
5.8.3 文字列が正規表現パターンにマッチしたかを判定する
5.8.4 正規表現パターンにマッチした文字列を取得する
5.8.5 正規表現オプションでマッチングの方法を制御する
5.8.6 正規表現のマッチング結果をまとめて取得する
5.8.7 正規表現で文字列を置き換える
5.8.8 正規表現で文字列を分割する
5.8.9 例:正規表現による検索
5.9 その他のオブジェクト
5.9.1 JavaScriptでよく利用する機能を提供する - Globalオブジェクト
5.9.2 オブジェクト⇔JSON文字列を相互に変換する - JSONオブジェクト
5.9.3 シンボルを作成する - Symbolオブジェクト
Chapter 6 繰り返し利用するコードを1ヵ所にまとめる - 関数
6.1 関数の基本
6.1.1 ユーザー定義関数が必要な理由
6.1.2 ユーザー定義関数の基本
6.1.3 関数名
6.1.4 仮引数と実引数
6.1.5 戻り値
6.2 関数を定義するための3種の記法
6.2.1 Functionコンストラクター経由で定義する
6.2.2 関数リテラルで定義する
6.2.3 アロー関数で定義する
6.2.4 関数定義の際の注意点
6.3 変数はどの場所から参照できるか - スコープ
6.3.1 スコープの基本
6.3.2 仮変数のスコープ
6.3.3 スコープから見たvar/let命令
6.3.4 スコープに関わるその他の注意点
6.4 引数のさまざまな記法
6.4.1 JavaScriptは引数の数をチェックしない
6.4.2 引数の既定値を設定する
6.4.3 可変長引数の関数を定義する
6.4.4 スプレッド構文による引数の展開
6.4.5 名前付き引数でコードを読みやすくする
6.5 関数呼び出しと戻り値
6.5.1 複数の戻り値を返したい
6.5.2 関数自身を再帰的に呼び出す - 再帰関数
6.5.3 関数の引数も関数 - 高階関数
6.5.4 「使い捨ての関数」は匿名関数で
6.6 高度な関数のテーマ
6.6.1 テンプレート文字列をアプリ仕様にカスタマイズする - タグ付きテンプレート文字列
6.6.2 変数はどのような順番で解決されるか - スコープチェーン
6.6.3 その振る舞いオブジェクトの如し - クロージャ
Chapter 7 JavaScriptらしいオブジェクトの用法を理解する - Objectオブジェクト
7.1 オブジェクトを生成する
7.1.1 オブジェクトをリテラルで表現する
7.1.2 コンストラクター経由でオブジェクトを生成する - new演算子
7.1.3 より詳しい設定付きでオブジェクトを生成する
7.2 オブジェクトの雛型「プロトタイプ」を理解する
7.2.1 プロトタイプの基本
7.2.2 プロトタイプチェーンの挙動を確認する
7.2.3 プロパティを追加/更新/削除した場合の挙動
7.3 すべてのオブジェクトの雛型 - Objectオブジェクト
7.3.1 オブジェクトをマージする
7.3.2 オブジェクトを複製する
7.3.3 プロパティを操作する
7.3.4 不変オブジェクトを定義する
Chapter 8 大規模開発でも通用する書き方を身につける - オブジェクト指向構文
8.1 クラスの基本
8.1.1 最もシンプルなクラスを定義する
8.1.2 クラスに属する情報を準備する - プロパティ
8.1.3 クラスに属する処理を準備する - メソッド
8.1.4 クラスを初期化する - コンストラクター
8.1.5 静的プロパティ/静的メソッドを定義する
8.1.6 文脈によって中身が変化する変数 - thisキーワード
8.1.7 既存のクラスにメソッドを追加する
8.2 利用者に見せたくない機能を隠蔽する - カプセル化
8.2.1 カプセル化とは?
8.2.2 プライベートメンバーの実装
8.2.3 ゲッター/セッター
8.2.4 補足:不変クラスを定義する
8.3 既存のクラスを拡張する - 継承
8.3.1 継承の基本
8.3.2 基底クラスのメソッド/コンストラクターを上書きする
8.3.3 基底クラスのメソッドを呼び出す - superキーワード
8.3.4 継承以外のクラス再利用の手段 - 委譲
8.3.5 補足:ミックスイン
8.3.6 オブジェクトの型を判定する
8.4 アプリを機能単位にまとめる - モジュール
8.4.1 モジュールを定義する
8.4.2 モジュールを利用する
8.4.3 import命令のさまざまな記法
8.4.4 export命令のさまざまな記法
8.5 オブジェクト指向構文の高度なテーマ
8.5.1 列挙可能なオブジェクトを定義する - イテレーター
8.5.2 列挙可能なオブジェクトをよりかんたんに実装する - ジェネレーター
8.5.3 オブジェクトを基本型に変換する
8.5.4 オブジェクトの基本的な動作をカスタマイズする - Proxyオブジェクト
Chapter 9 HTMLやXMLの文書を操作する - DOM(Document Object Model)
9.1 DOMの基本を押さえる
9.1.1 マークアップ言語を操作する標準のしくみ「DOM」
9.1.2 文書ツリーとノード
9.2 クライアントサイドJavaScriptの前提知識
9.2.1 要素ノードを取得する
9.2.2 文書ツリー間を行き来する - ノードウォーキング
9.2.3 イベントをトリガーにして処理を実行する - イベントドリブンモデル
9.3 属性値やテキストを取得/設定する
9.3.1 属性値を取得する
9.3.2 属性値を設定する
9.3.3 属性値を削除する
9.3.4 要素のプロパティを取得/設定する
9.3.5 JavaScriptからスタイルを操作する
9.3.6 テキストを取得/設定する
9.4 フォーム要素にアクセスする
9.4.1 入力ボックス/選択ボックスの値を取得する
9.4.2 チェックボックスの値を取得する
9.4.3 ラジオボタンの値を取得する
9.4.4 ラジオボタン/チェックボックスの値を設定する
9.4.5 複数選択できるリストボックスの値を取得する
9.4.6 アップロードされたファイルの情報を取得する
9.5 ノードを追加/置換/削除する
9.5.1 innerHTMLプロパティとどのように使い分けるか
9.5.2 ページに新たなコンテンツを追加する
9.5.3 既存のノードを置換/削除する
9.5.4 HTMLCollection/NodeListを繰り返し処理する場合の注意点
9.6 より高度なイベント処理
9.6.1 イベントリスナーを削除する
9.6.2 イベントに関わる情報を取得する - イベントオブジェクト
9.6.3 イベント処理をキャンセルする
9.6.4 イベントの動作オプションを指定する
9.6.5 イベントリスナーに任意の追加情報を引き渡す
Chapter 10 クライアントサイドJavaScript開発を極める
10.1 ブラウザーオブジェクトで知っておきたい基本機能
10.1.1 ブラウザーオブジェクトの階層構造
10.1.2 ブラウザーオブジェクトにアクセスするには
10.1.3 確認ダイアログを表示する - confirmメソッド
10.1.4 タイマー機能を実装する - setInterval/setTimeoutメソッド
10.1.5 ウィンドウサイズ/位置などの情報を取得する
10.1.6 コンテンツのスクロール位置を設定/取得する - scrollXxxxxメソッド
10.1.7 表示ページのアドレス情報を取得/操作する - locationオブジェクト
10.1.8 履歴に沿ってページを前後に移動する - historyオブジェクト
10.1.9 JavaScriptによる操作をブラウザーの履歴に残す - pushStateメソッド
10.2 デバッグ情報を出力する - consoleオブジェクト
10.2.1 コンソールにログを出力する
10.2.2 知っておくと便利なログメソッド
10.3 ユーザーデータを保存する - Storageオブジェクト
10.3.1 ストレージにデータを保存/取得する
10.3.2 既存のデータを削除する
10.3.3 ストレージからすべてのデータを取り出す
10.3.4 ストレージにオブジェクトを保存/取得する
10.3.5 ストレージの変更を監視する
10.4 非同期通信の基本を理解する - Fetch API
10.4.1 SPAとは?
10.4.2 Fetch APIの基本
10.4.3 リクエスト時にデータを送信する
10.4.4 異なるオリジンにアクセスする
10.4.5 補足:クロスドキュメントメッセージングによるクロスオリジン通信
10.5 非同期処理を手軽に処理する - Promiseオブジェクト
10.5.1 Promiseオブジェクトの基本を押さえる
10.5.2 非同期処理を連結する
10.5.3 複数の非同期処理を並行して実行する
10.5.4 Promiseの処理を同期的に記述する
10.5.5 非同期処理を伴う反復処理を実装する
10.6 バックグラウンドでJavaScriptのコードを実行する - Web Worker
10.6.1 ワーカーを実装する
10.6.2 ワーカーを起動する
Chapter 11 現場で避けて通れない応用知識
11.1 コマンドラインからJavaScriptコードを実行する - Node.js
11.1.1 Node.jsのインストール
11.1.2 JavaScriptファイルの実行
11.1.3 ライブラリをインストールする
11.1.4 ライブラリの復元
11.2 アプリのテストを自動化する - Jest
11.2.1 テストコードの基本
11.2.2 実行コマンドの準備
11.2.3 単体テストの実行
11.2.4 テスト実行時の役立つオプション
11.3 フロントエンドアプリの開発環境をすばやく立ち上げる - Vite
11.3.1 Viteの特徴
11.3.2 Viteの基本
11.3.3 本番環境向けのビルドを実施する
11.3.4 JavaScript以外のリソースにも対応
11.4 JavaScriptの「べからず」なコードを検出する - ESLint
11.4.1 ESLintの基本
11.4.2 リアルタイムに解析結果を確認する
11.4.3 ESLintルールのカスタマイズ
11.5 ドキュメンテーションコメントでコードの内容をわかりやすくする - JSDoc
11.5.1 ドキュメンテーションコメントの記述ルール
11.5.2 ドキュメントの生成
Column
VSCodeの便利な拡張機能(1) - Trailing Spaces
VSCodeの便利な拡張機能(2) - Regex Previewer
本書の読み進め方 - 著者からのメッセージ
ブラウザー環境でJavaScriptのコードを実行する - paiza.IO
VSCodeの便利な拡張機能(3) - JavaScript (ES6) code snippets
VSCodeの便利な拡張機能(4) - IntelliSense for CSS class names in HTML
よく見かけるエラーとその対処法
VSCodeの便利な拡張機能(5) - Code Spell Checker
VSCodeの便利な拡張機能(6) - Todo Tree
知っておきたい!JavaScriptの関連キーワード(1) - altJS
知っておきたい!JavaScriptの関連キーワード(2) - TypeScript
ECMAScript期待の機能
VSCodeの便利な拡張機能(7) - Bookmarks
知っておきたい!JavaScriptの関連キーワード(3) - WebAssembly
知っておきたい!JavaScriptの関連キーワード(4) - コンポーネント指向
VSCodeの便利な拡張機能(8) - SFTP
知っておきたい!JavaScriptの関連キーワード(5) - Web Components
知っておきたい!JavaScriptの関連キーワード(6) - importmaps
script要素の知っておきたい属性(1) - async属性
script要素の知っておきたい属性(2) - integrity属性
VSCodeの便利な拡張機能(9) - 拡張テーマ
script要素の知っておきたい属性(3) - integrity属性の作り方
script要素の知っておきたい属性(4) - crossorigin/referrerpolicy属性
本書を読み終えた後に
Amazonで詳しく見る
紹介文
機械学習やディープラーニング、データ分析などのスキルが求められるビジネスの現場が急増しています。一方で、入門書で得た知識を実際の現場でどうやって活かしていけばいいのか悩んでいる方も多くいます。本書は、Python実践データ分析100本ノックシリーズの第3弾として、様々なデータを扱う上で必須となるデータの加工・可視化から機械学習の前処理まで、実際のビジネスの現場で必要とされるノウハウが身につく実践問題集です。
システムデータの加工・可視化から、機械学習の前処理まで。Excel・時系列・言語・画像・音データ・特殊な加工・可視化。実用的なサンプルから100本で、ビジネス現場で即戦力になれる「基礎力」を身につけよう!
第1部 構造化データ
第1章 システムデータの加工・可視化を行う20本ノック
ノック1: 法人情報データを読み込んでみよう
ノック2: 読み込んだデータを確認しよう
ノック3: ヘッダ用のテキストファイルを読み込もう
ノック4: ヘッダ行を追加しよう
ノック5: 統計量や欠損値を確認しよう
ノック6: 繰り返し処理で新しいデータを追加しよう
ノック7: マスタを読み込んで項目を横に繋げよう
ノック8: テキストの連結や分割をしよう
ノック9: 日付を加工しよう
ノック10: 年度を設定しよう
ノック11: 加工したデータをファイルに出力しよう
ノック12: 不要な項目の削除と並べ替えをしよう
ノック13: まとまった単位で集計しよう
ノック14: 市区町村別の法人数を可視化しよう
ノック15: グラフの縦横と表示順を変えてみよう
ノック16: グラフのタイトルとラベルを設定しよう
ノック17: グラフの見た目をもっと変えてみよう
ノック18: 90日以内に新規登録された法人数を可視化しよう
ノック19: 年度別の推移を可視化しよう
ノック20: グラフとデータを出力しよう
第2章 Excelデータの加工・可視化を行う20本ノック
ノック21: Excelデータを読み込んでみよう
ノック22: カラムを抽出して付与してみよう
ノック23: 全シートのデータを読み込んでみよう
ノック24: データの値を計算で修正しよう
ノック25: 必要なカラムだけに絞り込もう
ノック26: 縦持ちデータを作成しよう
ノック27: 縦持ちデータを整形しよう
ノック28: 発電実績データを加工しよう
ノック29: 可視化用データを仕上げよう
ノック30: データの分布をヒストグラムで可視化してみよう
ノック31: データの分布を箱ひげ図で可視化してみよう
ノック32: 最近の発電量を可視化してみよう
ノック33: 先月の発電量とあわせて可視化してみよう
ノック34: 電力の時系列変化を可視化してみよう
ノック35: 電力の割合を可視化してみよう
ノック36: 電力量の多い都道府県を比較してみよう
ノック37: 都道府県、年月別の電力量を可視化してみよう
ノック38: 変数の関係性を可視化してみよう
ノック39: データを整形してExcel形式で出力しよう
ノック40: シート別にExcelデータを出力しよう
第3章 時系列データの加工・可視化を行う10本ノック
ノック41: 時系列データを読み込んでみよう
ノック42: 日付の範囲を確認しよう
ノック43: 日毎のデータ件数を確認しよう
ノック44: 日付から曜日を算出しよう
ノック45: 特定範囲のデータに絞り込もう
ノック46: 秒単位のデータを作成しよう
ノック47: 秒単位のデータを整形しよう
ノック48: 秒間の欠損データを処理しよう
ノック49: 通った人数を可視化しよう
ノック50: 移動平均を計算して可視化しよう
第2部 非構造化データ
第4章 言語データの加工・可視化を行う10本ノック
ノック51: テキストファイルを読み込もう
ノック52: 本文を抽出して1つに纏めよう
ノック53: 本文以外の項目を取り出そう
ノック54: 形態素解析で単語に分割しよう
ノック55: 分割した単語をデータフレームで保持しよう
ノック56: 名詞と動詞を取り出そう
ノック57: 不要な単語を除外しよう
ノック58: 単語の使用状況をグラフで可視化しよう
ノック59: Word Cloudで可視化してみよう
ノック60: n-gramを作ってみよう
まとめ
第5章 画像データの加工・可視化を行う10本ノック
ノック61: 画像ファイルを読み込んで表示してみよう
ノック62: 画像データの中身を確認しよう
ノック63: 画像データを切り出してみよう
ノック64: カラーヒストグラムを可視化してみよう
ノック65: RGB変換を行って画像を表示してみよう
ノック66: 画像のサイズを変更してみよう
ノック67: 画像を回転させてみよう
ノック68: 画像処理をしてみよう
ノック69: 画像にテキストや線を描画してみよう
ノック70: 画像を保存してみよう
第6章 音データの加工・可視化を行う10本ノック
ノック71: 音データを再生してみよう
ノック72: 音データを読み込んでみよう
ノック73: 音データの一部を取得してみよう
ノック74: 音データのサンプリングレートを変えてみよう
ノック75: 音データを可視化してみよう
ノック76: 音データの大きさを取得してみよう
ノック77: 周波数スペクトルを表示してみよう
ノック78: スペクトログラムを可視化してみよう
ノック79: 音の高さや長さを変えてみよう
ノック80: 音データを保存しよう
第3部 機械学習向けの加工と特殊なデータ加工
第7章 機械学習の前処理を行う10本ノック
ノック81: 機械学習で予測するデータを設定しよう
ノック82: TrainデータとTestデータに分割しよう
ノック83: データを機械学習に適した形式へ変換しよう
ノック84: 外れ値の検出をしよう
ノック85: データの分布をみてスケーリング手法を考えよう
ノック86: 分布に従ってスケーリングをやってみよう
ノック87: スケーラーを保存しよう
ノック88: 欠損値の処理をやってみよう
ノック89: 学習時のサンプル比率を調整しよう
ノック90: Testデータの前処理をしよう
第8章 特殊な加工・可視化を行う10本ノック
ノック91: 大容量CSVデータを扱ってみよう
ノック92: Json形式のファイルを扱ってみよう
ノック93: Webからデータを取得してみよう
ノック94: configファイルを扱ってみよう
ノック95: 動画ファイルを音声ファイルへ変換してみよう
ノック96: 動画ファイルを画像ファイルへ分割してみよう
ノック97: PowerPointやWordファイルを読み込んでみよう
ノック98: PDFデータを読み込んでみよう
ノック99: インタラクティブなグラフを作成してみよう
ノック100: 3次元グラフを作成してみよう
Amazonで詳しく見る
紹介文
あ、こうすればリアルに動くのか!…と誰でも気がつく、ゲームのための物理計算入門。
第1章 物理計算を始めよう-物理計算の概要と開発環境
第2章 C言語のキホン-ソースコードの入力から関数の作成まで
第3章 動かす!-速度とベクトル入門
第4章 変型する!-三角関数と行列
第5章 投げる!落ちる!-慣性の法則と重力加速度
第6章 すべる!-運動方程式とまさつ係数
第7章 ぶつかる!-反発係数と運動量
第8章 回転する!-円運動と角速度
Amazonで詳しく見る
紹介文
コンピュータにものを考えさせる「アルゴリズム」を通じて、プログラミングの世界に第一歩を踏み出そう
プログラミングとアルゴリズムの一番やさしい新定番書!
プログラミング言語を習得しても、実際にコードを書いてみようとすると
「どう書いて良いかわからない」と感じる方は多いと思います。
本書はアルゴリズムとプログラムロジックの基本を通じて、
プログラミング(コードを書く)の実際を学んでいただけます。
アルゴリズムは、与えられたさまざまな課題をプログラムで効率良く
処理するためのテクニックの集合体です。これらを通じて、誰でも効率の良い
効果的なコードを作るための第一歩を踏み出すことができます。
・絵を多用し、短い解説で絵本のようにビジュアルに理解することができます。
・2ページを単位とした説明、基礎に絞り込んだ内容でスピーディに習得。
・説明は基本中の基本から。「C言語の基礎」から学べます。
・プログラミングのために必要な知識を広くフォロー、コードの書き方が身につきます。
・環境構築から内容を最新にアップデートし、実際に試して学ぶことができます。
【「絵本」シリーズは、ラインナップをリニューアル!】
翔泳社の「絵本シリーズ」は、豊富なイラストと簡潔な解説で
コンピュータ技術に入門できる初心者向けのシリーズです。
コンピュータ言語/技術の超初心者や手軽に習得したい方に最適な入門書です。
新しい「絵本シリーズ」では、旧来の分かりやすさ、親しみやすさ、
基礎に徹した内容というコンセプトはそのままに、Web/ネットが全盛となった
現在のコンピュータ技術の潮流に合わせた解説を心掛けます。
『Cの絵本』『Javaの絵本』『Pythonの絵本』などを皮切りにラインナップを順次刷新、
さらに新しい仲間を増やしてラインナップを充実していきます。
アルゴリズムの勉強をはじめる前に
●アルゴリズムとは何か
●プログラムができるまで
●フローチャート
●C言語について
●プログラミングから実行までの流れ
●プログラム記述時の約束
第1章 C言語の基礎
●第1章はここがkey
●Hello World!
●変数と定数
●数値型
●配列
●ポインタ
●文字と文字列
●計算の演算子
●その他の演算子
●ファイルの読み書き
●キーボード入力
●メモリの確保
●構造体
[コラム]~変数名のつけ方~
第2章 基本的な制御
●第2章はここがkey
●制御の種類と構造化
●if文
●for文とwhile文
●その他の制御文
[コラム]~構造化以前のプログラム~
第3章 制御の活用
●第3章はここがkey
●1から5までの和
●配列から値を見つける(1)
●配列から値を見つける(2)
●平均をとる
●棒グラフを描く
●2つの文字列の連結
●逆さに読むと
●ファイルの内容を表示する
●表?裏?コイン投げゲーム
[コラム]~スタックとキュー~
第4章 関数の利用
●第4章はここがkey
●関数とは?
●関数の定義と利用
●main()関数
●関数の特徴
●関数の活用
●再帰処理
[コラム]~関数のポインタ~
第5章 問題への取り組み方
●第5章はここがkey
●問題を整理する
●プログラムの設計
●プログラムの記述(1)
●プログラムの記述(2)
●プログラムを整理する
●テストとデバッグ
●完成プログラム
[コラム]~ボトムアップ的・トップダウン的な考え方~
第6章 実践的プログラミング
●第6章はここがkey
●仕様を分析する
●データ形式を決める(1)
●データ形式を決める(2)
●基本設計の決定(1)
●基本設計の決定(2)
●メイン部分を作る
●機能を作る(1)
●機能を作る(2)
●完成プログラム
[コラム]~時間がかかる処理~
第7章 高度なアルゴリズム
●第7章はここがkey
●素数を求める
●素因数分解
●最大公約数を求める
●リンクリスト(1)
●リンクリスト(2)
●サンプルプログラム
[コラム]~アルゴリズムの工夫~
付録
●プログラムでつまったら
●プログラミングの心得
●Visual Studioのインストール
●Visual Studioを使った開発
●一般的なデバッグ手法
●Visual Studioのデバッガー
Amazonで詳しく見る
紹介文
<コンセプト>PC&モバイルサイトデザインの基礎力とHTML・CSSコーディングの知識が1冊で同時に身につく!
ウェブ制作を仕事にするならHTMLとCSSを学ぶことから始めますが、本書は体系立てた文法学習よりも、まずは「コーディングとはどのような作業なのか」を理解できる初学者向け入門書です。架空のカフェのショップ紹介&ネットショップサイトをチュートリアル形式で作成しながら、基本的なHTML要素/CSSの基本構造(セレクタ、プロパティ、値)を学ぶことができ、レイアウトのテクニックやデザイン(Webデザイン&レスポンシブデザイン)の基本も身につきます。
<本書のポイント>
・チュートリアル学習では、PC版だけでなくウェブ制作の現場でニーズの高いモバイルサイトのデザインがしっかり学べます
・定番となったflexbox、displayを使ったレイアウト手法の基礎から実践まで丁寧に解説します
・「フルスクリーン」「フレックスボックス」「シングルカラム」「2カラム」「グリッド」の5種類のレイアウトパターンを学習できます
・横スクロールするレイアウト、アニメーションで拡大するボタンなど動きのあるサイトづくりも体験できます
・「動画コンテンツページ」「ネットショップページ」も制作します
<綴じ込み特典つき>
付録①デザインのバリエーションが学べる!「レスポンシブデザインのネタ帖」
付録②インターン、就転職に役立つ!「ポートフォリオ用アレンジのネタ帖」
Chapter 1 知っておきたいサイトとデザインのきほん知識
1-1 ウェブサイトのしくみについて知ろう
1-2 サイト制作のフローとウェブデザイン
1-3 コーディングについて知っておくべきこと
1-4 ウェブページのパーツやレイアウトについて知ろう
1-5 ウェブデザインで知っておくべきこと
Chapter 2 サイト制作の前に準備しておくこと
2-1 制作環境を整えよう
2-2 Google Chromeのインストールと使い方
2-3 Visual Studio Codeのインストールと使い方
2-4 入力したコードをブラウザで確認する方法
2-5 実習用サンプルサイトを見てみよう
Chapter 3 知っておきたいHTMLのきほんと書き方
3-1 HTMLのきほん知識
3-2 サンプルサイト共通のHTMLを書いてみよう
3-3 見やすいコードとコメントの書き方
Chapter 4 知っておきたいCSSのきほんと書き方
4-1 CSSのきほん知識
4-2 CSSを書いてみよう<ページの基本設定を記述する>
4-3 CSSを書いてみよう
4-4 ウェブフォントを指定してみよう
Chapter 5 知っておきたいレスポンシブデザインのきほんと書き方
5-1 レスポンシブデザインのきほん知識
5-2 モバイルサイト用のCSSを書いてみよう
5-3 ハンバーガーメニューを作成しよう
5-4 モバイル用フッターのレイアウトを調整しよう
Chapter 6 フルスクリーンレイアウトを制作する
6-1 フルスクリーンレイアウト制作で学ぶこと
6-2 フルスクリーンレイアウトのHTMLを書いてみよう
6-3 フルスクリーンレイアウトのCSSを書いてみよう
6-4 フルスクリーンレイアウトのモバイル用CSSを書いてみよう
Chapter 7 フレックスボックスレイアウトを制作す
7-1 フレックスボックスレイアウト制作で学ぶこと
7-2 フレックスボックスレイアウトのHTMLを書いてみよう
7-3 フレックスボックスレイアウトのCSSを書いてみよう
7-4 フレックスボックスレイアウトのモバイル用CSSを書いてみよう
Chapter 8 シングルカラムで動画コンテンツページを制作する
8-1 シングルカラムレイアウト制作で学で学ぶこと
8-2 シングルカラムレイアウトのHTMLを書いてみよう
8-3 シングルカラムレイアウトのCSSを書いてみよう
8-4 シングルカラムレイアウトのモバイル用CSSを書いてみよう
Chapter 9 グリッドで格子状レイアウトを制作する
9-1 グリッドレイアウト制作で学ぶこと
9-2 グリッドレイアウトのHTMLを書いてみよう
9-3 グリッドレイアウトのCSSを書いてみよう
9-4 グリッドレイアウトのモバイル用CSSを書いてみよう
Chapter 10 2カラムでショップページを制作する
10-1 2カラムレイアウト制作で学ぶこと
10-2 2カラムレイアウトのHTMLを書いてみよう
10-3 ECサイトへリンクするページのHTMLを書いてみよう
10-4 2カラムレイアウトのCSSを書いてみよう
10-5 2カラムレイアウトのモバイル用CSSを書いてみよう
Chapter 11 Googleマップ付きの問い合わせページを制作する
11-1 問い合わせページ制作で学ぶこと
11-2 問い合わせページのHTMLを書いてみよう
11-3 問い合わせページのCSSを書いてみよう
11-4 問い合わせページのモバイル用CSSを書いてみよう
Appendix オリジナルのポートフォリオサイトに改変してみよう
デザインのバリエーションが学べる!「レスポンシブデザインのネタ帖」
インターン、就転職に役立つ!「ポートフォリオ用アレンジのネタ帖」
Amazonで詳しく見る
紹介文
本書は、ゲーム開発における物理シミュレーションに必要な知識を、豊富なコード例とともに基礎から解説する。運動学や力学の基礎を学んでから、その応用例として投射物・自動車・船・飛行機などのモデルを設計して、2Dと3Dの剛体シミュレータ、さらには粒子系のシミュレータを製作。本書の著者は、船舶設計技師としてのキャリアを持つと同時に、コンピュータゲームの開発にもプロとして関わっている。
基本概念
運動学
力
運動力学
衝突
投射物
飛行機
船
ホバークラフト
自動車
実時間シミュレーション
2D剛体シミュレータ
衝突応答の実装
剛体の回転
3D剛体シミュレータ
3次元における多体問題
粒子系
ベクトル演算
行列演算
四元数の演算
Amazonで詳しく見る
紹介文
現実世界を再現する物理シミュレーション/CG表現の基礎を解説。ゲームやCGアニメーションのための剛体、弾性体、流体各シミュレーションを分かりやすく解説!
第1章 物理シミュレーションとは
第2章 数学と力学の基礎
第3章 数値解析
第4章 剛体シミュレーション
第5章 弾性体シミュレーション
第6章 流体シミュレーション
第7章 炎、雲、爆発のシミュレーション
Amazonで詳しく見る
紹介文
せっかく学ぶのなら、プロ志向のHTMLを!
ウェブデザイン制作の現場で役立つHTMLを奥深くまで徹底解説。ウェブサイトの基本的なしくみから、要素を使いこなすための知識まで、じっくりと学習することができます。ただHTMLを書くだけではなく、アクセシビリティやユーザビリティの視点を知ることで、よりよいコーディングに自らたどりつけるようになります。現役講師による会話形式のやさしい解説つきで、はじめてHTMLを学ぶ方でも挫折しません。また、HTMLを学んだことはあるけれど、ゼロから書きはじめる自信がない方、次の1冊で確実なコーディング力をつけたいと望む方にも、おすすめです。これ1冊で、ウェブページの先頭から末尾まで、HTMLを自力で書けるようになります!
本書の進め方
ダウンロード練習ファイルについて
■INTRODUCTION
0-1 Webページが表示される仕組み
0-2 HTMLとCSSとJavaScriptの立ち位置
0-3 開発環境の準備
0-4 タグの基礎知識
COLUMN 誰もがアクセスできるWebメディアの特性
■CHAPTER1 HTMLの全体構造と基本ルールを知ろう
このチャプターのゴール
1-1 HTMLの基本構造の要素
1-2 HTMLの属性
1-3 HTMLのバージョンとDOCTYPE
1-4 文字エンコーディングと文字化け
1-5 要素の配置ルールとカテゴリ
章末練習問題
COLUMN CodeHeroでタグを調べてみよう
■CHAPTER2 テキストやリストをマークアップしよう
このチャプターのゴール
2-1 見出しを表す
2-2 段落を表す
2-3 特殊な記述が必要な文字
2-4 改行を表す
2-5 強調を表す
2-6 重要性を表す
2-7 サイドコメント
2-8 日時
2-9 箇条書き
2-10 説明リスト
章末練習問題
COLUMN Webサイト制作の仕事とは?
■CHAPTER3 リンクやコンテンツを埋め込もう
このチャプターのゴール
3-1 リンクを設定する
3-2 URL の指定方法
3-3 ページ内リンク
3-4 画像を埋め込む
3-5 動画を埋め込む
3-6 外部のコンテンツを埋め込む
3-7 本文から切り離せる図や写真
章末練習問題
COLUMN 勉強のモチベーション
■CHAPTER4 表とフォームを作ろう
このチャプターのゴール
4-1 表(テーブル)を作る
4-2 表の構造を明確化する
4-3 フォームとコントロール部品
4-4 複数行の入力フィールド
4-5 選択式メニュー
4-6 コントロール部品のラベル
章末練習問題
COLUMN フォームのユーザ体験の向上
■CHAPTER5 セクションとページ構造を整理しよう
このチャプターのゴール
5-1 セクショニングに関する要素
5-2 アウトラインを意識する
COLUMN かつてのセクショニング・コンテンツ
COLUMN かつて存在していた「セクショニング・ルート」カテゴリ
5-3 ページやセクションの基本構造を示す
5-4 連絡先情報
COLUMN 汎用的な要素
章末練習問題
COLUMN HTML にメモを残す
■CHAPTER6 よりよいページにしよう
このチャプターのゴール
6-1 ページの紹介文を設定する
6-2 SNS の共有情報を設定する
6-3 ファビコンを設定する
6-4 URL を正規化する
6-5 検索エンジンのクローラーを制御する
6-6 構文をチェックする
章末練習問題
COLUMN 自走する力
■PRACTICE ページをまるごとマークアップしよう!
7-1 架空のお店のWeb ページをマークアップしてみよう!
7-2 解答例を確認しよう
■付録
カテゴリ一覧表
グローバル属性一覧表
Amazonで詳しく見る
紹介文
プログラマーが知っておくべき認知科学のこと。
長年プログラミング教育の研究に取り組んでいる著者が、最新の「認知科学」に基づいて、プログラミングの際のさまざまな作業や技術の取得を効率的に行うための方法を解説しています。
まずは、コードを書いたり読んだりするときに「プログラマーの脳」がどのように働くかという認知プロセスについて説明しています。なぜなら、作業が異なれば、利用する認知プロセスも異なり、使うべきテクニックも変わってくるからです。
認知プロセスの段階や相互作用について理解したところで、「コードを速く、深く読む」「コードを読みやすくする」「新しい言語を短時間で習得する」といったことについて、どの認知プロセスを活用しているのかを考えて、どのような方法を採るべきかなのかを具体例を挙げて説明しています。また、プログラミングそのものではありませんが、新しい開発者を迎え入れる際のオンボーディングプロセスについても、認知科学的な側面から掘り下げています。
本書は、13の章から成り、大きく4つの部に分けられています。各章では、次のような内容を説明しています。
・第1章:プログラミングを行う際に重要な3つの認知プロセスと、それぞれの認知プロセスがどのような混乱と関連するか
・第2章:コードを素早く読み、その仕組みを理解する方法
・第3章:プログラミングの構文や概念をよりよく、より簡単にきちんと学ぶ方法
・第4章:複雑なコードを読み解くためのテクニック
・第5章:見慣れないコードをしっかりと理解するためのテクニック
・第6章:プログラミングにおける問題解決のテクニック
・第7章:コードや思考中のバグを回避するためのテクニック
・第8章:特にコードベース全体において、明確な変数名を選択する方法
・第9章:「コードの臭い」とその背後にある認知科学的背景
・第10章:複雑な問題を解決するための、より高度なテクニック
・第11章:コーディングという行為そのものと、プログラミングにおけるさまざまなタスク
・第12章:大規模なコードベースを改善する方法
・第13章:新しい開発者のオンボーディングプロセスの苦痛を軽減する方法
本書は、脳の働きをより深く理解することで、プログラマーとしてのスキルや習慣を向上させたいと願う、すべてのレベルのプログラマーのために書かれていますが、特に「職業プログラマー」が直面するような状況が取り上げられています。チーム開発、大規模ソフトウェアシステム構築、オンボーディングサポートなどの経験などがあると、本書をより理解し、活用できるでしょう。また、JavaScript、Python、Javaなど(APLやBASICも!)の言語で書かれたコード例が出てきますが、特定の言語の知識や経験は必要ありません。
長年プログラミング教育の研究に取り組んでいる著者が、最新の「認知科学」に基づいて、プログラミングの際のさまざまな作業や技術の取得を効率的に行うための方法を解説しています。
Part 1 コードをよりよく読むために
Chapter 1 コーディング中の混乱を紐解く
Chapter 2 コードを速読する
Chapter 3 プログラミング言語の文法を素早く習得する方法
Chapter 4 複雑なコードの読み方
Part 2 コードについて考える
Chapter 5 コードの深い理解に到達する
Chapter 6 プログラミングに関する問題をよりうまく解決するには
Chapter 7 誤認識:思考に潜むバグ
Part 3 よりよいコードを書くために
Chapter 8 よりよい命名を行う方法
Chapter 9 汚いコードとそれによる認知的負荷を避けるための2つのフレームワーク
Chapter 10 複雑な問題をより上手に解決するために
Part 4 コーディングにおける共同作業
Chapter 11 コードを書くという行為
Chapter 12 より大きなシステムの設計と改善
Chapter 13 新しい開発者のオンボーディング
Amazonで詳しく見る
紹介文
ゲーム開発における実装とテストを高速化し、クオリティを高める。ゲーム業界の定番スクリプト言語LuaとC/C++の効果的連携を徹底解説。
ゲームの開発速度は十分ですか?
ゲーム開発をスピードアップする
スクリプト言語の選択
スクリプト言語Lua
LuaをC/C++プログラムに組み込む
プログラムを止めない開発環境を作る
ゲームシステムを作る
「ゴチャキャラ」ゲームを作る
スクリプト採用への疑問に答える
Lua C APIリファレンス〔ほか〕
Amazonで詳しく見る
紹介文
Pythonエキスパートの支持を集めている書籍の改訂版。堅牢でパフォーマンスの高い優れたプログラムを書くノウハウをまとめた。
Pythonプログラマの圧倒的支持を得るロングセラー待望の改訂版!
発刊以来、多くのPythonエキスパートの支持を集め、増刷を重ねている書籍の待望の改訂版。ベストプラクティス、ヒント、落とし穴の避け方や達人プログラマのコード、新機能などを紹介し、堅牢でパフォーマンスの高い優れたプログラムを書くノウハウをまとめています。今回、Pythonのアップデートに合わせて全面改訂。第1版の内容に加えて、データ構造、内包表記とジェネレータ、性能、デバッグについての新たな章を追加し、さらに内容を充実させています。第1版では59項目だったトピックが、第2版では90項目に増えています。Python 3.8対応。
Amazonで詳しく見る
紹介文
複雑なゲームプログラムを効率良く組み立てるための手段!大規模ゲームの設計論から、中枢であるスクリプトエンジンの実装まで汎用的かつ効果的なゲーム開発手法を徹底解説。
第1章 ゲームエンジン開発の論点
第2章 設計
第3章 レイヤシステム
第4章 プラグインシステムの設計
第5章 言語解析
第6章 アドベンチャーゲームの開発
Amazonで詳しく見る
紹介文
売上、第1位
7年連続!不動の第1位!
もっとも売れているiOSプログラミング解説書!
これからはじめる人に読んでほしい
とことん丁寧な本格入門書です。
プログラミング経験ゼロでも安心の「疑問を残さない詳細解説」だから、
Swiftとアプリ開発の基本はこの一冊で必ず習得できます!
・Xcode 11対応
・iOS 13.5以降 対応
・SwiftUI対応
本書は、これからはじめてiPhoneアプリ開発を学ぼうとしている人にとって少しでも役立つ本であるために、「誰一人、絶対に挫折しない」を命題に、どことんこだわって、とにかく丁寧に解説しています。自信がない人、大歓迎です! ぜひ本書を最後まで読み進めてください。
★アプリ開発は「副業」にも最適!★
リスクゼロで始められて、スキマ時間で作ることができます。
また、世界を相手にアプリを販売できます。
iPhoneアプリ開発は、今の時代に最も適した副業の1つといえます!
(詳しくは本文で解説しています)
最新第8版の目玉は次の通りです。
・業界大注目の「Swift UI」に対応!
・アプリには今や欠かせない、「課金システム」を搭載したアプリが作れる!(本書だけ!)
Chapter01 iPhoneアプリ開発の基礎知識
Chapter02 Xcodeとシミュレータの基本操作
Chapter03 今日からはじめるSwiftUIプログラミング【入門前夜】
Chapter04 今日からはじめるSwiftUIプログラミング【超入門】
Chapter05 iPhoneアプリ開発をはじめよう!
Chapter06 アイコン画像の使い方 ~コンピューテッドプロパティとイニシャライザ~
Chapter07 カウンターアプリ開発で学ぶクロージャ
Chapter08 地図アプリで学ぶプロトコル
Chapter09 英単語カードアプリで学ぶオプショナル
Chapter10 【総合演習】今後につながる少し高度なアプリ開発
Chapter11 アプリ開発の仕上げ
Chapter12 アプリ開発で収益を上げる方法
Chapter13 情報の収集方法とアプリの公開
Appendix 契約手続きとアプリのリリース
Amazonで詳しく見る
紹介文
本書は、プログラミング言語Rubyの言語仕様や開発の現場で役立つRubyの知識を説明した本です。豊富なサンプルコードで文法を学び、例題でプログラミングの流れを体験できます。第1版(2017年11月発行)は、初心者の目線にたった丁寧な解説が好評で多くのRuby初学者に愛読され、いまやRuby入門書の定番とも言える存在です。2020年末のRuby 3.0のリリースに伴い、全章にわたって記述内容を見直し、Ruby 3.0までの変更点や新機能に合わせて加筆・修正を行いました。また、第1版にて読者から「難しい、わかりづらい」という声の多かったトピックの説明を改善するなど、より初心者に親切な内容に刷新しています。
第1章 本書を読み進める前に
1.1 イントロダクション
1.1.1 この章で説明すること
1.2 本書の概要
1.2.1 対象となる読者
1.2.2 本書で説明する内容と説明しない内容
1.2.3 Railsアプリの開発にも本書は役に立つか?
1.2.4 本書の特徴と効果的な学習方法
1.2.5 対象となるRubyのバージョン
1.3 Rubyについて
1.3.1 Rubyってどんなプログラミング言語?
1.3.2 Rubyの処理系
1.3.3 Rubyのライセンス
1.3.4 Ruby 3.0について
1.4 Rubyのインストール
1.4.1 macOS/Linuxの場合
1.4.2 Windowsの場合
1.4.3 その他の方法
1.4.4 サンプルコードの動作確認環境について
1.5 エディタ/IDEについて
1.5.1 エディタやIDEで不可欠な機能や設定
1.6 Rubyを動かしてみる
1.6.1 本書のサンプルコードとその表示例について
1.6.2 ファイルに保存したRubyプログラムを実行する
1.7 本書のサンプルコードについて
1.7.1 サンプルコードがうまく動かない場合
1.8 Rubyの公式リファレンスについて
1.9 この章のまとめ
第2章 Rubyの基礎を理解する
2.1 イントロダクション
2.1.1 この章の例題:FizzBuzzプログラム
2.1.2 FizzBuzzプログラムの実行例
2.1.3 この章で学ぶこと
2.2 Rubyに関する基礎知識
2.2.1 すべてがオブジェクト
2.2.2 メソッド呼び出し
2.2.3 文の区切り
2.2.4 コメント
2.2.5 識別子と予約語
2.2.6 空白文字
2.2.7 リテラル
2.2.8 変数(ローカル変数)の宣言と代入
2.3 文字列
2.3.1 シングルクオートとダブルクオート
2.3.2 文字列の比較
2.4 数値
2.4.1 演算子による値の比較
2.4.2 演算子の優先順位
2.4.3 変数に格納された数値の増減
2.5 真偽値と条件分岐
2.5.1 Rubyの真偽値
2.5.2 論理演算子
2.5.3 if文
2.6 メソッドの定義
2.6.1 メソッドの戻り値
2.6.2 メソッド定義における引数の( )
2.7 例題:FizzBuzzプログラムを作成する
2.7.1 作業用のディレクトリとファイルを準備する
2.7.2 一番簡単なプログラムで動作確認する
2.7.3 fizz_buzzメソッドを作成する
2.8 文字列についてもっと詳しく
2.8.1 文字列はStringクラスのオブジェクト
2.8.2 %記法で文字列を作る
2.8.3 ヒアドキュメント(行指向文字列リテラル)
2.8.4 フォーマットを指定して文字列を作成する
2.8.5 その他、文字列作成のいろいろ
2.8.6 文字と文字列の違いはない
2.9 数値についてもっと詳しく
2.9.1 基数指示子を用いた整数リテラル
2.9.2 ビット演算
2.9.3 指数表現
2.9.4 数値クラスのあれこれ
2.10 真偽値と条件分岐についてもっと詳しく
2.10.1 &&や||の戻り値と評価を終了するタイミング
2.10.2 優先順位が低いand、or、not
2.10.3 unless文
2.10.4 case文
2.10.5 条件演算子(三項演算子)
2.11 メソッド定義についてもっと詳しく
2.11.1 デフォルト値付きの引数
2.11.2 ?で終わるメソッド
2.11.3 !で終わるメソッド
2.11.4 エンドレスメソッド定義(1行メソッド定義)
2.12 その他の基礎知識
2.12.1 ガベージコレクション(GC)
2.12.2 エイリアスメソッド
2.12.3 式(Expression)と文(Statement)
2.12.4 擬似変数
2.12.5 参照の概念を理解する
2.12.6 組み込みライブラリ、標準ライブラリ、gem
2.12.7 requireとrequire_relative
2.12.8 putsメソッド、printメソッド、pメソッド、ppメソッド
2.13 この章のまとめ
第3章 テストを自動化する
3.1 イントロダクション
3.1.1 この章で学ぶこと
3.1.2 「プログラマの三大美徳」
3.2 Minitestの基本
3.2.1 テストコードのひな形
3.2.2 本書で使用するMinitestの検証メソッド
3.2.3 テストコードの実行と結果の確認
3.2.4 テストが失敗した場合の実行結果
3.2.5 実行中にエラーが発生した場合の実行結果
3.3 FizzBuzzプログラムのテスト自動化
3.3.1 putsメソッドをテストコードに置き換える
3.3.2 プログラム本体とテストコードを分離する
3.4 この章のまとめ
第4章 配列や繰り返し処理を理解する
4.1 イントロダクション
4.1.1 この章の例題:RGBカラー変換プログラム
4.1.2 RGBカラー変換プログラムの実行例
4.1.3 この章で学ぶこと
4.2 配列
4.2.1 要素の変更、追加、削除
4.2.2 配列を使った多重代入
4.3 ブロック
4.3.1 参考:JavaScriptの繰り返し処理
4.3.2 Rubyの繰り返し処理
4.3.3 配列の要素を削除する条件を自由に指定する
4.3.4 ブロックパラメータとブロック内の変数
4.3.5 do ... end と {}
4.4 ブロックを使う配列のメソッド
4.4.1 map/collect
4.4.2 select/find_all/reject
4.4.3 find/detect
4.4.4 sum
4.4.5 &とシンボルを使ってもっと簡潔に書く
4.5 範囲(Range)
4.5.1 配列や文字列の一部を抜き出す
4.5.2 n以上m以下、n以上m未満の判定をする
4.5.3 case文で使う
4.5.4 値が連続する配列を作成する
4.5.5 繰り返し処理を行う
4.6 例題:RGB変換プログラムを作成する
4.6.1 to_hexメソッドを作成する
4.6.2 to_hexメソッドをリファクタリングする
4.6.3 to_intsメソッドを作成する
4.6.4 to_intsメソッドをリファクタリングする
4.6.5 to_intsメソッドをリファクタリングする(上級編)
4.7 配列についてもっと詳しく
4.7.1 さまざまな要素の取得方法
4.7.2 さまざまな要素の変更方法
4.7.3 配列の連結
4.7.4 配列の和集合、差集合、積集合
4.7.5 多重代入で残りの全要素を配列として受け取る、または無視する
4.7.6 1つの配列を複数の引数やwhen節の条件として展開する
4.7.7 メソッドの可変長引数
4.7.8 *で配列同士を非破壊的に連結する
4.7.9 ==で等しい配列かどうか判断する
4.7.10 %記法で文字列の配列を簡潔に作る
4.7.11 文字列を配列に変換する
4.7.12 配列にデフォルト値を設定する
4.7.13 配列にデフォルト値を設定する場合の注意点
4.7.14 ミュータブル? イミュータブル?
4.8 ブロックについてもっと詳しく
4.8.1 添え字付きの繰り返し処理
4.8.2 with_indexメソッドを使った添え字付きの繰り返し処理
4.8.3 添え字を0以外の数値から開始させる
4.8.4 配列がブロックパラメータに渡される場合
4.8.5 番号指定パラメータ
4.8.6 ブロックローカル変数
4.8.7 繰り返し処理以外でも使用されるブロック
4.8.8 do...endと{}の結合度の違い
4.8.9 ブロックを使うメソッドを定義する
4.9 範囲(Range)についてもっと詳しく
4.9.1 終端や始端を持たない範囲オブジェクト
4.10 さまざまな繰り返し処理
4.10.1 timesメソッド
4.10.2 uptoメソッドとdowntoメソッド
4.10.3 stepメソッド
4.10.4 while文とuntil文
4.10.5 for文
4.10.6 loopメソッド
4.10.7 再帰呼び出し
4.11 繰り返し処理用の制御構造
4.11.1 break
4.11.2 throwとcatchを使った大域脱出
4.11.3 繰り返し処理で使うbreakとreturnの違い
4.11.4 next
4.11.5 redo
4.12 この章のまとめ
第5章 ハッシュやシンボルを理解する
5.1 イントロダクション
5.1.1 この章の例題:長さの単位変換プログラム
5.1.2 長さの単位変換プログラムの実行例
5.1.3 この章で学ぶこと
5.2 ハッシュ
5.2.1 要素の追加、変更、取得
5.2.2 ハッシュを使った繰り返し処理
5.2.3 ハッシュの同値比較、要素数の取得、要素の削除
5.3 シンボル
5.3.1 シンボルと文字列の違い
5.3.2 シンボルの特徴とおもな用途
5.4 続・ハッシュについて
5.4.1 ハッシュのキーにシンボルを使う
5.4.2 キーや値に異なるデータ型を混在させる
5.4.3 メソッドのキーワード引数とハッシュ
5.5 例題:長さの単位変換プログラムを作成する
5.5.1 テストコードを準備する
5.5.2 いろんな単位を変換できるようにする
5.5.3 convert_lengthメソッドを改善する
5.6 ハッシュとキーワード引数についてもっと詳しく
5.6.1 ハッシュで使用頻度の高いメソッド
5.6.2 **でハッシュを展開させる
5.6.3 ハッシュを使った擬似キーワード引数
5.6.4 任意のキーワードを受け付ける**引数
5.6.5 ハッシュを明示的にキーワード引数に変換する**
5.6.6 メソッド呼び出し時の{}の省略
5.6.7 ハッシュリテラルの{}とブロックの{}
5.6.8 ハッシュから配列へ、配列からハッシュへ
5.6.9 ハッシュのデフォルト値を理解する
5.6.10 その他、キーワード引数に関する高度な話題
5.7 シンボルについてもっと詳しく
5.7.1 シンボルを作成するさまざまな方法
5.7.2 %記法でシンボルやシンボルの配列を作成する
5.7.3 シンボルと文字列の関係
5.8 この章のまとめ
第6章 正規表現を理解する
6.1 イントロダクション
6.1.1 この章の例題:ハッシュ記法変換プログラム
6.1.2 ハッシュ記法変換プログラムの実行例
6.1.3 この章で学ぶこと
6.2 正規表現って何?
6.2.1 正規表現の便利さを知る
6.2.2 正規表現をゼロから学習するための参考資料
6.3 Rubyにおける正規表現オブジェクト
6.3.1 Rubularで視覚的にマッチする文字列を確認する
6.3.2 正規表現のキャプチャを利用する
6.3.3 キャプチャに名前を付ける
6.3.4 組み込み変数でマッチの結果を取得する
6.3.5 正規表現と組み合わせると便利なStringクラスのメソッド
6.4 例題:Rubyのハッシュ記法を変換する
6.4.1 テストコードを準備する
6.4.2 ハッシュ記法変換プログラムを実装する
6.5 正規表現オブジェクトについてもっと詳しく
6.5.1 正規表現オブジェクトを作成するさまざまな方法
6.5.2 case文で正規表現を使う
6.5.3 正規表現オブジェクト作成時のオプション
6.5.4 Regexp.last_matchでマッチの結果を取得する
6.5.5 組み込み変数を書き換えないmatch?メソッド
6.6 この章のまとめ
第7章 クラスの作成を理解する
7.1 イントロダクション
7.1.1 この章の例題:改札機プログラム
7.1.2 この章で学ぶこと
7.2 オブジェクト指向プログラミングの基礎知識
7.2.1 クラスを使う場合と使わない場合の比較
7.2.2 オブジェクト指向プログラミング関連の用語
7.3 クラスの定義
7.3.1 オブジェクトの作成とinitializeメソッド
7.3.2 インスタンスメソッドの定義
7.3.3 インスタンス変数とアクセサメソッド
7.3.4 クラスメソッドの定義
7.3.5 定数
7.4 例題:改札機プログラムの作成
7.4.1 テストコードを準備する
7.4.2 必要なメソッドやクラスを仮実装する
7.4.3 運賃が足りているかどうかを判別する
7.4.4 テストコードのリファクタリング
7.4.5 残りのテストケースをテストする
7.5 selfキーワード
7.5.1 selfの付け忘れで不具合が発生するケース
7.5.2 クラスメソッドの内部やクラス構文直下のself
7.5.3 クラスメソッドをインスタンスメソッドで呼び出す
7.6 クラスの継承
7.6.1 標準ライブラリの継承関係
7.6.2 デフォルトで継承されるObjectクラス
7.6.3 オブジェクトのクラスを確認する
7.6.4 ほかのクラスを継承したクラスを作る
7.6.5 superでスーパークラスのメソッドを呼び出す
7.6.6 メソッドのオーバーライド
7.6.7 クラスメソッドの継承
7.7 メソッドの可視性
7.7.1 publicメソッド
7.7.2 privateメソッド
7.7.3 privateメソッドから先に定義する場合
7.7.4 privateメソッドはサブクラスでも呼び出せる
7.7.5 クラスメソッドをprivateにしたい場合
7.7.6 メソッドの可視性を変える方法あれこれ
7.7.7 protectedメソッド
7.8 定数についてもっと詳しく
7.8.1 定数と再代入
7.8.2 定数はミュータブルなオブジェクトに注意する
7.9 さまざまな種類の変数
7.9.1 クラスインスタンス変数
7.9.2 クラス変数
7.9.3 グローバル変数と組み込み変数
7.10 クラス定義やRubyの言語仕様に関する高度な話題
7.10.1 エイリアスメソッドの定義
7.10.2 メソッドの削除
7.10.3 入れ子になったクラスの定義
7.10.4 演算子の挙動を独自に再定義する
7.10.5 等値を判断するメソッドや演算子を理解する
7.10.6 オープンクラスとモンキーパッチ
7.10.7 特異メソッド
7.10.8 クラスメソッドは特異メソッドの一種
7.10.9 ダックタイピング
7.11 この章のまとめ
第8章 モジュールを理解する
8.1 イントロダクション
8.1.1 この章の例題:rainbowメソッド
8.1.2 この章で学ぶこと
8.2 モジュールの概要
8.2.1 モジュールの用途
8.2.2 モジュールの定義
8.3 モジュールを利用したメソッド定義(includeとextend)
8.3.1 モジュールをクラスにincludeする
8.3.2 include先のメソッドを使うモジュール
8.3.3 モジュールをextendする
8.4 例題:rainbowメソッドの作成
8.4.1 実装の方針を検討する
8.4.2 テストコードを準備する
8.4.3 rainbowメソッドを実装する
8.4.4 rainbowメソッドのリファクタリング
8.4.5 あらゆるオブジェクトでrainbowメソッドを使えるようにする
8.5 モジュールを利用したメソッド定義についてもっと詳しく
8.5.1 includeされたモジュールの有無を確認する
8.5.2 Enumerableモジュール
8.5.3 Comparableモジュールと演算子
8.5.4 Kernelモジュール
8.5.5 トップレベルはmainという名前のObject
8.5.6 クラスやモジュール自身もオブジェクト
8.5.7 モジュールとインスタンス変数
8.5.8 クラス以外のオブジェクトにextendする
8.6 モジュールを利用した名前空間の作成
8.6.1 名前空間を分けて名前の衝突を防ぐ
8.6.2 名前空間でグループやカテゴリを分ける
8.6.3 入れ子なしで名前空間付きのクラスを定義する
8.6.4 トップレベルの同名クラスを参照する
8.6.5 入れ子の有無によって参照されるクラスが異なるケース
8.7 関数や定数を提供するモジュールの作成
8.7.1 モジュールに特異メソッドを定義する
8.7.2 module_functionメソッド
8.7.3 モジュールに定数を定義する
8.7.4 モジュール関数や定数を持つモジュールの例
8.8 状態を保持するモジュールの作成
8.9 モジュールに関する高度な話題
8.9.1 メソッド探索のルールを理解する
8.9.2 モジュールにほかのモジュールをincludeする
8.9.3 prependでモジュールをミックスインする
8.9.4 prependで既存メソッドを置き換える
8.9.5 有効範囲を限定できるrefinements
8.10 この章のまとめ
第9章 例外処理を理解する
9.1 イントロダクション
9.1.1 この章の例題:正規表現チェッカープログラム
9.1.2 正規表現チェッカーの実行例
9.1.3 この章で学ぶこと
9.2 例外の捕捉
9.2.1 発生した例外を捕捉しない場合
9.2.2 例外を捕捉して処理を続行する場合
9.2.3 例外処理の流れ
9.2.4 例外オブジェクトから情報を取得する
9.2.5 クラスを指定して捕捉する例外を限定する
9.2.6 例外クラスの継承関係を理解する
9.2.7 継承関係とrescue節の順番に注意する
9.2.8 例外発生時にもう一度処理をやりなおすretry
9.3 意図的に例外を発生させる
9.4 例外処理のベストプラクティス
9.4.1 安易にrescueを使わない
9.4.2 rescueしたら情報を残す
9.4.3 例外処理の対象範囲と対象クラスを極力絞り込む
9.4.4 例外処理よりも条件分岐を使う
9.4.5 予期しない条件は異常終了させる
9.4.6 例外処理も手を抜かずにテストする
9.5 例題:正規表現チェッカープログラムの作成
9.5.1 テスト駆動開発をするかどうか
9.5.2 実装のフローチャートを考える
9.5.3 文字入力を受け付けるgetsメソッド
9.5.4 実装を開始する
9.5.5 例外処理を組み込む
9.6 例外処理についてもっと詳しく
9.6.1 ensure
9.6.2 ensureの代わりにブロックを使う
9.6.3 例外処理のelse
9.6.4 例外処理と戻り値
9.6.5 begin/endを省略するrescue修飾子
9.6.6 $!と$@に格納される例外情報
9.6.7 例外処理のbegin/endを省略できるケース
9.6.8 rescueした例外を再度発生させる
9.6.9 独自の例外クラスを定義する
9.7 この章のまとめ
第10章 yieldとProcを理解する
10.1 イントロダクション
10.1.1 この章の例題:ワードシンセサイザー
10.1.2 この章で学ぶこと
10.2 ブロックを利用するメソッドの定義とyield
10.2.1 yieldを使ってブロックの処理を呼び出す
10.2.2 ブロックを引数として明示的に受け取る
10.3 Procオブジェクト
10.3.1 Procオブジェクトの基礎
10.3.2 Procオブジェクトをブロックの代わりに渡す
10.3.3 Procオブジェクトを普通の引数として渡す
10.3.4 Proc.newとラムダの違い
10.3.5 Proc.newかラムダかを判断するlambda?メソッド
10.4 例題:ワードシンセサイザーの作成
10.4.1 エフェクトの実装方法を検討する
10.4.2 テストコードも2つに分ける
10.4.3 テストコードを準備する
10.4.4 リバースエフェクトを実装する
10.4.5 エコーエフェクトを実装する
10.4.6 ラウドエフェクトを実装する
10.4.7 WordSynthクラスの実装とテスト
10.5 Procオブジェクトについてもっと詳しく
10.5.1 Procオブジェクトを実行するさまざまな方法
10.5.2 &とto_procメソッド
10.5.3 Procオブジェクトとクロージャ
10.6 この章のまとめ
第11章 パターンマッチを理解する
11.1 イントロダクション
11.1.1 この章の例題:ログフォーマッタープログラム
11.1.2 この章で学ぶこと
11.2 パターンマッチの基本
11.2.1 ハッシュをパターンマッチさせる
11.3 パターンマッチの利用パターン
11.3.1 valueパターン
11.3.2 variableパターン
11.3.3 arrayパターン
11.3.4 hashパターン
11.3.5 asパターン
11.3.6 alternativeパターン
11.3.7 findパターン
11.4 例題:ログフォーマッターの作成
11.4.1 入力データの取得
11.4.2 “OK”のログに対応する
11.4.3 404エラーのログに対応する
11.4.4 “WARN”のログに対応する
11.4.5 500エラーのログに対応する
11.4.6 参考:パターンマッチを使わない場合
11.5 パターンマッチについてもっと詳しく
11.5.1 ガード式
11.5.2 1行パターンマッチ
11.5.3 変数のスコープに関する注意点
11.5.4 自作クラスをパターンマッチに対応させる
11.6 この章のまとめ
第12章 Rubyのデバッグ技法を身につける
12.1 イントロダクション
12.1.1 この章で学ぶこと
12.2 バックトレースの読み方
12.2.1 実行環境によって変化するバックトレースの表示形式
12.3 よく発生する例外クラスとその原因
12.3.1 NameError
12.3.2 NoMethodError
12.3.3 TypeError
12.3.4 ArgumentError
12.3.5 ZeroDivisionError
12.3.6 SystemStackError
12.3.7 LoadError
12.3.8 SyntaxError(syntax error)
12.3.9 組み込みライブラリに定義されている上記以外の例外クラス
12.3.10 Rubyの標準ライブラリに含まれない例外クラス
12.4 プログラムの途中経過を確認する
12.4.1 printデバッグ
12.4.2 tapメソッドでメソッドチェーンをデバッグする
12.4.3 ログにデバッグ情報を出力する
12.4.4 デバッガ(debug.gem)を使う
12.5 汎用的なトラブルシューティング方法
12.5.1 irb上で簡単なコードを動かしてみる
12.5.2 ログを調べる
12.5.3 公式ドキュメントや公式リファレンスを読む
12.5.4 issueを検索する
12.5.5 ライブラリのコードを読む
12.5.6 テストコードを書く
12.5.7 “警戒しながら”ネットの情報を参考にする
12.5.8 パソコンの前から離れる
12.5.9 誰かに聞く
12.6 この章のまとめ
第13章 Rubyに関するその他のトピック
13.1 イントロダクション
13.1.1 この章で学ぶこと
13.2 日付や時刻の扱い
13.3 ファイルやディレクトリの扱い
13.4 特定の形式のファイルを読み書きする
13.4.1 CSV
13.4.2 JSON
13.4.3 YAML
13.5 環境変数や起動時引数の取得
13.5.1 組み込み定数
13.6 非推奨機能を使ったときに警告を出力する
13.7 eval、バッククオートリテラル、sendメソッド
13.8 Rake
13.8.1 Rakeの基本的な使い方
13.8.2 Rakeを使ったテストの一括実行
13.9 gemとBundler
13.9.1 gemのインストールと利用方法
13.9.2 Bundlerでプロジェクト内で使用するgemを一括管理する
13.9.3 Gemfile.lockの役割
13.9.4 Gemfileでgemのバージョンを指定する記号の意味
13.10 Rubyにおける型情報の定義と型検査(RBS、TypeProf、Steep)
13.10.1 typeprofコマンドで型情報を自動生成する
13.10.2 Steepで型検査を行う
13.10.3 RBSとRubyの未来
13.11 「Railsの中のRuby」と「素のRuby」の違い
13.11.1 requireやrequire_relativeを書く機会がほとんどない
13.11.2 名前空間として使われるモジュールが自動生成される
13.11.3 標準ライブラリのクラスやMinitestが独自に拡張されている
13.11.4 Rubyの構文や言語機能がまったく別の用途で使われているケースがある
13.12 この章のまとめ