GLOBAL LEADER
아주대학교 소프트웨어융합대학

모각소

[2022 하계] 우수_코테사관학교

  • SW중심대학
  • 2022-10-07
  • 372


<팀원>


소프트웨어학과 김동현

소프트웨어학과 김진우

소프트웨어학과 양지웅

소프트웨어학과 정유환



<팀원별 활동내용>


김동현 : 모임 2주차 까지는 자바를 복습 겸 삼성에서 주최한 SCPC 코딩 테스트 준비를 했다. 예선에서 어려운 문제를 통과하지 못해서 아쉬웠다. 2주차 이후부터 남은 모임 활동은 나머지 팀원과 함께 웹 개발 공부를 할 겸 Microsoft사의 ToDo 클론코딩을 진행했다. 나는 그 중 프론트엔드 개발자로 참여하게 되었고 백엔드와의 처음 협업을 해봤다.


김진우 : Shader 공부와 VR 프로젝트를 진행하였다. 먼저, Shader 공부를 시작하게 된 계기는 기존 프로젝트의 퀄리티 향상, 비쥬얼 이펙트 구현 범위를 확대, 다양한 방식의 최적화를 위함이였다. HLSL과 CG문법을 이용하여 셰이더 문법을 작성하였고, Universal Renderer PipeLine을 연구하여 셰이더의 흐름을 이해하였으며, 간단한 Mini Demo Project를 실행하였다. 다음으로 VR프로젝트인데, 다양한 VR 프레임워크중 OVR SDK를 

선택하였으며, 예전과 버전이 많이 달라져 기존 컴포넌트들의 사용법이 달라져 사용법먼저 숙지하였고, 숙지가 된 이후에는 본격적인 프로젝트를 시작하였다.


양지웅: 모각소 활동 초반에는 백엔드에 관심이 있어서 자바에 대해서 공부를 했다. 자바 문법이 객체지향이다 보니 c언어에 비해 다소 생소한 개념이었지만 여러 사이트를 방문해가며 이해력을 높였다. 자바 문법을 다 배우고 나서 자바 스프링 부트에 대하여 관심이 생겨 공부하게 되었다. 그중에서도 웹 서비스 개발에 대해 “나만의 블로그 만들기”를 주제로 유튜브에서 강의를 듣고 공부를 시작했다.


정유환 : 웹 사이트를 만들기 위한 백엔드 분야를 공부하였다. 자바 언어를 사용하였고 프레임워크로는 스프링을 선택했다. 자바 스프링을 선택한 이유는 객체 지향 언어에 익숙해지면서 가장 많이

사용하는 언어, 프레임워크를 경험해보고 싶었다. 또한 데이터를 저장하기 위한 DB로는 MySQL을 선택하였다.

로그인 회원가입 정보수정 회원정보 메인페이지 등을 구현하였다. 이러한 기능들을 구현하면서 git을 이용해 다른 팀원이 맡은 다른 코드들과 합쳐 하나의 프로젝트를 완성하는 경험을 해보았다.



<팀원별 최종성과>


김동현 : 하나의 웹 페이지를 만들기 위해 프론트엔드를 깊게 파보았고 실제로 서버리스 웹페이지 제작은 거의 완성할 수 있었다. 이론 공부가 아닌 실제로 기능을 구현, 개발을 해보느라 여러 예상치 못한 에러를 만나고 해결해보았다. 원하는 기능을 구현하기 위해 구글링을 많이 해보기도하고 어떻게 하면 자연스러운 모션을 만들 수 있을까 고민해보는 과정을 거쳤다. 그렇게 웹페이지에서 요소들을 배치하는 방법이나 애니메이션 효과를 주는 부분은 더 공부할 필요가 있다 느낄 수 있었고 이번 프로젝트를 진행하면서 실제 개발자들의 고충을 느끼며 실력이 많이 늘었다. 아쉬웠던 점은 백엔드와 협업하기 어려웠던 것이다. 코드 편집기의 차이나 (인텔리제이와 vscode 협업) 요소들 name의 차이 등 여러 어려움에 맞닥뜨려 웹페이지 내용을 서버와 잇는 부분이 매끄럽지 못해서

아쉬웠다. 원래 계획했던 기능의 일부를 못 구현한 것은 아쉽지만 내가 좀 더 백엔드에 대한 지식을 공부한 후일엔 해결할 수 있다고 자신한다.


김진우 : 2022 XMC FALL 컨퍼런스에 발표자로써 Unity Shader 프로젝트와 VR Project를 발표하였다. 결론적으로 두 프로젝트 모두 완성적이였다. Shader같은 경우 궁극적으로 C#코드로 작성하기 힘든 비쥬얼 이펙트를 구현하고 파티클 시스템을 대체하는 방법을 통해 최적화를 이루어냈다. VR Project같은 경우 직접 유저들이 플레이할 수 있을 정도의 퀄리티를 뽑아냈으며 다양한 기능들을 구사할 수 있었다.


