세터 메서드가 있다는 것은 필드가 수정될 수 있다는 뜻이다. 객체 생성 후에는 수정되지 않길 원하는 필드라면 세터를 제공하지 않았을 것이다.세터 제거하기 리팩터링이 필요한 상황은 주로 두 가지다. 첫째, 사람들이 무조건 접근자 메서드를 통해서만 필드를 다루려 할 때다.
겉보기 부수효과가 있는 함수와 없는 함수는 명확히 구분하는 것이 좋다. 질의함수(읽기함수)는 모두 부수효과가 없어야 한다. 이를 '명령-질의 분리'라고도 한다.예제 생략. 두 함수의 로직이 아주 비슷하고 단지 리터럴 값만 다르다면, 그 다른 값만 매개변수로 받아 처리하
https://analyticsindiamag.com/hands-on-guide-to-librosa-for-handling-audio-files/Here you can see the use of spectogram to recognize keyowrds pre
특정 값에 대해 동일하게 반응하는 코드가 여러 곳이라면 한데 모으는 게 효율적.리펙터링의 대상이 될 속성을 담은 데이터 구조를 컨테이너라고 하자.1\. 컨테이너에 특이 케이스인지를 검사하는 속성을 추가하고, false 를 반환하게 한다.2\. 특이 케이스 객체를 만든다
복잡한 조건부 로직은 프로그램을 복잡하게 만든다. 코드를 부위별로 분해한 다음 해체된 코드 덩어리들을 각 덩어리의 의도를 살린 이름의 함수 호출로 바꿔주면 전체적인 의도가 더 확실히 드러난다.조건식과 그 조건식에 딸린 조건걸 각각을 함수로 추출한다.비교하는 조건은 다르
역할이 둘 이상인 변수가 있다면 쪼개야 한다. 역할 하나당 변수 하나다.1\. 변수를 선언한 곳과 값을 처음 대입하는 곳에서 변수 이름을 바꾼다.2\. 가능하면 이때 불변으로 선언한다.3\. 이 변수에 두 번째로 값을 대입하는 곳 앞까지의 모든 참조(이 변수가 쓰인 곳
이 포스트는 지그송님의 "리팩터링 8장 -2" 를 참고하여 거의 똑같이 타이핑하였습니다.함수는 코드를 이해하기 쉽게 해주고 중복을 없애준다.inline 코드를 함수로 치환한 모습이다.특히 라이브러리가 제공하는 함수로 대체할 수 있다면 더 좋다.하나의 데이터 구조를 이용
상반기에 꼭 한 군데라도 지원해보자. 시간이 없다구!어떻게 해야 취업할 수 있는 지 계획 좀 세우기.코딩테스트: leetcode, ...포트폴리오: ML, camear software, ......Julieann Choi 컨택하기https://www.linke
모듈화: 서로 관련 있는 들이 잘 모아 놓는 것. 모듈성이 좋다면 해당 기능을 수정하려고 할 때 다른 것들은 이해하지 못해도 할 수 있게 만들어줌. 그리고 수정이 한 곳에서만 일어날 수 있음. 모든 함수는 컨텍스트 안에 존재하며, 대부분 특정 모듈에 속한다. 캡슐화를
단순한 출력 이상의 기능이 필요해지는 순간 그 데이터를 표현하는 전용 클래스를 정의한다.아래는 기본형을 Priority 클래스를 바꾼 모습!변수 대신 컨텍스트와 메소르를 제공하면 다른 곳에서 사용할 수 있어 코드 중복이 줄어든다!https://zigsong.g
디스코드 링크https://discord.gg/hQdu5ShPQb아직 출시는 안 되었지만 벌써부터 인기가 장난아닌듯.STEPN 의 한국판이라고 봐도 될듯. 대신 개발진들이 열린 마음으로 이것저것 제안들을 많이 수용하려고 하는 점이 돋보임. 매우 열심!https
함수 추출하기는 내가 가장 많이 사용하는 리팩터링 중 하나다객체는 특정 로직과 데이터를 외부와 공유하려 할 때 공유할 .. 설명해주는 적당한 크기의 문맥이 되어준다.좋은 이름을 떠올리는 데 효과적인 방법이 하나 있다. 바로 주석을 이용해 함수의 목적을 설명해보는 것이다
| kind |level| title | note | |---|---|---|---| | WIP |medium| 4Sum II| DP? O(n^4)? | | | | | |
https://leetcode.com/contest/weekly-contest-278/problems/find-substring-with-given-hash-value/1st try: time limit exceed2nd try: time limit excee
https://leetcode.com/problems/jump-game/time limit exceededeven if using DP(memoization)..why?
https://leetcode.com/contest/biweekly-contest-70/problems/count-the-hidden-sequences/biweekly contest. problem
https://leetcode.com/problems/solving-questions-with-brainpower
https://cafe.naver.com/londonteacher/7218위 게시글에 첨부 된 worksheet 를 기반으로 작성하였습니다.내가 영어 공부를 무엇때문에 할 것인지, 왜 하고 있는지 방향성을 설정해보세요.영어로 진행되는 회의에서 제대로 알아 듣고
https://www.acmicpc.net/problem/11444제약사항: n은 1,000,000,000,000,000,000보다 작거나 같은 자연수아래처럼 풀면 메모리 한도 초과 발생.