본문 바로가기

분류 전체보기232

파이썬 디자인 패턴 - 1 디자인 패턴 개념 디자인 패턴이란 잘 설계된 구조의 형식적 정의를 소프트웨어 엔지니어링으로 옮긴 것입니다. 다양한 디자인 패턴이 있고 이들을 사용하여 서로 다른 문제를 해결할 수 있습니다. 먼저 패턴종류로는 생성패턴, 구조패턴, 행위패턴이 있습니다. 여기서 패턴속에 있는 항목중에 대표적인 패턴으로 예시를 들겠습니다. 생성패턴에서는 싱글톤패턴, 구조패턴에서는 데코레이터 패턴, 마지막으로 행위 패턴에서는 옵저버 패턴을 참고하겠습니다. 싱글톤 패턴(singleton) 초기화된 객체의 인스턴스를 전역에서 사용하는 패턴을 싱글턴 패턴이라고 합니다. 이 객체의 인스턴스는 하나만 존재합니다. 자바에서 singleton특징은 private constructor와 static method를 사용한다는 점입니다. 하지만 .. 2020. 12. 9.
파이썬 클래스와 객체 클래스란? 클래스는 사전에 정의된 특별한 데이터와 메서드의 집합입니다. 클래스에 선언된 모양 그대로 생성된 실체를 객체(object)라고 합니다. 객체가 소프트웨어에 실체화될 때(메모리에 할당되어 사용될 때), 이 실체를 인스턴스라고 합니다. 객체는 인스턴스를 포함할 수 있으며, 포괄적인 의미를 지닙니다. 파이썬은 다음과 같이 클래스를 생성할 수 있습니다. class Calculator: def __init__(self): self.result = 0 def add(self,num): self.result +=num return self.result cal1 = Calculator() print(cal1) ## 출력 값 # 다음과 같이 파이썬 클래스 인스턴스가 생성된 것을 확인할 수 있습니다. 여기서 객.. 2020. 12. 9.
파이썬 파일 처리하기 파이썬 파일 처리하기 파이썬에서는 파일을 처리하기 매우 쉽고 편합니다. 파일입출력을 통해 파일에 있는 글을 읽어서 입력을 하고 또한 결과값을 메모장과 같은 파일에 저장하는 프로그램을 만들 수 있습니다. 먼저 파일을 생성하기 위한 간단한 코드를 살펴 보겠습니다. 파일 객체 = open(파일 이름, 파일 열기 모드, encoding) ## 예시 f = open('test001.txt','w',encoding="utf8") 여기서 'w'는 파일을 쓰기위한 쓰기 모드입니다. 파일 열기 모드에는 다음과 같은것들이 있습니다. 파일 열기 모드 설명 r 읽기 모드 - 파일을 읽기만 할 때 사용 w 쓰기 모드 - 파일에 내용을 쓸 때 사용 a 추가 모드 - 파일의 마지막에 새로운 내용을 추가할 때 사용 r+ 읽기와 쓰기.. 2020. 12. 7.
왜 Django에서 PostgreSQL을 DB로 사용할까? PostgreSQL이란 PostgreSQL이란 확장 가능성 및 표준 준수를 강조하는 객체-관계형 데이터베이스 관리 시스템(ORDBMS)의 하나 입니다. BSD허가권으로 배포되며 오픈소스 개발자 및 관련 회사들이 개발에 참여하고 있습니다. 데이터베이스 서버로서 주요 기능은 데이터를 안전하게 저장하고 다른 응용 소프트웨어로부터의 요청에 응답할 때 데이터를 반환하는 것입니다. 그리고 소규모의 단일 머신 애플리케이션에서부터 수 많은 동시 접속 사용자가 있는 대형의 인터넷 애플리케이션에 이르기까지 여러 부하를 관리 할 수 있으며 macOS서버는 기본이 PostgreSQL입니다. 또한 PostgreSQL의 주요 기능은 아래와 같습니다. PostgreSQL의 주요기능 사용자 정의 데이터 유형 테이블 상속 외래키 참조.. 2020. 12. 1.
models.py 살펴보기 models.py 정의 model은 테이블을 정의하는 장고의 클래스를 의미합니다. ORM 방식에 기반해 테이블을 클래스로 정의하고 있어 클래스의 특징인 변수와 메소드를 가질 수 있기 때문입니다. 여기서 ORM이란 객체 관계 매핑(Object-relational Mapping) 의 줄임말로 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이다. 객체 지향 언어에서 사용할 수 있는 "가상" 객체 데이터베이스를 구축하는 방법이다. 객체 관계 매핑을 가능하게 하는 상용 또는 무료 소프트웨어 패키지들이 있고, 경우에 따라서는 독자적으로 개발하기도한다. 출처 : https://ko.wikipedia.org/wiki/객체_관계_매핑 장고 모델이란 테이블을 정의하는 클래스를.. 2020. 11. 18.
settings.py 살펴보기 settings.py란 장고에서 settings.py는 프로젝트에 관련된 다양한 설정들이 들어 있습니다. 예를 들면 데이터베이스 설정, 애플리케이션 등록, 템플릿 항목 설정, 정적 파일 설정, 타임존 지정 등이 있는데 settings.py에 기록 되지 않는 내용들도 있는데 이것은 개발하면서 차근차근 입력해서 사용하시면 됩니다. 먼저 기존에 있는 항목들을 살펴 보겠습니다. BASE_DIR 개발 진행 시 프로젝트 루트 폴더, 설정 파일이나 py파일들을 찾을 일이 많은데 이때 효율적으로 사용하기 위해 변수명으로 미리 지정해 두는 값입니다. 초기 값은 다음과 같습니다. 또한 경로에 대한 참고 내용은 다음과 같습니다. 만약 ~/home/desktop/[개발폴더] 안에 장고 프로젝트를 진행한다면 구조는 다음과 같습.. 2020. 11. 17.