본문 바로가기
728x90
반응형

It62

그룹빅데이터교육 1주차 ) ChatGPT 블로그 자동화포스팅 / 챗지피티 답변을 그대로 출력해주는 파이썬 Streamlit 기반 웹페이지 만들기 7주짜리 2023 그룹 빅데이터 교육을 수강하며, 파이썬 / 머신러닝 관련 강의 내용 아카이빙할 카테고리 새로 만듦. 한동안 재테크 공부 포스팅을 많이 하고 있었는데 생각해보니까 이거 개발블로그로 시작한 거잖아? 0주차. 오티 는 패스. 1주차. 파이썬 기본 되짚기 + 실습 파이썬 환경설정 및 타 계열사 비개발자 현업들이 같이 듣는 교육이다보니, 기본 문법 개념 정리하는 시간이 필요. 파이썬을 접해는 봤지만 주 언어가 아니라 익숙하진 않아서, 도움이 되었음 (주 언어는 아무래도 그래도 자바..) 배운 내용을 바로바로 연습문제 풀면서 테스트해볼 수 있어서 좋았음. 약간 많이 쉬운 코테 보는 느낌도 나고. 1. 챗GPT 로 블로그 포스팅 자동화하기 # openai 설치 코드 !pip install opena.. 2023. 3. 12. 20:03
네이버클라우드 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
클린코드(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
클린코드(Clean code) 10장 - 클래스 1. 캡슐화 객체의 실제 구현을 외부로부터 감추는 방식 구현은 감추되, 외부와 상호 작용하는 부분만 노출하기. private 로 제한하고 getter 를 사용하여 변수를 읽는다거나, push/pop을 사용하는것도 캡슐화의 좋은 예제 2. 단일책임 원칙 클래스는 최대한 작게. 하나의 역할만. 설명도 25단어(만일/그리고/하며/하지만 같은 접속부사 없이) 이내로 짧게 가능하게. https://career-gogimandu.tistory.com/27 객체지향 설계에서 꼭 필요한 SOLID 5대원칙(SRP/OCP/LSP/ISP/DIP) SRP : Single Responsibility Principle, 단일책임 원칙 OCP : Open Closed Principle, 개방-폐쇄 원칙 LSP : Liskov S.. 2022. 9. 19. 22:28
728x90
반응형