0430-ReSet
피드
어제 TIL 보셨습니까 … 충격과 공포 …
소제목만 있고 아무것도 없었다. Algorithm소수 리스트 찾기 한 문제 푼 것 말고는… 알바한 날이여도 그래도
금-토-일 3단으로 좀 무너졌다.
오늘부터 다시 마음 다 잡고 공부해야지 !!!
- 잘한점
- 노트북 -> 빨리 전화해서 고친점 … 다행이다… 터치아이디 버튼 꾹 누르면 전원버튼이구나!
- 다시 꾸준한 TIL!!!
- 아쉬워
- 늦게 카페로 나간 점
- 유튜브 금토일 실컷봤으니 금지… 제발
- 프로그래머스 탈락 (.. 아쉬움) 3번 문제 빨리 잘 생각했으면 100 100 100 나올수도 있었을텐데…
크롱 리뷰
- css속성을 통일 성 있게 쓰세요 !
- float도 잘 알고 , 각각의 속성 브라우저 지원 및 제대로 이해하고 잘 쓰기
다양한 레이아웃 속성을 사용하는 것도 좋아요.
사용한 속성은 잘 이해해야하고요.
가급적 브라우저 지원범위도 의식하고 사용하세요.
… css도 알아야 할 부분이 너무많다 :D 신난다
크으 방학인데도 리뷰를 해주시다니 감사합니다
우선순위 1순위는 늘 리뷰를 받을 수 있는 데로 -> 다음 step을 진행하여 봅시다 !!!
웹 자판기 !
오늘의 Mooc
클린코드
함수 네이밍 설계에 근거하고 동사+명사 명시적인 이름 사용!! 함수의 이름만 보고 흐름이 잘 보이도록 해야 함!
이름 짓는게 어려운 이유 + (함수가 간단하지 않아서 + 영어 )=> simple +구체적의미+ 동사상수에는 의미부여
파라미터 반환에 집중
구체적
obj literal을 이용한 부르기
1 | function execSomething({width, height}){ |
if-else 되도록이면 if 긍정-else- 부정에 맞춰서
조건문 안에 로직을 감추고 함수로 들어나게
if(isInt)
orif(isArray)
불필요한 매핑 없애기 내 꺼 예시다. 이전에 todoList에서 매핑을 저런식으로 했었었다. 단순히 enum처럼 쓰기 위해서
1 | var todo = { |
- 나만 아는 index -> 이런 부분을 피하자 !
methodA(obj.methodA()[3],obj.methodA()[2])
나눌 수 있는 부분 최대한 나눔
ex) forEach-> foreach에 조건이 분기 되어 있는 경우 filter +forEach 보기는 좋은데 … 2번 돌지 않나요
이런 부분은 물어봐야겠다! 아마 이 부분은 그냥 forEach로 다 처리하라고 하실 것 같긴 한데순수함수
input -> output 같은 입력 늘 같은 결과 -> immutable
mutable의 경우 거치면서 계속 원본을 변화시키니까 !분리+신뢰+업데이트 어디서 되는지 추적하기까지 좋음 ! 짱짱맨가능한 es6 문법으로 why-> 더 가독성+ 깔끔한 코드 :D
- babel같은 트랜스파일 도구를 사용하면 거의 대부분은 지원 가능하므로 !
- promise & generator *
async await!
이 부분은 잘 모르므로… 공부하고 나중에 다시 봐야겠다!
주석 및 jsDoc같은 문서화 도구 활용 !!!
알고리즘 ->
복잡한 알고리즘 최대한 중첩 for*for같은 O(n^2) 이런 것들은 없애려고 노력 개선하려고 하면 대부분 처음 복잡한 부분 해결이 되는 경우가 많음 -> 일반화 시키려고도 노력 가우스 아저씨 n(n+1)/2 규칙을 찾자!객체관계를 이용하면 대부분의 if, switch를 없앨 수 있다.
Actions[cmd]&&Actions[cmd](char,step)
&&
도 잘 활용해야 겠다 있으면 이거
생각해보니 ? 늘 삼항연산자 쓰면서 ? 긍정이나 else의 경우 자신의 값 똑같이 넣어주고 아무처리 안 하는 경우 많았는데
&&를 활용하면 이 조건이면 이거를 잘 쓸 수 있겠다일관된 코딩 컨벤션
예상이 잘 됨 !
도구 활용 프리티어 , 컨벤션 유명한 것들 활용 ->상속 대신 mixin & Compositon
50:27
활용해보기
크롱 예제 활용해보기 써보지 않으면 잘 모른다.
로직만 담겨있으면 대상이 바뀌어도 쉽게 교체 가능 !
의존성 주입-> 비슷한 동작은 일관된 API 로 동작클래스에 안전장치 마련하기
심볼 & privateMethod똑똑한 Error처리
어느 부분 -> 개선까지 알려주는
CustomError사용도 권장
- 리팩토링
리팩토링 주기는 할 수 있는 한 짧게 -> 린 하계
리팩토링은 늘 한다는 마인드 !!!
(설계-개발-리팩토링)*반복
중복 제거 및 쪼개기
- 전역변수 제거
인자 / 매개변수 잘 쓰기
객체 / 클래스 사용
- 클로저를 통한 내부 보호 / private
- 좋은 도구 잘 모르고 쓰면 오히려 … 헷갈리고 혼동
프레임워크들
- 클린코드 -> 개발문화(리뷰,품질우선, 페어프로그래밍과 잘 갖춰있는 회사, 함께 성장 이타적인 마인드)
저런 회사 갈 수 있을까?…제발 열공해서 개발문화 좋은데로 가기를 바래
DaliyAlgorithm
1시간 반 -> 뭔가 풀릴 것 같아서 계속 시도 했는데 아쉽다.
내일 한 번 더 시도
Programmers가장 긴 펠린드롬 …
for안에 if문이 엄청 많다. 처음 설계가 잘 못 된 기분을 지울 수가 없다.
1 | 설게 |
시간 안에 못 푼 문제는 답 보고 공부하기로 했는데… 으.. 내일 한 번만 30분만 더 풀어볼래요
공부 안 될 때는 쉬운 문제 풀기
- level2 toWeirdCase (O)
다른 사람 풀이를 통해서 배운 점은 조금 더 코드를 깔끔히 짜는 법들에 대해서 좀 배웠다.