We will find a way, we always have.

-interstellar

분류 전체보기 256

[리뷰] 개발자를 위한 최소한의 실무 지식

한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다. 이 도서는 데이터베이스에서의 트랜잭션과 인덱스, 대칭키와 비대칭키, SQL 인젝션 그리고 더 나아가 좋은 코드를 만들기 위한 예외 처리 방법까지 필요한 핵심 부분들을 모아놓은 도서였다. 개인적으로 느끼는 이 책의 장점이 바로 필요한 부분을 모아놓은 요점 정리 노트인데 개념 설명까지 깔끔하게 되어 있는 점이라고 생각한다. 암호화 기법을 설명하는 부분에선 자바 코드로 java.security 패키지의 있는 코드를 사용하며 암호화, 복호화 과정을 설명하고 예제 그림을 통해 과정을 설명해주고 있다. 또 어떠한 암호화 방식은 이래서 사용하면 안되고 어떤 방식은 이런 점에 취약하다고 설명까지 해주어 쉽게 이해 되었다. 현재 나의 상황에 적절한 도서인거 같다..

Blah blah 2024.02.25

[우테코 레벨 1]: 2주차 회고

데일리 미팅 월요일 데일리 마스터로 선정이 되었다. 게임을 할까 산책을 할까 토론을 할까 고민을 했었는데, 게임은 금요일에 라이어 게임을 했고, 산책은 월요일에 날씨가 안좋을거라는 예보가 있어 토론을 하기로 정했다. 주제는 회복탄력성! 1주차에 너무 휘몰아친 나머지 서로의 회복 방법이 궁금해졌다. 나는 프리코스 4주차의 소감문을 공유하였다. 1주차, 2주차 미션에 비해 3주차가 미션을 제출하고 난 후에 보이는 미흡한 접들이 더 많이 보였다. 긍정적으로 생각하면 “매의 눈”이 생겨 메타 인지가 높아진 것일 수도 있지만, 좀 다르게 생각하면 인정하기는 싫지만, 살짝 지쳤었던 것 같기도 하다. 그런데 이게 웬걸 3주차 미션 끝난 후 코수타에서 잘 회복하는 방법에 대해 이야기했는데 딱 현재 나에게 필요한 이야기..

[리뷰] 아는 만큼 보이는 백엔드 개발

길벗 개발자 리뷰어 활동을 위해 책을 제공받아 작성된 서평입니다. 백엔드 개발자가 되기 위해서 쌓아야 하는 지식의 양은 방대하다고 생각한다. 이 도서에서 제시하고 있는 로드맵은 아래와 같다. 이 도서를 통해 위 로드맵에 대한 개념들을 쓰윽 한번 맛을 보고 앞으로 어떤 개념들을 어떤 순서로 배워야 할지 감을 잡을 수 있었다. 사실 위 그림의 모든 개념을 책 한권에 담는 다는 것은 불가능하다. 각 장마다 추천 프로젝트를 소개해주는데 이런 추천 프로젝트를 스스로 해결하고 넘어 가는 것이 좋을 것 같다. 총 3 파트로 되어 있는데 파트 1은 백엔드의 소개, 파트 2는 백엔드 로드맵, 파트 3은 DBA, 데브옵스 엔지니어, PM을 소개헤주고 있다. 모든 내용을 담으려다보니 빈약한 부분들이 보이기는 하지만 로드맵의..

Blah blah 2024.02.22

[우테코 레벨 1]: 1주차 회고

회고를 작성하는게 언제까지 지속될진 모르겠지만 일단 해보자!! 레디의 1주차 회고 시작합니다. OT 2월 13일부터 본과정이 시작되었다. 데일리 조는 제제, 비토, 백호, 커비, 종이, 안나, 테바, 러쉬, 리건이였다. 연극조는 그 중 제제, 비토, 백호, 커비 이렇게 였고, 첫 페어는 백호였다! OT때 기억에 남았던 문장들을 남겨본다. 다양한 피드백을 통해 메타인지 역량을 키움 모르는 것을 모른다고 할 수 있는 용기 빠르게 실패하기 일단 도전하기 페어 프로그래밍의 맛보기로 문자열 계산기 프로그램을 작성하는 하는 것이였다. 주어진 시간이 무척이나 짧았기에 고민보다는 GO를 하였어야 했는데 처음이다 보니 서툴렀다. 일단 기능부터 빠르게 구현하고 그 이후에 피드백을 받는 것이, 제한 시간안에 동작할 수 있는..

[Spring] query dsl Q클래스 파일 위치 설정 (스프링 버전 3.2 )

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화강의를 듣는 도중 마지막 부분에서 query dsl 도입을 하기 위해 build.gradle 파일을 설정하는데, 스프링이 버전업 되면서 기존 코드로는 설정이 되지 않아 문제가 발생하였다. 제공해주신 3.x 버전용 build.gradle 파일에서도 그래들 리프레쉬중 오류가 나거나 빌드 오류가 발생하거나 겨우 컴파일 성공하여도 Q 클래스가 main.java.generate 에 위치해있는 게 아니라 어디 저 멀리 build.generated 에 가있어 자바 프로젝트 내에서 import 가 되지 않는 문제들이 있었다. 해결 방안은 일단 컴파일 성공하는 단계에서 Q 클래스 파일 생성 위치를 알맞게 설정하는 것이다. plugins { id 'java'..

[LeetCode] 3036. Number of Subarrays That Match a Pattern II

🔈 문제 You are given a 0-indexed integer array nums of size n, and a 0-indexed integer array pattern of size m consisting of integers -1, 0, and 1. A subarray nums[i..j] of size m + 1 is said to match the pattern if the following conditions hold for each element pattern[k]: nums[i + k + 1] > nums[i + k] if pattern[k] == 1. nums[i + k + 1] == nums[i + k] if pattern[k] == 0. nums[i + k + 1] < nums[i..

[OOP] 객체지향

객체지향 프로그래밍 OOP (Object Oriented Programing) 객체지향이란 객체지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 객체들이 서로 협력하는 형태의 구조를 지향한다 객체는 각자 맡은 책임이 있고, 서로 메시지를 주고받으면서 협력한다. 객체지향의 핵심 역할과 책임 협력은 객체지향의 핵심이다. 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용을 협력이라고 한다. 그리고 객체가 협력에 참여하기 위해 수행하는 로직을 책임이라고 부른다. 객체들이 협력 안에서 수행하는 책임들이 모여 객체가 수행하는 역할을 구성한다. 협력 두 객체의 협력에 사용되는 유일한 수단은 메시지 전송이다. 다른 객체에게 도움을 요청하기 위해 메시지를 전송하고, 메시지..

OOP 2024.01.28

[LeetCode] 1657. Determine if Two Strings Are Close

🔈 문제 Two strings are considered close if you can attain one from the other using the following operations: Operation 1: Swap any two existing characters.For example, abcde -> aecdb Operation 2: Transform every occurrence of one existing character into another existing character, and do the same with the other character. For example, aacabb -> bbcbaa (all a's turn into b's, and all b's turn into ..