<-->
본문 바로가기

반응형

분류 전체보기

(39)
관계 관계 : 객체들 간의 연관성을 표현하는 구조 1. 관계와 이항관계 2개의 집합의 곱집합의 부분 집합중에 조건을 만족하는 원소를 특정 기호로 표현한것 A*B의 원소 (a,b)가 주어졌을때 (a,b) ∈ R 과 aRb는 동치이다. 2. 관계의 표현 화살표 도표 좌표도표 방향 그래프 관계행렬 3. 합성관계 R1 ∘ R2 = {(a,c)| a∈A, c ∈C, (a,b) ∈R1 , (b,c)∈R2} (3단 논법 생각하면 쉽다) + 항등관계 Ia = {(a,a)|a∈A} 이책에서는 관계가 쓰이는 예시로 "같은 메모리공간을 공유하는 변수를 관계있는 변수" 정도로만 표현하는데... 이정도 예시로는 어디에 쓰이는지 잘 모르겠다.
증명 코딩문제를 풀고나서 찝찝한 기분이 드는 이유는 명시적인 "증명"을 하지 못했기 때문이다. 증명하기를 연습하면 더 나은 결과물을 만들어 낼 수있다. 증명: 추론의 한 방법, 명제나 논증이 타당한지 입증 하는 것 증명 종류 1. 직접증명법 : p -> q 를 직접 증명 2. 간접 증명법 : 논리적 동치 또는 간접적으로 증명 3. 기타 증명법 증명의 방법 1. 수학적 귀납법 : ① P(1)이 참임을 보이기 ② P(n)이 참이라 가정 ③ P(n+1)이 성립함을 보이기 2. 모순 증명법 : 문제의 명제를 부정한뒤 모순임을 증명하여 참거짓 증명 ( 거짓의 거짓은 참) 3. 직접증명법 : 주어진 유용한 정보를 토대로 추론하여 결론에 도달 ( p -> q ) 4. 대우증명법 : 대우가 논리적으로 동치임을 이용하는 증명..
이산 수학을 배우는 이유 1. 이산 수학을 통하여 해결하고자하는 문제를 추상화, 논리적 판단, 모델링 하기위해서 2. 전산분야의 수학적 배경을 확립하여 더 쉽게 이해하기 위해서!
mongoDB와 mongoose mongoDB 몽고디비는 NoSQL 도큐먼트형 데이터 베이스이다. 데이터를 도큐먼트 단위로 저장하며 따로 테이블을 작성하지않아도 원하는 필드와 값을 넣을 수 있다. //한개의 도큐먼트 { name:"noodler", email:"email@gmail.com", favorite:"fishing" } Mongoose mongoose는 NodeJS와 mongoDB 사이를 연결해주는 ODM(Object Document Mapper)이다. Schema를 지원해(mongoDB에는 없음) 객체지향구조를 보장하고 mongoDB의 CRUD를 지원한다. mongoose.Schema mongoDB의 도큐먼트 안에 어떤 값이든 들어갈 수 있다. 하지만 name에 숫자만 입력하거나 중복된 email 주소를 입력하는등 예상치 못..
라우터 -> 요청 편 요청에 대해 간단히 알아보았다. express의 요청 처리 구조 1. HTTP 요청이 들어온다. 2. 각 미들웨어를 순서대로 실행시킨다. 3. 라우터에서 HTTP 요청을 분석하여 적절한 처리를 한다. 라우터 유저가 원하는 정보(req)에 따라 알맞은 처리(콜백)를 안내를 해주는 안내자이다. 라우트가 잘 동작하기위해선 요청을 적절하게 분석해야 한다. 요청의 2가지 종류 POST 요청 본문 (req.body) HTTP form에서 "POST"메소드로 전송된 값 url 쿼리 (req.query) url에 동봉된 쿼리 ex) www.google.com/search?q=검색키워드 HTTP요청 가공하기 HTTP요청은 버퍼타입의 데이터로 들어오기 때문에 날 것의 값으로는 사용할수 없다 아래 두가지 메소드를 사용하여 ..
NodeJS - npm편 여기저기서 많이 다룬 내용이지만 복습할겸 적어봤담 모듈은 각각의 JS파일을 뜻하며 프로그램을 효율적이고 체계적으로 동작할수 있게해준다. ex) a+b 리턴하는 JS파일 NPM (Node Pagkage Manager)은 특정 역할을 하는 패키지(모듈)들을 다운 받아서 내 프로젝트에 기능을 추가 할 수 있게 해준다. ex) 로그인 , 검증 각 패키지의 사용법을 알기만 하면 복잡한 코드를 안짜도 돼서 간편하게 사용할수있다. npm 기초 명령어 npm init 애플리케이션 관련 정보를 담는 package.json 초기화 npm install NodeJS 패키지 설치 -g 전역설치,-S 종속 모듈 , -D 개발목적 설치 npm start package.json 에서 명령어 설정 후 사용가능 npm init - p..
Controller 수준의 유효성 검증 (express-validator) form POST 데이터 저장 경로 아래 그림은 데이터가 저장되는 경로이다. (HTML form의 경우) express-validator(Controller 수준 유효성 검증)는 필수!! VIEW수준 (HTML) 에만 유효성 검증을 적용하면 이렇게 악용 될수있다. noodler.tistory.com/45 HTML 유효성 검증 취약점 웹사이트에 유효성 검증 기능을 적용하다가 생각해냈다. view(MVC할때 view)쪽에서 HTML Form input의 pattern을 설정하고있는데 email name password 제출 생각해보니까 view 파일들은 브라우저에서 소스를 확 noodler.tistory.com 이는 Controller 수준에 유효성 검증을 추가해서 방지할 수있다.. express-valid..
HTML 유효성 검증 취약점 웹사이트에 유효성 검증 기능을 적용하다가 생각해냈다. view(MVC할때 view)쪽에서 HTML Form input의 pattern을 설정하고있는데 email name password 제출 생각해보니까 view 파일들은 브라우저에서 소스를 확인하고 수정 할 수 있고, 이를 악용하면 pattern만 쏙 지워서 이상한 데이터 값을 넣을수 있겠다 싶어 테스트해봤다. 일반적인 상황 하지만 여기서 pattern 속성을 지워준다면? pattern 속성 지움 원치 않은 결과가 나온다. 따라서 controller랑 model에서도 유효성 체크를 해줘야 한다!!!

반응형