🔹프로젝트 기간
2024.11.06 - 2024.12.09 (5주)
🔹프로젝트 주제
주유소/전기차 충전소 정보 제공 및 현재 위치 기준 목적지 추천 시스템
🔹담당 역할
- PPT 담당
- 문서 담당
- 주차장 페이지
🔹사용 기술 환경
Javascript, jsp, Java, Ajax, MySql, Tomcat, spring MVC, DBeaver, JPA
💭프로젝트에서 배운 점
1. 공공데이터 활용
2차 프로젝트와 3차 프로젝트 모두 공공데이터 API를 활용하여 프로젝트를 진행하였습니다.
공공데이터 포털에서 제공하는 데이터를 분석하며, 데이터의 구조와 호출 방식 그리고 데이터 처리의 효율성을 깊이 이해할 수 있었습니다.
2차 프로젝트에서는 공공데이터를 부분적으로 호출하여 사용했으나,
3차 프로젝트에서는 공공데이터와 카카오 API를 결합하여 더 복잡한 데이터 처리 과정을 경험했습니다.
이를 통해 API 활용에 대해 한층 더 심층적으로 공부하고 응용 능력을 강화할 수 있었습니다.
2. 자바스크립트
프론트엔드로만 구성된 페이지를 개발하며 JavaScript의 강력함과 한계를 체감했습니다.
프로젝트 초기에는 기능 정의가 단순하여 예상하지 못한 문제로 인해 동일한 기능을 여러 번 구현하는 일이 있었습니다.
API 데이터 호출만 하면 될 줄 알았지만, 데이터 갯수를 고려한 페이지네이션이 필요했습니다.
그리고 API에서 전체 데이터를 호출한 후에만 검색 기능이 동작하도록 추가적인 로직을 구현해야 했습니다.
이러한 과정을 통해 처음부터 꼼꼼히 설계하는 것의 중요성을 깨달았습니다.
반복적으로 코드를 검토하며 JavaScript의 이벤트 핸들링,
사용자 입력에 따라 동적으로 지도와 데이터를 업데이트하는 로직 구현 등의 기술을 자연스럽게 익혔습니다.
JavaScript와 API를 활용한 데이터 처리 및 UI 개발은 재미있고 신기한 경험이었습니다.
3. 카카오 지도 및 카카오 모빌리티 API 활용
카카오 지도 API와 카카오 모빌리티 API를 활용하여 지도 기반 서비스를 개발하였습니다.
카카오 지도 API를 사용하여 각 주차장의 위치에 마커를 표시하고,
카카오 모빌리티 경로 탐색 API를 통해 실시간 경로 데이터를 받아 지도와 상세 경로를 동기화하였습니다.
API 사용 과정에서는 쿼리 한도, 데이터 정확성, 응답 속도 등의 현실적인 제약을 해결하며
좋은 API의 설계와 선택이 프로젝트 성공에 미치는 영향을 실감했습니다.
4. 좋은 API의 중요성
이번 프로젝트를 통해 API의 설계와 품질의 중요성을 깨닫게 되었습니다.
구조적으로 명확하고 잘 설계된 API는 데이터 활용이 매우 수월하며, 개발 생산성에 직결된다는 것을 체감했습니다.
처음에는 공공데이터 API의 응답 속도, 정확성, 안정성, 데이터 양이 천차만별임을 알지 못했지만,
여러 API를 비교하며 현재 내가 개발하려는 웹페이지에 가장 적합한 API를 선택하는 역량을 키울 수 있었습니다.
5. 반응형 웹 디자인 및 CSS 미디어 쿼리
전기차 충전소, 주유소, 주차장 서비스는 주로 네비게이션이나 모바일 사용량이 많기 때문에,
프로젝트에서는 반응형 웹 디자인을 적용하여 다양한 기기에서 최적화된 경험을 제공했습니다.
미디어 쿼리를 활용하여 데스크톱, 태블릿, 모바일에 따라 레이아웃과 UI를 동적으로 변경하였습니다.
모바일 사용자 경험을 고려한 UI 설계로, 다양한 화면 크기에서 일관된 사용자 경험을 제공했습니다.
이 경험을 통해 반응형 웹 디자인의 원리를 학습하고, 이를 실무에 적용할 수 있는 자신감을 얻었습니다.
6. 실질적인 문제 해결 능력 강화
프로젝트 진행 중 다양한 문제를 해결하며 실제 개발 현장에서의 문제 해결 능력을 키웠습니다.
공공데이터 API의 불완전한 데이터 구조를 보완하기 위해 전처리와 예외 처리를 추가했습니다.
API 요청 한도, 카카오 지도 API와 공공데이터의 통합 과정에서 발생한 충돌을 해결했습니다.
🤝프로젝트 Review
3차 프로젝트는 저에게 순수한 재미 그 자체였습니다.
1차 프로젝트는 아무것도 모르는 상태에서 시작했기에 시행착오와 막막함으로 가득한 경험이었고,
2차 프로젝트는 문제를 부딪치며 하나씩 해결하며 많은 것을 배웠던 시기였습니다.
그리고 3차 프로젝트는 개발을 배우고 5개월 차가 되었을 때 진행한 만큼,
이제 막 알을 깨고 삐죽삐죽 걸어 나아가는 단계였습니다.
이번 프로젝트는 배움과 재미를 동시에 느끼며 개발에 몰입할 수 있었던 특별한 경험이었습니다.
코드의 이해에서 오는 재미
처음에는 코드에 대해 아무것도 모르던 '코드 까막눈' 상태에서 벗어나,
이제는 왜 이렇게 동작하는지 이해하며 코드를 작성할 수 있게 되었습니다.
단순히 결과를 출력하는 것에 만족하지 않고, 동작 원리를 이해하며 작성한 코드가
실제로 작동하는 것을 보는 것은 신기하고 재미있는 경험이었습니다.
JavaScript 집중 학습
6개월 동안 여러 가지 언어를 함께 공부하고 사용하다 보니, 수박 겉핥기식으로 사용하는 경우가 많아 아쉬웠습니다.
그러나 이번 프로젝트에서는 90% 이상의 작업을 JavaScript로 구현하며 JavaScript에 대한 깊은 이해와 공부를 할 수 있었습니다.
한동안 백엔드의 재미에 빠져 잠시 잊고 있었던 JavaScript의 본질적인 매력을 다시 상기할 수 있었습니다.
새로운 팀원과의 협업
이번 프로젝트는 새로운 팀원들과 새로운 주제로 진행되었습니다.
팀원들의 다양한 스타일을 경험하며, 서로의 강점을 배울 수 있었습니다.
각 팀원의 문제 접근 방식과 해결 방법을 보며 나의 개발 방식을 되돌아볼 기회가 되었고, 이를 통해 협업의 중요성과 효율성을 배우는 계기가 되었습니다.
개발 과정의 쉬운 이해
이번 프로젝트는 이전의 프로젝트들보다 상대적으로 쉽게 느껴졌습니다.
이는 그동안의 경험과 학습을 통해 문제를 해결하는 능력이 향상되었음을 의미하며,
개발자로서 조금씩 성장하고 있다는 점을 확인할 수 있었습니다.
🐣프로젝트를 마치며
배움은 끝이 없으며, 아직 부족한 점도 많지만, 이번 경험은 저의 성장 과정에서 중요한 이정표가 되었다고 느낍니다.
앞으로도 더 많은 도전과 성장을 이어나가고 싶습니다. 🧐
👛PPT 일부 발췌
✔시연 영상
🍀노션 엿보기
1,2,3차 모두 노션으로 협업을 했지만 아직은 미흡한 저의 템플릿들입니당!
그럼에도 팀원들이 모두 잘 팔로우업 해줘서 감사할 따름이었습니다!
<프로젝트 결과>
1등!!! 2차 프로젝트에 이어 3차까지 1등을 했습니다. 모든 팀원분들께 감사를.. 💖
'Project > 5V' 카테고리의 다른 글
[3nd Project] 카카오 모빌리티 API 가공하기 (5) | 2024.11.28 |
---|---|
[3nd Project]반응형 미디어 쿼리 (6) | 2024.11.23 |
[3nd Project] CSS로 완성도 높이기 (2) | 2024.11.22 |
[3nd Project]벌레 잡기 (6) | 2024.11.21 |
[3nd Project] 카카오 Api로 주차장 구현하기 11 (9) | 2024.11.20 |