문서 오피스 소프트웨어 GAIA Office
2024.04 - 2025.02
'(주)티맥스가이아'에서 문서(워드프로세서, 스프레드시트, 프레젠테이션) 편집 도구 GAIA Office 개발에 참여하였습니다. 공통 도형 기능 개발 및 안정화를 담당하였습니다.
💻 기술 스택
🧩 구현 기능
1. 선도형 연결 기능 개발
선 도형 조작 중 다른 도형에 가까이 접근하면 해당 도형 위 연결 가능한 점을 표시하고, 연결점에 접근하면 해당 점과 연결되며 도형을 가로지르지 않고 우회하는 연결선이 만들어지도록 하는 기능
레퍼런스 제품을 분석하여 100+개의 경우의 수를 도출
특정 도형에 대해 이동/크기 조정/회전 등 편집이 발생하면 해당 도형에 연결된 선 도형도 함께 변화하는 기능 구현
도형 간 위치 등 기하학적 관계에 따른 연결선의 형태를 계산하는 알고리즘 개발
한 가지 모양만 생성할 수 있었던 선 도형의 생성 가능한 모양을 확장할 수 있게 됨
2. Point, 그래픽(도형, 사진, 동영상) 관련 기능 단축키 구현
다중 슬라이드 순서 변경, 개체 정렬 순서 변경, 슬라이드 내 이전/다음 개체 선택 등 편집 동작을 key 이벤트와 매핑
키보드로 문서 탐색 및 조작 가능한 기능을 확장하여 웹 접근성 개선
🌱 배운점
초기 설계의 중요성을 깊이 깨달았습니다. 부실한 설계는 개발 과정에서 많은 시간을 소모하게 하며, 좋은 설계가 개발 속도와 품질을 결정한다는 점을 실감하게 되었습니다
도형은 복잡한 요소와 편집 로직이 얽혀있어 개발하는 동안 파악하는데 어려움을 겪었습니다. 컴포넌트/커스텀 훅, 반복적인 로직을 재사용 가능한 형태로 분리하여 가독성을 높이고 중복을 최소화하는 것의 중요성을 체감했습니다. 확장성과 유지보수성을 고려하여 코드를 작성하는 습관을 들이려 노력했습니다.

