ソ午後問題

Get Started. It's Free
or sign up with your email address
ソ午後問題 by Mind Map: ソ午後問題

1. データベース

1.1. SQL

1.1.1. 照会

1.1.1.1. テーブルの結合

1.1.1.1.1. 関連による結合

1.1.1.1.2. 条件による結合

1.1.1.2. GROUP BY

1.1.2. UPDATE

1.1.2.1. primary キーもUpdate可能

1.1.2.2. update table set a=10 where ...

1.1.3. INSERT

1.1.3.1. insert into table values(a,b)

1.1.3.2. insert into table(a) values(a)

1.2. transaction

1.2.1. ロールバック

1.2.2. ロールフォワード

1.3. 性能

1.3.1. テーブルの結合

1.3.1.1. 結合順番 少→多

1.3.1.1.1. アクセス回数=少+多

1.3.1.2. 結合順番 多→少

1.3.1.2.1. アクセス回数=多×2

1.3.1.3. 複数データの結合

1.3.1.3.1. 結合順番 少→。。。多

1.3.1.3.2. 結合順番 多→。。。少

1.4. 設計

1.4.1. 正規化

1.4.1.1. 第一:重複をなくす

1.4.1.2. 第2:複合キーありの場合

1.4.1.2.1. 主キーの部分関数従属をなくす

1.4.1.2.2. 主キー以外fieldの部分関数従属をなくす

1.4.1.3. 第3:推移的関数従属をなくす

1.4.2. リレーションシップ

1.4.2.1. 「多」:「多」は「1」:「多、多」:「1」に変換する

1.5. 用語

1.5.1. 参照制約

2. アルゴリズム

2.1. ソート

2.1.1. 挿入ソート

2.1.1.1. データをソート済みと未ソートの部分にわけ、未ソートの部分からデータを一つずつ選択肢し、ソート済み部分に挿入する。

2.1.1.2. ソート済みデータにデータを追加する場合高速

2.1.1.3. n^2

2.1.2. シェルソート

2.1.2.1. n^1.25

2.1.2.2. 挿入ソート+間隔

2.1.3. 選択ソート

2.1.3.1. 一番小さいのを検索して1d[0]と交換する。二番目に小さいのを検索してd[1]と交換する。。。

2.1.3.2. n^2

2.1.4. バブルソート

2.1.4.1. データ交換が多いため処理速度が遅い

2.1.5. コムソート

2.1.5.1. n^1.25

2.1.5.2. バブルソート+間隔

2.1.6. ヒープソート

2.1.6.1. 木+ソート

2.1.7. マージソート

2.1.8. quickソート

2.2. 検索

2.2.1. BM法

2.2.2. 木

2.2.2.1. 2分探索法

2.2.2.2. 線形探索法

2.2.2.3. モンテカルロ法

2.3. 圧縮

2.4. 解答テクニック

2.4.1. 最初にループの範囲をチェック

2.4.2. 流れ図の見方を覚える

2.4.3. How to doの視点で考える

2.4.4. 知識を問う問題ではない。問題を解くアプローチを覚えること

3. システム開発

3.1. テスト

3.1.1. ホワイトボックステスト

3.1.1.1. 網羅基準

3.1.1.1.1. 命令網羅

3.1.1.1.2. 分岐網羅

3.1.2. ブラックボックステスト

3.1.2.1. 同値分割

3.1.2.1.1. from以下の数値

3.1.2.1.2. to以降の数値

3.1.2.1.3. from~toの間の数値

3.1.2.2. 限界値分析

3.1.2.2.1. from-1

3.1.2.2.2. from

3.1.2.2.3. to

3.1.2.2.4. to+1

3.1.3. ポイント

3.1.3.1. より少ないテスト・ケース

3.1.3.1.1. 同値分割

3.1.3.2. より多くのバグが見つかるテスト

3.1.3.2.1. 限界値分析

3.1.3.3. 漏れがないようにテスト対象を網羅

3.1.3.3.1. 要件ベーステスト設計

3.1.3.3.2. 設計ベーステスト設計

3.1.3.3.3. コードベーステスト設計

3.2. オブジェクト指向

3.2.1. カプセル化

3.2.2. ポリモルフィズム(多相)

3.2.3. ガーベジコレクション

3.2.4. オーバライド

3.2.5. オーバロード

3.2.6. 継承

3.2.6.1. 委譲

3.2.7. 永続オブジェクト

3.2.8. UML

3.2.8.1. OMT法

3.2.8.1.1. エンティティ間関連はキーで結びつかなくてもよい

3.3. プロジェクト運用

3.3.1. アーンドバリュー分析

3.4. ソフトウェア構成管理

3.4.1. ツールの使い方

3.4.1.1. チェックイン

3.4.1.2. チェックアウト

3.4.1.3. レポートの見方

4. セキュリティ

4.1. 共通鍵暗号化方式

4.1.1. 相手の数分キーをもつ必要がある

4.1.1.1. 公開鍵暗号化方式

4.1.1.1.1. 公開鍵は認証局が管理

4.1.1.1.2. 自分の秘密鍵のみ管理

4.1.2. 目的=盗聴防止

4.2. 公開鍵暗号化方式

4.2.1. 送信側の作業

4.2.1.1. メッセージを相手の公開鍵で暗号化

4.2.1.1.1. =盗聴防止

4.2.1.2. メッセージダイジェスト

4.2.1.3. メッセージダイジェストを秘密鍵で暗号化

4.2.1.3.1. =電子署名

4.2.1.4. 自分の公開鍵に認証局の電子署名をつけたもの

4.2.1.4.1. =電子証明書

4.2.2. 認証局の正当性はどう確認するか?

4.2.2.1. 信頼できる認証局の公開鍵を入手し、予め下記端末に設置する。

5. ネットワーク

5.1. NAPT

5.2. PCM