개발 150

2024.03.11 글모음

내 코드가 그렇게 이상한가요 ? https://velog.io/@haryan248/%EB%82%B4-%EC%BD%94%EB%93%9C%EA%B0%80-%EA%B7%B8%EB%A0%87%EA%B2%8C-%EC%9D%B4%EC%83%81%ED%95%9C%EA%B0%80%EC%9A%94-1%EC%9E%A5-2%EC%9E%A5-%EC%A0%95 내 코드가 그렇게 이상한가요? - 1장, 2장 정리 '내 코드가 그렇게 이상한가요?' 개발 서적을 읽고 정리합니다.책의 코드가 전부 JAVA 로 구성되어 있기 때문에 Typescript 를 사용해서 변경하여 정리하였습니다. 프론트엔드에서도 사용가능한 지 velog.io 코드트리 후기 https://ducktopia.tistory.com/109 [후기] 알고리즘 학습을 위..

개발 2024.03.11

spring. 자체인증서 통해 내 로컬에서 https 설정 (+) 내 로컬 host 변경

로컬 환경을 자체 인증서 통해 https로 설정하는 법을 알아본다. 1. 자체 인증서 발급 keytool -genkeypair -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650 -dname "CN=localhost, OU=ID, O=YourCompany, L=YourCity, S=YourState, C=YourCountry" -storepass {password} 2. tomcat https 설정 이렇게까지 하면 다 된다고 하는데 .. 자꾸 내 로컬에서는 ERR_TOO_MANY_REDIRECTS 가 발생해서.. 관련해서 계속 디버그 찍고 해봤는데도 .. 해결이 안되었다. 확인해보니 아..

개발/자바 2024.02.15

java. pxix path buing failed

네이버 로그인쪽이 내 로컬 개발환경에서만 안돌아가서 확인해보니, 인증서 문제였다. 이 문제 해결하기 위해서 계속 chatgpt와 대화를 나누다가.. 드디어 해결책을 찾아서 기록해둔다. 실행환경 : window 1) ca 인증서 획득 javac InstallCert.java java InstallCert nid.naver.com java InstallCertopenapi.naver.com 2) 인증서 설치 %JAVA_HOME%\bin\keytool -exportcert -keystore jssecacerts -storepass changeit -file output.cert -alias openapi.naver.com-2 %JAVA_HOME%\bin\keytool -exportcert -keystore j..

개발/자바 2024.02.13

jetbrains. ai assistant 설치

JetBrains AI Assistant 사용 방법 (가이드) (tistory.com) JetBrains AIAssistant 사용 방법 (가이드) ChatGPT가 세상에 나온 지 1년이 지나면서, 특히 개발 분야에서는 AI가 가져온 변화가 두드러집니다. 최근 Github의 설문 조사에 따르면, 개발자들 사이에서 AI 코딩 도구의 사용이 급증하고 있습니다 yunwoong.tistory.com 만약 cacerts 오류로 설치가 안된다면, jetbrains에 가서 exe파일을 다운 받아서 실행하면 된다. ㄴ 관련 오류 : intellij idea - Some conflicts were found in the installation area: jbr/bin/java is modified - Stack Ove..

개발/꿀팁 2024.01.02

[leetcode][Easy][LinkedList] 206. Reverse Linked List 풀이, 해설

문제링크 : https://leetcode.com/problems/reverse-linked-list/ Reverse Linked List - LeetCode Can you solve this real interview question? Reverse Linked List - Given the head of a singly linked list, reverse the list, and return the reversed list. Example 1: [https://assets.leetcode.com/uploads/2021/02/19/rev1ex1.jpg] Input: head = [1,2,3,4,5] O leetcode.com 풀이 # Definition for singly-linked list. # ..

[헤드퍼스트 디자인패턴] chapter10.상태 패턴

