미래 국방비전 2050, 각군의 스마트 부대 육성 등 군의 스마트화, 디지털화에 대한 움직임이 활발히 진행되고 있습니다. 국가 차원에서도 4차산업혁명 관련 인력육성을 위해 <전국민 AI/SW교육 확산방안>과 같은 연구를 진행한 사실에서 알 수 있듯이, 군 역시 이런 패러다임 변화에 맞춰 군 인력에 대한 체계적인 소프트웨어 기초역량 강화방안을 필요로 합니다.
군 역시 각군 교육사령부를 통해 AI, SW 인력 양성교육을 수행하고 있지만, 소집교육이 종료된 후에는 국방망(내부망)이라는 환경적 제약으로 인해 쌓은 지식들에 대해 충분한 복습기회를 제공받지 못하고 쉽게 내용을 망각하게 됩니다.
이를 해결하기 위해 저희는 국방망 내 문제풀이 기반 프로그래밍 학습체계를 구축해 국방 실무자들이 ①손쉽게, ②꾸준히 실력향상을 꾀할 수 있도록 하자는 목표와 함께 <Mil Coder> 프로젝트를 제안합니다. QingdaoU 온라인저지 프레임워크를 기반으로, 국방망 환경에 적합하도록 실시간 웹 IDE 추가와 함께 커뮤니티 기능을 강화해 국방인력들의 소프트웨어 역량 향상에 기여하고자 합니다.
- 알고리즘 문제해결 기반 프로그래밍 학습을 지원합니다
- C/C++, JAVA, Python 등 주요 프로그래밍 언어를 모두 지원합니다
- 제출한 코드에 대한 정답 여부를 실시간으로 확인할 수 있습니다
- 별도의 프로그램 설치 없이도 웹브라우저에서 실시간으로 코드 작성 및 실행이 가능합니다
- 입력(
stdin
)에 대한 코드 실행결과(stdout
,stderr
)를 눈으로 바로 확인할 수 있어 손쉬운 디버깅이 가능합니다
- KaTeX와 마크다운 문법을 통해 복잡한 수식, 표, 이미지가 포함된 게시글을 작성할 수 있습니다
- 키워드별, 문제 ID별 검색을 통해 특정 주제에 대한 질문 작성 및 필터링이 가능합니다
- 게시글별 댓글을 통해 사용자들 간 자유롭게 의견을 교류할 수 있습니다
- 현재 다른 사용자들이 어떤 문제를 풀고 있는지, 정답 여부를 확인할 수 있습니다
- 문제풀이 수를 통해 순위표를 구성하고 이를 통해 성취욕을 자극할 수 있습니다
- 체계를 통해 내부 경연대회를 개최함으로써, 선의의 경쟁을 통해 학습의욕을 고취시킬 수 있습니다
- ECMAScript 6 지원 브라우저 사용
- 권장: Google Chrome 버전 77 이상
OnlineJudgeFE
: 웹사이트 프론트엔드 구성- Vue.js 기반
- Golden Layout, Monaco Editor를 이용한 IDE UI 구성
- ElementUI, iView를 이용한 UI 컴포넌트 디자인
OnlineJudge
: 웹사이트 백엔드 구성- Python Django 기반
- redis, postgreSQL을 이용한 DB관리
JudgeServer
: 문제에 대한 채점서버 API 구성- Python Flask 기반
- seccomp 기반 샌드박스 구성
IdeServer
: 웹 IDE 실습환경에 대한 API 구성- judge0 기반
sudo apt-get install docker-compose
git clone https://github.com/osamhack2021/web_MilCoder_AlKor.git
docker-compose up -d
- Lee Woncheol ([email protected]), GitHub ID: wclee2265
- Kim Minchul ([email protected]), GitHub ID: nyan101
- Kim Jehyung ([email protected]), GitHub ID: 0xrgb
MIT, GPL 3.0. 자세한 정보는 license.md에서 확인하세요.