# p5.js 1.0 로드맵 [진행 중]

이 문서는 향후 p5.js 1.0 버전의 기능, 개선사항 및 유지보수 목록입니다. 첫 번째 초안은 UCLA 디자인 미디어 아트 실무그룹에서 작성했고, 여러분의 피드백을 위해 내놓습니다. 이것은 업데이트될 수 있는 초안이며, 2019년 8월 p5.js 기여자 컨퍼런스에서 대폭 수정될 것입니다. 우리의 목표는 2019년 말까지 p5.js 1.0 버전을 출시하는 것입니다. 

ES6 마이그레이션을 제외하고, 여기에 있는 태스크들은 우선순위대로 기재된 것은 아닙니다. 깃헙 [마일스톤](https://github.com/processing/p5.js/milestones)은 릴리즈 작업 우선순위를 정하고 진행상황을 추적하는 곳입니다.

## ES6 마이그레이션
* 1단계: 사용자측
  * p5js.org 튜토리얼(튜토리얼별 이슈)
  * p5js.org 예제(섹션별 이슈)
  * p5js.org 참조 예시(섹션별 이슈)
* 2단계: 개발자측
  * 빌드 프로세스
  * 개발자 문서
* 3단계: 코드베이스
  * TBD: 이 일은 전담할 사람이 있어야 하며, 우리는 담당자가 결정되기 전까지 이 작업을 시작하지 않을 것이다.
* 다음 단계:
  * 기타 자료 -- 교육 자원을 원활하게 배포하려면 외부 자료(p5.js 시작하기 서적, 코드 트레인)를 어느 정도까지 업데이트해야 합니까?
  * 기여 라이브러리

## 유지보수
* 보류 중인 크롬 변경사항에 대한 오디오 업데이트(사용자가 먼저 반응해야 함)
  * 참조 문서와 예제, 예제 페이지 업데이트
  * FES를 업데이트하여 이에 대해 경고하시겠습니까?
* 더 완전한 단위 테스트
  * 이를 위한 더 명확한 튜토리얼
* 친절한 에러 시스템 문서 개선
  * 이 과정에서 일어나는 상황을 더 상세히 남기려면 https://github.com/processing/p5.js/blob/main/src/core/friendly_errors/fes_core.js 에 코멘트하세요.

## 버그 수정
* 모바일 디바이스 지원/업그레이드
* WebGL 신뢰성
  * 조명 효과
    * lights() 구현
    * 픽셀 단위 조명을 기본 적용
    * 셰이더 파이프라인 단순화?
    * 예제 업데이트
  * 쉐이프 파이프라인 단순화
    * 쉐이프 단일 렌더링 방법, 고정 모드에서 기하 오브젝트 생성

## 새로운 기능
* 쉐이프
  * p5.Geometry 오브젝트를 반환하기 위한 createShape() 공개 API?? 2D에 해당하는 것은?
  * 2D용 SVG는 없나?
* image()에서 GIF 지원
  * createImg는 좋지만 학생들은 gif를 좋아합니다 :)
* 에러 메시지 현지화(i18n) + FES
  * 코드베이스 내에서 에러와 콘솔 메시지를 현지화하기 위한 인프라 개발
  * 다양한 에러 메시지 번역
* [이 쓰레드](https://github.com/processing/p5.js/issues/2305)에서 논의된 K-12 지원
  * circle() 과 square() 추가
  * 라이브러리 페이지에서 makeyourownalgorithmicart/simple.js 가져오기
* 라이브러리 전체에서 Promises 구현
  * 코드베이스에서 Promises 사용 확인/구현
  * loadX() 함수 API에서 Promises 공개 사용(우선순위 낮음?)
  
## 기여자 프로세스와 지원
* 다양한 영역에서 미완성에 대한 티켓 오픈:
  * 테스팅
  * 기능 구현
  * 번역
* [시맨틱 버전관리](https://semver.org/)의 엄격한 사용
* 향후 버전 로드맵 입력을 요청하는 프로세스를 명확히 합니다.

## 기타
* 1.0 버전 릴리즈의 경우, 아티스트와 코더가 큐레이션한 새로운 예시 세트를 삭제하십시오.
