반응형

모델 , 템플릿, 뷰

- 모델(Model)

- 템플릿(Template)

- 뷰(View)

 

Client 와 View의 관계

Client : 클라이언트, 사용자

View : 요청에 대한 응답을 하는 곳 => 주방

 

예시 )

C : 여기 짜장면 하나요! request

V : 네 ~~ response

 

url 접속 => 네이버 서버로 request

네이버 홈페이지 보임 => 네이버 서버의 response


Template 과 View의 관계

Template : View에서 response로 쓰이는 HTML 등등

render를 통해 template을 response로 client에게 보여줌


Model , Modeling

Model :

- Modeling 을 통해 만들어짐. 추상적 개념

- DatatBase에 테이블 형태로 만들기 위한 설계

DataBase : 실제로 데이터를 저장하는 곳

DataBase에서는 보통 SQL 이라는 언어를 씀

 

파이썬과 SQL은 다른 언어이므로 통역사가 필요함

=> ORM(Object Relational Mapping)

 

상품이라는 것에 상품이름, 가격등 정보가 있음

상품을 설계해서 만들어진 것이 상품 모델

객체 : 상품 모델 (설계)로 찍어낸 상품 하나 하나

 

User Post Comment
Username (컬럼) Title content
Email Content  
Password ViewCount  
Bdate    

칼럼, 필드, 애트리뷰트 : 특정 모델의 속성들

이처럼 설계한 것들이 모델이고 이들로 객체를 찍어냄

 

migration

 

created_at(생성시간)

updated_at(수정시간)

객체가 언제 생성되고, 언제 수정됐는지는 중요함

 

모델의 각 컬럼이 어떤 데이터 타입인지

데이터 타입(자료형) : 프로그래밍 언어에서 실수치, 정수,

불린 자료형 따위의 여러 종류의 데이터를 식별하는 분류

 

data : 날짜 타입

datatime : 날짜 + 시간 타입

 

Modeling에서는 Relation 과정이 필요

Relation : Model 상호간의 관계

 

 

반응형

'WEB > Django' 카테고리의 다른 글

Modeling as Django  (0) 2020.10.08
What is Django?  (0) 2020.10.08
반응형

프로그래밍, 라이브러리, 프레임워크란 ?

프로그래밍 언어 : 컴퓨터와 소통하기 위한 수단

라이브러리 : 단순 활용가능한 도구들의 집합

프레임워크

- 프레임워크는 뼈대나 기반구조를 의미함

- 소프트웨어의 특정 문제를 해결하기 위해서 상호 협력하는 클래스와 인터페이스의 집합


언어, 라이브러리, 프레임워크에는 뭐가 있지 ? 

언어 : python, ruby, java, javascript, c++ ...

라이브러리 : BeautifulSoup, Selenum ...

프레임 워크(웹 프레임 워크) : Django, Rails, Node.js ...


웹 프레임워크 django

- 사용자 인터페이스

- 데이터 베이스 연동

- URL 파싱

- 세션 관리

- 관리자 페이지

- Request 파싱 

등등 ...


MTV 패턴

모델(Model)

템플릿(Template)

뷰(View)


Django 가 제공하는 것

▶ 폼

▶ 개발 프로세스

▶ 관리자

▶ 보안 등등

반응형

'WEB > Django' 카테고리의 다른 글

Modeling as Django  (0) 2020.10.08
Understanding MTV Patterns  (0) 2020.10.08
반응형

www.virtualbox.org/wiki/Downloads

 

Downloads – Oracle VM VirtualBox

Download VirtualBox Here you will find links to VirtualBox binaries and its source code. VirtualBox binaries By downloading, you agree to the terms and conditions of the respective license. If you're looking for the latest VirtualBox 6.0 packages, see Virt

www.virtualbox.org

자신의 운영체제에 맞는 VirtualBox를 설치한다

 

www.kali.org/downloads/

 

Kali Linux Downloads

 

www.kali.org

사이트에 들어간후 Kali Linux 64-bit VirtualBox 찾아 옆에있는 Offensive Security VM Download Page 클릭

 

무턱대고 처음에 나와있는 VMWARE IMAGES에 KALI LINUX를 설치해도 되지만 

