본문 바로가기
반응형

분류 전체보기296

직장인의 운명은 30대에 결정된다 - 김현정 ` 인생을 자꾸 어렵게 몰고 가지 말자. 먼 훗날을 생각한다면 더욱 빠르게 움직여야 한다. 나이든 후엔 학습 속도도 느리고, 새로운 분야로의 진입도 어려우며, 큰일이 닥친 다음에 허둥저둥하느라 판단력이 흐려져 성공하기 힘들다. 움직이는 것이 중요하다. 머릿속에 계획은 의미가 없다. 마음이 안 움직이는가? 말과 행동이 신념을 바꾼다고 했다. 당장 무엇이라도 실천하라. 그러면 마음이 따라갈 것이다. ` 얼마만큼 일하느냐가 아니라 무슨일을 하느랴가 중요하다. 자기가 잘할 수 있고, 자신을 필요로 하는곳에서 일해라. 야근을 해야 할땐 뿌듯함이 아니라 자괴감을 느끼고 부끄러워해야 한다. 최대한 근무시간에 집중하고 생산성을 내라 ` 내게 부족한 것을 들여다보는 용기와 그것을 극복하려는 의지를 가져라. 자신의 잘못은.. 2023. 8. 26.
프레임(나를 바꾸는 심리학의 지혜) - 최인철 지혜는 한계를 인정하는 것이다. 우리는 세상을 있는 그대로 객관적으로 보고 있다고 생각하지만, 사실은 프레임을 통해서 채색되고 왜곡된 세상을 경험하고 있는 것이다. 프레임으로 인한 이러한 마음의 한계에 직면할 때 경험하게되는 절대 겸손, 나는 이것이 지혜의 출발점이라고 생각한다. 어떤 프레임을 통해 세상에 접근하느냐에 따라 삶으로부터 얻어내는 결과물이 결정적으로 달라진다. 최상의 프레임으로 자신의 삶을 재무장하겠다는 용기, 이것이 지혜의 목적지라고 생각한다. ex> 기도하면서 담배를 피워도 되는가? or 담배피면서 기도를 해도 되는가?의 질문에 대한 얻는 결과물 프레임은 세상을 바라보는 마음의 창이다. 어떤 문제를 바라보는 관점, 세상을 향한 마인드 셋, 세상에 대한 은유, 사람들에 대한 고정관념 등이 .. 2023. 8. 26.
독서천재가 된 홍대리2 - 이지성 독서는 단순히 글자를 읽는 것과는 다르다 독서를 통해 생각을 변화시키고, 생각이 달라지면 행동이 변해야 한다. 책을 읽고 우리 안의 무언가가 깨지지 않는다면, 다시 말해 아무런 변화도 일으키지 않는다면 독서의 이유가 없다. 독서를 통해 인생을 바꾸겠다는 의지, 절실함을 가져라 성공독서 = 미래를 만드는 독서 = 가능성을 발견하는 독서 = 모두를 위한 독서 = 적극적이고 진취적인 사고방식을 기르는 독서 내적인 동기 - 우리의 행동을 설명하는 원인이 외부에 있을때 다른 건 다 잊어버리고 하나의 원인에만 집착하는 현상(과정당화) 마음속에 있는 진짜 원인, 내적 동기를 읽어 버림 - 내적인 동기가 부여되지 않는 행동 변화는 금방 사라지기 쉽다. 어떤 책을 읽든, 어떤 방식으로 독서를 하든, 중요한 건 내가 왜 .. 2023. 8. 26.
프로그래밍 관련 법칙(파레토, 디미터, 콘웨이 법칙) 1. 파레토 법칙 (Pareto principle) 80 대 20 법칙, 전체 결과의 80%가 전체 원인의 20%에서 일어나는 현상 소프트웨어의 개발 80%를 20%의 기능을 개발하는데 소비한다. 프로그램 사용자의 20%가 80%의 부하를 발생시킨다. 등으로 사용이 된다. 프로젝트를 설계할 때 이 법칙을 감안해서 설계를 하면 프로젝트를 위험에 빠트리게 하는 위험요소들을 사전에 파악하고 관리가 가능할 것이다. (예를 들어서 중요한 기능을 먼저 구현하던지 특정 사용자들에게서 집중적으로 자원이 소모되는 것을 감안해서 설계 하고 테스팅한다.) 2. 디미터 법칙 (The Law of Demeter) :디미터 법칙은 객체 O의 메소드 m은 다음의 객체들의 타입의 메소드만 호출해야 한다는 법칙이다. 1. O 객체 자.. 2023. 8. 26.
클린 코드(Clean Code) 깨끗한 코드를 작성하는 방법은 배우기 어렵다. 단순히 원칙과 패턴을 안다고 깨끗한 코드가 나오지 않는다. 고생을 해야한다. 연습하고 실패하고 다시 일어서야 한다. 결정을 내리느라 고민하는 모습, 잘못된 결정으로 대가를 치르는 모습도 봐야한다. 보이스카우트 규칙: "처음 왔을 때보다 더 깨끗하게 해놓고 떠나라.” 단순한 설계 규칙 4가지(중요도 순서) 1. 모든 테스트를 실행한다. - 리팩토링 쉽게 가능 2. 중복을 없앤다. 3. 프로그래머의 의도를 표현한다. - 좋은 이름선택, 함수,클래스 크리 줄이기, 표준명칭 사용, 단위 테스트 작성 4. 클래스와 메소드의 수를 최소로 줄인다. 냄새와 휴리스틱 1. 주석 C1 부적절한 정보 - 코드,설계의 기술적인 설명이외의 변경이력 등은 주석으로 적절하지 못함. C.. 2023. 8. 26.
객체지향 설계 개념 객체지향의 목표는 실세계를 모방하는 것이 아니다. 실세계를 추상화하고 은유하여 새로운 세계를 창조하는 것이다. 실세계에 대한 비유는 객체지향의 다양한 측면을 이해하는데 도움이 된다 1. 객체를 스스로 생각하고 결정하는 현실세계의 사물에 비유하는 것은 상태와 행위를 ‘캡슐화’하는 객체의 ‘자율성’을 잘 설명 2. 현실의 암묵적인 약속, 명시적 계약을 기반으로 협력하여 목표를 달성하는 과정은 ‘메시지’를 주고 받으며, ‘협력’하는 객체들의 관계를 잘 설명 설계는 간단히 끝내고 빨리 구현에 돌입하라. 실제 코드를 작성해가면서 협력의 전체적인 밑그림을 그리면서 수정해 나가라. 사람의 인지능력 한계로 인해 설계를 완벽히 끝내고 코드 작성을 하겠다는 어려운 일이다. 객체지향의 본질 1. 시스템은 상호협력하는 자율적.. 2023. 8. 26.
SpringBoot AWS S3 한글명 파일업로드 에러 SpringBoot에서 AWS S3에 파일 업로드 중 오류가 발생했다. 테스트 시 문제없이 동작하던 코드였는데 확인해보니 한글 파일명이 문제가 되었다. 아래 코드와 같이 S3에 업로드 되는 파일명은 중복 방지를 위해 UUID를 사용했고, 원본 파일명(originFileName)은 UserMetadata로 저장 하기 위해 코드를 추가했는데 원본 파일명(originFileName)이 한글인 경우 S3에서 오류가 발생했다. public String uploadImage(MultipartFile file) throws Exception{ String originFileName = file.getOriginalFilename(); String filePath = uploadPath + UUID.randomUUID.. 2023. 8. 20.
nodejs NVM(Node Version Manager) 설치 및 활용 nodejs 버전을 관리해주는 NVM(Node Version Manager)을 사용하면 여러 버전의 nodejs를 자유롭게 사용할 있어서 편리하다. 어플리케이션들이 여러 버전의 nodejs를 활용해서 개발이 되는데 각각의 어플리케이션 마다 서로 다른 nodejs 환경일 경우 매번 맞춰주는게 많이 번거롭다. nvm을 사용하면 이런 상황에서 여러 버전의 nodejs를 편리하게 스위칭할 수 있다. nvm 설치 nvm 설치는 아래 명령어 한줄이면 된다. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash 최신 버전의 nvm은 아래 사이트에서 확인해서 최신버전으로 설치해준다. https://github.com/nvm-sh/.. 2023. 8. 19.
반응형