회고/항해99_'22.01~04 10

[항해 5기] 항해99를 마치고..

12월 26일의 면접부터 1월 5일의 사전test, 그리고 4월 15일 수료까지. 가끔 지인들에게 우스갯소리로 "배를 타고 항해하는 줄 알았는데, 수영해서 바다를 건너는 거였어요"라고 항해99를 설명할 정도로 지난 96일, 1,531시간(매일 16시간) 동안, zero-base였던 나에게 무엇 하나 쉬웠던 순간은 단언컨대 없었다. - 주 6일, 9 to 9 이상의 스터디 시간 - 쉴 틈 없이 부여되는 팀 단위 과제 - 때때로 발생하는 팀원과의 의견 충돌 - 문제에 대한 정답을 스스로 찾는 자기주도적 학습 - 특히, '왜 이것밖에 못하는가'라는 자기성찰과 자괴감의 시간들 사실, 99일이라는 '짧은 기간', '공부하는 환경', '몰입'까지 이 3가지 이점만 보고 항해99를 시작했었다. 그러나 실제 커리큘럼을..

[항해 5기] 7주차 Week I Learned (클론코딩)

이번 항해에서의 7주차 프로젝트는 클론코딩이다. 지난 주차에 프론트 개발자들과 협업했던 경험을 바탕으로 한층 더 수월하게 협업하며 개발에 임할 수 있었다. 클론 코딩 대상은 "Colley"라는 어플로 흔히 클론하지 않으면서 배웠던 기능들을 최대한 발휘 할 수 있는데 주안을 두었다. 이번에는 마이페이지를 맡아, 기본적인 CRUD를 진행하며, 시큐리티를 조금씩 알아보고 정리 할 수 있는 시간이었다. ㅇ 프로젝트 소개 Colley ㅇ 프로젝트 개요 세상 모든 덕질이 다 모인 곳 ! 혹시 귀여운 굿즈를 모으나요? 아니면 디즈니나 스누피 소품을 좋아하나요? 콜리는 자신의 덕질을 뽐내고, 정보를 나누면서 취향을 공유하는 덕질 플랫폼이에요 - 주소: http://colley-hanghea.s3-website.ap-n..

[항해 5기] 6주차 Week I Learned (미니프로젝트2 / ERD란?)

이번 6주차는 각 주특기인 리액트와 자바를 이용하여 미니 프로젝트를 구현하는 첫 협업 기간이다. 프론트와 백이 처음으로 발을 맞춰보는 기간인 만큼, 여러 케이스를 미루어보아 팀내 각 구성원의 능력보다 커뮤니케이션이 더 중요하다는 사실도 새삼 알게 되었다. 물론 우리조는 프론트와 백단 모두 서로 배려해가며 프로젝트를 마칠 수 있음에 감사하다. 우리가 진행했던 프로젝트는 "밥친구"로 1인가구가 늘어 홀로 밥을 먹을 수밖에 없는 사람들을 위한 맛집 모임 사이트이다. 원하는 지역에 있는 맛집에 모임을 만들어 신청한 구성원들과 함께 식사를 할 수 있는 구조로 이루어져 있다. 개인적으로는 더 많은 기능에 참여하지 못한 부분이 아쉽지만 더 실력을 키워 구현해보지 못한 기능들도 도전해보고 싶다. 이상으로 프로젝트 관련..

[항해 5기] 5주차 Week I Learned (CORS)

항해에서의 이번 5주차는 생각보다 실력의 진전이 거의 없었던 것처럼 느껴진 한 주였다. 그러나 포기하지 않고 지금과 같이 꾸준하게 시간과 노력을 투자한다면 결국 실력은 오를 것이라고 생각한다. 6주차 미니프로젝트가 끝나는대로 스프링 강의를 찾아 기초부터 다시 쌓아보아야겠다. ㅇ CORS란? (cross-origin resource sharing) : 직역하면 교차출처 리소스 공유라고 볼 수 있다. 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제이다. 이때 출처란 Protocol과 Host, 포트 번호(ex. :8080 등)까지 모두 합친 것을 의미한다. 웹에서는 다른 출처의 리소스 요청을 제한과 관련된 2가지 정책이 존재하는데..

[항해 5기] 4주차 Week I Learned (ORM, SQL, MVC)