우리는 Virtualbox를 사용하기 때문에 밑에 있는 VIRTUALBOX IMAGES에 64BIT를 설치한다

 

처음에는 도구 밑에있는 가상화면이 뜨지 않고 저 화면이 나올텐데 

파일 -> 가상 시스템 가져오기 -> 설치한 IMAGES파일 가져오기

이렇게 하면 똑같이 저화면이 나온다

 

초기설정                 

아무것도 설정을 안해둔 상태이면 칼리리눅스가 작동하지 않을것이다.

 

ⅰ ) 파일 -> 환경설정 -> 네트워크 -> 새 NAT 네트워크 추가

ⅱ )                        -> 입력 -> 가상머신 -> 호스트키 조합 Ctrl + Alt => 가상화면에서 마우스가 빠져나갈때 사용

ⅲ ) 도구밑에 칼리 가상화면 클릭 -> 설정 -> 네트워크 -> NAT 네트워크

ⅳ )                                                  -> USB -> USB 컨트롤러 사용하기 해제

ⅴ )                                                  -> 공유 폴더 설정 => 호스트와 가상화면 사이에서 exe, txt 등 파일들을 공유할수 있는 폴더

 


학교에서 칼리리눅스를 사용하여 수업하는데 초기설정을 하지못해서 하루동안 고생했었다 ㅠㅠ 

노트북으로 virtual box를 설정해서 칼리리눅스를 설치하였는데 작동되지 않아서 노트북이 잘못된건가 싶었지만 바보같이 초기설정을 하지못했다. 초기설정을 하지 않았을때 USB 때문에 에러가 발생했는데 4번째에 USB 컨트롤러 사용하기 해제를 하면 되는거였다. 쉽게 되는거여서 좌절과,, 다행,,,스러운 마음이 들었다,,

반응형

'OS > KALI LINUX' 카테고리의 다른 글

exe파일을 실행시켜주는 wine 설치  (0) 2020.03.23
kali linux 명령어  (0) 2020.03.23
칼리 리눅스에서 ZIP 파일 풀기  (0) 2020.03.23
반응형

 


메서드 오버라이딩

- 자손 클래스에서 부모 클래스의 기존 메서드 이름, 전달인자의 자료형과

전달인자의 개수, 반환타입을 동일하게 정의한다. 부모클래스로 부터

상속받은 메서드 내용을 자식 클래스에 맞게 변경하는 것을 오버라이딩이라 한다.

 

public void parentPrn() {
System.out.println("서브 클래스 : ParentPrn 메서드");
}
public void childPrn() {
System.out.println("서브 클래스 : ChildPrn 메서드");
}
}

=> 메서드 오버라이딩

 

Child c = new Child(); => 서브클래스로 객체를 생성

c.parentPrn(); => 오버라이딩된 서브 클래스의 메서드 호출

c.childPrn(); => 서브클래스 자기 자신의 메서드 호출

Parent p = new Parent(); => 슈퍼 클래스로 객체를 생성

p.parentPrn(); => 슈퍼 클래스(자기 자신)의 메서드 호출


상속에서의 생성자

1. 생성자는 상속되지 않는 유일한 멤버변수이다.

2. 서브 클래스의 인스턴스가 생성될 때 자신의 생성자가 호출

되면서 슈퍼 클래스의 생생저가 연속적으로 자동으로 호출된다.

3. 슈퍼 클래스 생성자가 먼저 실행되고 서브 클래스의 생성자가 실행된다.

 

반응형

'Programming Language > JAVA' 카테고리의 다른 글

JAVA 상속  (0) 2020.04.21
JAVA #40  (0) 2020.03.31
JAVA #39  (0) 2020.03.31
JAVA #38  (0) 2020.03.31
JAVA #37  (0) 2020.03.31
반응형

상속이란 자식이 부모가 가지고 있는 재산이나 구너력을 물려 

받는다는 의미이다.

 

특정(자식) 클래스는 다른(부모) 클래스가 가지고 있는 모든 멤버변수나 멤버함수를 사용할 수 있다.

 

형식 )

class 자식_클래스 extends 부모_클래스 {

 

}

 

Child c = new Child(); => 서브 클래스로 객체를 생성

c.parentPrn(); => 슈퍼 클래스에서 상속 받은 메서드 호출

