post-thumbnail

[TIL] 21.09.01

✅ TIL git commit 메시지 수정하기 이것저것 찾아봤는데 그냥 IntelliJ에 있는 Git 탭에서 원하는 커밋 메시지에 오른쪽 클릭 한 후, 'Edit Commit Message'만 하면 바로 수정이 된다! 👟 운동 📝 일기 > 밤에 운동하고 와서 쓰러져서 다음 날인 오늘 쓰게 되었다... 밀리지 말자고 다짐한게 이틀 전인데 반성하자.

2021년 9월 2일
·
0개의 댓글
·
post-thumbnail

[TIL] 21.08.31 - 스프링 12일차

✅ TIL - new String[]{"str"} String[] name = new String[]{"str"}; String[] name = {"str"}; 자바 배열은 이런 식으로도 초기화 할 수 있다. 👟 운동 오늘도 비가 와서 패스 📝 일기 > TIL은 왜 쓰는걸까? 처음에는 하루에 새로 배우는 것들을 3가지만 정리해보자라고 다짐하며 시작했는데, 지금은 밤 12시가 되서 혹은 다음 날에 억지로 3가지를 골라서 정리하고 있다. 자세히 정리하지도 않고 몇몇 블로그 글을 퍼다나르는게 무슨 의미가 있을까? 지금 하고 있는 데브 코스 과정이 끝나고, 이 블로그에 있는 글을 다시 보게 되더라도 별 의미가 없을 거란 생각이 문득 들었다. 그래서 내일부터는 3개의 항목을 채우는 데에 연연하지 않고, 한 가지라도 진득하게 학습하는데 집중할 생각이다.

2021년 8월 31일
·
0개의 댓글
·
post-thumbnail

[TIL] 21.08.30 - Spring 11일차

✅ TIL - null, Optional null 값의 이유, Optional이 출현하게 된 이유, Optional에 관련한 메소드 등을 알게 되었다. 참고 링크 - compile time & runtime 조금만 생각해보면 어려운게 아닌데, 왜 이 개념들이 어려웠을까... compile time 말 그대로 소스코드가 기계어 코드로 컴파일되는 과정 syntax error와 같은 문법 관련 오류들이 발생 runtime 프로그램이 실행될 때를 말함 무한 loop, NPE(NullPointerException) 등의 오류들이 발생 - web server & web application server web server http/https 프로토콜을 지원하는 서버 정적 데이터 처리 지원 ex

2021년 8월 31일
·
0개의 댓글
·

[TIL] 21.08.27 - Spring 10일차

✅ TIL - annotation @interface는 annotation 정의를 뜻하는 것으로, 사용자가 직접 annotation을 만들 수 있다. 코드에 보이는 @Target은 말 그대로 어떤 대상에 붙일 것인지, @Retention은 어디까지 해당 타입을 유효하게 할지 정하는 annotation이다. - setAutoCommit() setAutoCommit(false): setAutoCommit(true)가 될 때까지의 명령들을 commit하지 않는다. 강의를 다 이해하지 못해서 오늘은 여기까지 👟 운동 필라테스 📝 일기 > AOP 들어가면서부터 막혀버렸다... 주말에 시간을 좀 투자해서 다른 강의도 참고할 예정이다. 확실히 강의 내용에 대해 서로 설명하는 시간을 가지니, 책임감도 생기고 확실히 배워야겠다는 생각이 든다.

2021년 8월 27일
·
0개의 댓글
·

[TIL] 21.08.27 - Spring 9일차

✅ TIL - double to int performace 1 -> 2 -> 3 -> 4 순으로 빨라진다. 다만, 확실하지는 않다. leetcode에 제출하면 나오는 시간대로 측정했다. 1) Math.floor(n) == Math.ceil(n) : 18ms 2) n % 1 == 0 : 13ms ~ 15ms 3) n == (Math.ceil(n)) : 8ms ~ 11ms (floor, rint도 비슷) 4) n == (int)n : 4ms ~ 7ms - double brace initiallizing 이런 애들을 double brace initiallizing이라 부른다. 되게 편리하고 고급져보이는데 단점이 있다고 한다. 이런 식으로 만들 때마다 익명 클래스가 생성되고, 참조가 숨겨지고? 그로 인해 메모리 누수를 일으킬 수 있다고 한다. 참고 링크 - sin

