본문 바로가기

자기계발38

21하반기 IBK은행 디지털 필기 후기 IBK은행 디지털 필기 시험을 응시했었다. 느끼는 점은 단 한가지.. 정보처리기사 이론 공부하자..!! 최소한 한 번 읽어보고 가자. 2022. 9. 7.
[리팩터링] 7장 캡슐화 캡술화란? 데이터에 대한 접근을 함수로만 한정하는 것 캡슐화의 이점 데이터에 대한 접근을 한정함으로써 의도치 않은 변경을 예방한다.(전역변수/가변데이터) 데이터 입출력시 추가로직을 쉽게 한다. ex) 객체의 사본 제공, 특정 입력 무시 1. 레코드 캡슐화하기 레코드를 데이터 클래스로 전환하기 레코드 간단히 말하자면 구조체 JS 에서 모든 object는 그 자체로 레코드로 사용 가능. HashMap 등으로도 레코드 사용 가능. 레코드 캡슐화의 결과는 결국 레코드를 클래스로 만드는 것. 레코드는 데이터의 집합. 레코드 캡술화는 이 데이터들에 대한 입출력 함수를 만드는 것. 데이터 + 입출력 함수 = 클래스 2. 컬렉션 캡슐화하기 컬렉션 자체를 반환하지 않는다. 복제본을 반환. 읽기 전용으로 제공 등을 이용한.. 2022. 9. 4.
[리팩터링] 6장 기본적인 리팩터링 1. 함수 추출하기 코드를 언제 독립된 함수로 묶어야 할까? 많은 의견들이 있지만, 저자는 '목적과 구현을 분리'를 기준으로 추천한다. 코드를 보고 무슨 일을 하는지 파악하는데 한 참을 걸린다면 그 부분을 함수로 추출한 뒤 '무슨 일' 에 걸맞는 이름을 짓는다. 이렇게 해두면 나중에 코드를 다시 읽을 때 함수의 목적이 눈에 확 들어오고, 본문 코드(그 함수가 목적을 이루기 위해 구체적으로 수행하는 일)에 대해서는 더 이상 신경 쓸 일이 없다. 함수를 새로 만들고 이름을 붙일 때 "어떻게" 가 아닌 "무엇을" 하는지가 드러나는 이름을 짓도록 주의하자. 목적을 잘 드러내는 이름을 붙여야 한다. 2. 함수 인라인하기 때로는 함수 본문이 이름만큼 명확한 경우도 있다. 리팩터링 과정에.. 2022. 9. 4.
[리팩터링] 3. 코드에서 나는 악취 코드에서 나는 악취에 대해 어떤 경우에 악취가 나는지 간단히 알아보자. 나중에 기법들을 배우며 다시 돌아볼 것. 1. 기이한 이름 2. 중복 코드 3. 긴 함수 4. 긴 매개변수 목록 5. 전역 데이터 전역 데이터 사용 주의하자6. 가변 데이터 (const가 아닌 것. 주의하자.)7. 뒤엉킨 변경 단일 책임 원칙이 제대로 지켜지지 않을 때, 즉 하나의 모듈이 서로 다른 이유들로 인해 여러가지 방식으로 변경되는 일이 많을 때. 예를 들어 지원해야 할 DB가 추가될 때마다 함수 세 개를 바꿔야 하고, 금융 상품이 추가될 때마다 또 다른 함수 네개를 바꿔야 하는 모듈이 있다면 뒤엉킨 변경이 발생한 것.8. 산탄총 수술 코드를 변경할 떄마다 자잘하게 수정해야 하는 클래스가 많을 때 풍김.9. 기능 편애 어떤 함.. 2022. 9. 4.
[리팩터링] 2. 리팩터링 원칙 리팩터링 정의 리팩터링 : 소프트웨어의 겉보기 동작은 그대로 유지한 채, 코드를 이해하고 수정하기 쉽도록 내부 구조를 변경하는 기법 두 개의 모자 리팩터링 기능 추가 이 두 가지를 한꺼번에 고려하며 작업하지 말고, 각각 리팩터링 모자를 썼을 때와 그렇지 않을 떄를 구분해서 작업하자. 리팩터링의 이유 리팩터링을 하는 이유: 경제적인 이유(프로그래밍 속도) 도덕적인 이유(그냥 해야하는 것 같아서)가 아님. 리팩터링 언제?? 3의 법칙 일단 개발한다. 같은 일을 두번하게 되면.. 일단 한다. 또 같은 일을 하면, 리팩터링 하자! 준비를 위한 리팩터링 기능 추가하기 전에, 리팩터링 하면 더 쉽게 추가할 수 있음. 이해를 위한 리팩터링 코드 파악에 리팩터링이 효과적일 수 있음. 쓰레기 줍기 비효율적인 코드 발견 .. 2022. 8. 23.
[혼자 공부하는 얄팍한 코딩 지식] 환경변수란? ※ '혼자 공부하는 얄팍한 코딩 지식'(고현민) 책을 읽고 작성한 글입니다. 환경 변수 프로그램이 컴퓨터에서 동작할 때의 환경과 관련된 변수 운영체제에서 응용 프로그램 작동을 위해 참조하기 위한 설정을 기록하는 곳 (시스템 실행 파일이 있는 디렉터리를 지정하는 등) 우리가 컴퓨터로 사용하는 모든 프로세스(웹사이트, 게임, 그림판 등)는 전부 운영체제라는 상위 프로그램에 의해 실행되는 자식 프로세스이다. 이 때 운영체제 입장에서 해당 프로세스를 실행시키기 위해 참조하는 값을 담은 변수가 바로 환경 변수. 환경 변수는 어디에서, 왜 사용될까? 환경 변수 사용 용도 1. 필요한 프로그램의 실행 경로 ex) 자바 프로그래밍을 위해 JDK(자바 개발 키트)를 다운로드하면 자바와 프로그래밍에 필요한 기타 요소들이.. 2022. 8. 15.
반응형