전체 글 (572) 썸네일형 리스트형 [React] React.useState() 값과 함수를 반환한다. 함수는 값을 변화시킨후 컴포넌트를 리렌더링한다 여러개의 state 를 정의할 수도 있고 object로 관리할수도 있다. const [enteredTitle, setEnteredTitle] = useState(''); const [enteredAmount, setEnteredAmount] = useState(0); const [enteredDate, setEnteredDate] = useState(); const [userInput, setUserInput] = useState({ enteredTitle: '', enteredAmount: 0, enteredDate: '' }) 주의 할 점은 update 시 object에 있는 일부 키만 업데이트 한다면 다른 키들이 사라진다. 아래와.. 좋은 코드, 나쁜 코드 - 프로그래머의 코드 품질 개선법 우리가 책을 읽다 보면 어떤 책은 잘 읽힌다(?) 라는 느낌을 받는 책이 있다. 그런데 어떤 책은 아무리 집중을 하고 읽어도 내용에 집중을 할수가 없고 이해가 되지 않는 책들도 있다. 개발자로서 코드를 읽다보면 비슷한 느낌을 경험하게 된다. 어떤 코드들은 따라 읽기만 해도 이해가 되는가 하면 어떤 코드들은 아무리 디버거를 걸어봐도 이해가 안되는 코드들이 있다. 수많은 개발자들이 각자의 개성과 경험을 바탕으로 코드를 작성한다. 그렇다 보니 똑같은 기능을 하는 코드이지만 정말 다양한 모습의 코드들을 찾아 볼 수 있다. 그렇다 보니 우리는 자연스럽게 어떤 코드들이 좋은 코드인지, 좋은 코드를 작성하기 위해서는 어떻게 해야되는지 관심을 갖을 수 밖에 없다. "좋은 코드, 나쁜 코드" 이 책은 우리가 좋은 코드를.. 클라우드 네이티브 애플리케이션 디자인 패턴 리뷰 클라우드를 이용한 개발 및 운영이 지금은 당연한 것으로 생각되고 있다. 그만큼 클라우드는 어느 순간 개발에 대한 영역에서 중요한 포지션을 차지하고 있다. 프로젝트를 시작하게 되면 코드관리, 배포, 운영에 대한 모든 인프라 환경이 클라우드로 변경되어가고 있다. 하지만 우리의 어플리케이션은 그런 환경에 맞게 개발되고 있는가라고 질물을 한다면 대답하기가 쉽지 않다. 이러한 어려움들을 해결하기 위해서 우리는 패턴이라는 것을 사용한다. 각각의 요건과 환경에 맞게 이미 시도해본 사람들의 경험을 바탕으로 만들어진 형식들이 바로 패턴이다. 이 책에서는 우리가 클라우드 환경에서 어플리케이션을 개발하고 운영하고 배포하기 위해서 적합한 패턴들이 어떤것들이 있는지 알려준다. 이 책을 통해 알게 되었는데 패턴이 생각보다 정말 .. 기업의 성공을 이끄는 Developer Relations 리뷰 책을 읽어보기 전까지는 단어의 의미조차 알지 못했던 Developer Relations 에 대한 책을 읽게 되었다. 단어 자체가 길다보니 보통은 축약해서 DevRel(데브렐) 이라고 표현을 하는것 같다. 처음에는 데브렐의 역할이 기업의 마케팅이나 영업과 비슷하다고 생각을 했으나 알고 보니 전혀 다른 역할이었다. 내가 책을 읽으면서 간략하게 파악한 그들의 역할은 다음과 같았다. 개발자들을 위한 문화를 만드는데 고민한다. 커뮤니티를 만들고 활성화 될수 있도록 돕는다. 하지만 이런 행동들이 기업의 홍보를 위한것이 아니어야 한다. 마지막 문장이 정말 의미심장하다. 기업의 홍보를 위한것이 아니어야 한다. 정말 쉽지 않은 일이고 단시간이 이루어 질수 없는 일이다. 분명 꾸준한 노력과 인내, 그리고 속한 조직의 지지.. 브리츠 P900GX C타입 커널형 이어폰 집에 있는 헤드셋이 이상하게 인식이 안되서 이어폰을 사게 되었다. 3만원 이하로 커널형, C타입 이어폰을 찾다가 이 제품을 선택했다. 브리츠 P900GX C타입 커널형 이어폰. 우선 제품을 꺼내보고 처음에는 당황했다. 이어폰이 사진에서 처럼 납짝했기 때문이다. 그런데 막상 귀에 껴보니 밖으로 튀어나오지도 않고 딱 맞게 들어가서 착용감이 좋았다. 좌, 우가 좀 헷갈리는것 빼고는 만족스러웠다. 약간 무게감도 있고 귀에 쏙 들어가고 음질도 괜찮았다. 이정도면 가격대비 만족스러운 퀄리티 인것 같다. 리다이렉션 응답 301(Permanently Moved) 요청한 URL에 대한 HTTP 요청의 처리 책임이 영구적으로 Location 헤더에 반환된 URL 로 이전되었다는 응답. 영구적으로 이전되었으므로 브라우저는 이 응답을 캐시한다. 추후 같은 URL 로 요청시 브라우저는 캐시된 원래 URL 로 요청을 보낸다. 302 (Found) 요청한 URL 이 "일시적으로" Location 헤더가 지정하는 URL 에 의해 처리되어야 한다는 응답. 클라이언트 요청은 항상 단축 URL 서버에 먼저 보내진 후 원래 URL 로 리다이렉션이 된다. @ElementCollection 컬랙션 객체임을 JPA 에 알려주는 Annotation. @Entity public class Person { @Id private Long id; private String email; @ElementCollection @CollectionTable( name = "address", joinColumns = @JoinColumn(name = "person_id") ) List addressInfoList = new ArrayList(); } Entity 와 라이프 싸이클을 같이 하며 독립적으로 사용 불가능 하다. 부모 Entity가 삭제될 경우 같이 삭제된다. (실제 클래스에 cascade 를 설정하는 옵션이 없다.) ElementCollection의 Fetch 전략은 기본이 Lazy 이다. 실제 테이.. @Access 어노테이션 JPA 가 엔티티 데이터에 접근하는 방식을 지정한다. 1. AccessType.FIELD : 필드에 직접 접근한다. @Access(AccessType.FIELD) private String address1; 2. AccessType.PROPERTY : 프로퍼트로 접근한다. @Access(AccessType.PROPERTY) public String getAddress2() { return address1 + address2; } 3. AccessType 이 지정되지 않은 경우는 @Id 위치에 따라 지정된다. @Entity public class OrderInfo { @Id private Long id; private String address1; @Transient private String addres.. [나는 리뷰어다] 구글 엔지니어는 이렇게 일한다. 개발과 관련된 일을 하는 사람이라면 한번쯤은 구글에서 일하는 생각을 해봤을것이다. 나또한 그랬으며 항상 동경의 대상처럼 여겨졌다. 그들이 하는 일들은 항상 앞서 나가고 무엇인가 혁신적이고 세상을 바꿀것 같은. 그런 기본적은 생각들이 밑바탕에 깔려있었다. 이번에 읽게된 "구글 엔지니어는 이렇게 일한다" 는 그런 구글러들이 어떻게 일하는지, 무엇을 생각하는지에 대해 배워볼수 있는 책이다. - 이 책은 개발자들만을 위한 책이 아니다. 이 책은 소프트웨어 엔지니어링에 대한 내용을 많이 다룬다. 프로그래밍과 구분되게 소프트웨어 엔지니어링은 소프트웨어를 개발하기 위해 설계부터 시작하는 모든 라이프 사이클을 포함한다. 그게 개발관련된 일이 될수도 있고 그안의 구성원들인 사람이 될수도 있다. 따라서 이책의 제목에 있는.. Docker Image export 방법 Image 를 export 하는 방법 docker save [option] [tar filename] [image name] REPOSITORY TAG IMAGE ID CREATED SIZE nginx latest fa5269854a5e 2 weeks ago 142MB docker save -o test.tar fa5269854a5e 실행중인 컨테이너를 export 하는 방법 docker export [container name or containter ID] > [tar filename] CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 791601bf0587 nginx:latest "/docker-entrypoint.…" 33 minutes ago.. 이전 1 ··· 5 6 7 8 9 10 11 ··· 58 다음