상태 패턴 - 객체의 내부 상태가 바뀜에 따라서 객체의 행동을 바꿀 수 있음 vs 전략 패턴 - 상태 패턴을 사용할 때는 상태 객체의 일련의 행동이 캡슐화된다 - 전략 패턴을 사용할때는 일반적으로 클라이언트가 context 객체에게 어떤 전략 객체를 사용할지 지정해준다. https://www.yes24.com/Product/Goods/108192370 이 책 10장을 읽고 정리한 글입니다.

개발/꿀팁 2023.11.27

[헤드퍼스트 디자인패턴] chapter9. 컬렉션 잘 관리하기 (반복자 패턴 Iterator pattern, 단일 역할 원칙, 컴포지트 패턴)

반복자 패턴 iterator pattern 1. 정의 - 컬렉션의 구현 방법을 노출하지 안으면서 집합체 내의 모든 항목에 접근하는 방법을 제공 단일 역할 원칙 1. 정의 : 어떤 클래스가 바뀌는 이유는 하나뿐이어야 한다. 2. 응집도 - 응집도란 한 클래스 또는 모듈이 특정 목적이나 역할을 얼마나 일관되게 지원하는지 나타내는 척도로, - 응집도가 높다는 것은 서로 연관된 기능이 묶여 있다는 것을 - 응집도가 낮다는 것은 서로 상관 없는 기능들이 묶여 있다는 것을 뜻함 컴포지트 패턴 1. 정의 - 객체를 트리구조로 구성해서 부분-전체 계층구조를 구현 - 컴포지트 패턴을 사용하면 클라이언트에서 개별 객체와 복합 객체를 똑같은 방법으로 다룰 수 있음 https://www.yes24.com/Product/Goo..

개발/꿀팁 2023.11.27

[헤드퍼스트 디자인패턴] chapter8. 템플릿 메소드 패턴 (템플릿 메소드패턴, 할리우드원칙)

템플릿 메소드 패턴 1. 정의 - 알고리즘의 골격을 정의 - 템플릿 메소드를 사용하면 알고리즘의 일부 단계를 서브 클래스에서 구현할 수 있으며, 알고리즘의 구조는 그대로 유지하면서 알고리즘의 특정 단계를 서브클래스에서 재정의 가능 할리우드 원칙 (hollywood principle) 1. 정의 - 저수준 구성 요소가 시스템에 접속할 수는 있지만 언제 어떻게 그 구성 요소를 사용할지는 고수준 구성 요소가 결정한다. - 즉, 고수준 구성 요소가 저수준 구성 요소에게 '먼저 연락하지 마세요. 제가 먼저 연락드리겠습니다'와 동일하다. 2. 할리우드 원칙 vs 의존성 뒤집기 원칙 - 의존성 뒤집기 원칙 : 될 수 있으면 구상 클래스 사용 줄이고 추상화된 것 사용해야 한다는 원칙 - 할리우드 원칙 : 저수준 구성 ..

개발/꿀팁 2023.11.14

[헤드퍼스트 디자인패턴] chapter7.어댑터 패턴과 퍼사드 패턴 (어댑터 패턴, 퍼사드 패턴, 최소 지식 원칙, 데메테르 법칙)

어댑터 패턴 1.정의 - 특정 클래스 인터페이스를 클라이언트에서 요구하는 다른 인터페이스로 변환한다. 인터페이스가 호환되지 않아 같이 쓸 수 없었던 클래스를 사용할 수 있게 도와준다. 2. 특징 - 객체 어댑터와 클래스 어댑터가 있다. 퍼사드 패턴 1. 정의 - 서브시스템에 있는 일련의 인터페이스를 통합 인터페이스로 묶어준다. 또한 고수준 인터페이스도 정의하므로 서브시스템을 더 편리하게 사용할 수 있다. cf) 데코레이터 vs 어댑터 vs 퍼사드 - 데코레이터 : 인터페이스는 바꾸지 않고 책임(기능)만 추가 - 어댑터 : 하나의 인터페이스를 다른 인터페이스로 변환 - 퍼사드 : 인터페이스를 간단하게 변경 최소 지식 원칙 (principle of least knowlege) = 데메테르의 법칙과도 동일한 ..

개발/꿀팁 2023.11.13
반응형