본문 바로가기
728x90
반응형

study116

노션으로 인생을 시스템화해보기 위한 큰그림을 그리기 시작 전공도 시스템공학에 MBTI도 J로 끝나는 고기만두는 모두가 싫어하는 업무량 기록도 내가 한 일 / 할 일 트래킹해줄 페이지가 생겼다고 신나게 쓰는 그런 유형 (물론 기획의도나 다른 건 다 맘에 안 들지만) 그러던 중 노션이라는 무시무시한 걸 알게되었고 알아가다 보니 이거 꽤 유료 도구화 사업화 할만한 가치도 있을것 같고 삶 자체를 시스템화할 수 있을 것 같다는 생각 모바일과 데스크탑을 넘나들고 기능이 무료인데도 강력해서 개인적으로는 엑셀 다음가는 발명품 되지 않을까 생각함 업무일지 / 영감 클립 / 독서 기록장 같은 예시 템플릿 몇 개를 배웠고 관극이나 다른 취미생활에 대한 기록도, 재테크에 관한 기록도 이쪽으로 넘길 생각 티스토리에 기록하고 노션에 클립핑하는 형식으로 기록의 틀을 바꾸게 될 예정 가 .. 2022. 11. 27. 11:27
네이버클라우드 platform hands-on lab 20221104 수강후기 https://edu.ncloud.com/schedule/apply/566 EDU PORTAL - NCLOUD CLOUD PLATFORM Improve your company’s operational competitiveness with a simple and fast workflow. edu.ncloud.com 과정소개는 해당 페이지 참고 사외교육으로 네이버클라우드에서 진행하는 핸즈온랩 무료 교육 참석하고 옴. 코로나 확진자 수를 기준으로 온라인 전환이 결정되기도 한다는데, 2022년 11월 현재는 실내 마스크 착용만 잘 준수된다면 별 문제될 게 없는 상황이다보니(있던 재택도 폐지된 판에 뭐,,) 오프라인에서 진행됨. 참고로, 점심 식권과 내부 카페 이용 쿠폰을 제공하고 있음. 괜히 커피 사가면 물배 .. 2022. 11. 5. 10:23
최댓값의 인덱스 구하기 출처 ) 프로그래머스 문제 설명 주어진 입력중 최대값을 구하고, 최대값이 이 위치하는 index 값의 목록을 반환하세요. 입력: [1, 3, 5, 4, 5, 2, 1] 입력된 목록의 최대값은 5입니다. 5와 동일한 값을 가진 위치는 3번째, 5번째 위치 입니다. 이 위치에 해당하는 index는 [2, 4] 입니다. 출력: [2, 4] 입출력 예 입력: [1, 3, 5, 4, 5, 2, 1] 출력: [2, 4] 👉🏻 위와 같습니다. 입력: [3, 6, 10, 1, 7, 2, 4, 6, 10, 9] 출력: [2, 8] 👉🏻 최대값 10이 위치하는 곳은 3번째, 9번째 입니다. 이 위치의 index값은 2, 8입니다. package programmers; class Solution { public int[] .. 2022. 10. 2. 23:09
클린코드(Clean code) 17장 - 냄새와 휴리스틱 : 최종 정리 1. 클린코드에 대한 철학 1) 나쁜 코드가 나쁜 이유 - 생산성 저하 2) 보이스카우트 룰 기억하기: 수정전보다 수정후에 더 깨끗한 코드 좋은 코드는 생산성을 상승시킨다! 3) 창발적 설계에서 유의해야 할 사항 규칙에 극단적으로 심취하여 클래스/메서드를 과하게 쪼개지 않을 것 : 실용적 관점에서 타협하기 2. 공동 창작시의 매너 : 나와 동료를 위해 네이밍/ 함수/ 주석/ 포맷팅 시 '팀이 가지고 있는 컨벤션(약속)' 을 우선하여 개발 3. 객체 지향 패턴 1) 캡슐화 2) 어댑터 패턴: 외부 코드 호출시 우리 인터페이스대로 호출하기 위해 사용하는 패턴, 외부 코드와의 호환성을 위해 사용 3) 결합도는 높게, 응집도는 낮게 4) SOLID 원칙 - 하도 많이 인용해서 이제 지겨움 4. 오류 처리 1) .. 2022. 9. 29. 13:55
클린코드(Clean code) 15~16장 : 실제 라이브러리 분석 (JUnit, SerialDate) JUnit, SerialDate 같은 정말 많이 사용하는 라이브러리조차 작가가 여러 가지로 손대고 리팩토링하면서 좀 더 나은 결과물이 나옴을 확인하였음 변수 앞에 붙은 접두어를 제거한다. 의도를 명확히 표현하기 위해 조건문은 캡슐화한다. 즉, 조건문을 따로 메서드로 뽑아내고 적절한 이름을 짓는다. 중복되는 변수 이름을 수정해서 더욱 의미를 명확하게 표현한다. 조건문을 긍정문으로 반전시킨다. 함수 이름을 가독성 있게 수정한다. 수행하는 일이 다른 함수를 따로 분리한다. 오래된 주석 수정 enum을 독자적인 소스 파일로 이동 정적 변수, 정적 메서드를 새 클래스로 이동 변수 이름 변경 새 메서드를 생성해 메서드간 중복 제거 어떤 일을 해도 마찬가지겠지만, 타인의 코드를 비판하거나 / 내 코드를 비판하는 걸 .. 2022. 9. 27. 18:24
클린코드(Clean code) 14장 - 점진적인 개선 1. 코드가 나빠지고, 무언가 잘못되고 있음을 인지: 기능추가를 멈추고 그 상태에서 개선 -> 테스트 코드 작성 : 변경전후 결과가 같아야 함. 모든 테스트가 수정전 상태에서도 통과해야. -> 점진적 개선: 책임에 따라 클래스를 나누고, 코드를 이동하는 등의 개선을 수행 *개선이랍시고 구조를 크게 뒤집어 엎으면 망하는 지름길 아그래서 봇과장님이 저 그냥 이거 다시 갈아엎고 짜면 안돼요? 하면 말렸구나 2. IDE에서 사용하면 좋은 기능 - extract method - change signature: 메소드 파라미터 추가/삭제/변경 - rename - extract variable : 변수 추출 - extract field : 특정 값을 멤버변수로 설정하기 - extract constant : 상수로 추.. 2022. 9. 26. 18:11
클린코드(Clean code) 13장 - 동시성 1. 동시성 프로그래밍 : 어플리케이션을 효율적으로 실행하기 위해 멀티코어를 온전히 활용하도록 구현하는 방식. 서버(코어)를 효율적으로 사용하여, 처리량을 최대화하기 위한 기법. 하나만 주구장창 붙들고 있는 게 아닌, 대기중에 다른일 처리하고 온다든가 하는 것도 동시성의 구현. cf)병렬성: 서버를 늘려 처리량을 늘리는 것 동시성과 병렬성은 "어플리케이션"의 관점에서 (not 클라이언트) 생각할 것. 내 어플리케이션의 효율성을 높이고, 메모리 누수나 자원 낭비 되는 일이 없도록 신경써야 함. 2. 동시성 프로그래밍의 미신과 오해 1)동시성은 항상 성능을 높여준다 (X) : 대기 시간이 길어서 여러 스레드가 프로세서를 공유할 수 있거나, 여러 프로세서가 동시에 처리할 독립적 계산이 충분히 많은 경우에 한정.. 2022. 9. 25. 11:39
클린코드(Clean code) 12장 - 창발성 0. 창발성 : 하위 계층에는 없는 특성이나 행동이 상위 계층/전체 구조에서 자발적으로 돌연히 나타나는 현상. emergence. ex) 개미들의 상호작용 => 개미집 1. 창발적 설계 by 켄트 백 1) 모든 테스트를 실행한다. 모든 테스트를 통과하는 시스템/예측 가능한 시스템을 만들어야 설계 품질이 높아지고, 결합도를 낮추고&응집도를 높일 수 있음 테스트가 안되는 시스템은 검증이 불가능하니 출시해서는 안됨. 2) 중복을 없앤다. 기존 코드 최대한 재활용 하기 (아 찔리는 코드 하나 생각남...) *Template method 패턴 : 알고리즘의 구조를 상위 클래스 메서드에서 정의하고, 하위 클래스에서 세부 알고리즘을 정의 3) 프로그래머의 의도를 표현한다. 이름 잘 짓기 함수/클래스 사이즈를 줄이기 .. 2022. 9. 22. 22:12
클린코드(Clean code) 11장 - 시스템 1. 관심사 분리 객체를 제작하고 의존성을 연결하는 준비과정과, 그 이후에 이어지는 런타임 로직을 분리 즉, 객체 생성과 사용 부분을 분리함. 프로그래머는 로직 구현에만 집중하고, 프레임워크에 객체 생성은 맡겨버리면 됨 2. 의존성 주입(Dependency injection) 객체 의존성은 DI 컨테이너에 맡길 것. 요청이 들어오면 필요한 객체의 인스턴스를 만들고 의존성 설정 (ex. 스프링 IoC) 의존성주입 방법: setter 메소드 / 생성자 인수 등 3. 횡단 관심분리(Cross cutting concerns) 비즈니스 로직, 로깅, 트랜잭션 관리, 보안 등 다양한 관심사가 여기저기 퍼져있으나, 어플리케이션 전반이 가지는 공통의 관심사들은 분리하여 처리하는 것이 효율적. 비즈니스 로직에만 집중하기. 2022. 9. 21. 23:07
728x90
반응형