9a135bd19d
최상위 10_Wiki/Topic_*였던 4개 카테고리 폴더를 10_Wiki/Topics/Topic_* 로 재배치. 콘텐츠 변경 없음(순수 폴더 이동) — Topics/ 하위 나머지 폴더는 이미 지난 커밋에서 전부 정리된 상태(잔존 항목은 에이전트 운영 상태 및 사용자가 보존을 요청한 업데이트0615/무제 3.canvas 뿐).
3.7 KiB
3.7 KiB
id, title, category, status, verification_status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, created_at, updated_at, review_reason, merge_history, tags, raw_sources, applied_in, github_commit
| id | title | category | status | verification_status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | created_at | updated_at | review_reason | merge_history | tags | raw_sources | applied_in | github_commit | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| java-projects | Java Projects | Programming_Language | draft | conceptual |
|
B | 0.87 | 2026-07-04 | 2026-07-04 |
|
|
Java Projects
🎯 한 줄 통찰 (One-line insight)
The student-average project deliberately validates input BEFORE processing (if (count < 1 || count > 5) { ...; return; }), demonstrating that a real small project isn't just "loop + math" — it's the combination of Scanner input, validation/early-return, a loop-based accumulator, and a helper method (gradeFunction) that turns tutorial-sized concepts into a working mini-application. [S1]
🧠 핵심 개념 (Core concepts)
- Why build projects — understand real program structure, practice combining concepts, improve debugging skills, prepare for interviews. [S1]
- Progression — start with simple I/O (name/age greeting), then loop+condition+array projects (shopping list, guessing game, student average), then class/file-based projects (calculator, address book, to-do list, quiz game). [S1]
- Featured project: Student Average — combines Scanner input, input validation with early return, an accumulator loop, and a helper method mapping a numeric average to a letter grade. [S1]
📖 세부 내용 (Details)
- Input validation with early return:
if (count < 1 || count > 5) { System.out.println("Invalid number. You must enter between 1 and 5 grades."); scanner.close(); return; }. [S1] - Accumulator loop:
double sum = 0.0; for (int i = 1; i <= count; i++) { double grade = scanner.nextDouble(); sum += grade; } double avg = sum / count;. [S1] - Helper method mapping average to letter grade:
static char gradeFunction(double avg) { if (avg >= 90) return 'A'; else if (avg >= 80) return 'B'; else if (avg >= 70) return 'C'; else if (avg >= 60) return 'D'; else return 'F'; }. [S1] - Practice challenge: shopping list using an array, with an extra challenge to add item search. [S1]
⚖️ 모순 및 업데이트 (Contradictions & updates)
소스에서 모순되는 정보는 발견되지 않음.
🛠️ 적용 사례 (Applied in summary)
학생 평균 성적 계산 프로그램이 Scanner 입력, 유효성 검증, 누적 반복, 헬퍼 메서드를 결합한 실전 미니 애플리케이션의 대표 사례다. [S1]
💻 코드 패턴 (Code patterns)
Average-to-letter-grade helper method (Java):
static char gradeFunction(double avg) {
if (avg >= 90) return 'A';
else if (avg >= 80) return 'B';
else if (avg >= 70) return 'C';
else if (avg >= 60) return 'D';
else return 'F';
}
✅ 검증 상태 및 신뢰도
- 상태: draft
- 검증 단계: conceptual
- 출처 신뢰도: B (W3Schools — widely used educational reference, not a primary standards body)
- 신뢰 점수: 0.87
- 중복 검사 결과: 신규 생성 (New discovery)
🔗 지식 그래프 (Knowledge Graph)
- 상위/루트: Java Tutorial
- 관련 개념: Java User Input, Java Methods Return, Java Arrays, Java Advanced Sorting
- 참조 맥락: Java 튜토리얼 전체의 최종 종합 실습 챕터 — Scanner/메서드/배열/조건문 등 전 과정을 통합.
📚 출처 (Sources)
- [S1] W3Schools — Java Projects — https://www.w3schools.com/java/java_projects.asp
📝 변경 이력 (Change history)
- 2026-07-04: Initial draft synthesized from the W3Schools "Java Projects" page (Astra wiki-curation, P-Reinforce v3.1 format).