분류 전체보기
-
WIL02. [ Clean Architecture ] 사 놓기만 했던 책을 드디어 펼치게 된 한 주.Backend/항해99 <플러스 백엔드> 2024. 3. 30. 17:45
벌써 항해 플러스 백엔드 과정을 시작한 지 2주가 지났다. Java + Spring Boot 3 은 여전히 익숙치 않은 상태. 그럼에도 퇴근 후 매일 정해진 시간에 2 - 3 시간 씩 Project 를 진행하며 조금씩 성장하고 있음을 느낀다. 그와중에 계획한 운동까지 하며, '이것이 바로 갓생?' 이라는 에 빠져 뿌듯함을 만끽하는 중이다. 2 주차 주제는 Clean Architecture 로, 확장과 유지 보수에 유용한 Architecture 에 대해 배웠다. 정규 일정 내용을 복습하는 것으로는 이해도가 부족하다고 느꼈다. 마침 나에겐 3개월 전에 사다 놓기만 하고 펼쳐보지도 않았던 Clean Architecture 책이 있었다. '읽을 시간이 없었다'라는 핑계는 흔적도 없이 사라지고 마음이 급해지니 앞..
-
W01. 시작하는 마음Backend/항해99 <플러스 백엔드> 2024. 3. 16. 13:57
https://hanghae99.spartacodingclub.kr/v2/plus/be 항해 플러스, 도전을 넘어 개발자 커리어 도약으로 백엔드 주니어 개발자로서 성장의 한계를 느끼고 있다면, 시니어 코치진과 함께 10주 몰입을 통해 도약하세요. hanghae99.spartacodingclub.kr 처음 대학에서 IT 복수 전공을 신청할 때부터 지금까지 나는 계획보다는 당시 상황과 조건, 감정만 고려하여 여기 저기 기웃대던 개발자였다. 그렇게 살다 문득 내 현재 위치를 살펴보니 성장 곡선과는 동떨어진 채, 혼자서도 잘한다는 오만에 빠져 허우적대고 있었다는 사실을 깨닫게 되었다. 이제라도 조건, 타인의 시선은 신경쓰지 않고 내가 하고 싶은 일을 정하여 차근차근 계획을 세워 도전하려 한다. 다행히도 목표 탐..
-
[Git] RebaseToday_I_Learned 2024. 2. 7. 16:37
작성 목적 다소 의미가 빈약한 commit 이력들을 깔끔하게 관리할 수 있는 방법을 찾다가 Git 에 Rebase와 Squash 라는 기능이 있다는 것을 알게 되었다. 먼저 Rebase 기능을 조사하기 위해 Git 공식 문서 (https://git-scm.com/book/ko/v2/Git-%EB%B8%8C%EB%9E%9C%EC%B9%98-Rebase-%ED%95%98%EA%B8%B0)를 참고 하였다. 그러나 Git 공식 문서의 한글 번역본이 이해하기 어려웠던 부분이 있어 내 수준에 맞게 좀 더 풀어 써보려 한다. Git의 Reabse는 Branch를 합칠 때 Merge와 다르게 Commit history를 깔끔하게 선형적으로 만들어주는 기능이다. 브랜치를 Rebase한 결과물은 Merge를 수행한 결과물..
-
게시판 검색 기능 구현 과정 정리Backend/Projects_report 2023. 12. 15. 11:39
점프투장고를 따라 게시판 개발 중 유독 헷갈렸던 검색 기능의 구현 과정을 정리해 보았다. 참고: https://wikidocs.net/71806 3-14 검색 * `[완성 소스]` : [github.com/pahkey/jump2django/tree/3-14](https://github.com/pahkey/jump2django/tree/… wikidocs.net 구현 목표 검색어를 입력할 입력 Bar와 검색 Button 추가 검색 버튼 클릭 시 Get 방식으로 페이지 요청 질문 제목, 내용, 작성자, 답변 내용, 작성자 중 검색어가 포함된 질문 글은 검색 결과에 포함 검색 결과는 질문 목록을 Paging 처리하여 화면에 출력 구현 과정 검색은 Get 방식의 Request를 사용하는 것이 좋다. '뒤로 가기..
-
[MySQL] Partition 과 Unique KeyBackend/DB 2023. 12. 14. 23:50
Partitioning 실습을 따라하다가 강의 내용과 다르게 Primary key를 설정했다가 Partitioning을 실패하는 결과를 보았다. ERROR 1503 (HY000): A PRIMARY KEY must include all columns in the table's partitioning function (prefixed columns are not considered). 원인을 찾던 중 MySQL 공식 문서에 해당 문제화 관련된 글을 발견하여 해석 및 정리해 보았다. https://dev.mysql.com/doc/refman/8.0/en/partitioning-limitations-partitioning-keys-unique-keys.html MySQL :: MySQL 8.0 Referenc..
-
filter() - fields loopkups(**kwargs), Q objects(**args)Backend/Django 2023. 12. 3. 17:12
Clone Coding을 하다가 생각없이 사용 중이던 filter() 함수의 사용법을 좀 더 깊게 파보고자 공식 문서를 살펴 보았다. filter() https://docs.djangoproject.com/en/4.2/ref/models/querysets/#filter QuerySet의 Member method 로 lookup parameter를 충족하는 객체들만 모아 새로운 QuerySet 을 생성하여 반환한다. 즉 DB에서 특정 조건(lookup parameter)들로 조회하여 나온 결과를 다시 Model Instance로 생성하여 QuerySet에 담아 반환한다고 볼 수 있다. 조건을 지정하는 방식으로는 field lookups(kwargs에 대입) 와Q object(args에 대입) 가 있다. 여..
-
[Ubuntu16.04][Python3] Python3 버전 복구Today_I_Learned/Python 2023. 12. 1. 15:13
[환경] Ubuntu 16.04 Python3.8 ( -> Ubuntu 16.04 의 기본 버전인 Python3.5 로 복구가 목표) [요약] pyhon3 링크 변경 python3 경로의 하위 파일을 python3.5의 파일들로 교체 특정 버전의 python 제거 (선택사항) 필요한 Package들 재설치 pyhon3 링크 변경 python3 명령어로 python 기본 버전이 실행되도록 하고 싶다면 python3 명령어에 연결된 링크 설정을 변경해야 한다. 단순히 update-alternatives 로 변경했을 경우 update-alternatives 로 다시 원래 버전을 지정해주면 된다. sudo update-alternatives --config python3 -> 원하는 python 버전의 번호 입..