2021년 8월 26일
·
0개의 댓글
·

[TIL] 21.08.25 - Spring 8일차

✅ TIL - JMH (Java Microsecond Harness) http://tutorials.jenkov.com/java-performance/jmh.html 아직 만드는 중... - 코테에서의 String 코테에서는 무조건 StringBuilder를 쓰자. "" + 1, String.format, .toString() 이런 애들보다 StringBuilder가 훨씬 빠르다. 참고 링크 - split 문자열을 split 하는 방법에는 여러 종류가 있는데, StringTokenizer 클래스 < split < indexOf + substring 순으로 빠르다고 한다. (참고 링크) 그리고, StringTokenizer 클래스와 `spli

2021년 8월 25일
·
0개의 댓글
·

[TIL] 21.08.24 - Spring 7일차

✅ TIL - final class 멘토님이 알려주신 키워드. 한마디로 요약하면 상속이 적용되지 않는 클래스를 뜻한다. - import static import static org.hamcrest.MatcherAssert.*; 인스턴스를 생성하지 않고 org.hamcrest.MatcherAssert 클래스에 있는 메소드를 바로 사용할 수 있다. - Mock, Stub Mock 호출에 대한 기대를 명세함. 어떻게 동작해야되는지에 대한 내용. 행위에 집중 행위 검증: 특정 동작을 수행하는지 확인 Stub 가짜 객체. 실제 동작하는 것처럼 보이게 만드는 객체 상태 검증: 메소드가 수행된 후, 객체의 상태를 확인하여 올바르게 동작했는지 확인 👟 운동 오늘은 비가 와서 패스 📝 일기 > 졸리고 배고프다... 내일부터 1일 1코테 문제풀기 스터디를 하기로 했다. 자유 참여라 하고 싶을 때

2021년 8월 24일
·
0개의 댓글
·

[TIL] 21.08.23 - Spring 6일차

✅ TIL - logback Spring Boot에서 제공해주는 log 관련 라이브러리. logger를 계속 인자 값으로 넘겨야 하나라는 생각에 github를 잠시 뒤져봤는데, 각 클래스마다 이런 식으로 logger를 선언해서 사용하는 것을 알게 되었다. - generic wildcard 자바 클래스나 메소드 생성할 때 ?가 보이면 generic wildcard라는 애가 사용된거다. ``: 모든 타입 가능 ``: T와 T를 상속받은 자식들만 가능 ``: T와 T의 부모들만 가능 - knapsack 알고리즘 오늘 도전했던 문제가 knapsack 알고리즘 비스무리한 방식으로 풀 수 있다고 해서 검색해봤다. DP 알고리즘의 일종으로, 제한된 가방 무게(W)를 초과하지 않고 보석을 가장 값어치 있게(V) 담을 수 있는 최적의 해를 구하는 방법을 말한다. 분명히 전공수업 때 들은 기억이 있는데 진

2021년 8월 23일
·
0개의 댓글
·

[TIL] 21.08.20 - Spring 5일차