■ ORM ㅇ 개념 - 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 것을 말한다. 1) 객체지향 프로그램은 클래스를 관계형 데이터베이스는 테이블을 사용한다. 2) 객체 모델과 관계형 모델 간의 불일치가 존재, ORM을 통해 객체 간의 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다. - 데이터베이스 Object ㅇ 장점 객체 지향적인 코드와 비즈니스 로직에 더 집중할 수 있다. SQL 쿼리가 아닌 객체 모델로의 프로그래밍에 더욱 집중하고 코드에 집중하기에 가독성을 올려준다. 재사용 및 유지보수의 편리성이 증가한다. ORM이 독립적으로 작성되어 있어 해당 객체들을 재활용할 수 있다. 때문에 모델에서 가공된 데이터로 디자인패턴을 견고하게 유지할 수 있다. DBMS에 대한 종속성이 줄어든다...

[항해 5기] 3주차 Week I Learned (DI/IoC/Bean)

[이번 주차의 테마는 '숙련'] 이번 일주일(1/21~1/27)은 2주차에 비해 더 힘들다고 느끼지 못했음에도 불구하고, 지금까지의 항해 기간 중 체감상 가장 짧았다. 아마 주특기 입문으로 해야 할 일이 많아서 그렇지 않았나 추측한다. 아직 만족할 만한 성장을 이루진 못했지만, 조급해하지 않고 내 페이스대로 항해에 참여하고자 한다. ■ DI(Dependency Injection)란? : 의존성 주입(or 의존관계 주입)은 필요한 객체를 직접 생성하는 것이 아닌 외부로부터 필요한 객체를 받아서 사용하는 것이다. 아래의 경우, 'A2객체인 부품(Dependency)에 B객체인 부품을 조립(Injection)한다'라고 해석 하면 좀 더 이해가 쉬울 수 있다. ㅇ 예제 A1은 객체가 생성될 때 B객체도 같이 직..

[항해 5기] 2주차 Week I Learned (객체지향 프로그래밍/JVM)

[2주차(알고리즘) 테마 : 개념을 잘 소화하기!] ■ 객체지향 프로그래밍 (Object Oriented Programming) ㅇ 정의 : 여러 개의 객체 단위로 나누고 그 객체 간의 유기적인 상호작용을 통해 프로그래밍하는 작업 방식을 의미합니다. * 객체(Object)란? : 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말합니다. ㅇ 장/단점 구분 객체지향 프로그래밍 절차지향 프로그래밍 개념 여러 객체 단위로 나누어 작업 여러 함수로 나누어 순차적 호출하여 작업 장점 - 협업이 중요한 대형 프로젝트에 적합 - 코드의 재사용성(상속) - 개발 생산성 향상 - 유지보수의 우수성(캡슐화) - 간단하고 소규모 프로젝트에 적합 - 비교적 배..

[항해 5기] 1주차 Week I Learned (API란?)

[1주차 테마는 '적응'] >> 지금까지 'API'를 단순히 기관에서 제공하는(혹은 다루는) 정보의 규격이라고만 생각했으나, 이번 1주차를 마치며 더욱 정확하게 이해할 수 있어 좋다. 더욱 지적 성장을 이룰 수 있도록 노력하겠다. [ API(Application Programming Interface)란? ] ■ 개념 : 응용프로그램 프로그래밍 인터페이스로 각각의 요청들을 담당하는 서버에게 요청이 잘 전달 및 처리될 수 있도록 하는 매개체이자 일종의 규격 ■ API유형 1) private API : private API는 내부 API로, 회사 개발자가 자체 제품과 서비스를 개선하기 위해 내부적으로 발행한다. 따라서 제 3자에게 노출되지 않는다. 2) public API : public API는 개방형 A..

[항해 5기] Mini Project 11조 S.A(Starting Assignment)

ㅇ 프로젝트명 : 공부혜윰 ㅇ 프로젝트 소개 1. 단어 그대로 '공부하자'라는 기본의미 2. '공부'와 생각을 의미하는 순우리말 '혜윰'의 합성어 ㅇ 와이어프레임 - 유저들이 유튜브 영상에 리뷰를 달아 업로드 및 조회할 수 있습니다. - 원하는 카테고리별로 조회 또는 검색 할 수 있습니다. - 선택한 영상에 '좋아요' 기능이 가능합니다. - 자신의 계정을 확인 할 수 있습니다. - 자신이 좋아요했던 영상을 모아 볼 수 있습니다. ㅇ 개발해야하는 기능 기능 method url request response 회원가입 POST /sign_up/save {username_give :username, password_give :password,} {”username”’ :username, “password” :p..