考えてみよう外しても進めます
選ぶと、この枚の中で答えと理由を確かめられます。
1 / 5
← → キーでも送れます
Linux入門
ping で遅延を測る
Linuxとは?OSの基礎を理解する
エンジニアにLinuxが必要な理由
シェルとターミナルの違いを理解する
SQL入門
ファイルではなくデータベースを使う理由
なぜ表を分けて持つのか
テーブル・行・列の基本
主キーとNULL制約
SELECT文の基本構文
WHERE句で条件絞り込み
INNER JOIN で表をつなぐ
GROUP BY で束ねて数える
NULL の扱い
INSERT で行を追加する
UPDATE で行を書き換える
DELETE で行を消す
WHERE句のサブクエリ
HTML入門
打ってから画面が出るまで
タグは飾りではなく意味付け
HTML と CSS の役割分担
head と body の役割
文字化けは読む規則のずれ
見出しは大きさではなく階層
改行しても段落は分かれない
見た目ではなく役割で選ぶ
順番の意味で ul と ol を選ぶ
href に何を書くか
画像が出ないときに見えるもの
画面に出ないメモを残す
見出しごとに中身を点検する
属性のきほん
div と span は囲む相手が違う
header・main・footer は見た目ではなく役割を分ける
navで移動先を結び、sectionとarticleで中身を分ける
表は行ごとに書く
送る先と送り方
CSS入門
ファイルを2つに分けてつなぐ
どれに・何を・どうする
色は6桁の数字で渡す
行間は行の上下に半分ずつ付く
同じ名前を何回使えるか
効かないスタイルは負けている
検証ツールで負けを見つける
すべての要素は4層の箱
外側の余白と内側の余白
幅が効く相手と効かない相手
width が指す範囲を変える
CSSレイアウト入門
並び方は display が決めている
親に1行足すと子が並ぶ
主軸方向に寄せる
高さの違う子をそろえる
余った幅を分け合う
先にマス目を宣言する
1次元か2次元か
スマホでは横に入りきらない
スマホは勝手に縮めて表示する
幅で書き分ける
何に対する割合なのか
狭いほうを土台にする
公開すると誰の手元でも同じものが出る
コンピュータサイエンス アルゴリズム編
階乗(再帰)
フィボナッチ数(再帰)
累乗(再帰)
配列の合計(再帰)
桁数を数える(再帰)
文字列を逆順(再帰)
ユークリッドの互除法(GCD)
線形探索で位置を返す
二分探索 (反復版)
二分探索 (再帰版)
lower_bound (最初に >= target の位置)
ピーク要素検索
回転ソート配列での探索
バブルソート実装
選択ソート
挿入ソート
マージソート
クイックソート
カウントソート
比較関数つきソート
長方形クラス(面積と周長)
スタッククラス(push と pop)
キュークラス(enqueue と dequeue)
単方向リンクリスト
二分探索木 (BST) への挿入
カウンタクラス(機能合成)
メモ化フィボナッチ
DP配列でフィボナッチ
階段の登り方
コイン両替最小枚数
0/1 ナップサック問題
最長共通部分列 (LCS)
ソート済み 2 配列のマージ
配列の k 回転
カッコの妥当性
ローマ数字を整数に
整数をローマ数字に
雨水を溜める
コンピュータサイエンス理論
2進数から10進数への変換
10進数から2進数への変換
ビットAND演算でフラグ判定
OR / XOR でフラグを操作する
popcount で 1 のビット数を数える
シフト演算で 2 倍 / 半分
16 進数から 10 進数への変換
第 1 章まとめクイズ
文字 → ASCII コード
コード → 文字
UTF-8 のバイト長を返す
AND / OR の真理値表
NOT / XOR の真理値表
含意 (→) を AND/OR/NOT で表現
ド・モルガンの法則
第2章まとめクイズ
forループの実行回数を返す
入れ子ループの実行回数
線形探索 (O(n))
二分探索 (O(log n))
バブルソート
配列の最大と最小
累積和で範囲合計
第3章まとめクイズ
スタック (push/pop) を実装する
キュー (enqueue / dequeue) を実装する
カッコのバランス判定 (スタック応用)
set で重複を除去する
map で出現回数を数える
二数の和 (map で O(n))
アナグラム判定
第 4 章クイズ — データ構造 (基本)
バイト → KB 変換
ディスクサイズフォーマット
キャッシュヒット率
LRU 簡易シミュレーション
エンディアンの入れ替え (uint32)
バッファ範囲チェック
第5章まとめクイズ
Base64 エンコード後の長さ計算
URL エンコード対象文字数
IPv4 アドレスを 32bit 整数に変換
32bit 整数を IPv4 アドレスに変換
CIDR プレフィックスからネットマスクを作る
単純チェックサム
第6章まとめクイズ
重複データを 1NF に変換 (フラットなリスト化)
キーで join (map 利用)
残高転送のトランザクション風処理
CAP の availability 模擬
URL ルーティング
疎結合と密結合 — 依存性注入で設計を変える
コース総まとめクイズ
実践JavaScript
strict mode で書き間違いを表に出す
作品データと表示を分けて持つ
map で形を変える
filter と find で絞り込む
reduce でひとつにまとめる
sort と比較関数
分類してまとめる groupBy
つなげて組み立てる
クロージャで状態を閉じ込める
設定を覚えた関数をつくる
関数を返す関数
副作用のない関数
分割代入で必要な値だけ取り出す
スプレッドとレストで組み替える
keys と values と entries
ビット演算でフラグをまとめる
クラスとインスタンス
private フィールドとアクセサ
継承と super
多態と static
try catch finally
自分でエラーを投げる
失敗を画面に出す
正規表現のきほん
入力を検証する
置換とキャプチャ
同期と非同期
Promise をつくって返す
async と await
Promise.all で同時に待つ
非同期のエラーを捕まえる
HTTP と REST の読みかた
fetch でデータを取る
取ったデータを描画する
response.ok と失敗時の表示
POST のリクエストを組み立てる
ファイルを分けるという考えかた
named export と default export
JavaScript入門
エラーを読んでみる
let と const を使い分ける
型を変換する
真偽値と falsy な値
null と undefined を見分ける
&& と || が返すもの
?? で既定値を用意する
演算子の優先順位
if / else if / else で段階判定
FizzBuzz で複数条件を組み立てる
配列のきほん
for ループで合計を求める
while で条件を満たす間くり返す
break と continue でループを制御する
デフォルト引数
早期 return でネストを浅くする
変数のスコープ
コールバック関数
オブジェクトのきほん
const と参照
?. で安全に取り出す
分割代入
DOM とは何か
要素を取得する
テキストを書き換える
要素を作って追加する
配列から一覧を描画する
クリックに反応する
event オブジェクト
フォーム送信を制御する
setTimeout と setInterval
localStorage で保存する
Java入門
はじめての Java プログラム
Node.js入門
Node.jsとは
TypeScript入門
型は何を守るのか
TypeScriptとJavaScript
はじめての型注釈
型推論
プリミティブ型
配列の型
オブジェクトの型
anyの危険
nullと型
型エイリアス
引数と戻り値の型
省略できる引数
デフォルト値と型
戻り値のない関数
アロー関数の型
コールバックの型
React入門
Reactとは
最初の表示
JSX
JSXの決まり
波かっこで値を出す
アロー関数の復習
分割代入の復習
スプレッド構文
map
三項演算子と論理積
コンポーネントを作る
props
propsの分割代入
children
ファイルに分ける
部品を使い回す
なぜstateが必要か
useState
ボタンで更新
複数のstate
オブジェクトのstate
配列のstate
再レンダリングの仕組み
イベントハンドラ
イベントオブジェクト
制御されたinput
複数の入力
フォーム送信
バリデーション
mapでリスト描画
key
条件レンダリング(&&)
出し分け(三項)
空状態
絞り込みUI
副作用とは
useEffect
依存配列
タイトル連動
時計とクリーンアップ
部品ツリーで考える
stateを持ち上げる
propsのバケツリレー
1部品1責務
フォルダ構成
命令的vs宣言的
完成と次のステップ
React実践
propsに型を付ける
childrenの型
useStateの型
イベントの型
モックAPIの世界
fetchとasyncの復習
useEffectで初回取得
レスポンスに型を付ける
依存で再取得
クリーンアップと競合
POSTで送信
送信中の制御
エラーUI
空状態UI
3状態を型で表す
ローディングUI
フックに型を付ける
なぜカスタムフックか
useItemsを作る
useFormを作る
フックのルール
バケツリレーの限界
Contextを作る
useContextで使う
テーマの全体共有
ユーザー情報の共有
setStateの散らかり
useReducer
Actionのunion型
カートreducer
使い分け
ルーティング導入
RoutesとRoute
遷移を作る
URLパラメータ
検索条件をURLに
404ページ
見た目と機能の分離
合成で組み立てる
機能別フォルダ
購入フロー