ECOMASTER 는 사용자로부터 컴파일 및 실행이 가능한 JAVA 코드를 입력받아 탄소 배출량을 계산하고, Green Pattern을 이용해 개선이 가능하다면 코드를 수정합니다. 개선을 통해 감소한 탄소 배출량을 원본 코드의 탄소 배출량과 비교해 제공합니다.
본 프로젝트는 JAVA 코드 실행 시 발생되는 탄소 배출량을 측정한 후, 개선이 가능하다면 개선하여 사용자에게 제공하고 개선의 효과를 알리는 것을 1차 목표로 합니다. 이후 사용자가 다른 패턴에 대해서도 알 수 있도록 Green Quiz도 제공합니다. 사용자들이 발견한 새로운 정보나, 자유로운 사용자간의 소통을 위해 커뮤니티 기능도 포함합니다.
-
코드 컴파일 및 실행: 사용자는 Ecomaster 웹 페이지를 통해 JAVA 코드를 입력하고, 해당 코드가 서버에서 컴파일 및 실행됩니다.
-
실행 시간 및 메모리 측정: 코드 실행 과정에서 프로그램의 실행 시간과 메모리 사용량이 측정되어 기록됩니다.
-
탄소 배출 계산: 측정된 실행 시간 및 메모리 사용량을 기반으로 코드가 실행될 때 서버의 컴퓨팅 환경에서 발생하는 탄소 배출량이 계산되어 사용자에게 제공됩니다.
-
코드 개선: Green Pattern을 적용해 코드를 개선한 후 사용자에게 제공합니다.
-
Green Quiz: 사용자에게 코드의 성능을 향상시킬 수 있는 여러 Green Pattern을 학습할 수 있도록 Quiz를 제공합니다.
-
Community: 사용자들이 자유롭게 의견을 제시할 수 있도록 Community를 운영합니다.
-
코드 입력: ECOMASTER 웹 페이지에서 JAVA 코드를 입력합니다.
-
컴파일 및 실행: 입력한 코드는 서버에서 컴파일되고 실행됩니다.
-
측정 결과 확인: 코드 실행이 완료되면 실행 시간과 메모리 사용량이 측정된 결과를 확인할 수 있습니다.
-
탄소 배출량 확인: 측정된 결과를 기반으로 코드 실행 시 서버에서 발생한 탄소 배출량을 확인합니다.
-
개선 결과 확인: Green Pattern을 적용하여 개선한 코드가 'Modified Code'에 출력됩니다. 또한 실행 시간, 메모리 측정량, 탄소배출량의 개선도 아래 테이블에서 확인할 수 있습니다.
- 입력 가능한 코드는 JAVA로 제한되어 있습니다.
- 코드 실행 결과 및 탄소 배출량은 참고용으로 제공되며, 정확성을 보장하지 않습니다.
- 사용자의 입력 및 코드를 실행하고 결과를 저장하는 시간은 최대 30초로 제한되어 있습니다.
- JAVA 코드는 1000줄 이상 입력할 수 없고, 코드의 최대 크기는 4KB 입니다.
- Ecomaster는 Window 10 이상, Google Chrome 버전 96 이상을 타겟으로 하고 있으며, 이보다 낮은 버전으로 실행하거나 V8 Engine이 아닌 브라우저를 사용할 시 정상 동작 하지 않을 수 있습니다.
- 프로젝트 팀 이름: 8조
- 팀장: 임성훈
- 프로젝트 팀원
- 프론트엔드
- 김민성
- 문수현
- 양승환
- 백엔드
- 황인성
- 임성훈
- 프론트엔드