본문 바로가기
728x90
반응형

분류 전체보기194

JavaScript ) 래퍼 객체 원시값은 빠르고 가볍게 유지하면서, 원시값을 다룰 때, 메서드를 사용하면 작업을 수월하게 할 수 있게 하기 위해서 래퍼 객체라는 개념이 만들어졌다. 래퍼 객체는 원시 자료형의 이름을 그대로 차용해, String, Numberm, Bigint, Boolean, Symbol이라고 부른다. null과 undefined은 래퍼 객체도 없고, 메서드도 제공하지 않는다. str.toUpperCase()와 같이 원시값에 메서드를 불러들 때 원시값의 자료형으로 임시로 래퍼 객체를 만들어진다. 래퍼 객체의 메서드가 실행되고 새로운 원시값을 반환하며, 임시 래퍼 객체는 파괴된다. 2022. 3. 1.
메이킹 챌린지 마지막 개발일지 (02.14~24) # 개발 업무내용 프로젝트 진행 현황 + 개발 업무 회고록을 자유롭게 작성해 주세요! 프로젝트 주제 결정 및 역활 결정 '차 추천 & 정보제공' 사이트 만들기로 결정 팀장 뽑기 완료 프론트엔드, 백엔드 역활 분담 (백엔드) 각 파트장 뽑기 (백엔드장) 개발환경 세팅 Git hub 레포지토리 생성 및 협력자 초대 완료 파이썬 Flask로 서버 기본 구성 완료 AWS에 MongDB 만들기 완료 데이터 모델링 차 데이터 구조 결정 (이름, 종류, 효능, 카페인, 상세설명, 주의사항, 좋아요 누른 사용자) 사용자 데이터 구조 결정 (별명, ID, 비밀번호, 관리자여부, 좋아요한 차이름) API 사용자 관련 사용자 등록 id 체크 닉네임 체크 비밀번호 암호화 사용자 데이터 저장 사용자 정보요청 get_access.. 2022. 3. 1.
JavaScript 객체의 형변환 객체는 논리 평가시 단 하나의 예외도 없이 true를 반환한다. (null은 type 검사시 객체로 뜨지만 null객체는 모든 경우에서 따로 평가된다) ToPrimitive 객체 형 변환은 세 종류로 구분되는데, 'hint'라 불리는 값이 구분 기준이 된다. hint 가 string이 될 때 객체를 출력하려고 할 때 alert(obj); 객체를 프로퍼티 키로 사용할 때 outerobj[innerobj] = 123; hint 가 number가 될 때 명시적 형 변환 let num = Number(obj); 이항 덕셈 연산을 제외한 수학 연산 let n = +obj; // 단항 덧셈 연산 let delta = date1 - date2; 크고 작음 비교 let greater = user1 > user2; hi.. 2022. 2. 25.
로깅 구성 파일을 만들어 로깅 구성하기 파이썬 파일 import logging import logging.config logging.config.fileConfig('logging.conf') # create logger logger = logging.getLogger('simpleExample') # 'application' code logger.debug('debug message') logger.info('info message') logger.warning('warn message') logger.error('error message') logger.critical('critical message') logging.conf 파일 [loggers] keys=root,simpleExample [handlers] keys=consoleHan.. 2022. 2. 24.
유용한 처리기 StreamHandler 스트림(파일류 객체)에 메시지를 보낸다. FileHandler 디스크 파일에 메시지를 보낸다. RotatingFileHandler 디스크 파일에 메시지를 보내는데, 최대 로그 파일 크기와 로그 파일 회전을 지원한다. 로그 파일이 최대 로그 파일 크기만큼 쌓이면 새로운 로그 파일을 생성하고 로그 파일 회전 수만큼 파일이 생성되면 처음 생성 파일을 지우고 로그 파일을 새로 생성한다. TimeRotatingFileHandler 디스크 파일에 메시지를 보내는데, 일정한 시간 간격으로 로그 파일을 회전시킨다. SocketHandler TCP/IP 소켓에 메시지를 보낸다. DatagrmaHandler UDP 소켓에 메시지를 보낸다. SMTPHandler 지정된 전자 우편 주소로 메시지를 보.. 2022. 2. 24.
파이썬 로깅 포매터(Formatter)와 포맷가능한 LogRecord Attribute 포매터 logging.Formatter.__init__(fmt=None, datefmt=None, style='%') 3.2버전부터는 style 매개변수가 추가 되었다. style은 '%', '{', '$' 중 하나를 쓸 수 있으며, 이 중 하나가 지정되지 않으면, '%'가 사용된다. 포맷가능한 LogRecord Attribute 파이썬으로 코딩하고 실행하여 속성별로 어떻게 표시되는지 알아보았다. 1줄 import logging -중략- 21줄 # 포맷할 수 있는 LogRecord 어트리뷰트의 종류 22줄 23줄 LRAttr = ['%(asctime)s','%(created)f','%(filename)s','%(funcName)s','%(levelname)s','%(levelno)s','%(lineno).. 2022. 2. 24.
기계학습(머신러닝;Machine Learning)의 분류 대분류 지도학습 Supervised Learning 정답이 있는 데이터를 활용해 데이터로부터 하나의 함수를 유추해내기 위한 기계 학습 비지도학습 UnSupervised Learnig 정답이 없는 데이터를 활용해 데이터로부터 하나의 함수를 유추해내기 위한 기계 학습 강화학습 Reinforcement Learning 어떤 환경(하이퍼파라미터) 안에서 에이전트(AI모델)가 선택 가능한 행동들 중 보상(타겟)을 최대화하는 행동 혹은 행동 순서를 선택하는 방법 에이전트는 어떤 행동을 취하고, 환경으로부터 새로운 상태와 보상을 받는다. 이 상호작용에 기반하여 강화 학습을 하는 에이전트는 누적된 포상값을 최대화하는 정책을 개발한다. 필요한 데이터가 다른 학습에 비해 적다. 장기, 단기의 포상 사이 트레이드오프가 존재.. 2022. 2. 23.
메이킹 첼린지 1차(22.02.10~13) 개발일지 # 개발 업무내용 프로젝트 진행 현황 + 개발 업무 회고록을 자유롭게 작성해 주세요! ex) 오늘은 크게 두가지를 했다. 프로젝트 주제 결정 및 역활 결정 '차 추천 & 정보제공' 사이트 만들기로 결정 팀장 뽑기 완료 프론트엔드, 백엔드 역활 분담 (백엔드) 각 파트장 뽑기 (백엔드장) 개발환경 세팅 Git hub 레포지토리 생성 및 협력자 초대 완료 파이썬 Flask로 서버 기본 구성 완료 AWS에 MongDB 만들기 완료 데이터 모델링 차 데이터 구조 1차 결정 (이름, 종류, 효능, 카페인, 상세설명, 주의사항, ) 사용자 데이터 구조 1차 결정 (별명, ID, 비밀번호, 관리자여부) 필요할 것이라 예상되는 기능 로그인 관련 사용자 등록 id 체크 닉네임 체크 비밀번호 암호화 사용자 데이터 저장 사.. 2022. 2. 14.
JavaScript 심볼형 '심볼(Symbol)'은 유일한 식별자를 만들고 싶을 때 사용한다. Symbol([description])을 사용하면 심볼값을 만들 수 있다. let id = Symbol(); let id = Symbol("id"); 심볼은 유일성이 보장되는 자료형이기 때문에, description이 동일한 심볼을 여러 개 만들어도 각 심볼값은 다르다. let id1 = Symbol("id"); let id2 = Symbol("id"); alert( id1 == id2 ); // false 심볼형 값은 다른 자료형으로 암시적 형 변환(자동 형 변환)되지 않는다. let id = Symbol("id"); alert( id ); // TypeError alert( id.toString() ); // 'Symbol(id)'가.. 2022. 2. 14.
JavaScript this와 체이닝 this는 함수가 호출될 때 사용된 객체를 나타낸다. 객체 내의 함수인 메서드를 사용할 때 this를 사용하여 메서드가 자신을 포함하는 객체에 접근할 수 있다. 자바스크립트의 this는 다른 프로그래밍 언어의 this와 다르게 모든 함수에 this를 사용할 수 있다. 그래서 엄격 모드가 아닐 때는 this가 전역 객체를 참조하기도 한다. 브라우저 환경에선 window라는 전역 객체를 참조하게 된다. function makeUser() { return { name: "Jack", ref: this }; }; let user = makeUser(); // 이 때 makeUser()함수가 호출되면서 this가 값을 참조함. alert( user.ref.name ); // Error: Cannot read pr.. 2022. 2. 10.
JavaScript 가비지 컬렉션 자바스크립트에서 메모리를 관리하는 시스템이다. 엔진에서 자동으로 실행하는 것으로 개발자가 제어할 수 없다. 저수준 최적화가 필요한 상황일 때, 알 필요가 있다. 기본적으로 '도달가능성(reachability)'을 검사하여 도달할 수 없는 값을 메모리에서 삭제한다. 내부 알고리즘 루트(root) 정보를 수집하고 이를 기억한다. 루트가 참조하고 있는 모든 객체를 방문하고 이것들을 기억한다. 기억된 모든 객체에 방문하고, 그 객체들이 참조하는 객체도 기억한다. 이 때, 한번 기억한 객체는 다시 방문하지 않는다. 루트에서 도달 가능한 모든 객체를 방문할 때까지 3의 과정을 반복한다. 기억되지 않은 모든 객체를 메모리에서 삭제한다. 루트의 종류 현재 함수의 지역 변수와 매개변수 중첩 함수의 체인에 있는 함수에서 .. 2022. 2. 10.
JavaScript 객체의 동작방식 원시 타입 - 문자열, 숫자, 불린 값, null, unsigned) 객체 - 프로퍼티 key : value 들로 구성된 데이터 집합 또는 복잡한 개체 원시값은 값 그대로 저장,할당되고 복사되는 반면에, 객체는 참조에 의해(by reference : 객체가 저장되어있는 '메모리 주소')저장되고 복사된다. 따라서 객체를 복사하여 같은 키값을 가지고 있을 때, 그 키의 값을 바꾸면 원본과 복사된 객체 모두의 키값이 바뀐다. let user = { name : 'Mike' }; let admin = user; admin.name = 'Jack'; alert( user.name ); // Jack이 출력됨. 참조값을 복사하기 때문에 동일한 객체를 만들었다하더라도 복사된 객체가 아니면 동등 연산자나 일치 연산자 .. 2022. 2. 10.
728x90
반응형