본문 바로가기

전체 글24

[Spring] STS 4 설치 및 설정하기(Spring Tool Suite 4) Spring 개발을 위한 개발도구인 STS4(Spring Tool Suite 4)를 설치해보도록 하겠습니다. STS는 Spring 기반 엔터프라이즈 애플리케이션 개발을 위한 도구입니다. STS 말고도 일반 Eclipse나 IntelliJ IDEA도 사용 가능하니 참고하시기 바랍니다. STS 설치에 앞서 기본적으로 Java 설치가 필요합니다. 아직 Java 설치가 안 되었다면 아래 게시물을 참고하여 Java를 설치해주시기 바랍니다. STS에 내장 JRE가 포함되어 있기는 하지만 원하는 버전의 Java를 사용하기 위해 여기서는 OpenJDK 11 버전을 설치하도록 하겠습니다. Java 설치 [Java] OpenJDK 설치하기(JDK Builds from Oracle) Java 프로그래밍을 하기 위해 처음에 .. 2022. 3. 15.
[Java] OpenJDK 11 설치하기(JDK Builds from Oracle) Java 프로그래밍을 하기 위해 처음에 해야할건 무엇일까요? 그렇죠. Java 설치를 먼저 해야겠죠? 너무 당연했나요? 😅 그럼 Java의 무료 버전인 OpenJDK를 설치해보도록 하겠습니다. OpenJDK도 종류가 여러가지가 있는 것 같은데 저는 Oracle에서 제공하는 OpenJDK를 설치해보도록 하겠습니다. 저는 Windows 운영체제 사용자이기 때문에 Windows 기준으로 설명하도록 하겠습니다. 혹시 다른 운영체제를 사용중이시라면 다른 곳을 찾아보시기 바랍니다. 😭 OpenJDK 다운로드 아래 페이지에 접속해 OpenJDK 11 버전을 다운로드 받습니다. Java Platform, Standard Edition 11 Reference Implementations Java Platform, Sta.. 2022. 3. 14.
[TIL] 클린코드(Clean Code) - 10장. 클래스 📌 오늘 TIL 3줄 요약 SRP(단일책임원칙) : 클래스는 작아야 하고 클래스는 책임, 즉 변경할 이유가 하나여야 한다. OCP(개방폐쇄원칙) : 새 기능을 수정하거나 기존 기능을 변경할 때 건드릴 코드가 최소인 시스템 구조가 바람직하다. 이상적인 시스템이라면 새 기능을 추가할 때 시스템을 확장할 뿐 기존 코드를 변경하지는 않는다. DIP(의존역전원칙) : 상세한 구현에 의존하는 클라이언트 클래스는 구현이 바뀌면 위험에 빠진다. 그래서 우리는 인터페이스와 추상 클래스를 사용해 구현이 미치는 영향을 격리한다. 📆 TIL (Today I Learned) 날짜 2022.03.09 📚 오늘 읽은 범위 10장. 클래스 📝 책에서 기억하고 싶은 내용 클래스는 작아야 한다! 함수는 물리적인 행 수로 크기를 측정했다.. 2022. 3. 9.
당신의 문해력, 읽지 못하는 사람들 어제 코딩 관련 유투브를 보다가 문해력이라는 단어를 접하게 되었다. 문해력? 그게 뭐지? 문장 해석 능력? 이해 능력? 우리나라 사람들의 문해력이 OECD 국가 24개국중 하위인 22위라는 사실도 알게 되었다. (OECD 국가가 총 24개국이라는건 사실 잘 모르겠으나 그냥 결국 하위권이라는 것이 중요) 그러면서 EBS에서 방송한 내용이 있다는걸 알게 되었다. 그래서 바로 유투브 검색 Go!! 근데 문해력이 도대체 뭐지? 문해력이란? 글을 읽고 의미를 이해하는 능력 문해 또는 문자 해득은 문자를 읽고 쓸 수 있는 일 또는 그러한 일을 할 수 있는 능력 응? 갑자기 해득이라는 단어를 접했다. 해득? 해독인데 해득이라고 오타가 났나? 하지만 해득이라는 단어는 더 등장하였고 오타가 아니었구나 깨닫고 무슨 뜻인지.. 2022. 3. 8.
[TIL] 클린코드(Clean Code) - 9장. 단위 테스트 📌 오늘 TIL 3줄 요약 테스트 코드가 지저분하면 코드를 변경하는 능력이 떨어지며 코드 구조를 개선하는 능력도 떨어진다. 테스트 코드는 최소의 표현으로 많은 것을 나타내야 한다. 테스트 함수 하나는 개념 하나만 테스트하라. 📆 TIL (Today I Learned) 날짜 2022.03.05 📚 오늘 읽은 범위 9장. 단위 테스트 📝 책에서 기억하고 싶은 내용 TDD 법칙 세 가지 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다. 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다. 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다. 테스트 코드가 지저분할수록 변경하기 어려워진다. 테스트 코드가 복잡할수록 실제 코드를 짜는 시간보다 테스트 케이스를 추가.. 2022. 3. 5.
[TIL] 클린코드(Clean Code) - 7장. 오류 처리 📆 TIL (Today I Learned) 날짜 2022.03.04 📚 오늘 읽은 범위 7장. 오류 처리 📝 책에서 기억하고 싶은 내용 오류 코드보다 예외를 사용하라 : 오류가 발생하면 예외를 던지는 편이 낫다. 그러면 호출자 코드가 더 깔끔해진다. 논리가 오류 처리 코드와 뒤섞이지 않으니까. (p.131) Try-Catch-Finally 문부터 작성하라 : 어떤 면에서 try 블록은 트랜잭션과 비슷하다. try 블록에서 무슨 일이 생기든지 catch 블록은 프로그램 상태를 일관성 있게 유지해야 한다. 그러므로 예외가 발생할 코드를 짤 때는 try-catch-finally 문으로 시작하는 편이 낫다. 그러면 try 블록에서 무슨 일이 생기든지 호출자가 기대하는 상태를 정의하기 쉬워진다. (p.132) 먼.. 2022. 3. 5.
콕스 엔데버 35g, 무소음 무접점 텐키리스 키보드 구입 콕스 엔데버 35g 키보드 구입 평소 동네 마트 가서 쉽게 살 수 있는 로지텍 기본 유선 키보드와 마우스를 즐겨 쓰는 편인데 언젠가부터 마우스의 거리가 멀게 느껴져서 불편해지기 시작했다. 같은 디자인의 로지텍 키보드에 우측의 번호키 부분만 없으면 딱 좋을텐데 생각하며 그런 로지텍 키보드가 있나 찾아봤는데 없었다. 그래서 평소 알고는 있었지만 사용하지는 않았던 텐키리스 키보드를 찾아보기 시작했다. 그러다 평소 관심있었던 타이핑시 보글보글 소리가 나는 키보드 위주로 알아보게 되었고 유투브에서 후기 같은걸 찾아보고 고심한 끝에 선택한 키보드가 콕스 엔데버 35g(COX ENDEAVOUR 35g) 텐키리스 키보드다. 텐키리스 키보드 우측에 번호키가 없어 마우스에 손이 향할 때 손이 멀리까지 가지 않아도 된다. .. 2022. 3. 1.
[TIL] 클린코드(Clean Code) - 6장. 객체와 자료 구조 📆 TIL (Today I Learned) 날짜 2022.03.01 📚 오늘 읽은 범위 6장. 객체와 자료 구조 📝 책에서 기억하고 싶은 내용 자료 추상화 : 변수 사이에 함수라는 계층을 넣는다고 구현이 저절로 감춰지지는 않는다. 구현을 감추려면 추상화가 필요하다! 그저 (형식 논리에 치우쳐) 조회 함수와 설정 함수로 변수를 다룬다고 클래스가 되지는 않는다. 그보다는 추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료의 핵심을 조작할 수 있어야 진정한 의미의 클래스다. (p.119) 자료/객체 비대칭 : 복잡한 시스템을 짜다 보면 새로운 함수가 아니라 새로운 자료 타입이 필요한 경우가 생긴다. 이때는 클래스와 객체 지향 기법이 가장 적합하다. 반면, 새로운 자료 타입이 아니라 새로운 함수가 필요한 경.. 2022. 3. 1.
[TIL] 클린코드(Clean Code) - 5장. 형식 맞추기 📆 TIL (Today I Learned) 날짜 2022.02.28 📚 오늘 읽은 범위 5장. 형식 맞추기 📝 책에서 기억하고 싶은 내용 형식을 맞추는 목적 : 오랜 시간이 지나 원래 코드의 흔적을 더 이상 찾아보기 어려울 정도로 코드가 바뀌어도 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 원래 코드는 사라질지라도 개발자의 스타일과 규율은 사라지지 않는다. (p.96) 적절한 행 길이를 유지하라 : 500줄을 넘지 않고 대부분 200줄 정도인 파일로도 커다란 시스템을 구축할 수 있다는 사실이다. (FitNesses는 50,000줄에 육박하는 시스템이다.) 반드시 지킬 엄격한 규칙은 아니지만 바람직한 규칙으로 삼으면 좋겠다. 일반적으로 큰 파일보다 작은 파.. 2022. 2. 28.