c.childPrn(); => 서브 클래스 자기 자신의 메서드 호출

 

c.childPrn();Parent p = new Parent(); => 슈퍼 클래스로 객체 생성

p.parentPrn(); => 슈퍼 클래스 자기 자신의 메서드 호출

반응형

'Programming Language > JAVA' 카테고리의 다른 글

JAVA #42  (0) 2020.04.21
JAVA #40  (0) 2020.03.31
JAVA #39  (0) 2020.03.31
JAVA #38  (0) 2020.03.31
JAVA #37  (0) 2020.03.31
반응형

참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators

 

산술 연산자

산술 연산자는 숫자 값(리터럴 또는 변수)을 피연산자로 받아 하나의 숫자 값을 반환합니다.

developer.mozilla.org

산술 연산자는 숫자 값을 피연산자로 받아 하나의 숫자 값을 반환.

표준 산술 연산자는 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/)입니다.


1. 덧셈 (+)

   - 숫자 피연산자를 더한 값, 또는 문자열을 연결

 

구문 : x + y

 

document.write('<br>'); => 줄바꿈


2. 뺄셈 (-)

  - 두 개의 피연산자를 뺀 값을 생성

 

구문 : x - y

 

NaN ??

Not-A-Number(숫자가 아님)를 나타낸다.

 

프로그램에서 NaN이 등장하는건 드물지만 자바스크립트에서 Math 라는 함수가 실패하거나 숫자 파싱 함수가 실패하면 반환됩니다.


3. 나눗셈 (/)

  - 왼쪽 피연산자를 피제수로, 오른쪽 피연산자를 제수로 한 몫을 생성한다.

  - 피연산자 : 연산의 대상

  - 피제수 : 나눗셈에서 , 나눔을 당하는 수

  - 제수 : 나눗셈에서, 어떤 수를 나누는 수

 

 

 

Infinity ??

전역 속성은 무한대를 나타내는 숫자값이다.


4. 곱셈 (*)

  - 두 연산자의 곱을 생성한다.

 

구문 : x * y

 


5.나머지 (%)

  - 왼쪽 피연산자를 오른쪽 피연산자로 나눴을 때의 나머지를 반환합니다. 결과는 항상 피제수의 부호를 따라갑니다.

 

구문 : var1 % var2

 

 

반응형
반응형


static int a = 10; 

=> static 키워드로 정의된 a를 정적변수 즉 클래스 변수라 한다. 정적변수는 클래스명.a로 바로 접근할 수 있다.

int b = 20; 

=> 인스턴스 변수

 

static void p() {
System.out.println("정적메서드 호출");
}

=> static으로 정의된 p()메서드를 정적메서드 즉 클래스 메서드라고 한다. 정적메서드는 클래스명.정적메서드()로 호출할 수 있다.

 

s01.a = 100;
System.out.println("s01.a = " + s01.a + " , s02.a = " + s02.a);

=> 생성된 객체에 의해서 정적변수 a값을 함께 공유한다.

 

s02.b = 200;
System.out.println("s01.b = " + s01.b + ", s02.b = " + s02.b);

=> 인스턴스 변수 b는 각 객체에 의해서 다른 주소값을 가진다. 값도 공유하지 않는다.

 

St11.p();

=> 클래스명.정적메서드() 즉 해당클래스로 정적메서드 바로 호출할 수 있다.

반응형

'Programming Language > JAVA' 카테고리의 다른 글

JAVA #42  (0) 2020.04.21
JAVA 상속  (0) 2020.04.21
JAVA #39  (0) 2020.03.31
JAVA #38  (0) 2020.03.31
JAVA #37  (0) 2020.03.31
반응형


this(100, 200); 

=> 같은 클래스내에 오버로딩 된 생성자 호출

 

public Mt12(int a, int b) {

this.a = a;
this.b = b;
}

=> 전달인자 개수를 다르게 한 생성자 오버로딩

반응형

'Programming Language > JAVA' 카테고리의 다른 글

JAVA 상속  (0) 2020.04.21
JAVA #40  (0) 2020.03.31
JAVA #38  (0) 2020.03.31
JAVA #37  (0) 2020.03.31
JAVA #36  (0) 2020.03.30

+ Recent posts