✅ TIL - var Python을 계속 사용했었다 보니 Java에서 type을 명시하는게 귀찮아서 var을 알고 난 뒤에는 생각없이 계속 사용해왔었다. 아래는 멘토님이 공유해주신 링크인데, 내가 이해한 대로 요약하면 var을 무작정 사용하면 가독성도 떨어지니, for-each 문이나 익명 클래스, 람다 인자에 사용하는 것을 강력하게 권장한다는 내용이다. 참고 링크 - try-with-resource 역시 코드 리뷰를 통해 멘토님이 공유해주신 링크. JDK 7부터 추가된 문법으로, Python의 with 문과 비슷해보인다. 참고 링크 - static 파일 경로를 String filePath = "path"로 저장해서, 코드 리뷰를 통해 `s

2021년 8월 22일
·
0개의 댓글
·

[TIL] 21.08.19 - Spring 4일차

✅ TIL - early return 불나방 스터디에서 나온 내용. else문까지 가지 않고, 미리 함수가 return 될 수 있게 만드는 방식을 말한다. - 콜백 함수 다른 함수의 인자로써 이용되는 함수 어떤 이벤트에 의해 호출되어지는 함수 - MessageFormat 리더님이 이런 식으로 print문을 refactoring 하셔서 MessageFormat 클래스의 장점을 검색해보았다. 아직은 잘 이해가 되지 않는다. 나중에 좀 더 찾아보자. 참고 링크1 참고 링크2 👟 운동 ![](https://images.velog.io/images/iyj6707/p

2021년 8월 20일
·
0개의 댓글
·

[TIL] 21.08.18 - Spring 3일차

✅ TIL - ArrayList indexOf() 시간복잡도: O(N) 📝 일기 > 오늘은 강의도 다 못 들었다. 그래서 쓸 내용이 별로 없다.

2021년 8월 18일
·
0개의 댓글
·
post-thumbnail

[TIL] 21.08.17 - Spring 2일차

✅ TIL - public class 자바에서는 한 자바 파일에 두 개 이상의 public class를 선언하지 못한다. 이유를 찾아보니 가독성 때문이란다. (https://stackoverflow.com/questions/3578490/why-only-1-public-class-in-java-file) - 의존성 어떤 객체가 협력하기 위해 다른 객체를 필요로 할 때 두 객체 사이의 의존성이 존재하게 됨 용어 컴파일타임 의존성: 코드를 작성하는 시점에서 발생하는 의존성. 클래스 사이의 의존성 런타임 의존성: 애플리케이션이 실행되는 시점의 의존성. 객체 사이의 의존성 - Spring Triangle Spring을 구성하는 주요한 3대 요소를 Spring

2021년 8월 17일
·
0개의 댓글
·

[TIL] 21.08.13 - DB 5일차

✅ TIL - 테이블 복사 테이블의 내용을 복사해주는 코드라고 한다. - Stored Procedure, Stored Function, Trigger Stored procedure SQL 쿼리를 저장한다는 개념 CALL 키워드로 프로시저를 호출할 수 있음 Stored Function 값을 리턴해주는 함수 Trigger DML 명령 실행 전후에 특정 작업을 수행하도록 만드는 것 - Explain SQL 쿼리가 어떻게 수행되는지 내부를 보여주는 SQL 명령. 쿼리문 앞에 EXPLAIN 키워드만 붙이면 된다. 📝 일기 > 원래는 아침에 강의를 다 들었는데, 어제 늦게 자서 그러지 못했다. 오후에 들으려고 하니 뭔가 집중도 안되고, 산만한 기분이었다. 강의는 계속 아침에 듣도록 노력해보자.

2021년 8월 15일
·
0개의 댓글
·

[TIL] 21.08.12 - DB 4일차

✅ TIL - Spatial Data Type MySQL에서는 위도, 경도를 알려주는 타입(GEOMETRY)도 있다. 주로 거리 계산을 할 때 사용된다고 한다. - MySQL workbench에서는 primary key를 이용해서 DELETE를 하지 않으면 에러가 난다. 다음 시간에 설정하는 법을 알려주신다 하니 시간 들여 찾지 말고 기다려보자. (추가 예정) - SET 프로그래머스에서 SQL 고득점 Kit 문제를 풀다가 막혀서, 구글링하다가 알게 된 지식이다. SET을 통해 sql에서도 변수를 지정할 수 있고, 대입 연산자 :=을 통해 for 문과 유사한 기능을 구현할 수 있다. 0시부터 23시까지 시간대별로 grouping하는 쿼리 문 👟 운동 <img src="https://images.velo

2021년 8월 13일
·
0개의 댓글
·

[TIL] 21.08.09 - DB 1일차

TIL - Star schema, 프로덕션 관계형 데이터베이스, 데이터 웨어하우스 관계형 데이터베이스와 같은 용어에 대해 알게 되었다. Star schema dimension 테이블을 중심으로 fact 테이블이 퍼진 형태 프로덕션 관계형 데이터베이스 웹서비스나 운영에 관한 정보들을 저장 -> 빠른 처리속도가 중요 데이터 웨어하우스 관계형 데이터베이스 회사 관련 데이터를 저장하고 분석함으로써 의사결정과 서비스 최적화에 사용 -> 큰 데이터를 처리하는 것이 중요 - Programmers SQL 고득점 Kit를 어느 정도 풀었다. join 부분은 4일차였나? 그 때 join 강의가 열려서 수강한 뒤 나머지를 풀 계획이다. - 디자인 패턴 스터디에 참석하였다. 지난 주, 스터디 형식으로 같은 팀원 8명에서 각자 3개씩 디자인 패턴을 맡아서 발표하기로 했다. 디자인 패턴에 대한 공부도 많이 되었지만, 내용을 정리하는 방법, 설명하는 방법, 발표

2021년 8월 9일
·
0개의 댓글
·

[TIL] 21.08.06 - 실습 프로젝트

- Gradle을 이용하여 JavaFaker, Lombok과 같은 외부 라이브러리를 설치하는 방법을 알게 되었다. - Lombok의 기능 (@AllargsConstructor, @EqualsAndHashCode, @Setter...)등을 알게 되었다. 이 정도면 모든 프로젝트에서 활용할 수 있는 거의 필수 라이브러리라고 생각된다. 이 라이브러리를 사용하는 데에도 단점이 있을지 찾아볼 계획이다. - 숫자 야구 게임을 객체지향 개념에 맞게 설계하고 구현하는 법을 보았다. 9월 초 쯤에 개인 프로젝트가 예정되어 있던데, 그 전에 혼자 몇 번 연습하면 큰 도움이 될 것같다. > #### 느낀 점 및 다짐 이번 주는 TIL(Today I learn) 취지에 맞지 않게 주말에 포스팅을 몰아서 정리했다. 이런 형식으로 계속 정리한다면 그렇게 부담도 안되니, 다음 주부터는 습관을 들이기 위해 매일 작성해야겠다. 그리고, 이번 주말에는 부산 여행을 다녀와서 주제를

2021년 8월 8일
·
0개의 댓글
·

[TIL] 21.08.05 - Collection

- Collection이 어느 위치에 있는 인터페이스인지, 어떻게 사용하는지 알게 되었다. - 프로그래머스에서 문제를 풀면 모범 답안에 종종 보였던 Stream 클래스에 대해서도 자세히 배웠다. - Rust에서 새롭게 나온 개념인줄 알았던 Optional 클래스가 자바에도 있다는 사실을 알게 되었다. Java 8부터 지원한다고 한다

2021년 8월 8일
·
0개의 댓글
·

[TIL] 21.08.04 - 인터페이스

- 옛날에 잠깐 Android를 했을 때 지겹게 나온 @Override onClick() 메소드의 원리를 깨닫게 되었다. - 의존성 주입(DI)을 열심히 설명해주셨는데, 이해가 잘 되지 않는다. 이번 주 주말에는 부산 여행을 가니 다음 주 주말에 공부해보자. - 자바의 lambda 표현식은 파이썬의 lambda보다 복잡해보인다. 역시 파이썬이 처음 배우기에는 훨씬 편리하다.

2021년 8월 6일
·
0개의 댓글
·

[TIL] 21.08.03 - 객체지향 및 Github

- 객체지향의 의미, 특성, 설계 방법, 원칙 등을 배웠다. - 그 중 SOLID 원칙, 디자인 패턴은 추가적으로 공부를 할 필요가 있어 보여, 나중에 WIL이나 MIL로 작성할 예정이다. - Github는 코드 공유용으로만 사용했는데, branch, merge, revert, cherry-pick과 같은 기능을 알게 되었다.

2021년 8월 6일
·
0개의 댓글
·

[TIL] 21.08.02 - 백엔드 데브코스 1기 시작

- 인생 첫 번째 TIL. 글 쓰는게 어색해서 당분간 TIL은 3줄로 요약하고, 좀 알아보고 싶은 주제가 있을 때는 WIL이나 MIL으로 따로 작성할 예정이다. - 어디선가 많이 들어본 Maven, Gradle에 대해 자세히 알게 되었다. - 곰튀김님의 세션을 듣고 클린 코드, Effective Java 책을 e-book으로 충동구매해버렸다.

2021년 8월 6일
·
0개의 댓글
·