양지웅 : 나만의 블로그 만들기 프로젝트를 하면서 MYSQL, STS, POSTMAN 프로그램을 설치하고 3개의 앱의 데이터를 연동하고 사용자의 데이터를 관리하는 법을 배웠다. 해당 프로젝트를 진행하면서 웹사이트를 구현하는 프로젝트이기 때문에 불가피하게 HTML에 대해서도 알게 됐다. MYSQL에서 table에 user의 데이터를 저장하고 각각의 user에게 부여된 id를 통해 데이터를 매핑시켜 가져오는 법을 배웠다. POSTMAN에서는 웹사이트에 요청을 보낼 때, GET, POST, PUT, DELETE 등 어떤 방식을 사용하고, body에 raw, text, json, html 등 어떤 데이터를 실어 보낼지 자바의 어노테이션@을 통하여 결정하고 데이터를 보낼수 있다는 것을 배웠다. STS를 통해 스프링 부트 코드를 짜고, 트랜잭션에 대해 배우면서 전체적으로 코드가 어떻게 동작하는지 알게 되었고, 비밀번호를 hash함수를 이용하여 암호화하는 것을 배웠다.


정유환 : 다양한 기능을 구현하지 못한 점은 아쉽지만 기본적인 기능을 가진 웹 사이트를 만들었다. 처음 만들어보는 웹 사이트라 부족한 점도 느끼지만 이런 부족한 점을 어떻게 채워야 할지 앞으로의 공부 방향에 대해서 알게 되었다.



<팀원별 향후계획>


김동현 : 앞으로 계획은 백엔드에 대해 깊게 공부해볼 생각이다. 자바를 이용한 스프링 프레임워크를 최종 공부 목표로 하여 JSP, Servlet부터 실제 서버에 deploy도 해볼 생각이다. 원래도 프론트로 시작을 했을 뿐

백엔드 개발자에도 관심이 있었기 때문이다. 특히 이번 모각소 프로그램을 통해 프론트로 웹을 개발해보면서

백엔드에서 이런 기능을 구현해줄 수 있을까? 또는 프론트에서 이런 기능을 구현하려면 백엔드에서 처리해주면 편하겠다 같은 생각을 많이 해봤기 때문에 앞으로 백엔드를 공부할 때 프론트의 입장에서도 생각하며 개발할 수 있다는 것이 이점이 될 것이다.


김진우 : Shader같은 경우 추후 Deep하게 SRP에 대해 공부해 볼 예정이며, 더 나아가 PBR, VFX같은 기능들도 이용해서 시각적인 부분을 극대화 시켜볼 예정이다. VR Project같은 경우, 오는 8월31일, Unity 어워즈에 VR부문과 학생부문에 참가해볼 예정이다. 그 이후에는, 코드 최적화와 각종 최적화를 통해 프로젝트를 보완하고, 스토리 라인 보완, 도전과제등을 추가해 스팀이라는 곳에 출시해볼 예정이다. 두 프로젝트를 융합하여, 이번년도 안에 새로운 VR프로젝트를 시작해볼 예정이다.


양지웅 : 아직 2학년이다 보니 장래를 확정 짓지 않고 여러 경험을 쌓아보고 싶다. 아직은 웹 개발에 대해 공부를 하는 중이지만, 모바일 앱이나 게임 개발에 도 흥미가 생겼다. unity와 kotlin에 대해 배울 계획이다. 향후 실력이 쌓인다면 각종 대회에 참가하여 참가상을 휩쓸 계획이다.


정유환 : spring secuirty 같은 스프링에서 제공하는 라이브러리들을 이용해 더 최적화, 간단한 코드로 로그인, 로그아웃 기능을 구현해보고 싶다. 또한 로직마다 테스트코드를 작성해보고 조금 더 큰 로직을 구현할 수 있는 바탕을 만들 것이고 나아가 직접 배포를 하는 경험을 해보고 싶다.



<팀원별 개인 URL>


김동현 : https://velog.io/@anak_2?tag=%EB%AA%A8%EA%B0%81%EC%86%8C

김진우 : https://wlsdn629.tistory.com/category/%EB%AA%A8%EA%B0%81%EC%86%8C

양지웅 : https://no-effort-no-gain.tistory.com/category/%EB%AA%A8%EA%B0%81%EC%86%8C

정유환 : https://320hwany.tistory.com/category/%EB%AA%A8%EA%B0%81%EC%86%8C?page=2



<최종 발표회 자료>