“단순한 채점 플랫폼을 넘어, 학습자의 알고리즘 이해와 성장을 돕는 지능형 IDE”
UnIDE는 기존 알고리즘 학습 플랫폼이 정답 여부와 경쟁 중심에 치우친 한계를 극복하고자 만들어진 프로젝트입니다.
사용자는 단순히 “정답/오답”을 확인하는 것이 아니라, 코드의 실행 흐름, 성능, 복잡도, 습관을 한눈에 분석할 수 있습니다.
또한 시각화, 자동 피드백, 학습 리포트, 커뮤니티 기능을 통해 효율적이고 자기주도적인 학습 환경을 제공합니다.
- 알고리즘 코드의 실행 과정과 성능을 시각적으로 이해할 수 있는 플랫폼 구축
- 학습자 맞춤형 피드백을 통해 개인화된 학습 경로 추천
- 코드 분석 및 공유를 통한 협업형 알고리즘 학습 환경 조성
- 강사–학습자 간 콘텐츠 순환 생태계(문제·강좌·커뮤니티) 구현
| 역할 | 학번 | 이름 |
|---|---|---|
| 🧩 Project Manager (PM) | 22012161 | 노우현 |
| 🎨 Frontend Engineer (FE) | 22112045 | 김형섭 |
| 🖌️ Frontend Lead (FL) | 22112121 | 전유진 |
| ⚙️ Backend Lead (BL) | 22312049 | 정석희 |
| 🧱 Backend Engineer (BE) | 22320549 | 정보경 |
- 회원가입, 로그인/로그아웃, 비밀번호 재설정
- 이메일 인증 및 OAuth2(Google, GitHub) 로그인
- 마이페이지 프로필, 학습 목표, 선호 언어 설정
- 평판 점수 및 배지 시스템, 관리자 제재 기능
- Monaco Editor 기반 다국어 코드 에디터 (Python / Java / C++)
- 자동 저장, 코드 포매팅, 라이트/다크 모드 지원
- Docker 격리 환경에서 실행 및 채점
- 실행 시간(ms), 메모리 사용량(KB) 측정
- 입력 크기별 반복 실행 및 통계 분석
- 복잡도 추정(O-notation 피팅) 및 신뢰도 계산
- 비효율적 코딩 패턴(중첩 루프, 문자열 연결 등) 정적 탐지
- 반복문 깊이, 재귀 깊이, 컬렉션 크기 임계치 설정
- 친화적 개선 가이드 및 CSV/JSON 리포트 내보내기
- 라인별 실행 시간 및 호출 횟수 측정
- 히트맵 시각화(색상 그라데이션) 로 병목 구간 표시
- 코드 라인–리포트 간 상호 포커싱 연동
- 코드 실행 흐름 시각화 (정렬, BFS/DFS, DP 등 애니메이션 지원)
- 자동 플로우 차트 생성 (조건문/반복문/함수 단위 구성)
- 차트–코드 상호 클릭 연동, 내보내기(PNG/PDF)
- 오답/통과 기록 기반 취약 개념 도출
- 맞춤 문제 및 강좌 추천, 주간·월간 리포트 제공
- 학습 스트릭(연속 학습일) 시각화
- 감정 기반 피드백(칭찬, 리마인드) 메시지 제공
- 풀이 공유 및 리플레이 기능
- 코드 리뷰 및 투표 시스템
- QnA / 토론 게시판 / 스터디 그룹 기능
- 챌린지 모드 및 게임화된 학습 경험
| 구분 | 사용 기술 |
|---|---|
| Frontend | React, TypeScript |
| Backend | Spring Boot |
| Database | MySQL |
| CI/CD & Infra | (예정) GitHub Actions, Docker |
| Language Support | Python, Java, C++ |
| Editor Engine | Monaco Editor |
react,typescript
spring-boot-starter-web,spring-boot-starter-security,
spring-boot-starter-data-jpa,mysql-connector-j,
lombok,jwt
- 팀 대표 (PM) : 노우현
- 이메일 문의 : nwh0326@yu.ac.kr
- GitHub Organization : github.com/YU-SE-25
© 2025 UnIDE Team — All rights reserved.