본문 바로가기

개발자 일지/기타26

[개발 기타] 최근 학습 내용 정리 및 TODO 정리 한두달 전부터 개발 공부를 다시 제대로 해야겠다는 생각이 들었는데 지금까지 공부한 것들을 좀 정리하고 앞으로 나아갈 방향을 좀 정리해보려고 한다.  [목차]최근 학습 내용TODO기타 끄적끄적 1.  최근 학습 내용 1) JPA 공부를 다시 제대로 해봐야겠다는 생각이 들었을 때 가장 우선적으로 생각이 들었던 것은 JPA였다. 아직 우리 회사는 JPA를 쓰는 서비스가 많이 없고 내가 맡고 있는 서비스 역시 JPA를 사용하지 않는다.(여러 서비스 중에 하나가 있었는데 사라짐) JPA를 사용하지 않는데 왜 JPA를 공부할까? 왜냐면 대부분 서비스 회사들에서 이제 JPA를 많이 활용하고 있다는 것은 팩트니까..   개발자는 항상 준비되어 있어야 함을 최근에 많이 느꼈기 때문에, 내가 혹시 이직을 하더라도 JPA라.. 2024. 11. 15.
[자료구조] 자료구조 개념, 종류 알아보기 자료구조 종류에 대해 전체적으로 알아보는 포스팅을 하려고 합니다.  [목차]배열연결 리스트스택큐해시 테이블트리그래프힙자료구조란 데이터를 효율적으로 저장하고 관리하는 방법을 의미합니다.흔히 말하는 배열이 자료구조입니다. 갑자기 자료구조를 공부하는 이유는 이직에 대한 생각도 있지만, 개발자라면 제대로 알아야한다는 생각이 들었습니다.개발자는 공부해야할 것이 산더미지만 그중에서도 기본은 알고 있어야 하는 것이 몇 개 있는데 그게 자료구조라는 생각이 들었습니다. 그래더 자료구조를 간단하게 전체적으로 한 번 정리해보려고 합니다.자료구조별로 상세한 정리도 할 예정인데 그것은 이후에 포스팅해보겠습니다. 1. 배열 배열(Array)은 동일한 데이터 타입 요소들이 연속된 메모리 공간에 저장되는 자료구조입니다.예를들어 데이.. 2024. 10. 2.
동시성 제어 개념, 방법, Lock 종류 및 비교 동시성 제어 개념과 방법, Lock 종류 및 비교에 대한 포스팅을 해보려고 합니다.트래픽이 많은 서비스들은 동시성에 대해 생각할 수 밖에 없는데요.동시성 제어 개념, 제어 방법들과 그 중에서도 데이터베이스를 통한 동시성 제어인 Lock에 대해 알아보겠습니다.  [목차]동시성 제어란동시성 제어 방법마치며1. 동시성 제어란 동시성 제어(Concurrency Control)는 서비스 운영시 중요하게 고려해야할 부분입니다.여러 쓰레드 또는 프로세스가 하나의 자원을 '동시에' 점유하려고 할 경우 동시성 문제가 발생합니다.동시성 문제의 예는 여러가지가 있지만 고객들이 동시에 쿠폰 받기를 누를 경우에 발생할 수 있는데요.여러 사람이 동시에 '쿠폰 받기'를 눌러서 A쿠폰을 동시에 select하려고 할 경우가 하나의 .. 2024. 9. 25.
[양방향 통신 방법]폴링, 롱 폴링, 웹소켓(+STOMP, SockJS) HTTP 프로토콜을 통한 폴링, 롱폴링 방식의 양방향 통신에 대해 알아보고 이를 발전시킨 프로토콜 웹소켓에 대해 공부해보려고 합니다. 출퇴근 시간에 유튜브를 통해 간단히 공부해서 정리가 좀 되었는데요. 포스팅해서 남겨보겠습니다.  목차양방향 통신 방법-폴링, 롱 폴링양방향 통신 방법-웹소켓웹소켓 보완 프로토콜 및 라이브러리[같이 보면 좋은 포스팅 모음][인프런 김영한님 강의]모든 개발자를 위한 HTTP 웹 기본 지식1[인프런 김영한님 강의]모든 개발자를 위한 HTTP 웹 기본 지식2[인프런 김영한님 강의]모든 개발자를 위한 HTTP 웹 기본 지식3 모두의 네트워크 정리1모두의 네트워크 정리21. 양방향 통신 방법-폴링, 롱 폴링클라이언트와 서버의 실시간 양방향 통신을 하기 위해서는 요청 상태를 유지해줘야.. 2024. 9. 19.
개발자 취업 이직 준비 방법(이력서, 공부, 면접, 비전공자 팁) 개발자 취업 이직 준비 하는 법에 대해 포스팅하려고 합니다. 22년 2월에 이직을 해서 현재까지 다니고 있는데 당시 면접 기억 등을 복기해서 내 준비과정을 한번 정리해보려고 합니다.  엄청난 회사에 이직한 것은 아니더라도 과거에 비해 이직에 대한 노하우가 조금은 생겼고 성장했던 부분에 대해 정리해서 읽는 분들이나 나의 다음 이직 준비에도 스스로 참고하기 위한 용도로 포스팅해보겠습니다.1. 개발자 취업 이직 준비-이력서와 포트폴리오 1)이력서 작성을 무엇으로 할까? 이력서와 포트폴리오를 준비해야하는데 저는 노션을 활용했습니다. 이력서 UI가 중요한 것은 아니라고 생각하지만, 면접관들은 다양한 지원자들의 이력서를 보다보니 빠르게 피로를 느낄 수 밖에 없습니다. 결국 내 이력서를 빠르게 인지하도록 하려면 노션.. 2024. 9. 17.
[CSS]CSS 사용자 지정 변수란, 사용법, 사용이유, 기본값 설정 방법(root, var) css의 사용자 지정 변수의 개념과 사용 이유, 사용 방법을 알아보려고 합니다. 해당 기능을 사용하면 상황에 맞게 css의 값을 변경할 수 있습니다. 백엔드 개발자지만 지금 쇼핑몰 서비스 메인화면 지원 업무를 하고 있기 때문에 오랜만에 css를 많이 건드리게 되어서 오늘 배운 것을 정리합니다.  1. 사용자 지정 변수란 CSS에서 사용자 지정 변수란 한 번 값을 설정하고 여러 군데서 값을 재사용할 수 있게 해주는 기능입니다. 주로 색상이나 크기 같은 스타일 요소들을 변수로 세팅한 후에 유연하게 사용할 수 있습니다.2. 사용자 지정 변수 사용 이유 java같은 백엔드 개발에서도 재사용성은 중요한 요소인데요. css에서도 유연하게 재사용을 할 수 있다는 것을 알게 되었습니다. 여러 값을 한 번에 변경해야 한.. 2024. 9. 11.
정보처리기사 필요성, 쓸모 여부, 공부법 알아보기(비전공자 필독) 정보처리기사는 산업인력공단에서 시행하는 자격증 시험입니다. 필기와 실기로 나누어져있구요. 정보처리기사 자격증 필요성, 쓸모 여부, 공부법 등을 알아보겠습니다. 1.정보처리기사 개요 정보처리기사는 소프트웨어 관련 자격증입니다.필기시험은은 객관식 4지선다형이고 5가지의 과목이 각각 20문제씩 나오기 때문에 총 100문제라고 알고 계시면 될 것 같습니다.시험시간은 150분이며 과목당 30분의 시험 시간이 있네요.목차는 다음과 같습니다.소프트웨어 설계소프트웨어 개발데이터베이스 구축프로그래밍 언어 활용정보시스템 구축관리과목당 40점이상, 전과목 평균 60점 이상을 맞아야 합격할 수 있습니다. 실기시험은 필답형이고 코딩문제 등이 포함되어 있어서 필기보다 좀 더 열심히 공부하셔야 합격할 수 있네요.SQL 관련 문제,.. 2024. 9. 10.
테스트를 정말 제대로 해야한다.(응답 message 잘 보자) 외부연동 API 수정건을 배포하고 배포 실패한 건, 반성한 내용에 대해 포스팅해본다.  1.소극적인 협력업체 최근 API 연동 1건은 잘 마무리해서 배포를 성공적으로 마무리 했다.  이후 신규개발건은 아니지만, 기존 API 수정건이 들어와서 수정을 진행했다.해당 건은 우리쪽에서 상품등록시 외부 어드민에 상품이 등록되는 간단한 API다. 외부업체쪽에서 협력에 소극적이라는 얘기가 많아서 피곤해질 것이라는 생각은 했다.물론 나는 개발자고 중간에서 커뮤니케이션을 해주시는 분이 계시지만, F인 나는 그분의 스트레스를 미리 공감(?) 하여 약간의 스트레스가 있었다. 어쨋든 협력에만 소극적이라면 다행인데..개발이나 알파테스트가 안 된다고 한다. 그러면 어떻게 배포하고 테스트하죠..? 물어보니 과거에 개발 브랜츠로 2.. 2024. 9. 1.
[TIL-Today I Learned]바빠도 리팩토링, try-with-resources, 소나큐브 처리 등 금일 업무하면서 느낀점과 배운 점을 기록한다.바쁜 업무 와중에 리팩토링을 하는 이유, 방법과 소나큐브 처리 건에 대해 간단히 정리한다. 1.바빠도 리팩토링 하기 몇달전에 운영하는 서비스 파트를 옮기게 되었다. 팀은 유지되었으나 전혀 다른 서비스였기 때문에 몇배는 바빠진 것 같다. 애초에 팀 내 가장 바쁜 서비스인데 새로 적응하려니 바쁘다 바빠.. 그래도 꾸준히 회사 업무 하는 와중에 리팩토링을 해왔는데 몇개월째 리팩토링은 신경도 못쓰고 있었다(..) 업무가 급해지면 급하다는 핑계로 리팩토링을 못하고, 급한 불이 끝나면 좀 쉬어야겠다는 보상심리 때문에 못한다. 즉, 이러면 평생 못한다(..) 그러다가 정신을 차리고 저번주 부터 리팩토링을 조금씩 하고 정리하기 시작했다. 바쁜 와중에도 리팩토링을 하는 나의 .. 2024. 8. 23.
[생각정리]API 실무 개발 느낀점, 팁 지금까지 몇번의 API 개발을 진행하면서 느낀점과 팁을 간단하게 작성해보려고 한다.개발적인 팁이라기보다 실무적인 팁이라는 점..(개발적인 팁은 고수들의 블로그에..)  1.무슨 API를 개발? 외부업체에서 쿠폰발행 연동을 해달라고 하였다. 외부업체 쇼핑몰에서 구매자가 구매 후, 우리쪽 API를 호출하여 우리 시스템에서 발행한다. 우리쪽으로 통신하는 API는 발행, 취소, 상태조회 등의 업무가 있었고, 외부업체쪽으로 통신하는 API는 쿠폰사용 또는 취소시 상태변경 API를 호출하여 외부업체에 쿠폰상태를 현행화한다. 이 때 우리 시스템에선 rabbitMQ를 통해 처리한다. 인바운드 통신 API : 쿠폰 발행, 쿠폰 취소, 쿠폰 상태조회아웃바운드 통신 API : 쿠폰 상태 변경 사실 올해 상반기까지만 해도 리.. 2024. 8. 23.
[C언어]C언어 학습 하려는 이유, c언어 기초 개념 등 -c언어를 학습하려는 이유를 고민한다. -c언어의 기초개념들을 간단하게 정리해본다. 1.C언어 학습 이유 별게 아니라 그냥 궁금한 이유가 제일 크다. 가끔 커뮤니티의 'C언어를 꼭 배워야 하는 이유' 같은 글들이 호기심을 자극한다. 대부분이 굳이 배울 필요 없다이며 특히 지금 자바,스프링을 사용하여 4년 내외로 일을 하고 있으니 더욱 내가 배워야 할 이유가 없는듯하다. 그럼에도 불구하고 이유를 찾아보자면.. 가끔 C언어로 설명하는 글들을 조금이라도 이해하고 싶다 도대체 왜 필요한지, 필요하지 않은지 내가 직접 체험해봐야 속이 후련할듯하다 가끔 실무와 동떨어진 언어공부로 간헐적인 지루함을 달래본다(더 지루해질 수도 있음) 메모리 구조를 이해하는데 좋다고 하는데 1시간 공부해봐서는 잘 모르겠다 프로그래밍 공.. 2023. 4. 7.
[TIL]아파치, 톰캣, 리눅스 등 잡다한 개인정리 - 업무 시간에 들은 키워드 관련 및 다 까먹어서 이것저것 찾아보고 다시 뇌에 넣기 위한 정리 등을 한다. 1.Swap Memory 리눅스 시스템에서 실제 메모리가 가득 찬 경우, 더 많은 메모리가 필요하다면 디스크 공간(가상메모리)으로 대처한 메모리를 말한다. 하드디스크를 이용하기 때문에 속도가 떨어지며 안정성 목적으로 둔다. 위에처럼 스왑파티션 확인은 free -m으로 한다. 스왑메모리는 파일로도 존재할 수 있는데 swapon -s로 확인 가능하다. 아무것도 안 나오면 파일도 없는 것이다. 2.리눅스 관련 기타 - ll : ls -l의 축약어. ls는 현재 위치나 특정 경로에서 디렉토리 내용을 리스트로 출력. -l(long)은 옵션. ll은 기본적으로 alias 등록되어 있으나 안 되어 있는 경우도 .. 2022. 10. 1.
[TIL]토이프로젝트 진행 학습내용 정리 - 학습용 토이프로젝트 진행하며 알게된 점이나 어설프게 알았던 점 등을 정리해둔다. 1.토이프로젝트 시작 단계에서 흐지부지 되지 않기 위한 방어책 토이프로젝트를 시작하는 것은 쉽지 않은 것 같다(적어도 나는). 서비스를 만들려면 DB, 도메인 설계를 하고 어떤 기술을 사용할지 정하고 서비스 스토리보드를 만들어 퍼블구성을 하고..그러기 위해서 보통 팀단위로 많이 하기도 하는 것 같다. 내가 토이프로젝트를 시작하기 어려웠던 점은 위의 설계 단계가 너무 힘들었기 때문이다. 사실 코딩하고 직접 설정 만지면서 실습은 재밌지만, 설계 단계를 하다보면 이게 맞는지 틀린지도 잘 모르겠고 하다보니 질질 시간이 끌리고 흐지부지하게 된다. 이런 적이 몇 번 있었다. 인프런의 김영한 강사님이 학자형 개발자와 야생형 개발자가 .. 2022. 8. 15.
[토이프로젝트]토이플젝 시작 이야기 + @pathVariable 한글 깨짐 - 토이프로젝트 관련 잡담을 한다. - 컨트롤러 @PathVariable 한글 깨짐을 처리한다. 1.토이프로젝트(학습프로젝트) 시작 그냥 토이프로젝트라기보다 학습프로젝트가 더 맞겠다. 그냥 네이버 영화 API로 내 영화 리뷰 관리하는 애플리케이션을 만들어보고 있다. - springframework 4.2.4 - java 1.8 - vue2 - bootstrap 회사 프로젝트가 레거시에서 신기술들로 넘어가는 약간 과도기적 레거시(?)다. 아직 업무에 최적화가 안 되어서 일하는데에 에너지를 많이 쏟고 있다. 일단 업무효율을 높이는 것이 단기적, 1차적 목표기 때문에 토이프로젝트도 과도기적 레거시 모드(스프링 MVC, JSP + vue.js)로 설정해서 하고 있는데 상당한 판단 미스같다. 일단 이걸 ver1로.. 2022. 8. 2.
[회고]2022년 상반기 회고 - 2022 상반기 회고를 한다. 1.들어가기 회고라는 것을 쓰는 것은 상당히 부끄러운 것 같다. 뭔가 공개된 곳에 내 히스토리를 적는게 INFJ인 나에게 있어서 상당히 부담이기도 했고, 뭔가 인스타그램마냥 보여주기에 치중이 된 개발자들의 문화같았다. 그래서 구글링을 통해 여러 사람들의 회고록을 구경했다. 회고를 해서 무엇을 얻는지 궁금했다. 근데 뭐 회고라는 게 딱히 정해진 틀은 없는 거 같다. 어쨋뜬 회고에 대해 많은 개발자들이 좋다고 얘기하고 있고 일단 매년 2번씩 상반기, 하반기로 써볼 예정이다. 2.돌고 돌아 개발자가 되기까지 요 근래 왜 개발자 되었냐는 질문을 두어번 받으면서 한 번 정리해보려고 한다. 개발자를 하게 된 가장 큰 이유는 고등학교 친구들이다. 나 포함 3명이서 주기적으로 만나는 .. 2022. 6. 26.
[TIL]학습내용 정리(nslookup, AES256) - 오늘 배운 건 아니지만 기록이 밀린 것들을 정리한다. - nslookup 명령어로 도메인의 ip 찾는 법을 소개한다. -AES-256 암호화 방식을 소개한다. 1.nslookup 외부 API 연동 개발이 거의 끝나고, 운영 api URL을 받았다. ip를 찾아서 outbound 방화벽을 열어야 하는데, 이 때 사용할 수 있다. nslookup 명령어와 도메인명을 입력하면 DNS서버와 해당 도메인의 ip를 확인할 수 있다. 위의 서버와 Address는 ISP의 DNS 서버와 ip이다. KT를 사용해서 kns.kornet.net이 나오고 있다. 회사에서는 자체 dns를 사용해서 일반적인 ISP의 dns 주소가 안 나왔다. 그리고 밑에 '권한 없는 응답' 쪽이 쿼리한 도메인의 주소다. ip를 그대로 입력하.. 2022. 6. 25.
[IntelliJ]깃허브 연동 및 commit and push 테스트 -인텔리제이를 통해 깃 연동을 한다. -깃허브에 commit and push를 해본다. 이클립스나 소스트리, git bash 등으로만 해봐서 인텔리제이로 연동 및 테스트를 해본다. 현재 로컬저장소와 원격저장소를 이미 소스트리로 연결해놔서 리모트연결에 대한 부분이 생략되었기 때문에 이부분에 대한 내용도 필요하면 다른 블로그들이 더 도움이 될 것이다. 1.깃&깃허브 연동 Settings(맥OS는 Preference) > Version Control > Git에서 path to Git executable 깃설치경로를 입력한다. Settings(맥OS는 Preference) > Version Control > GitHub에 들어가서 Add Account로 계정 추가를 한다. 2.Commit & Push 테스트 .. 2022. 5. 15.
[ WIL]한 주간 배운 것 정리 및 느낀점 -한주간 느낀 것들 간단히 정리한다. -한 주간 배운 것들을 간략히 정리한다(Week I Learn) 한 주간 상당히 바빴다. 이번에 코딩 몰아쳐서 엄청했다. 내가 공수를 좀 잘못잡은 탓에 어쨋뜬 끝내기 위해 전력을 다했다. 수면시간 줄여가며 쉬지않고 개발할 수 있었던 것은 재밌었기 때문이다. 피곤함과 스트레스가 극에 달했는데도 코딩이 재밌어서 마칠 수 있었다. 한편으로 딱 좋을시기에 검증(?)할 수 있는 좋은 기회였다고 본다. 그리고 실력을 늘릴 좋은 학습 기회가 있었는데 도저히 체력과 시간이 안 되어 포기하게 되었다. 그걸 포기한대신 업무력과 코딩력을 얻긴했는데 그런 기회들은 또 있을거라고 보며 계속 공부해나가야지. 그리고 올해 바쁜 이벤트들이 너무나 많아서 멀티플레이 할 수 있도록 체력과 정신을 항.. 2022. 4. 21.
[TIL]ObjectMapper, maven, gradle 등 배운 것들 정리 - ObjectMapper, maven, gradle 등 한 주간 업무시간이나 영상 등에서 배운 것들을 간단하게 정리하였습니다.1. 적당한 스트레스는 원동력이다! 이직한지 어느새 한달이 다 되어간다. 뭔가 한 것 같은데 하지 않은 것 같기도 하고.. 아직도 모르는 게 너무 많아서 좀 벅찬 느낌이 있다. 뭐 한달도 안 되었는데 얼마나 알겠냐는 친구의 조언도 있었지만 역시 나는 인프제(INFJ)라 그런지 신경이 많이 쓰이고 빨리 정상궤도(?)에 올라야겠다는 강박이 든다. 뭐 항상 조급하다고 바뀌는 게 없는 걸 알고 있기 때문에, 요런 스트레스는 긍정적으로 공부할 수 있느 원동력으로 전환시키려고 한다. 이직했는데 너무 쉬워도 이상하니까..  그나저나 최근에 건강 목적으로 탄수화물을 좀 줄이고 있는데 쉽지 않다.. 2022. 3. 5.
[기타]개발 관련 추천 유튜브 채널 모음 - 내가 도움을 많이 받았거나 좋았던 개발 관련 유튜브 채널을 정리한다. 개발과 관련한 여러 유튜브 채널들이 있는데 한 번 전체적으로 정리해보는게 좋겠다 싶어서 정리해본다. 비공개로 나만 볼까 하다가 혹시나 도움이 될까 싶어 공개모드로 해둔다. 1.우아한Tech 배민 서비스를 하는 우아한 형제들에서 운영하는 유튜브 채널이다. 여러 컨텐츠가 있는데 10분 내외로 끝나는 10분 테코톡이라는 컨텐츠가 유용하다. 짧기 때문에 출퇴근 때 짬짬이 보기도 했고, 에버노트에 개인적으로 정리하기도 했다. 아무래도 출퇴근 피곤할 때 봐서 휘발..되는 내용들도 많지만 반복해서 보다보니 면접때도 어느정도 도움이 되었다. 우아한 Tech  우아한Tech우아한형제들의 기술조직 이야기를 전하는 우아한Tech입니다. 우아한형제들 h.. 2022. 1. 23.