본문 바로가기

전체 글

(16)
WIL_220808_항해99 실전프로젝트 트러블 슈팅 회고 항해99 실전 프로젝트가 끝이 났다. 실전 프로젝트 전 미니프로젝트 2회, 클론 코딩 프로젝트 1회, 주특기 기초/숙련/심화, 알고리즘 등을 거치며 14주 간의 짧지만 긴 여정이 마무리 되었다. 조원들과 실전 프로젝트를 거치며 크고 작은 트러블 슈팅을 겪었고 그때마다 Google Sheets에 정리를 해놓았다. 프로젝트를 마무리하며 해당 트러블 슈팅들을 블로그에 정리해보고자 한다. * 실전 프로젝트 URL https://mungfriend.com/ 1. WebSocket 통신 시 발생한 인증 관련 오류 1) 사실 수집 및 원인 추론 : WebSocket 통신 시, SecurityContextHolder에 인증 정보가 없는 문제가 발생했다. 기존 우리 웹 애플리케이션의 인증 방식은 프론트에서 보낸 요청의 ..
WIL_220712_CI/CD 구축 후기(AWS, Docker, Spring Boot, github actions) 항해99 과정 중 진행하게 된 CI/CD에 대해 이야기 해보고자 한다. CI/CD란 한마디로 말하면 빌드/테스트 자동화 과정이라고 말할 수 있다. CI(Continuous Integration), CD(Continuous Deployment) 확실히 기존 방식처럼 Ubuntu 서버에 직접 JAR파일을 빌드한 뒤, FileZilla를 통해 업로드하고 GitBash에서 해당 EC2 서버에 원격 접속하여 빌드된 파일을 직접 실행하다 보면 조그마한 수정사항이 발생할 때마다 다시 저 과정을 반복해야하는 '번거로움'이 있었다. 그 번거로움을 피하기 위해 우리는 프로그래밍을 배우는 것 아닐까? 그래서 우리 조에서는 이 CI/CD 구축을 AWS EC2 (Amazon Linux 2 AMI) Github Actions D..
TIL_220629_양방향 연관관계를 이해해보자! 항해 99 실전프로젝트가 시작되었다. 하나하나 기록하면서 가고자 하는 마음을 다잡아야 할 때가 된 듯 하다. 생각보다 미니 프로젝트, 클론 코딩 프로젝트 주간이 굉장히 타이트했고 쉽지 않았다. 특히 클론 코딩 프로젝트 주간에는 웹소켓, Stomp, Redis를 이용한 Slack Clone 코딩을 진행했었는데, 일주일동안 정말 매일같이 조원들과 새벽까지 매달렸던 것 같다. 그러다보니 소홀하게 된 TIL 작성 ㅠㅠ.. 아직까지는 기억 속에 있으니 괜찮다지만 나중을 위해서는 하나하나 기록하는 습관을 들여야 하겠다. 오늘은 양방향 연관관계 매핑에 대해서 이해해보는 글을 작성한다. 김영한 님의 강의 및 책을 보고 깔끔하게 정리하신 블로거 분의 글이 있어 그 글을 참고하였음을 밝힌다. **참고 블로그 URL** 참..
WIL_220612_CORS 관련 내용 정리. 프론트 협업을 위한 필수 개념. 예전에 회사에서도 이런 오류를 보았던 기억이 난다. 특정한 이유로 인하여 회원 가입을 하는 A라는 웹사이트가 있었고, 회원이 가입을 하려고 할 때 그 회원이 중복이 된 회원인지 체크를 하려면 B라는 웹 서버에 올라가있는 데이터베이스에서 값을 비교하여 다시 돌려줘야 하는 과정이 있었다. 그때만 하더라도 CORS라는것이 대체 어떤 오류인지 처음 보았기 때문에 이 문제를 해결하기 위해 여기저기 물어보며 해결했던 기억이 난다. CORS란 정확히 무엇일까? CORS는 Cross-Origin Resource Sharing의 약자로 여기서 말하는 Origin이란, 1) http 또는 https와 같은 프로토콜, 2) www.oooo.com 과 같은 도메인주소, 3) 80 또는 443 등의 포트 번호까지를 합쳐서 일컫..
cs스터디_1일 1로그 100일 완성_41,42 챕터 Chapter 41. 자바스크립트와 파이썬 프로그래밍 언어는 정말 많지만, (오바마 대통령이 권유한 것처럼) 안드로이드폰용으로는 Java가, 아이폰용으로는 Swift가 필요하다. MIT에서 만든 스크래치(Scratch)라는 시각적 프로그래밍 시스템도 있는데 이는 어린이들이 배우기에 좋지만 크고 복잡한 프로그램으로 확장하기에는 적합하지 않다. 이 책에서는 자바스크립트(JS)와 파이썬(Python)에 대해 간략히 이야기를 한다. #JavaScript 자바스크립트는 모든 브라우저에 포함되어 있어 소프트웨어를 별도로 다운로드 및 설치하지 않아도 됨 언어 자체가 간단하고, 비교적 경험을 조금 쌓아도 썩 괜찮은 코드를 작성할 수 있음 웹페이지에 다양한 효과를 주기도하며, 구글 문서도 자바스크립틀르 사용 트위터, 페..
TIL_220609_JPA, 단방향 연관관계 + 소감~?(양방향은 다음편) 주특기 심화 주차가 끝나는 날이다.(and 부트캠프 32일차) 이번 주가 가장 생각할 것이 많았던 주였던 것 같다. 개인적인 커리어 패스의 변화 결정도 그렇고, 심화 주차에 새로 배우게 된 개념들도 그렇고...ㅋㅋ 꾸준히 TIL을 정리를 해야겠다는 생각은 항상 있었지만, 그 실행을 옮기기까지 시간이 좀 걸렸던 것 같다 ㅎㅎ 오늘부터는 간단한 것들이라도 끄적여봐야지. 우선은 개념이해를 위해 JPA 연관관계에 대해 강의를 하신 김영한님의 유튜브 강연을 두 개 보았었다. 연관관계 매핑, 단방향, 양방향 등에 대해서 말씀하시긴 했는데 아무래도 실제로 오프라인에서 진행된 강연을 녹화한 영상이다보니 속 시원히 이해가 안되는 부분이 있어 구글링을 했는데, 김영한님의 강의와 책을 기반으로 글을 잘 써주신 블로거가 있어..
WIL_220606_ORM, JPA, SQL 그리고 꿈 어느덧 정신없이 달려오다보니 부트캠프 29일차가 되었다. 하루에 15시간 이상 스프링 공부를 하는 이런 경험을 어디서 또 해볼까...ㅋㅋ 압축성장 할 수 있는 좋은 기회라고 생각하고 정말 열심히 하고 있다. 그리고 ㅎㅎ 오늘을 기준으로 인생의 꿈이 제대로 다시 설정되었다. 적성에 맞는 일을 해야지. 나는 정말로 멋진, 유능한, 개발자가 되고 싶다. 그리고 그 Core 기술을 가지고 창업도 해볼 것이고, 강의도 해보고 싶고, 만들었던 주식, 코인 시스템 트레이딩 프로그램도 더 고도화 시켜서 돈도 많이 벌고싶다!(솔직) 지금까지 열심히 안한건 절대 아니지만, 오늘부터는 새출발 하는 마음으로 더 열심히 공부하고 도전해야겠다. 화이팅! 자, 일단! 모든 일을 오늘을 어떻게 잘 사는지에 따라 달라진다. 그런 의미..
CS 스터디_1일 1로그 100일 완성_26챕터 Chapter 26. 고수준 언어에서 프로그램 실행까지 # 고수준 프로그래밍 언어의 개발과 확대 1950년대 말~1960년대 초 >> 컴퓨터가 프로그래머를 대신하여 더 많은 일을 수행하게 되는 움직임이 일어남. (프로그램 역사상 가장 중요한 발걸음이라고 저자는 표현한다) ▶ 특정 프로세서 아키텍처에 독립적인 '고수준 프로그래밍 언어(High-level programming language)' 개발인 것. 고수준 언어로 작성된 코드는, 1) 번역기 프로그램(컴파일러)를 통해 대상 프로세서의 어셈블리 언어로 된 명령어로 변환 2) 어셈블러에 의해 비트로 변환되어 메모리에 로드되고 실행 일반적인 고수준 언어에서는 두 수 X와 Y를 더하고 결과를 Z에 저장하는 계산이 다음과 같이 표현된다. ▶ Z = X + Y..