【2023最新】「プログラミング」のおすすめ本!人気ランキング
この記事では、「プログラミング」のおすすめ本をランキング形式で紹介していきます。インターネット上の口コミや評判をベースに集計し独自のスコアでランク付けしています。
Amazonで詳しく見る
紹介文
言語に限定されない応用が効く基礎力をつける!インターネットのしくみがわかる!Webプログラムがどのように動いているかを学べる!正規表現やテンプレート、ライブラリ、セキュリティまでカバー!
1 WebブラウザでWebページが表示される仕組み
2 WebサーバからWebブラウザにコンテンツが届くまで
3 Webプログラムがコンテンツを作る仕組み
4 Webプログラムを動かしてみよう
5 Webプログラミングをしてみよう
6 ライブラリやJavaScriptを使ったプログラミング
7 ユーザーを追跡するCookieとセッション情報
8 データベースを使ったプログラミング
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で詳しく見る
紹介文
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で詳しく見る
紹介文
本書は「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で詳しく見る
紹介文
株式会社セガのゲームプログラマが書いた、プログラムの初心者に入門書を読む前に読んでほしい「プログラムを根本から理解し考え出す能力を身につける」書籍です。世間一般のプログラム入門書は、プログラムを自分で作るにはどのように頭を動かせばいいのかという根本の考え方を教えてくれません。本書は『ゲームプログラマになる前に覚えておきたい技術』の著者が、プログラミングの未経験者や基本をやり直したいと考えている人のために、簡単なゲーム制作をとおして、プログラムを作る上でどのように頭を働かせればいいのかを学べるように工夫しました。
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で詳しく見る
紹介文
「実習」「講義」の形を取ることで、プログラムが動く仕組みを誰でも理解できるように解説した、初学者や非プログラマーのための入門書。
1 プログラミングの世界をのぞいてみよう-世の中にあふれるプログラム
2 コンピュータの仕組みと役割を理解しよう-プログラムが動く器
3 OSの仕組みと役割を理解しよう-プログラムを監督するプログラム
4 プログラミング言語の基礎知識-プログラミング言語の基本と分類
5 プログラミング言語を学ぼう1-JavaScript編
6 プログラミング言語を学ぼう2-C言語編
7 オブジェクトって何だろう-オブジェクト指向モデリング入門
Appendix 代表的なプログラミング言語とその特徴-補講
Amazonで詳しく見る
紹介文
プログラミングは全く初めての人、他の入門書で挫折しちゃった人、つまづく所はみんな同じです。そこを徹底分析したメソッドで、全員ゴールに辿り着ける入門教室が秋葉原にあります。1日でWeb画面と簡単なDBまで作れるようになるとってもユニークな速習コース。その方法を1冊に凝縮した本書なら、いきなりの初心者でも、無理せず楽しくPHPとMySQLのエッセンスを習得できます。
1 なるほど!心の準備編-何から始めたらいいの?(とっても大切な心の準備!
挫折の落とし穴を跳び越えよう! ほか)
2 がんばろう!パソコン設定編-らくらく壁を跳び越えよう!(タダでサーバーを手に入れよう!
タダでテキストエディタを手に入れよう! ほか)
3 ワクワク!プログラミング編-プログラミングは楽しい!(30分で覚えるHTML!
初めてのPHPを体験しよう! ほか)
4 ドキドキ!データベース編-あなたにもデータベースができる!(データベースはこうなってる!
データベースの文字化け対策! ほか)
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で詳しく見る
紹介文
やさしく学べる、入門書の決定版!
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で詳しく見る
紹介文
基本文法からライブラリ活用まで、一番わかりやすいRubyの入門書。到達度がわかる練習問題付き。
第0章 環境を構築しよう
第1章 Rubyの世界へようこそ!
第2章 プログラムの基本とデータを理解する
第3章 データのまとまりを扱う
第4章 条件に応じてプログラムの処理を変える
第5章 繰り返し処理する
第6章 メソッドで処理する
第7章 クラスでプログラムをまとめる
第8章 エラー処理と例外をプログラミングする
第9章 モジュールやライブラリを活用する
第10章 実践的なプログラミングに挑戦する
Amazonで詳しく見る
紹介文
プログラミングとアルゴリズムの基礎、および、「Scratch 3.0」の使い方を学ぶための本です。
プログラミングとアルゴリズムの基礎、および、「Scratch 3.0」の使い方を学ぶための本です。
大学や高校のプログラミングの授業でも活用していただいている人気定番書を「Scratch 3.0」の登場に合わせて改訂しました。
本書は、Scratchの操作方法を身につけて自由自在に使いこなせるようになるだけでなく、頭の中で考えているアイデアをプログラムとして実現するスキル、つまり論理的な思考のスキルを身につけることを目的としています。
本書の使い方
サンプルのプログラムを作りながら、Scratchの操作とプログラミングのポイントについて学んでいきます。ただし、何も考えずにサンプルの作り方をなぞって操作するだけでは、独り立ちして自分なりのプログラムを作る力はつきません。プログラミングの仕組みをきちんと「わかる」ことが大切です。
各章ののコーナーで自分なりに見通しを立てて考えたり、やのコラムをしっかりと読んで、操作の背景にある仕組みを考え、理解を深めながら学びをすすめましょう。
加えて、やといった課題に取り組むことで、頭で理解するだけでなく、身につけるようにしましょう。本書の詳しい使い方や各種のコラムの内容については「序章」の「この本の使い方」をご覧ください。
早く自分だけのプログラムを作りたい! という方は、第1章から第3章までを終えると、自分なりのオリジナルなプログラムを作り始めることができるようになるでしょう。途中で一度自分のオリジナルな作品を作ってから第4章からに取り組むと、より構造化プログラミングや関数、クローンなどのありがたみがわかるでしょう。
本書で紹介した「サンプルファイル」や「課題」の解答例、活用時の「指導者の手引き」などは、本書のWebページからダウンロードいただけます。
●プログラミングをはじめよう
第1章 Scratchの基本
第2章 プログラムの流れをつかもう
第3章 変数と配列の使い方をマスターしよう
●本格的なプログラミングを身につけよう
第4章 構造化プログラミング
第5章 関数の使い方をマスターしよう
●アルゴリズムのキホンを学ぼう
第6章 アルゴリズムその1 サーチ(探索)
第7章 アルゴリズムその2 基本的なソート(並び替え)
第8章 アルゴリズムその3 すすんだソート(並び替え)
●Scratchを使いこなそう
第9章 クローン
Amazonで詳しく見る
紹介文
とんでもなく、わかりやすい。学び直すならこの一冊! 全世界700万人が感動した「伝説の学習参考書」シリーズ日本上陸!!
とんでもなく、わかりやすい。学び直すならこの一冊! 全世界700万人が感動した「伝説の学習参考書」シリーズ日本上陸!!
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で詳しく見る
紹介文
人類の叡智「プログラミング」。その歴史や日常で役立つ技術を天才プログラマーが解説。この一冊であなたが見ている世界は一変する!
もの言わぬ機械とコミュニケーションをとる唯一の手段「プログラミング」。「もはやそれは誰もが学ぶべき教養」というメッセージを掲げ、刊行から数年を経ても売れ続けるロングセラーが『教養としてのプログラミング講座』だ。同書はプログラミングの歴史から簡単な作成、日常生活に役立つテクニックなどを、国認定「天才プログラマー」が解説。プログラマーの思考法を手に入れることを可能としたベスト・ガイドブックだ。学習を啓蒙する書籍が続々刊行、スクールも多く創設されるなど、現実としてプログラミングが必修の“教養”であることが広く認知された今、同書の内容を増補。小中学校での必修化がスタートする今年、あらためて刊行する。ジョブズやゲイツ、21世紀の成功者はどんな世界を見ているのか?
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で詳しく見る
紹介文
コードは理解しやすくなければならない。本書はこの原則を日々のコーディングの様々な場面に当てはめる方法を紹介する。名前の付け方、コメントの書き方など表面上の改善について。コードを動かすための制御フロー、論理式、変数などループとロジックについて。またコードを再構成するための方法。さらにテストの書き方などについて、楽しいイラストと共に説明する。日本語版ではRubyやgroongaのコミッタとしても著名な須藤功平氏による解説を収録。
理解しやすいコード
第1部 表面上の改善(名前に情報を詰め込む
誤解されない名前
美しさ
コメントすべきことを知る
コメントは正確で簡潔に)
第2部 ループとロジックの単純化(制御フローを読みやすくする
巨大な式を分割する
変数と読みやすさ)
第3部 コードの再構成(無関係の下位問題を抽出する
一度に1つのことを
コードに思いを込める
短いコードを書く)
第4部 選抜テーマ(テストと読みやすさ
「分/時間カウンタ」を設計・実装する)
付録 あわせて読みたい
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で詳しく見る
紹介文
世界中の小学生がプログラミングを学んでいる時代-。文系も、女子も、パソコン1台で簡単に「思いつき」を叶える方法!女優デビュー、慶應義塾大学卒業、いま、「タレント時々プログラマ」として注目される著者、初の書き下ろし。
1 プログラミングが好きになる7つの「ヒント」(「タレント時々プログラマ」のヒミツ
プログラミングが「つまらなさそう」な理由 ほか)
2 文系でも、飽きっぽくても続けられるプログラミングの「勉強法」(わからないところはスルーで充分
週末プログラマのすすめ ほか)
3 5つの入り口から選ぶギークへの「最初の一歩」(5つの入り口から選ぼう!
学んですぐに実践できる-Web ほか)
4 「考え方」がわかるプログラミング的思考(「おねだり」をマスターする
文字と数字は扱いが違う-データ型 ほか)
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で詳しく見る
紹介文
いちばん売れているRuby入門書の決定版。
初版から17年。改訂とともに変化しながら、ずっと読まれ続けている定番書です。
第6版では、最新のバージョンに対応。
プログラミング初心者でも読み解けるように、
チュートリアル、基礎、クラス、実践とテーマを切り分けて、平易に解説。
Rubyの基礎から応用までがわかる一冊。
第1部 Rubyをはじめよう
第2部 基礎を学ぼう
第3部 クラスを使おう
第4部 ツールを作ってみよう
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で詳しく見る
紹介文
初歩から学べて知識が身に付く。機械学習やRaspberry Piなど活用いろいろ、言語の基本を徹底マスター!
1 Pythonプログラミングを始めるための予備知識
2 Pythonの基礎を学ぼう
3 プログラムの流れを変えたり処理を繰り返したりする
4 組み込み型の活用方法を理解しよう
5 オリジナルの関数を作成する
6 テキストファイルの読み書きを理解しよう
7 オリジナルのクラスを作成する
Amazonで詳しく見る
紹介文
どうやってプログラミングを学んだ?他人のコードをどうやって読む?ソフトウェアはどう設計する?バグを追跡する方法は?プログラミングの将来はどうなる?プログラミング言語が果たす役割は?プログラマであるピーター・サイベルが15人の偉大なコーダーからその技を聞き出すインタビュー。
ジェイミー・ザウィンスキー
ブラッド・フィッツパトリック
ダグラス・クロックフォード
ブレンダン・アイク
ジョシュア・ブロック
ジョー・アームストロング
サイモン・ペイトン・ジョーンズ
ピーター・ノーヴィグ
ガイ・スティール
ダン・インガルス
L・ピーター・ドイチュ
ケン・トンプソン
フラン・アレン
バーニー・コーセル
ドナルド・クヌース
Amazonで詳しく見る
紹介文
ディープラーニングの本格的な入門書。外部のライブラリに頼らずPython 3によってゼロからディープラーニングを作成できる。
実際にシステムを作りながらディープラーニングを学ぶ!
ディープラーニングの本格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優れているのか? なぜ層を深くすると認識精度がよくなるのか? といった“Why”に関する問題も取り上げます。
Amazonで詳しく見る
紹介文
Pythonの作者自らが書き下ろした手引書。入門者がおさえておくべき機能やコンセプトを解説し、さらに特徴的な機能を多く紹介。
Python初心者必読のチュートリアルが3.9対応で登場!
Pythonの作者Guido氏自らが書き下ろした、Python入門者のための手引書です。Pythonの言語と、入門者がおさえておくべきシステムの基本的な機能やコンセプトを解説し、さらにPythonの特徴的な機能を数多く取り上げて紹介することで、この言語の雰囲気とスタイルをわかりやすくつかめるよう配慮しています。5年ぶりの改訂版で、Python3.9.0に対応しました。入門者必読の書です。
Pythonの作者自らが書き下ろした手引書。入門者がおさえておくべき機能やコンセプトを解説し、さらに特徴的な機能を多く紹介。
Amazonで詳しく見る
紹介文
一つ一つ丁寧に解説した信頼のロングセラー
【シリーズ累計100万部突破!】
プログラミング教科書のベストセラー、高橋麻奈の「やさしい」シリーズの『やさしいC』を、新装丁+スッキリとした本文デザインで、より親しみやすく、より読みやすく改訂します。
経験がなく、はじめてプログラミングをはじめる人にも、無理なくプログラミングの基本から学習してもらえるように、次の点を心がけています。
・読みやすい解説でスラスラ読み進められます。
・豊富なイラスト図解で、概念をイメージでわかるようにしています。
・たくさんのサンプルプログラムで、試して理解できます。
セキュリティ関数などの新しいC言語の仕様や、3月に登場したVisual Studio 2017への対応なども行っています。
C言語の基本から一つ一つ丁寧に解説しているので、はじめてプログラミングをされる人でも、しっかり習得できる書籍です。
Amazonで詳しく見る
紹介文
豊富なサンプルと練習問題で基礎を完全マスター。プログラムを自作するための応用力が身に付く。
プログラミングとは何だろう
はじめの一歩-文法規則の理解
入出力を行う-標準入出力の理解
条件で動作を分岐する-条件分岐と情報論理の理解
何度も繰り返す-繰り返し処理の理解
大きな数のデータを扱う-配列の理解
データの保存と読み出し-ファイル入出力の理解
基本的な文字列操作-文字配列操作
文字列の自在なコントロール
機能を自分で作る-独自の関数構築法の理解
機能を活用する-既存関数の利用
データをまとめて管理する-構造体の理解
記憶する場所を操作する-ポインタとアドレスの理解
覚えておきたいテクニック
中級プログラマに向けた例示
Amazonで詳しく見る
紹介文
第1部 はじめに(真珠貝を開いて
「ああ(そうか)!」アルゴリズム
データで決まるプログラムの構造 ほか)
第2部 パフォーマンス(パフォーマンスに関する考察
封筒の裏で…
アルゴリズムデザインのテクニック ほか)
第3部 作品(ソート
サンプリング問題
探索 ほか)
Amazonで詳しく見る
紹介文
タールの沼
人月の神話
外科手術チーム
貴族政治、民主政治、そしてシステムデザイン
セカンドシステム症候群
命令を伝える
バベルの塔は、なぜ失敗に終わったか?
予告宣言する
5ポンド袋に詰め込んだ10ポンド
文書の前提
1つは捨石にするつもりで
切れ味のいい道具
全体と部分
破局を生み出すこと
もう1つの顔
銀の弾などない-ソフトウェアエンジニアリングの本質と偶有的事項
「銀の弾などない」再発射
『人月の神話』の命題-真か偽か
『人月の神話』から20年を経て
Amazonで詳しく見る
紹介文
第1章 達人の哲学
第2章 達人のアプローチ
第3章 基本的なツール
第4章 妄想の達人
第5章 柳に雪折れ無し
第6章 コーディング段階
第7章 プロジェクトを始める前に
第8章 達人のプロジェクト
Amazonで詳しく見る
紹介文
コードを書き、読み、洗練する
本書のケーススタディを注意深く読むことで、コードを洗練していく過程で行うべき判断について学ぶことができます。プログラムが動作したからといって、プログラミングが終わったことにはならないのです。
本書のケーススタディを注意深く読むことで、コードを洗練していく過程で行うべき判断について学ぶことができます。プログラムが動作したからといって、プログラミングが終わったことにはならないのです。
第1章 クリーンコード
第2章 意味のある名前
第3章 関数
第4章 コメント
第5章 書式化
第6章 オブジェクトとデータ構造
第7章 エラー処理
第8章 境界
第9章 単体テスト
第10章 クラス
第11章 システム
第12章 創発
第13章 同時並行性
第14章 継続的改良(コマンドライン引数のパーサを用いたケーススタディ)
第15章 JUnitの内部
第16章 SerialDateのリファクタリング
第17章 においと経験則
付録A 同時並行性II
付録B org.jfree.date.SerialDate
付録C 経験則のクロスリファレンス
Amazonで詳しく見る
紹介文
リファクタリングのガイドブックであり、ソフトウェア開発者にとって非常に役立つ一冊。
ソフトウェア開発の名著、第2版登場!
リファクタリングは、ソフトウェアの外部的な振る舞いを保ったままで、内部の構造を改善する作業を指します。本書はリファクタリングのガイドブックであり、リファクタリングとは何か、なぜリファクタリングをすべきか、どこを改善すべきか、実際の事例で構成され、ソフトウェア開発者にとって非常に役立つものとなっています。
本第2版では、約20年前のオリジナル原稿の構成は変わらないものの、大幅に書き換えられているほか、サンプルコードがJavaからJava Scriptになるなど、現代的にアレンジされています。
Amazonで詳しく見る
紹介文
Winner of the 2011 Jolt Excellence Award! Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours- sometimes even minutes-no matter what the size of a project or the complexity of its code base. Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the "deployment pipeline," an automated process for managing all changes, from check-in to release. Finally, they discuss the "ecosystem" needed to support continuous delivery, from infrastructure, data and configuration management to governance. The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization.
For each, they review key issues, identify best practices, and demonstrate how to mitigate risks. Coverage includes * Automating all facets of building, integrating, testing, and deploying software * Implementing deployment pipelines at team and organizational levels * Improving collaboration between developers, testers, and operations * Developing features incrementally on large and distributed teams * Implementing an effective configuration management strategy * Automating acceptance testing, from analysis to implementation * Testing capacity and other non-functional requirements * Implementing continuous deployment and zero-downtime releases * Managing infrastructure, data, components and dependencies * Navigating risk management, compliance, and auditing Whether you're a developer, systems administrator, tester, or manager, this book will help your organization move from idea to release faster than ever-so you can deliver value to your business rapidly and reliably.
Foreword by Martin Fowler Preface Acknowledgements About the Authors Part I Foundations 1 The Problem of Delivering Software 2 Configuration Management 3 Continuous Integration 4 Implementing a Testing Strategy Part II The Deployment Pipeline 5 Anatomy of the Deployment Pipeline 6 Build and deployment scripting 7 Commit Testing Stage 8 Automated Acceptance Testing 9 Testing Non-Functional Requirements 10 Deploying and Releasing Applications Part III The Delivery Ecosystem 11 Managing infrastructure and environments 12 Managing Data 13 Managing components and dependencies 14 Advanced version control 15 Managing Continuous Delivery Bibliography Index
Amazonで詳しく見る
紹介文
体験!
JavaScriptで
はじめてのプログラミング
本書は、プログラミングに初めて触れる方々を対象としています。
一般ビジネスマンやご年配、文系の学生さんなど、普通にパソコンを使える方なら大丈夫ですが、僅かでもプログラミング経験のある方はご遠慮ください。
「非エンジニア」だからこその、必要最小限の知識に絞りました。
でも、読んで理解するのと、実際に手を動かすのでは大違い。
社会人向けITスクール「TechAcademy」で人気の体験型プログラミング講座を、そのまま本にしました。
HTML5とCSSで手取り足取りWebページを作り、JavaScriptを使ってゲーム制作にチャレンジします。
本書を通じ、コンピュータの仕組みが腑に落ち、ITエンジニアやプログラマとの会話も円滑になるでしょう。
準備編
序章 プログラミング体験の前に
1章 コンピュータは難しくありません
体験編
2章 HTMLを自分で書いてみましょう
3章 HTMLタグを使ってみましょう
4章 CSSで見栄えをよくしましょう
5章 JavaScriptで動かしましょう
6章 簡単なアプリ制作を体験しましょう
教養編
7章 プログラミングとビジネスの関わり
8章 もっと深く知りましょう
Amazonで詳しく見る
紹介文
もの言わぬ機械とコミュニケーションする手段「プログラミング」。コンピュータが隆盛を極めた今、もはやそれは必須の「教養」だ。この本は、一冊だけで優れたプログラマーの思考を習得することを目指す。ジョブズやゲイツ、現代の成功者はどんな世界を見ているのか?21世紀に生き残るための「必修科目」。
1 プログラミングはあなたの隣に(プログラミングを学ぶと、どうなる
プログラミングとは何だろう ほか)
2 コンピュータ要らずのプログラミング入門-基本ルールを知ろう(「伝え漏らすべからず」
あくまで「コミュニケーション」の一様態 ほか)
3 今すぐ役立つプログラミングテクニック-プログラマーの思考法を知ろう(アルゴリズム-効率的な作業手順を「形」にする
処理、分岐、ループ-プログラムの基礎パーツ ほか)
4 簡単コンピュータプログラミング講座(いよいよコンピュータプログラミングを始めよう!
MOONBlockを使ってみよう ほか)
5 プログラミングの未来(プログラミングは普通の文章に近づく
小学校でプログラミングを学ぶ時代 ほか)
Amazonで詳しく見る
紹介文
Scratchを初めて学ぶ子どもと大人のために使い方や機能を丁寧に解説。子どもにとって意味が分かりにくい条件分岐や座標、関数については、考え方を詳しく解説し、大人がどうやって子どもに考え方を説明すればいいか身近な例をひもといて紹介している。
第1章 プログラミングを始めよう
第2章 Scratchを始めよう
第3章 音を鳴らしてみよう
第4章 自動で動く車を作ろう
第5章 迷路ゲームを作ろう
第6章 もぐらたたきを作ろう
第7章 オート紙芝居を作ろう
第8章 シューティングゲームを作ろう
第9章 電子スノードームを作ろう
第10章 クイズ!できるもんを作ろう
第11章 幾何学模様を作ろう
第12章 ブロックくずしを作ろう
Amazonで詳しく見る
紹介文
小学校で始まったプログラミング教育は論理的思考や国語力が養われると注目されています。本書は小学生なら知っておきたいプログラミングの超きほんがわかる本。マンガやワークがついているので理解しやすい。スクラッチの基本も紹介。小学校中学年 高学年向け。
Amazonで詳しく見る
紹介文
難解なプログラミングを、文字による解説だけで理解するのは困難。4章では、ブロック図を並べるというプログラミングの疑似体験を通して、「プログラミングの真髄」が視覚的に理解できる。続く5章では、実際にPythonを使って簡単なプログラムを作成しながら具体的な活用も体験し、理解を深める。
第1章 プログラミングとは何か
第2章 プログラミングの大きな流れを知ろう
第3章 どの言語にも共通するプログラミングの真髄を学ぼう
第4章 プログラミングを疑似体験しよう
第5章 Pythonでカンタンなプログラミングを体験しよう
第6章 スキルアップするために知っておきたいプログラミングの仕組み
第7章 最初に学ぶプログラミング言語は何にする?
第8章 これから後のプログラミング学習の進め方
Amazonで詳しく見る
紹介文
第1部 基礎(ソフトウェアデリバリーの問題
構成管理
継続的インテグレーション
テスト戦略を実装する)
第2部 デプロイメントパイプライン(デプロイメントパイプラインの解剖学
ビルド・デプロイメントスクリプト
コミットステージ
自動受入れテスト
非機能要件をテストする
アプリケーションをデプロイ・リリースする)
第3部 デリバリーエコシステム(基盤と環境を管理する
データを管理する
コンポーネントや依存関係を管理する
高度なバージョン管理
継続的デリバリーを管理する)
Amazonで詳しく見る
紹介文
この文法や機能とどんなときに使えばいいの?プログラムはどこから書いていけばいいの?どんな順番でプログラムを読めばいいの?jQueryはどうやって使うの?たった90行のコードに基本を凝縮。付録・HTMLとCSSの基本。
第1章 JavaScript入門準備(プログラムを学ぶうえでの心構え
JavaScriptとは何か ほか)
第2章 JavaScriptの文法(基本的な文法
文字列と数値 ほか)
第3章 JavaScriptでHTMLやCSSを操作する(windowオブジェクト-JavaScriptで最も重要なオブジェクト
DOM-JavaScriptからHTMLやCSSを操作するしくみ ほか)
第4章 プログラムの読み方と組み立て方
第5章 jQueryでプログラミングを楽にする(jQuery入門準備
基本的な機能と使い方 ほか)
Amazonで詳しく見る
紹介文
アクションやレーシングゲーム、迷路など、人気のプログラミング言語「スクラッチ」を使った8種類のゲームの作り方が学べる解説書。
『10才からはじめるプログラミング図鑑』に第2弾が登場!アクションゲームやレーシングゲーム、「迷路」や「音」を使ったゲームまで、人気のプログラミング言語「スクラッチ」を使った8種類のゲームの作り方が学べます。カラフルなイラストとわかりやすい図解で、楽しみながらプログラミングに取り組める解説書です。かんたんに作れて、自分だけのカスタマイズも自在!作ったゲームは仲間といっしょに遊んだり、オンラインで公開したりして楽しもう。スクラッチの面白くて奥深い世界が君を待っているぞ!*すべての漢字にふりがなつき。【この本で作れるゲーム】「スター・ハンター」 タコをよけながら星を集めよう!「チーズをさがせ」 迷路のなかでチーズを探そう!「サークル・ウォーズ」 てきと味方をまちがえないで!「おサルのジャンプ」 バナナをぜんぶ集めよう!「ホウキにのった魔女」 魔法の火の球でモンスターをたおそう!「犬のごちそう」 ジャンプしながら大好物のほねを集めよう!「氷の上のレース」 仲間といっしょに競争だ!「ドラムで音あそび」 鳴った音の順番をおぼえよう!
C・ヴォーダマンほか著/山崎正浩訳;0501;09;アクションやレーシングゲーム、迷路など、人気のプログラミング言語「スクラッチ」を使った8種類のゲームの作り方が学べる解説書。;20171201
1 コンピューターゲームとは?
よいゲームに必要なもの
ゲームのふん囲気
ゲームのジャンル
どのようにプログラムは動くのか
2 さあ始めよう!
スクラッチはどんな言語だろう?
スクラッチのインストールと起動
スクラッチのインターフェース
3 スター・ハンター
スター・ハンターの作り方
4 チーズをさがせ!
チーズをさがせ!の作り方
5 サークル・ウォーズ
サークル・ウォーズの作り方
6 おサルのジャンプ
おサルのジャンプの作り方
7 ホウキにのった魔女
ホウキにのった魔女の作り方
8 犬のごちそう
犬のごちそうの作り方
9 氷の上のレース
氷の上のレースの作り方
10 ドラムで音あそび
ドラムで音あそびの作り方
11 次はどうする?
リミックスとオリジナルゲーム
上手なプログラミング
次のレベル
ゲームを作る仕事
もっと楽しもう!
12 用語集と索引
Amazonで詳しく見る
紹介文
シリーズ累計50万部突破の定番入門書「スッキリわかるシリーズ」の『Java入門 実践編』に「第3版」が登場!最新Java16対応し、近年のJava改訂による新機能(Record等)の取り込みのほか、GitやMavenといったツール類の活用方法も具体的・実践的に解説! 新人エンジニア湊君の成長を傍らに、開発中に発生するJavaのいろんな「なぜ?」にしっかりと答えながら解説が進み、付録には「エラー解決・虎の巻」を用意して、独学に適した挫折しにくい紙面展開で、中級者に進むあなたを、効率的かつ、実践的にエスコートしていきます。
Amazonで詳しく見る
紹介文
ゲーム作りに初挑戦する主人公と一緒にプログラミングが学べる入門まんが。丁寧な解説付きで、考え方やネットマナーも身につく。
ゲーム作りに初挑戦する主人公と一緒にプログラミングが学べる入門まんが。プログラミングソフト「Scratch2.0」を使ってアクションゲームを作りながら、基本的な考え方や仕組みが習得できる。インターネットを使用する上で大切なマナーも紹介。
Amazonで詳しく見る
紹介文
プログラミングの「いろは」、やさしく教えます!
「営業でも、プログラミングって知っておく必要があるの?」
村口福は、入社3年目の営業マン。人づきあいは得意だけれど、細かい作業が苦手で、上司からやっかいな事務作業を頼まれると、帰りが遅くなってしまいます。
プログラミングが得意な営業の先輩、井川詠花に手ほどきを受けたことから、徐々にその楽しさに目覚め始めた福。でも、同時に詠花の妹とデートするという「課題」を課せられて…?
===
昨今、「プログラミング」が話題に上ることが多くなりましたが、プログラマーでも開発者でもない一般のビジネスパーソンにとっては、プログラミングは「なんだか縁遠いもの」、「ややこしいもの」という印象が強いでしょう。
本書では、そんな一般のビジネスパーソンに向けて、
・プログラミングとはつまり何なのか
・どんなところが便利なのか
・プログラミングの面白さとはどんなところなのか
・一般のビジネスパーソンでも知っておくべきなのか、簡単にできる方法はあるのか
といった内容をまとめています。
プログラミング未経験者の営業マン、村口くんと一緒に学んでみましょう!
===
序章では、プログラミングとはざっくりいうと何なのか、どんなところが便利かを学びます。コンピューターは使わずに、福の手元にあった数字の札を使って“プログラミング的な”並び替えを行ってみます。
第1章では、プログラミングでは具体的にどんなことができるのかを学びます。コードを書かなくてもプログラミングができるサービス(本書ではMicrosoft Flow)を使っていきます。
第2章では、やはりコードを書かなくてもプログラミングができるビジュアルプログラミングツール(本書ではScratch)が登場します。入力した数字を使って計算結果を返すインタラクティブなプログラムを作ってみます。
第3章では、プログラミング言語の中から、JavaScriptについて簡単に紹介します。また、そもそもプログラムは、どのようにコンピューターの中で動いているのかについて、コンピューターのしくみを紐解きながら学びます。
第4章では、いよいよ実際に簡単なプログラムコードを書いて実行してみます。プログラミングの基本的な流れである「順次」「選択」「繰り返し」について、それぞれプログラムを書いて実行していきながら学びます。
また、プログラムがうまく動かなかった場合に役立つ「デバック」についても、いくつかの方法を紹介していきます。
プロローグ 【マンガ】先輩との約束
第1章 プログラミングってなんだろう? ~Microsoft Flow
【マンガ】
・あれをこうして、全部自動化
【解説】
・「面倒なことはコンピューターに」が、プログラミングのきほん
・プログラミングの基本は、「○を□する」こと
・フローサービスでプログラミングを体験
・挑戦してみよう―サイトの更新情報を通知する
・プログラミングは発想が大切
第2章 ブロックをつなげるだけ! ゲームのようなプログラミング~Scratch
【マンガ】
・小学校のプログラミング講座
【解説】
・ビジュアルプログラミングを使った子供向けプログラミング教材
・ロボットと組み合わせた楽しい学習教材も登場
・スクラッチをはじめてみよう
・対話するプログラムを作ろう
・変数を使ってみよう
・計算させてみよう
第3章 プログラミングをもう少し深く知ってみよう ~JavaScript
【マンガ】
・2人をつなぐしくみ
【解説】
・JavaScriptとは
・コンピューターのしくみを理解すれば、トラブル時の助けに
・コンピューターは、実はすべて同じ?
・制御と演算を担当するコンピューターの頭脳『CPU』
・記憶装置が2つに分かれている理由
・JavaScriptでプログラムを作ってみよう
・どんなプログラムを作ったの?
第4章 プログラミングを実際にやってみよう ~JavaScript
【マンガ】
・はじめてのプログラミング
【解説】
・「順次」のプログラムを学ぼう
・「選択」のプログラムを学ぼう
・「繰り返し」のプログラムを学ぼう
・配列・リストを使ってみよう
・プログラムの「デバッグ」を学ぼう
エピローグ 【マンガ】プログラミングがつないだ未来
Amazonで詳しく見る
紹介文
Pythonのしくみと作り方をイラストで詳しく解説。ポイント解説と練習問題で独学でも知識が身に付く。オブジェクト指向の考え方もしっかり理解できる。
第1章 プログラムを作ろう!
第2章 プログラムの材料と道具
第3章 データと型のすべて
第4章 データの入れ物
第5章 条件分岐と繰り返し
第6章 ファイルの読み書き
第7章 Pythonで画を描く
第8章 関数を作る
第9章 新しいデータ型を作る
第10章 本格的なプログラミング
付録
Amazonで詳しく見る
紹介文
「Scratch」は、マサチューセッツ工科大学の研究所「MITメディアラボ」が開発した、プログラミングツールです。わかりやすい画面で子どもから楽しめ、目的にたどりつくための論理的思考を鍛えられるようになっています。本書では、6つのゲームを作りながら、思考力やプログラミングの基礎力を養います。対象:小学3年生以上。
序章 スクラッチをさわってみよう
1章 「カエルになったナイト」-お城の中で、魔法使いと対決する劇を作ろう
2章 「ねこピアノ」-音色を変えられる電子ピアノを作ろう
3章 「パンダ先生の計算ゲーム」-自動で問題を出して解答できるゲームを作ろう
4章 「コウサギヘルプ」-カーソルキーで操作して敵をよけるゲームを作ろう
5章 「たこシューティング」-すみを発射して、敵を倒すゲームを作ろう
6章 「くまたまごキャッチ」-落ちてくるたまごとをマウス操作で拾うゲームを作ろう
Amazonで詳しく見る
紹介文
1 文章を構造化してみよう(HTMLってなんだろう
HTMLを書くための環境 ほか)
2 ページの中身を意味に合わせて仕分けてみよう(CSSの意味
CSSの記述方法 ほか)
3 色の基礎知識と配色にチャレンジしよう(どうして色使いがヘタなのか
色の3要素 ほか)
4 装飾とレイアウトを取り入れてみよう(視覚的ブロックの作り方
位置を指定する方法 ほか)
Amazonで詳しく見る
紹介文
プログラミング学習シリーズJavaが、開発環境を最新化して改訂!文法やクラス、メソッドなどをしっかり学べる入門書
プログラミング学習シリーズJavaが、開発環境を最新化して改訂!
文法からクラスやメソッドの書き方・使い方までしっかり学ぼう!
本書は、現在もっとも幅広く使われているプログラミング言語の1つ
「Java」がはじめてという初心者を対象に、文法やプログラムの基本知識を
わかりやすく丁寧に教える入門書です。
これまで多くの学生にJavaの授業をしてきた筆者が、その経験を活かし、
変数やif文、switch文による条件分岐、for文やwhile文を使った繰り返しから、
クラスやメソッドの使い方、作り方まで、つまずきやすいところを
ケアしながら解説します。
サンプルプログラムは短くてシンプルなものを選び、何をしているのかが
よくわかるように、コメントをしっかりつけました。
章の最後には練習問題があり、力試しもできます。
・何から学習すれば良いかわからない
・Javaをはじめて学ぶ・あらためて基本から学びたい
・現場で通用する基礎を身につけたい
という方におすすめの1冊です。
第1章 Java言語に触れる
Java言語に触れる
Java言語のプログラム構成
プログラムの作成
第2章 Java言語の基本
出力
変数
算術演算子と式
型変換と文字列の扱い
第3章 条件分岐と繰り返し
条件分岐
論理演算子
処理の繰り返し
配列
第4章 メソッド(クラスメソッド)
メソッドとは
メソッドの引数
メソッドの戻り値
メソッドのオーバーロード
第5章 クラスの基本
オブジェクト指向
クラスとインスタンス
参照
クラス活用の実例(バーチャルペット・ゲームの作成)
第6章 クラスの一歩進んだ使い方
コンストラクタ
インスタンスメソッド
クラス変数とクラスメソッド
メソッドの活用の実例(バーチャルペット・ゲームの改良)
第7章 継承
継承とは
フィールドとメソッドの継承
継承関係とコンストラクタの動き
ポリモーフィズム
継承の実例(バーチャルペットの種類を増やす)
第8章 抽象クラスとインタフェース
修飾子とアクセス制御
抽象クラス
インタフェース
抽象クラスとインタフェース(バーチャルペットクラスを抽象クラスにする)
Amazonで詳しく見る
紹介文
Webプログラミングのはじめの一歩。フォームや掲示板の作成を通して、PHPの基礎を習得しよう。
1章 はじめてのWebプログラミング
2章 プログラミングのキホン
3章 占いアプリを作成しよう
4章 フォームと連携させよう
5章 掲示板アプリを作成しよう
付録 開発に役立つ補足情報
Amazonで詳しく見る
紹介文
5~7歳を対象にしたiPadアプリ「ScratchJr」を使った知育・育児本。タッチ操作で楽しくプログラミングが学べる。
5~7歳を対象にした、無料のiPadアプリ「ScratchJr」を使った知育・育児本です。
親子で楽しみながら、プログラミングが学べます。
ScratchJrを使った効果的なアクティビティ(学習体験)を通して、
アイデアを思い浮かべて、その実現方法を考えながら、
筋道を立てて考える力、実際に作り上げる力、周りの人と楽しむことを育みます。
デジタルツールを駆使しながら、積み木やブロックのような感覚で、
創造力や問題解決力を養いましょう。
●で始まるのがお子様と読むページ、
◎で始まるのがおうちのかたが読むページです。
●みんなへの めっせーじ
◎おうちのかたへ 著者からのメッセージ
●すくらっちじゅにあを はじめよう
・はじめまして
・すくらっちじゅにあで あそぶ じゅんび
・ねこちゃんを うごかそう
・じぶんの きゃらくたーを えがこう
・じぶんの きゃらくたーを うごかそう
・おうちの ひとや おともだちに みせよう
●すくらっちじゅにあを たのしもう
・はじめる じゅんび
・うみの なかの ようす
・なんでも たべよう
・あみだくじを つくろう
・じゃんぷげーむを つくろう
・うごくえほんを つくろう
●たのしかったね
●どんな ぶろっくが あるかな
◎ScratchJrをつくった人たちからのメッセージ
◎日本の専門家からのメッセージ
◎ちょっとだけピョンキー
◎ScaratchJrの動作環境とインストール
●ScratchJrで たくさん あそべたかな?
Amazonで詳しく見る
紹介文
2004年に『アルゴリズムC・新版』として発行した書籍の復刊。研究者、大学院生、大学生および現場技術者の必携書!
アルゴリズムの世界的名著 復活!!
本書は、2004年に刊行した『アルゴリズムC 新版』の復刊である。
セジウィックの『アルゴリズム』は、世界の標準教科書として大変高い評価を得ている。直感的でわかりやすい説明、アルゴリズムの振舞いを示す数多くの見事な図、簡潔で具体的なコード、最新の研究成果に基づく実用的アルゴリズムの選択、難解な理論的結果のほどよい説明などがその特長である。アルゴリズムに係わる研究者、技術者、大学院生、学生必携必読の書である。
また、続刊『第5部グラフアルゴリズム』の刊行も決定!
第1部 基礎
1.はじめに
2.アルゴリズム解析の原理
第2部 データ構造
3.基本データ構造
4.抽象データ型
5.再帰と木
第3部 整列
6.初等的な整列法
7.クイックソート
8.併合とマージソート
9.順位キューとヒープソート
10.基数整列
11.特殊目的の整列法
第4部 探索
12.記号表と2分探索木
13.平衡木
14.ハッシュ法
15.基数探索
16.外部探索
Amazonで詳しく見る
紹介文
プログラミング言語の大全集! 100以上のプログラミング言語や処理系、関連言語を幅広く解説。C、Java、Python、PHP、Ruby、JavaScript...主要言語はもちろんマイナー言語まで収録。初心者にも経験者にも楽しい一冊です。
おすすめプログラミング言語フローチャート
プログラミング言語を知る
プログラミング言語とは何か
どのプログラミング言語を学ぶべきか
コンピューターとプログラミング言語の歴史
プログラミング言語の活躍するシーン
プログラミング言語を分類して考える
プログラミング言語を動かすには
プログラミング言語大全
C ー高速・省リソースで現在も活躍する言語
Go ーGoogle発! 高速な現代的言語
アセンブリ ー最も低水準な言語
C++ ーCにオブジェクト指向を載せてパワーアップ
FORTRAN ー科学技術計算に特化した最初期の高水準言語
D ーC/C++の影響を受けて書きやすくした言語
Rust ー高速・安全・並行 新世代の言語
Python ー入門から機械学習まで大人気のプログラミング言語
+1 PyPy ―Python の処理系の1 つ
+1 Cython ―Python 高速化のための言語
+1 MicroPython ―組み込み向けのPython
Ruby ー日本が世界に誇るスクリプト言語
+1 mruby ―組み込み向けのRuby
+1 Crystal ―もしもRubyが静的型付けを重視したら?
+1 JRuby ―JVM で動くRuby
+1 Opal ―Ruby をJavaScript にする
+1 Streem ―Matz の新言語
PHP ー最もWebで使われるWebアプリ開発に特化したプログラミング言語
+1 Hack/HHVM ―Facebook 製のPHPライクな言語
Lua ー高速動作と高い移植性を持つ組み込みスクリプト言語
+1 LuaJIT ―JIT でLua を速くする
+1 MoonScript ―Luaを書きやすくしたいなら
Perl ー強力な文字列処理機能を持つ軽量スクリプト言語
+1 Raku ― 幻のPerl 6
JavaScript ーWebブラウザ/サーバーで活躍する言語
Node.js ーWebサーバーで動作するJavaScript実行エンジン
+1 Deno ― 新しい安全志向のJavaScript 実行環境
TypeScript ーJavaScriptのスーパーセットで大規模アプリの開発向け
CoffeeScript ー短く手軽に記述できるJavaScript代替
Dart ーJavaScriptの置き換えからモバイルアプリ開発まで幅広く
WebAssembly ーWebブラウザ用のアセンブリ言語
Java ースマートフォンやWebなど幅広く利用されるオブジェクト指向言語
+1 Vim script ― Bill Joy のViから生まれたVim
Kotlin ー簡潔に書けて汎用的なAndroidの公式開発言語
+1 Xtend ―Javaをより使いやすくするというモチベーション
Scala ーオブジェクト指向と関数型言語の特徴を持つJVM言語
+1 Scala.js ― Scala のパワーをJavaScript に
Groovy ーJVM上で動作するスクリプト言語
Processing ーデジタルアートとデザインのためのビジュアル表現言語
Swift ーAppleによるiOS/macOS向けプログラミング言語
Objective-C ーmacOS/iPhoneアプリ開発で活躍したCの亜種
+1 Simula ― C++ とJava の先祖?
C# ーWindowsの定番言語 UnityやXamarinで人気がさらに加速
F# ー.NETとML系言語の出会い
Visual Basic ーWindows開発で定番の初心者向け言語
VBA ー仕事を強力にサポートするExcel/Word等のマクロ言語
+1 Excel 関数 ―プログラミングの入口になる便利な機能
+1 Google Apps Script ― GoogleのVBA
Object Pascal/Delphi ーかつてはWindowsアプリケーション開発で人気 近年も地道に改良
+1 ALGOL ― 構造化プログラミングの初期の言語
+1 Pascal ―人気の教育用言語
+1 Ada ― 国防プロジェクトから生まれた安全重視の言語
+1 Eiffel ― Rubyにも影響を与えたオブジェクト指向の一つの姿
+1 Free Pascal ―オープンなPascal 処理系
AWK ー効率的に使えるテキスト処理専用の言語
sed ーテキストファイルを加工するUNIX出身言語
PowerShel ーWindows標準のシェルとスクリプト言語
+1 バッチファイル(コマンドプロンプト/ cmd.exe) ― Windowsの古くからの定番
+1 Windows Script Host(WSH) ― かつてのWindowsの人気スクリプト実行環境
Bash/Shell Script ーLinux標準のシェルBashは一通り言語の機能を持っている
+1 Z Shell (zsh) ― Bash と並ぶ人気のシェル
+1 C Shell (csh) ― Cの影響を受けたシェル
+1 KornShell (ksh) ― 高機能シェルのさきがけ
+1 Bourne Shell や互換シェル
+1 Friendly Interactive shell(fish) ― ユーザーフレンドリーなシェル
AppleScript ーmacOSのスクリプト言語
Haskell ー最も有名な関数型プログラミング言語
+1 Elm ― Web フロントエンド× Haskell
OCaml ー関数型にオブジェクト指向の強みをプラス
+1 ML― OCaml にも影響大のML 系言語の始祖
+1 Standard ML ― ML 系言語の二大巨頭
+1 Reason ― JavaScript とOCaml が出会ったら
Erlang ー高負荷サービスで人気のスケールする並行処理指向の言語
Elixir ー並行処理が得意で耐障害性・高可用性のある言語
Common Lisp ーANSIで標準化されている代表的なLisp
+1 Arc/Anarki ― Common Lisp の成功者Paul Graham による新Lisp
+1 Clojure/Clojure Script ―JVM とLisp
+1 Emacs Lisp ― 強力な設定言語
Scheme ー古くから人気のあるLisp方言の1つ
+1 Racket ― Scheme 派生の新言語
Prolog ー歴史ある論理プログラミング言語
Scratch ー楽しく始めるビジュアルプログラミング言語
+1 Viscuit ―日本発のビジュアルプログラミング言語
Smalltalk ーオブジェクト指向プログラミングに多大な影響を与えた言語
BASIC ー初心者からプロまで幅広く人気の言語
+1 F-BASIC ― FM シリーズのBASIC
+1 MSX-BASIC ― MSX シリーズのBASIC
+1 N88-BASIC ― PC-8800 で有名なBASIC
+1 ActiveBasic ― Windows でも動くBASIC
COBOL ー1959年に開発された事務処理用の言語
+1 PL/I ―メインフレーム向けのパワフルな言語
なでしこ ー日本語プログラミング言語
HSP(Hot Soup Processor) ー日本発 ゲームやツールが手軽に作れる
R ー統計解析向けの言語と実行環境
Julia ー平易さと速度を両立した科学技術計算向け言語
+1 MATLAB ― 数値計算の王道的ソフトウェア
+1 Octave(GNU Octave)― MATLAB代替として知られる言語
ActionScript ーFlashのスクリプト言語はJavaScriptの消された足跡
Haxe ーゲーム開発に便利 複数の環境で動かせるユニークな言語
+1 Nim ― Pythonのようなトランスパイル言語
+1 Mint ―ゲーム会社の内製プログラミング言語
Brainfuck ーチューリング完全な極小のコンパイラ
+1 Unlambda / Lazy K ― 関数型の難解プログラミング言語
+1 Piet ―プログラミング画像?
Whitespace ー目に見えない不思議なプログラミング言語
Appendix プログラミング言語とその周辺の知識をより深める
App. A プログラミング言語と関連する言語や記述形式
+α HTML
+α CSS
+α XML
+α JSON
+α Markdown
+α LaTeX
+α SQL
+α 正規表現
+α make
+α PostScript
+α ini
+α YAML
App. B プログラミング言語と道具
App. C プログラミング言語の作り方
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で詳しく見る
紹介文
サンプルゲームとソースコードで学ぶシューティングゲームの作り方。
シューティングゲームを作るには
ゲームライブラリ
タスクシステム
自機
弾
敵
ゲームの外枠
ステージ
ボス
アイテムとパワーアップ
特殊攻撃
オリジナルゲーム制作ガイド
Amazonで詳しく見る
紹介文
第1章 イントロダクション-コンピュータが日常的に使っているすごいアイデアはどんなものか
第2章 検索エンジンのインデクシング-世界最大の藁山から針を探す
第3章 ページランク-グーグルを起ち上げたテクノロジー
第4章 公開鍵暗号法-葉書で機密情報を書き送る
第5章 誤り訂正符号-自分で誤りを訂正するシステム
第6章 パターン認識-経験から学ぶ
第7章 データ圧縮-無から有を生み出す
第8章 データベース-一貫性の追求
第9章 デジタル署名-このソフトウェアを本当に書いたのは誰か
第10章 決定不能性とはなにか
第11章 まとめ-指先の天才はもっと賢くなるか
Amazonで詳しく見る
紹介文
ECMAScript2015によって、いっそう安全で便利な言語へと進化をつづけるJavaScriptのプログラミングスタイルを基礎から解説。手軽さゆえに油断しがちな正しい文法から、進化を遂げた新記法、オブジェクト指向構文、実際の開発に欠かせない知識まで身につけられます。
1 イントロダクション
2 基本的な書き方を身につける
3 基本データを操作する-組み込みオブジェクト
4 くり返し利用するコードを1箇所にまとめる-関数
5 大規模開発でも通用する書き方を身につける-オブジェクト指向構文
6 HTMLやXMLの文書を操作する-DOM(Document Object Model)
7 クライアントサイドJavaScript開発を極める
8 現場で避けて通れない応用知識
Amazonで詳しく見る
紹介文
ウェブページ・ホームページを1歩ずつ作っていくから
正しい使い方と意味を基礎からしっかり学べます。
「はじめて」でも「よくわかる」 5つのポイント
・制作環境の準備から書いてあるから心配せずにはじめられる。
・ゆっくり 1つずつ学んでいくからHTMLタグの意味もよくわかる。
・一緒にCSSスタイルシートを学ぶから正しい使いかたが身に付く。
・最新のHTML5とCSS3で解説しているから、ずっと役に立つ。
・スマホ・タブレット・PCなど最近の閲覧環境に対応。
---
本書は、実際にウェブサイトをひとつ作り上げながら、HTMLとCSSをステップ・バイ・ステップで学んでいくタイプの本です。構成は大きく二段階になっており、はじめにごく簡単なサンプルをいくつか作ってみておおまかな感触をつかみ、そのあとに実践的なウェブサイトの制作へと進んでいく流れとなっています。
ウェブサイトの制作ではまず最初に、スマートフォン向けのシンプルなレイアウトを作成しながら基礎的な事項を学習していきます(いわゆるモバイルファーストです)。解説内容は、できることを何から何まで列挙するのではなく、実践において必要となるであろう重要項目に絞り込んでありますので、まったくの初心者でも無理なく進められます。スマートフォン向けのレイアウトが完成し、基礎技術が身についたところで、さらにタブレット用のレイアウト、PC用のレイアウトと、より高度な技術へとステップアップしていきます(この過程においてメディアクエリ、レスポンシブイメージ、レスポンシブウェブデザインなどのテクニックも習得します)。
本書に掲載されているウェブサイトのデータはすべてダウンロードできます。サンプル・ファイルは各章ごとに作業前のファイルと完成形がそれぞれ用意されていますので、読者のレベルや都合に合わせて途中からはじめることも可能です(そのため実習を伴う講義・セミナー用のテキストとしても最適です)。はじめてのHTML+CSSの習得に、本書をご活用いただけましたら幸いです。
■Part 1 はじめる前の準備編
01 ホームページは何でできているのか?
02 ウェブサイト制作のための準備をしよう
■Part 2 やさしい入門編
03 HTMLってどんなもの?
04 HTMLでマークアップしてみよう
05 画像を表示させてみよう
06 CSSで表示を変えてみよう
07 HTMLとCSSを分ける理由
■Part 3 レイアウトの基本編
08 HTMLとCSSの基礎知識
09 サンプルサイト作成の準備
10 ページ全体の構造をマークアップする
11 「ホーム」以外のページも作ろう
12 リンクさせてみよう
13 CSSのボックスについて
14 「ホーム」のページを仕上げよう
15 「会社概要」のページを仕上げよう
16 「事業内容」のページを仕上げよう
17 「アクセス」のページを仕上げよう
18 「お問い合わせ」のページを仕上げよう
■Part 4 スマートフォン対応編
19 ウェブページを原寸大で表示させる
20 高画素密度ディスプレイにも対応させよう
■Part 5 さらにステップアップ編
21 表を作ってみよう
22 画面サイズに合わせてCSSを切り替える方法
23 タブレット専用のCSSを指定してみよう
24 PC専用のCSSを指定してみよう
25 PC向けのレイアウトを完成させよう
■Part 6 ウェブサイトの公開編
26 公開に必要となるサーバーについて
27 ファイルをサーバーに転送して公開しよう
Amazonで詳しく見る
紹介文
ベストセラーを原作に理系マンガ家×天才プログラマーが送る新時代の教養本。21世紀に生き残るための「必修科目」はマンガで学べ!
「もはやプログラミングは誰もが学ぶべき教養」とのメッセージを掲げ、ヒットを遂げた『教養としてのプログラミング講座』(著:清水亮、中公新書ラクレ)。その刊行から数年、国を挙げてデジタル化が進むとともに小学校で必修化がスタートするなど、実際にプログラミングは多くの人が学ぶ対象に。今回そのヒット作がまさかのマンガ化! 手がけるのは理系マンガ家・タテノカズヒロ、監修は原作同様、起業家でプログラマーの清水亮。舞台は商社、社長秘書・菅晴美(通称:スガハル)が百田(通称:疫病神)から伝授されたプログラミング的思考で次々巻き起こるトラブルに挑んでいきます。ジョブズやゲイツ、現代の成功者はどんな世界を見ている? プログラミングで仕事も(恋も)解決できる? 21世紀に生き残るための「必修科目」をマンガで学べ!
Amazonで詳しく見る
紹介文
NoSQLデータベースやフロントエンド、可視化、ログの取り扱い、環境構築の自動化など、Webエンジニアとして知っておくべき技術を、実際に試せるように、わかりやすく解説!2〜3年目までのエンジニア、最新の技術動向を知っておきたいシステム関係者など必読の1冊!
01 Webエンジニアについて
02 Ruby on Railsでの開発
03 PHPでの開発
04 NoSQLデータベース
05 フロントエンドの実装
06 ログについて
07 データの可視化
08 環境構築の自動化
09 便利な外部サービス
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で詳しく見る
紹介文
超ベスト&超ロングセラーの大改訂版
「最も明快で、最も正確なC言語入門書」として、日本で最も多くの読者から圧倒的な支持を受けているC言語入門書の大改訂版です。
プログラミング教育界の巨匠 柴田望洋が、適切なサンプルプログラム205編と図表220点を使って、C言語の基礎を語り口調で丁寧に解説しています。
初めてC言語を学ぶ初心者から、これまでの入門書では理解できなかった経験者まで、すべての学習者にとって最良の入門書です。
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で詳しく見る
紹介文
プログラミング言語教育界の巨匠による
Java入門書の最高峰!!
2007年8月刊行 18刷のロングセラー 『明解Java 入門編』の改訂版
『新・明解C言語 入門編』の柴田望洋が贈る、最も明解で最も平易なJava解説書。
たくさんの図表と、サンプルプログラムを使って、Javaの基礎から、
オブジェクト指向プログラミングの本質を、わかりやすく解き明かす。
また、今回の改訂要素として、新章「例外処理」が加わります。
著書一流のていねいな解説により、初めてプログラミングを学ぶ人、
他の入門書ではマスターできなかった人、本当にJavaをマスターしたい人など、
すべてのJavaユーザにとって、最良の1冊!
Amazonで詳しく見る
紹介文
Pythonプログラミングを全力で学ぶならこの1冊!Pythonをこれから学ぶビギナーから、基礎力を得て現場で実践したい方まで、確実なスキルアップをはかれます。
1 準備:Python3をはじめよう(Python3の準備
プログラムを試してみよう)
2 基礎:Pythonの基本構文を学ぶ(値と変数
標準ライブラリ
条件分岐、繰り返し、例外処理
リスト
タプル
セット(集合)
辞書
ユーザ定義関数
関数の高度な利用
クラス定義)
3 応用:科学から機械学習まで(テキストファイルの読み込みと書き出し
グラフを描く
NumPyの配列
機械学習を試そう)
Amazonで詳しく見る
紹介文
最も簡単なC++入門書が待望の新版に、シリーズラインナップもリニューアルで続々刊行!
絵で見てわかるC++の定番書がリニューアル!
翔泳社絵本シリーズの定番ライナップ『C++の絵本』が新しくなりました。
オブジェクト指向を含むC++言語には苦手意識を持つ人も多いものですが、
本書はイラストを多用し、短い単元で内容をまとめて、分かりやすく
解説していきます。
「C++で何か作ってみたい」「本格的言語をマスターしてみたい」という方の
要望にも十分こたえられる一冊です。オブジェクト指向の概念や最新のC++の
機能もフォローし、プロでも通じる本格的プログラミングの世界に一歩を
踏み出していただけます。
【翔泳社の「絵本」シリーズのラインナップをアップデート】
翔泳社の「絵本シリーズ」は名前のとおり、絵本のように豊富なイラストと
要点を押えた簡潔な解説でコンピュータ技術に入門できる初心者向けの
シリーズです。すべての単元を2ページ単位で読みやすくまとめ、基礎に
徹した内容で、言語/技術の初心者や手軽に習得したい方のお役に
たてるようになっています。
このたび、翔泳社は「絵本シリーズ」を全面的に改訂し、内容を現在の
技術に合わせて見直しました。シリーズラインナップ全体をリニューアルし、
新パッケージでお届けします。
新しい「絵本シリーズ」では、旧来の分かりやすさ、親しみやすさ、基礎に
徹した内容というコンセプトはそのままに、Web/ネットが全盛となった
現在のコンピュータ技術の潮流に合わせた解説を心掛けます。『Cの絵本』
『Javaの絵本』を皮切りにラインナップを順次刷新、さらに新しい仲間を
増やしてラインナップを充実していきます。
C++言語をはじめる前に
第1章 C++の基本
第2章 C++プログラムの書き方
第3章 C++の機能
第4章 参照
第5章 クラスの構築
第6章 クラスの継承
第7章 オブジェクトとメンバ
第8章 C++上級編
付録
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で詳しく見る
紹介文
入門書のベストセラーが最新トレンドに対応
累計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で詳しく見る
紹介文
プログラミング初心者を対象としたPythonの入門書。プログラミングおよびPythonの基礎から応用まで丁寧に説明。
実践を見据えた本格的な「Python入門書」!
Pythonが誕生して四半世紀。データサイエンスやウェブ開発、セキュリティなどさまざまな分野でPythonの人気が急上昇中です。プログラミング教育の現場でもCに代わってPythonの採用が増えてきています。本書は、プログラミングが初めてという人を対象に書かれた、Pythonの入門書です。前提とする知識は特にありません。プログラミングおよびPythonの基礎からウェブ、データベース、ネットワーク、並列処理といった応用まで、Pythonプログラミングをわかりやすく丁寧に説明します。
Amazonで詳しく見る
紹介文
Peter Seibel interviews 15 of the most interesting computer programmers alive today in Coders at Work, offering a companion volume to Apress's highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words "at work" suggest, Peter Seibel focuses on how his interviewees tackle the day-to-day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: www.codersatwork.com. The complete list was 284 names. Having digested everyone's feedback, we selected 15 folks who've been kind enough to agree to be interviewed: * Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow * Joe Armstrong: Inventor of Erlang * Joshua Bloch: Author of the Java collections framework, now at Google * Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger * Douglas Crockford: JSON founder, JavaScript architect at Yahoo! * L.
Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1 * Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation * Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal * Dan Ingalls: Smalltalk implementor and designer * Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler * Donald Knuth: Author of The Art of Computer Programming and creator of TeX * Peter Norvig: Director of Research at Google and author of the standard text on AI * Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress * Ken Thompson: Inventor of UNIX * Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker What you'll learnHow the best programmers in the world do their jobs! Who this book is for Programmers interested in the point of view of leaders in the field. Programmers looking for approaches that work for some of these outstanding programmers.
Table of Contents * Jamie Zawinski * Brad Fitzpatrick * Douglas Crockford * Brendan Eich * Joshua Bloch * Joe Armstrong * Simon Peyton Jones * Peter Norvig * Guy Steele * Dan Ingalls * L Peter Deutsch * Ken Thompson * Fran Allen * Bernie Cosell * Donald Knuth
Amazonで詳しく見る
紹介文
好評の『Java逆引きレシピ』が、Java 9以降のバージョンに対応。新規レシピもあり「これからも現場で役立つ」一冊。
開発現場で使える珠玉のレシピ!
好評の『Java逆引きレシピ』が、
従来のJava 6、7、8に加え、Java 9以降のバージョンにも対応し、
第2版として帰ってきました!!
最新の環境でも使えるよう既存のレシピも見直し、
新規レシピもふんだんに。「これからも現場で役立つ」一冊です。
====目次====
・第01章 Java開発の準備
・第02章 Javaの基本
・第03章 クラス・インターフェース
・第04章 コレクション
・第05章 日付操作
・第06章 ファイル・入出力
・第07章 並行プログラミング
・第08章 JDBC
・第09章 JUnit
・第10章 ネットワーク、システム、ユーティリティ
・第11章 これからのJava
第01章 Java開発の準備
1.1 セットアップ
1.2 実行
第02章 Javaの基本
2.1 パッケージとインポート
2.2 変数とデータ型
2.3 コメント
2.4 制御構文
2.5 例外処理
2.6 ラムダ
2.7 文字列操作
2.8 正規表現
2.9 数値処理
第03章 クラス・インターフェース
3.1 クラスとインターフェース
3.2 アクセス修飾子
3.3 列挙型
3.4 ジェネリクス
3.5 アノテーション
3.6 リフレクション
3.7 シリアライズ
第04章 コレクション
4.1 導入
4.2 配列
4.3 List
4.4 Set
4.5 Map
4.6 Stream
第05章 日付操作
5.1 導入
5.2 Date and Time API
第06章 ファイル・入出力
6.1 導入
6.2 ファイル
6.3 パス
6.4 入出力
第07章 並行プログラミング
7.1 導入
7.2 スレッド
7.3 タイマー
7.4 Concurrency Utilities
7.5 Fork/Join Framework
第08章 JDBC
8.1 基本的なデータベース操作
8.2 高度なデータベース操作
第09章 Junit
9.1 導入
9.2 テストケース
9.3 テストスイート
第10章 ネットワーク、システム、ユーティリティ
10.1 ネットワーク
10.2 ユーティリティ
10.3 システム
第11章 これからのJava
11.1 リリースポリシーの変更
11.2 モジュールシステム
11.3 新しい構文
11.4 APIの拡張
11.5 ツール
11.6 その他
Amazonで詳しく見る
紹介文
手作業だと膨大に時間がかかる処理を一瞬でこなすPython 3プログラムの作り方について学べる入門書。
Pythonによる自動処理入門。とにかく、わかりやすい!
ファイル名の変更や表計算のデータ更新といった作業は、日々の仕事の中で頻繁に発生します。ひとつふたつ修正するだけであれば問題はありません。しかし、それが数十、数百となってくると手に負えません。そのような単純な繰り返し作業はコンピュータに肩代わりしてもらうとすごくラクになります。本書では、手作業だと膨大に時間がかかる処理を一瞬でこなすPython 3プログラムの作り方について学びます。対象読者はノンプログラマー。本書で基本をマスターすれば、プログラミング未経験者でも面倒な単純作業を苦もなくこなす便利なプログラムを作れるようになります。さらに、章末の練習問題を解くことで、類似のタスクを自動処理するスキルをもっと高めることができます。
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で詳しく見る
紹介文
機械学習・ディープラーニングについて学ぶための、図解形式の解説書です。エンジニア1年生、機械学習関連企業への就職・転職を考えている人が、機械学習・ディープラーニングの基本と関連する技術、しくみ、開発の基礎知識などを一通り学ぶことができます。
1章 人工知能の基礎知識
人工知能とは
機械学習(ML)とは
ディープラーニング(DL)とは
人工知能と機械学習が普及するまで
2章 機械学習の基礎知識
教師あり学習のしくみ
教師なし学習のしくみ
強化学習のしくみ
統計と機械学習の違い
機械学習と特徴量
得意な分野、苦手な分野
機械学習の活用事例
3章 機械学習のプロセスとコア技術
機械学習の基本ワークフロー
データの収集
データの整形
モデルの作成と学習
バッチ学習とオンライン学習
テストデータによる予測結果の検証
学習結果に対する評価基準
ハイパーパラメータとモデルのチューニング
能動学習
相関と因果
フィードバックループ
4章 機械学習のアルゴリズム
回帰分析
サポートベクターマシン
決定木
アンサンブル学習
アンサンブル学習の応用
ロジスティック回帰
ベイジアンモデル
時系列分析と状態空間モデル
k近傍(k-NN) 法とk平均(k-means)法
次元削減と主成分分析
最適化と遺伝的アルゴリズム
5章 ディープラーニングの基礎知識
ニューラルネットワークとその歴史
ディープラーニングと画像認識
ディープラーニングと自然言語処理
6章 ディープラーニングのプロセスとコア技術
誤差逆伝播法によるニューラルネットワークの学習
ニューラルネットワークの最適化
勾配消失問題
転移学習
7章 ディープラーニングのアルゴリズム
畳み込みニューラルネットワーク(CNN)
再帰型ニューラルネットワーク(RNN)
強化学習とディープラーニング
オートエンコーダ
GAN(敵対的生成ネットワーク)
物体検出
8章 システム開発と開発環境
人工知能プログラミングにおける主要言語
機械学習用ライブラリとフレームワーク
ディープラーニングのフレームワーク
GPUプログラミングと高速化
機械学習サービス
Amazonで詳しく見る
紹介文
一通りプログラミングができるようになった。しかし、読みにくい、遅い、頻繁にエラーが発生する、書いたコードを修正すると動かなくなる等々、なかなか「よいコード」を書けないとお悩みではありませんか? 本書は、よいコードを書く上で指針となる前提・原則・思想、つまり「プリンシプル」を解説するプログラミングスキル改善書です。初心者向けの書籍では絶対に説明しない、古今東西のプログラマーの知恵をこの一冊に凝縮しました!
プロローグ 本書の読み方
0.1 プリンシプルのカテゴリ
0.2 プリンシプルの説明のフォーマット
0.3 プリンシプルの説明における用語法
0.4 プリンシプルの説明の注意点
第1章 前提 ~プログラミングの変わらぬ真実~
1.1 プログラミングに銀の弾丸はない
1.2 コードは設計書である
1.3 コードは必ず変更される
第2章 原則 ~プログラミングのガイドライン~
2.1 KISS
2.2 DRY
2.3 YAGNI
2.4 PIE
2.5 SLAP
2.6 OCP
2.7 名前重要
第3章 思想 ~プログラミングのイデオロギー~
3.1 プログラミングセオリー
3.2 【プログラミングセオリーを支える3つの価値1】コミュニケーション
3.3 【プログラミングセオリーを支える3つの価値2】シンプル
3.4 【プログラミングセオリーを支える3つの価値3】柔軟性
3.5 【プログラミングセオリーを実現する6つの原則1】結果の局所化
3.6 【プログラミングセオリーを実現する6つの原則2】繰り返しの最小化
3.7 【プログラミングセオリーを実現する6つの原則3】ロジックとデータの一体化
3.8 【プログラミングセオリーを実現する6つの原則4】対称性
3.9 【プログラミングセオリーを実現する6つの原則5】宣言型の表現
3.10 【プログラミングセオリーを実現する6つの原則6】変更頻度
3.11 アーキテクチャ根底技法
3.12 【アーキテクチャ根底技法1】抽象
3.13 【アーキテクチャ根底技法2】カプセル化
3.14 【アーキテクチャ根底技法3】情報隠蔽
3.15 【アーキテクチャ根底技法4】パッケージ化
3.16 【アーキテクチャ根底技法5】関心の分離
3.17 【アーキテクチャ根底技法6】充足性、完全性、プリミティブ性
3.18 【アーキテクチャ根底技法7】ポリシーと実装の分離
3.19 【アーキテクチャ根底技法8】インタフェースと実装の分離
3.20 【アーキテクチャ根底技法9】参照の一点性
3.21 【アーキテクチャ根底技法10】分割統治
3.22 アーキテクチャ非機能要件
3.23 【アーキテクチャ非機能要件1】変更容易性
3.24 【アーキテクチャ非機能要件2】相互運用性
3.25 【アーキテクチャ非機能要件3】効率性
3.26 【アーキテクチャ非機能要件4】信頼性
3.27 【アーキテクチャ非機能要件5】テスト容易性
3.28 【アーキテクチャ非機能要件6】再利用性
3.29 7つの設計原理
3.30 【7つの設計原理1】単純原理
3.31 【7つの設計原理2】同型原理
3.32 【7つの設計原理3】対称原理
3.33 【7つの設計原理4】階層原理
3.34 【7つの設計原理5】線形原理
3.35 【7つの設計原理6】明証原理
3.36 【7つの設計原理7】安全原理
3.37 UNIX思想
3.38 【UNIX思想1】モジュール化の原則
3.39 【UNIX思想2】明確性の原則
3.40 【UNIX思想3】組み立て部品の原則
3.41 【UNIX思想4】分離の原則
3.42 【UNIX思想5】単純性の原則
3.43 【UNIX思想6】倹約の原則
3.44 【UNIX思想7】透明性の原則
3.45 【UNIX思想8】安定性の原則
3.46 【UNIX思想9】表現性の原則
3.47 【UNIX思想10】驚き最小の原則
3.48 【UNIX思想11】沈黙の原則
3.49 【UNIX思想12】修復の原則
3.50 【UNIX思想13】経済性の原則
3.51 【UNIX思想14】生成の原則
3.52 【UNIX思想15】最適化の原則
3.53 【UNIX思想16】多様性の原則
3.54 【UNIX思想17】拡張性の原則
3.55 UNIX哲学
3.56 【UNIX哲学1】小は美なり
3.57 【UNIX哲学2】1つ1仕事
3.58 【UNIX哲学3】即行プロトタイプ
3.59 【UNIX哲学4】効率性より移植性
3.60 【UNIX哲学5】データはテキスト
3.61 【UNIX哲学6】レバレッジ・ソフトウェア
3.62 【UNIX哲学7】シェルスクリプト活用
3.63 【UNIX哲学8】対話インタフェース回避
3.64 【UNIX哲学9】フィルタ化
第4章 視点 ~プログラマの観る角度~
4.1 凝集度
4.2 結合度
4.3 直交性
4.4 可逆性
4.5 コードの臭い
4.6 技術的負債
第5章 習慣 ~プログラマのルーティーン~
5.1 プログラマの3大美徳
5.2 ボーイスカウトの規則
5.3 パフォーマンスチューニングの箴言
5.4 エゴレスプログラミング
5.5 1歩ずつ少しずつ
5.6 TMTOWTDI
第6章 手法 ~プログラマの道具箱~
6.1 曳光弾
6.2 契約による設計
6.3 防御的プログラミング
6.4 ドッグフーディング
6.5 ラバーダッキング
6.6 コンテキスト
第7章 法則 ~プログラミングのアンチパターン~
7.1 ブルックスの法則
7.2 コンウェイの法則
7.3 割れた窓の法則
7.4 エントロピーの法則
7.5 80-10-10の法則
7.6 ジョシュアツリーの法則
7.7 セカンドシステム症候群
7.8 車輪の再発明
7.9 ヤクの毛刈り
Amazonで詳しく見る
紹介文
Railsアプリの基本から実践的なノウハウまでこの1冊で!
本書は、Ruby on Rails(以下Rails)を使ってWebアプリケーションを開発するための解説書です。
RailsでどのようにWebアプリケーションを作るのかという基本的なところから、現場のニーズに合わせてどのように機能を追加していくのか、テストはどのように行うのか、複数人で開発していく場合の方法といった実践的なトピックまで、幅広くカバーしています。
本書を読んだ方が単にRailsでWebアプリケーションを作れるようになるだけでなく、「Railsらしいアプリケーションコード」を書けるようになり、そして開発チームの仲間とともに実現したいことを実現できるように、という視点で必要な情報をまとめた1冊です。
なお、本書の対応バージョンはRuby 2.5/Rails5.2です。Rails5.2から導入されたActive Storageやcredentials.yml.encについても解説しています。macOS/Windows 10(64ビット版)対応。
■読者対象について
Ruby以外の言語でのWebアプリケーションの開発や、オブジェクト指向プログラミングについては知識・経験があるものの、RubyやRailsについては初めて学ぶ方を主な対象にしています。
ただし、Webアプリケーションやオブジェクト指向が初めての方にも理解しやすいように説明するように努めています。
■構成と内容について
本書の構成は以下の通りです。
<入門編>
Chapter 1 RailsのためのRuby入門
Chapter 2 Railsアプリケーションをのぞいてみよう
Chapter 3 タスク管理アプリケーションを作ろう
<レベルアップ編>
Chapter 4 現実の複雑さに対応する
Chapter 5 テストをはじめよう
Chapter 6 Railsの全体像を理解する
Chapter 7 機能を追加してみよう
<発展編>
Chapter 8 RailsとJavaScript
Chapter 9 複数人でRailsアプリケーションを開発する
Chapter 10 Railsアプリケーションと長く付き合うために
章ごとの内容は以下の通りです。
Chapter1では、Railsのアプリケーションのコードを読み書きするために最低限必要となるようなRubyの基礎知識を解説していきます。
Chapter2では、RubyやRailsが動作する環境を構築するとともに、簡単なサンプルアプリケーションを作成し、中身の構成を解説していきます。
Chapter3では、シンプルなタスク管理アプリケーションの作成を通じて、CRUDと呼ばれるソフトウェアの基本的な機能をRailsで実装する方法について学んでいきます。
Chapter4では、Chapter3で作成したアプリケーションに、いくつかの機能を追加していきます。具体的には「データ内容の制限」「検証」「コールバック」「フィルタ」「ログイン機能の追加」「関連」「検索」について解説していきます。
Chapter5では、Railsにあらかじめ用意されている「自動テスト」という仕組みについて、利用方法や注意事項を解説します。
Chapter6では、Railsの備える機能や、Railsを取り巻く世界の全体像を改めて一望し、これまで取り上げる機会のなかったいくつかの重要な要素について解説していきます。
Chapter7では、Railsアプリケーションで比較的よくある具体的な機能を実現するやり方を、Chapter4までで作成したアプリケーションへの機能追加という形で紹介していきます。
Chapter8では、Railsを利用する際のJavaScriptの扱い方について解説していきます。モダンなJavaScriptについても扱っています。
Chapter9では、複数人で開発を行う場合に重要になってくる知識や、注意すべきポイントについて解説していきます。
Chapter10では、Railsアプリケーションと長く付き合っていくために特に重要なテーマとして、「バージョンアップに対してどのように取り組むべきか」「Railsアプリケーションコードが複雑になっていくことにどうに立ち向かい、メンテナンスしやすい状態の維持を図るのか」について扱います。
Amazonで詳しく見る
紹介文
第1部 ドメインモデルを機能させる(知識をかみ砕く
コミュニケーションと言語の使い方 ほか)
第2部 モデル駆動設計の構成要素(ドメインを隔離する
ソフトウェアで表現されたモデル ほか)
第3部 より深い洞察へ向かうリファクタリング(ブレイクスルー
暗黙的な概念を明示的にする ほか)
第4部 戦略的設計(モデルの整合性を維持する
蒸留 ほか)
Amazonで詳しく見る
紹介文
Knuth先生の名著シリーズの最初の1冊。
Knuth先生の名著『The Art of Computer Programming』シリーズの最初の1冊。
数値演算の基本アルゴリズムについて解説。独自の計算モデルであるMIXの解説や、基礎的な概念、情報構造などについての話が非常に厳密に定義されながら進みます。個々の演習問題にはランク付けされていて、高校の代数以上の数学知識をもたない読者でも、数学的な色合いの濃い部分は斜め読みして、全体を把握できるように構成されています。
※本書は株式会社アスキーより刊行された『The Art of Computer Programming Volume 1 Fundamental Algorithms Third Edition 日本語版』を並製本として再刊行したものです。再刊行にあたり、旧版刊行後に発見された誤植等を修正しています。
※本書の1.3.1、1.3.2、1.3.3および1.4.1、1.4.2、1.4.3については、改訂版が『The Art of Computer Programming Volume 1 Fascicle 1 MMIX - A RISC Computer for the New Millennium 日本語版』として分冊の形で刊行されています。必要があれば、こちらをご参照ください。
◆『The Art of Computer Programming』シリーズについて
『The Art of Computer Programming』シリーズは、「コンピュータアルゴリズムの特徴についての理論」の研究を続けるドナルド・E・クヌースの集大成といえるものです。第1巻「基本アルゴリズム」、第2巻「準数値的アルゴリズム」、第3巻「ソートと探索」、第4巻「組合せアルゴリズム」、第5巻「構文アルゴリズム」、第6巻「言語理論」、第7巻「コンパイラ」という構成になっています(現在も執筆が続けられています)。
情報科学の自習、大学の授業のテキストとして利用できるように、膨大な演習問題が含まれており、その大半に解答が用意されているので、解説内容の研究、確認もできるようになっています。また、このシリーズには数学的な内容がふんだんに盛り込まれていますが、高校の代数以上の数学知識をもたない読者が数学的な色合いの濃い部分を斜め読みしても全体を理解できるような構成をとっています。
Knuth先生の名著『The Art of Computer Programming』シリーズの最初の1冊。
目次
第1章 基礎概念
1.1. アルゴリズム
1.2. 数学的な基礎
1.3. MIX
1.4. 基本的プログラム技法
第2章 情報構造
2.1. はじめに
2.2. 線形リスト
2.3. 木
2.4. 複数リンク構造
2.5. 動的メモリ配置
2.6. 歴史と参考文献
演習問題の解答
付録A 数表
1. 基本定数 (十進)
2. 基本定数 (八進)
3. 調和数, Bernoulli数, Fibonacci数
付録B 表記法索引
Amazonで詳しく見る
紹介文
プロローグ
この本の狙いと読者
この本の特徴と使い方
■Chap. 1 いろいろ準備編
1-1 とっても大切な心の準備!
1-2 タダでサーバーを手に入れよう!
1-3 タダでテキストエディタを手に入れよう!
1-4 Windows OSのこの機能はOFFにしよう!
1-5 最大の壁!文字化けを防ごう!
■Chap. 2 お店のスタッフは誰?
2-1 データベースを作成しよう!
2-2 スタッフを追加する画面を作ろう!
2-3 スタッフ情報の入力チェック画面を作ろう!
2-4 情報の追加を完了させる画面を作ろう!
2-5 スタッフ一覧画面を作ろう!
2-6 スタッフ情報の修正画面を作ろう!
2-7 好きな画面に分岐ジャンプさせよう!
2-8 スタッフの削除画面と参照画面を作ろう!
■Chap. 3 お店に商品を並べよう!
3-1 商品を追加する画面を作ろう!
3-2 ほかの画面を一気に作っちゃおう!
3-3 ワクワク♪ 商品の画像を追加しましょう!
■Chap. 4 関係者以外立ち入り禁止!
4-1 ログイン画面を作ろう!
4-2 ユーザー認証の仕組みを作ろう!
4-3 ログアウト画面を作ろう!
■Chap. 5 遊びでスキルアップ!
5-1 季節の野菜サイトを作ろう!
5-2 あの星は!
5-3 学生に戻ろう!
5-4 プログラミングの楽しさの真髄!
5-5 遊びで身に付けた技術を使って!
■Chap. 6 憧れのショッピングカートを作ろう!
6-1 まずは商品を表示しよう!
6-2 「カートに入れる」機能を作ろう!
6-3 カートの中身を見る画面を作ろう!
6-4 カートを空にする画面を作ろう!
6-5 商品の購入数を変える機能を追加しよう!
6-6 カートから商品を削除する機能を作ろう!
6-7 大切なお客様のために!
■Chap. 7 注文を受け付けよう!
7-1 注文フォームの画面を作ろう!
7-2 注文チェックの画面を作ろう!
7-3 注文登録の画面を作ろう!
7-4 注文情報をデータベースに追加しよう!
7-5 もっと安全にしよう!
■Chap. 8 Excelで注文管理したい!
8-1 注文データを日付けで選べるようにしよう!
8-2 注文データをダウンロードしよう!
■Chap. 9 お客様に会員になってもらおう!
9-1 会員登録の画面を作ろう!
9-2 会員ログインの仕組みを作ろう!
9-3 会員だけの特典「かんたん注文」の仕組みを作ろう!
あとがき
改訂版あとがき
参考文献
ファイル索引 ほか
◆◆通販サイトのスクラッチ開発にチャレンジ!◆◆
秋葉原の小さな教室で、笑いながら1日でプログラムを組んで帰る、
そんなIT講座があります。毎回教室で起こるドラマから生まれた超入門書は、
大好評を得て、多くの初心者をPHPの世界にお連れすることができました。
* *
その続編である中級編を大幅改訂したのが本書です!
昨今ではWordPressやCakePHP等が普及した結果、
ゼロからシステムを組めるプログラマーが減りつつあります。
あなたは不安ではありませんか?
大丈夫です。1回、ゼロから作ってみればいいのですよ。
恐れることはありません。
PHPの入門書を卒業した方や、多少プログラミング経験のある方なら、
本書を通じて本格的なシステム開発の世界に入って行けます。
ショッピングサイトの構築を楽しく進める中で、
システム開発に必要な力が自然に身に付くように、
練りに練ったストーリーを組んであるからです。
さぁ、行ってみましょう!
Amazonで詳しく見る
紹介文
最新の開発言語SwiftUI+Swiftを使って、iPhoneアプリ開発を始めよう! Xcode 12/iOS 14対応!
●本書が対象とする方
・プログラムを書いたことはないけれど、iPhoneアプリを作ってみたい方
・iPhoneアプリをよく利用していて、自分でも作ってみたいと思った方
・中高生、大学生でiPhoneアプリ開発を学んでみたい方
・シルバー世代や中高年の方で再学習を実施したい方
・企業で入社前研修や企業導入研修での教材を検討している方
そんなiPhoneアプリを作ってみたい、すべての初心者が対象です。
アプリを作ることを「開発」するともいいます。開発といっても「難しいことをする!」と身構える必要はありません。プログラミングを楽しみながら、リラックスして読み進めてください。
●本書でできるようになること
初心者の方もサンプルアプリを作ることにより、動く体験と基本の知識が身につくようになります。
この書籍を終えるころには、他の入門書やプログラミング文法書を読む力もついていると思います。そして、作りたいアプリや学習したい分野も見えてくると思いますので、ぜひ、次の書籍を購入してステップアップを目指してください。
●本書の特徴
とにかく「体験」すること、そしてあとから「理解」することに重点を置いています。
本書では、プログラミングの文法説明は最小限にして、iPhoneアプリを作って動かしていくことを目的として構成しています。
プログラミング文法書のように文法を理解して覚えるのではなく、どんどんアプリを作って体験していくことに比重を置いています。プログラミングがはじめての人でも楽しみながらiPhoneアプリが作れるという体験ができるように工夫しました。
学習が進めやすいように、学校の授業のように時限制(レッスン)で区切っています。各レッスンごとに独立したサンプルアプリが作れるように配慮していますので、制作したいサンプルアプリがあれば、途中からでも学習できます。
まったくの初心者の方は、読み飛ばさずに最初からじっくりと取り組んでみてください。少しでも経験のある方は、作りたいサンプルアプリのレッスンからはじめるのもよいでしょう。
「iPhoneアプリを作ってみたい!」と思っている初心者のための開発ガイド。厳選されたサンプルアプリの制作を通して、SwiftUIを使ったiPhoneアプリ開発の手順を一通りマスターできます。
はじめに
この本の読み方と使い方
ご利用の前に必ずお読みください
Day 1
Lesson 1 はじめてのアプリを開発する前に知っておこう
1-1 プログラミングを体験から学んでいこう
1-2 あらかじめ挫折しそうなポイントを押さえておこう
1-3 アプリ開発をするなら知っておこう!~WWDC、手数料、課金方法~
1-4 Swift(スウィフト)を知ろう
1-5 SwiftUI(スウィフトユーアイ)を知ろう
Lesson 2 アプリ開発の環境を整えて、Xcodeの使い方を学ぼう
2-1 開発をするために必要な準備をしよう
2-2 Apple IDを取得しよう
2-3 Xcodeをインストールしよう
2-4 Xcodeを起動して、プロジェクトを作成しよう
2-5 Xcodeをより使いやすくするための設定をしよう
2-6 ボタンをタップして「Hello, World!」から「Hi, Swift!」に切り替えてみよう
2-7 アプリの動きを確認する方法を学ぼう
Lesson 3 じゃんけんアプリを作ろう―Swift の基本を学ぶ―
3-1 完成をイメージしよう
3-2 プロジェクトを作成しよう
3-3 画面に部品を配置しよう
3-4 じゃんけん画像を切り替えよう
3-5 アイコンを設定しよう
Lesson 4 楽器アプリを作ろう―音の扱い方を学ぶ―
4-1 完成をイメージしよう
4-2 シンバルとギターを配置しよう
4-3 タップで音を鳴らそう
4-4 ステップアップリファクタリングで見通しを改善しよう
Lesson 5 マップ検索アプリを作ろう―MapKitとクロージャを学ぶ―
5-1 完成をイメージしよう
5-2 マップパーツを作成しよう
5-3 マップ検索アプリの動作をプログラミングしよう
5-4 ステップアップマップの種類(航空写真など)を切り替えできるようにしよう
Day 2
Lesson 1 タイマーアプリを作ろう―画面遷移とデータの永続化―
1-1 完成をイメージしよう
1-2 タイマー画面と秒数設定画面を作ろう
1-3 タイマー処理と設定した秒数を保存しよう
1-4 ステップアップタイマー終了後にアラートを表示しよう
Lesson 2 カメラアプリを作ろう[前半]―カメラとSNS投稿―
2-1 完成をイメージしよう
2-2 撮影画面を作成しよう
2-3 最初の選択画面を作成してカメラを起動しよう
2-4 シェア画面を追加してアプリを完成させよう
2-5 ステップアップフォトライブラリーから写真を取り込めるようにしよう
Lesson 3 カメラアプリを作ろう[後半]―エフェクト機能の追加―
3-1 完成をイメージしよう
3-2 エフェクト編集画面を作成しよう
3-3 選択画面をカスタマイズし、エフェクト機能を追加しよう
3-4 ステップアップエフェクト編集画面でフィルタの種類を増やそう
Lesson 4 お菓子検索アプリを作ろう―Web APIとJSONの使い方を学ぶ―
4-1 完成をイメージしよう
4-2 Web APIとJSONについて学ぼう
4-3 データ取得用のカスタムクラスを作成しよう
4-4 キーワードを入力してお菓子データを取得しよう
4-5 取得したお菓子データを、Listで一覧表示しよう
4-6 ステップアップお菓子の一覧をタップして、Webページを表示してみよう
索引
Swiftビギナーズ倶楽部について
謝辞
執筆陣プロフィール
Amazonで詳しく見る
紹介文
1 Building Abstractions with Procedures 2 Building Abstractions with Data 3 Modularity, Objects, and State 4 Metalinguistic Abstraction 5 Computing with Register Machines
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次元グラフを作成してみよう