1. 사전API
- 사전 api는 사실상 유료가 대부분이며 무료인 경우에도 예문 등을 재구성하여 2차 창작물을 만든 경우 저작권에 문제가 생길 수 있음
- 따라서 사전기능은 정보를 저장하여 내용에 대한 수정은 없이 저장만 가능하도록 함
- 사용 예정 사전 api: 한국어기초사전 api
2. 문제 만들기
1) O, X 문제 만들기
- ArrayList에서 문제 생성을 위해 사용될 단어와 뜻을 가져옴
- 단어, 뜻, TF여부를 전역변수로 지정
- generateQuestion을 통해 문제 생성 틀을 지정
- 단어 가져오기 > 정답을 가져올지 오답을 가져올지 설정 > 클릭 이벤트 처리 대기
- rendomQuestion을 통해 랜덤한 문제 생성(총 문제 20개를 지정한다면 20개의 문제를 우선 생성 후 정답을 미리 저장)
- 문제 출력
- 클릭이벤트로 수집된 TF데이터를 병기나열하여 동일함에 대한 TF 검증
- 결과 출력 및 정답률 저장
2) 매칭 문제
- 단어와 뜻만 전역변수로 지정
- 4지선다 문제 생성 틀 지정
- 단어 가져오고 뜻 들은 4개를 만들되 한 개는 정답, 나머지는 랜덤하게 오답 추출
- 선택지의 오답 및 정답의 순서는 랜덤하게 배열(20문제를 지정한다면 문제의 정답을 우선 저장)
- 문제 출력
- 클릭이벤트로 수집된 TF데이터를 병기나열하여 동일함에 대한 TF 검증
- 결과 출력 및 정답률 저장
3) 빈 칸 넣기(사실상 사전 기능의 저작권문제는 여기서 발생하므로 크롤링을 통한 문장 가져오기 및 번역기능api 사용)
- 단어를 전역변수로 지정
- 문장을 크롤링
- 크롤링한 문장에서 선택 단어를 문자열 "____"로 전환
- "___"를 하나의 단어로 포함하여 번역
- 단어리스트 중 한 개의 정답과 세 개의 오답을 랜덤하게 배치(정답 우선 저장)
- 문제 출력
- 클릭이벤트로 수집된 TF데이터를 병기나열하여 동일함에 대한 TF 검증
- 결과 출력 및 정답률 저장
3. 추가 고려사항
- 문제 풀이 중 단어 찾기 기능을 넣을지 말지에 대한 고민은 필요할 것으로 보임(크롤링을 통한 문장을 가져오기 때문)
- 크롤링을 통한 문장 문장의 저작권, 문장의 신뢰도 연구 필요
- 번역기능의 필요여부, 번역기능의 성능 검증 필요
- 영한만 취급? 한영도 취급해야할텐데? 그럼 가져온 결과물을 DB에 어떻게 구성할 것인가 고민 필요
'Development > JAVA 앱 개발노트' 카테고리의 다른 글
(My Voca) Day 15. 현재 문제 상황 (0) | 2023.06.25 |
---|---|
(My Voca) Day 14. 현재 문제 상황 (0) | 2023.06.20 |
(My Voca) Day 13. V2 기록 (0) | 2023.05.07 |
(My Voca) Day 12. Build Process 5 (0) | 2023.04.23 |
(My Voca) Day 11. Build Process 4 (0) | 2023.04.16 |