13行目: | 13行目: | ||
# '''(✔︎)''' 3回で思い出せなかったカードは正しい答えを入力後、再び出題ブロックに戻され出題される | # '''(✔︎)''' 3回で思い出せなかったカードは正しい答えを入力後、再び出題ブロックに戻され出題される | ||
# '''(✔︎)''' bunch の学習が終了すると、学習日時と次回の復習タイミング日時(計6つ)が記録される | # '''(✔︎)''' bunch の学習が終了すると、学習日時と次回の復習タイミング日時(計6つ)が記録される | ||
# 起動すると、復習タイミング日時を過ぎているカード束の一覧が表示される | # 起動すると、復習タイミング日時を過ぎているカード束の一覧が表示される | ||
# 1つのカード束は、6回復習する。1ターン度に間違えたカードはmissが加算 | # 1つのカード束は、6回復習する。1ターン度に間違えたカードはmissが加算 |
2019年7月9日 (火) 16:11時点における版
メモ
- 日付リセット機能をつける
- 赤DELL に移植してみる
参加クラス
機能
メイン機能
- (✔︎) 暗記したいジャンル(tb)が選べる。その中で暗記したいカード束(bunch)も選べる
- (✔︎) スタートするとカードがランダムに表示される。答えるチャンスは3回。約30分で終わる
- (✔︎) 出題中に「q」を押すとにカード束(bunch)選択画面に戻れる
- (✔︎) 3回で思い出せなかったカードは正しい答えを入力後、再び出題ブロックに戻され出題される
- (✔︎) bunch の学習が終了すると、学習日時と次回の復習タイミング日時(計6つ)が記録される
- 起動すると、復習タイミング日時を過ぎているカード束の一覧が表示される
- 1つのカード束は、6回復習する。1ターン度に間違えたカードはmissが加算
- miss回数が多いカードには、そのフィールド「mark」部に「1」が挿入される
- Managerクラスとして、新しい bunch の追加など、bunch管理機能を作る
メイン補佐機能
- 復習タイミングを無視した自由学習もできる
学んだこと/感じたこと
- 後になってからの変数名の変更はとても面倒なので、一番最初で「永久に決まるもの」とする
- DBでは必要最低限のデータセットVIEWをアプリ用バッファとして作成。データはそこから取得
- SQL文を作成するとき、変数でパラメータを指定している場合は「'」で括る
- エラーがないのに変更が反映されない場合は、該当ソースのコンパイルも忘れない
- toString で節目節目の流れを確認しながら進めていけばエラーの原因は特定できる
- ロジックを1文ずつしっかり読み、流れ全体を完全に理解していればエラーは必ず直せる
- 「break」1つが1時間の問題の解決策だったりする
- ListArrayからはindex指定だけでなく、要素指定でもremoveできる
- ListIterator は、要素を追加できるけど、追加できる場所が「直前」だけなので微妙
- for ですでに回しに入っている要素リストに新しく要素を追加することはできなさそう
- なので、別のコレクションをもう1つ用意してそちらで再度回すことができる
- Git が必要。大きな改善を試みる時ファイルコピーは厳しい。気軽にフォークして試したい
- Git が必要。「DBカテゴリフィールド修正.ver」と「Iterator使わない.ver」が欲しい
- Iteratorで自動的に順次で取り出す方法と、逐一リストからremoveする方法がある
- newを使うのはインスタンスにフィールドを持たせたい時。それまではstaticで十分
- PreparedStatement の「?」はフィールド名ではなくパラメータを指定するもの
- フィールド名を変数で指定したい場合は「+」を使って SQL文を連結させる
- PreparedStatement と通常SQL文を組み合わせて実行
- List<Map<String, String>> とするには Mapを毎回作ってListにaddする
- List型に対する Collections.shuffle による要素シャッフル
- Iteratorによる入れ子構造の要素の取り出し。それぞれの型の指定がポイント
- モニターがもう1台あると便利そう