본문 바로가기

전체 글

(75)
named export 란? 한 파일 내에서 여러 변수/클래스 등등을 export 하는 것이 가능하다. export class MyFirstClass { ... } export class MySecondClass { ... } 다만, import시 {}안에다가 export된 이름과 동일하게 설정해야 한다. import { MyFirstClass, MySecondClass } from './MyClass' 다른 이름으로 import 할 수 있으나 아래 처럼 as 를 사용해야한다. import {MyFirstClass as BlahBlahClass, MySecondClass} from './MyClass' *as 를 사용하면 한 파일에 있는 클래스/변수들을 한 번에 import 할 수 있다. import *..
export default 란? default로 선언된 모듈은 하나의 파일에서 단 하나의 변수 또는 클래스 등등만 export 할 수 있다. import할 때는 아무 이름으로나 import 가능함. import Verification from ../VerificationPage' or import ThisIsNotVerification from '../VerificationPage이렇게 사용가능하다. 단, var, let, const를 바로 export default 할 수 없다. ex) export default const MY\_BIRTHDAY = "1990/01/01"
django settings.py 분리 시키기 Settings.py 분리를 하는 이유 django를 처음 접하다보면 settings.py를 왜 분리해야하는지 아직 감이 안잡힐 것이다. 하지만 간단한 프로젝트라고 한번 완성하고난 후 배포까지 해보면 이때서야 알게 될것이다. 기본적으로 local서버와 prod서버에서의 하고자 하는 행동들이 다른다는것을 그리고 secret_key도 따로 분리하여 가지고 있어야한다.(보안을 위해서이다.) 일단 본격적으로 분리시키기전에 secret_key부터 나누고 시작할것이다. secret key를 담고 있을 파일을 하나 만들어줘야하는데, 경로는 /secret.json이라고 하나 만들어준다. (제일 상단 경로에 만들어준다. manage.py와 같은 경로) { "SECRET_KEY": "...." } 위의 SECRET_KEY..
git 사용법 및 명령어 정리 Git이란? git은 source관리를 위한 분산 버전 관리 시스템이다. 코드를 버전 관리함으로써, 배포 후 수정된 코드만을 파악할 수 있고, 하나의 프로젝트에 여러사람이 함께 작업 할 수 있도록 도와주고, 버그를 빠르게 찾을 수 있고, 프로젝트 rollback을 할 수 있게끔 도와주는점을 가지고 있다. 하지만 git은 도구이며, 어떠한 사람이 어떻게 사용하느냐에 따라 이로운 도구 해로운 도구가 될 수 있다는점을 기억 해두자. Git 다운 일단 git을 사용하기 전에 git을 다운 받아야한다. $ brew install git 맥은 먼저 homebrew를 다운받고 brew를 통해 git을 install할 수 있다. 이후, 터미널에서 git --version을 쳐서 git 버전이 나오면 성공적인 다운이라 ..
python 객체지향 프로그래밍 SOLID 설계원칙 SOLID원칙이란? Solid 원칙이란 로버트 마틴이 개발한 객체지향 프로그래밍 설계의 다섯가지 원칙을 말한다. 프로그램을 짜고 난 이후 오랜 시간이 지나서도 다시 유지보수 및 쉬운 확장을 하려고 할때 이 원칙들을 적용하면 작업을 무난하게 할 수 있다. 일단, SOLID의 원칙을 분리 해보면 Single responsibility principle (단일 책임 원칙) 모든 클래스는 단 한가지의 책임만 갖고, 클래스 안에 정의되어 있는 모든 기능은 이 하나의 책임을 수행하는데 집중되어 있어야 한다. 간단하게 하나의 클래스로 한가지만 일하자 이다. 응집도는 높게, 결합도는 낮게 설계하는것이 목표이다. 응집도 - 한프로그램의 요소가 얼마나 뭉쳐있는지, 즉 구성 요소들 사이의 응집력을 말하는것 결합도 - 프로그..
python 객체지향 개발 4가지 특성 객체지향 개발 4가지 특성 객체지향 프로그램을 다루기 위해선 4가지 기본개념이 잡혀있어야한다. 이 네가지 기본을 반드시 지켜야 좋은 객체지향코드가 나온다. 만약, 이 중 한 가지라도 무너지면 객체 지향의 설계가 무너진다. (1) 상속 일반적으로 우리는 상속이라는 말을 많이 들어봤을것이다. 가족간에 재산을 상속한다는 말처럼 프로그래밍에서도 한사람이 다른사람에게 권리와 의무등 일체를 넘겨주는것으로 생각하면 된다. 그럼 이제 프로그래밍적으로 알아보면 상속을 해주는 클래스는 부모 클래스, 상속을 받는 클래스는 자식 클래스라고 한다. 그리고 자식 클래스는 부모 클래스에게 모든 것을 물려 받는다. 물려 받는것은 당연히 변수와 함수일것이다. 그리고 필요하다면 부모 클래스에서 상속 받은 변수와 함수를 바꿔 사용할 수 ..
python 메서드 오버라이딩과 다형성 오버라이딩(Overriding) 상속에서 쓰이는 개념 부모클래스의 메서드를 자식클래스에서 재정의 하는것 이름이 같은 메서드가 자식클래스에서 사용되면 부모클래스 메서드는 무시된다. 같은 이름의 함수가 있으면 자식의 함수가 우선 python에선 오버로딩 불가능! 오버로딩 코드를 간단하게 예시들어본다. class Parent: def hi(self): print("하이") class Child(Parent): def hi(self): print("안녕하세요") if __name__ == "__main__": a = Child() a.hi() # 안녕하세요가 출력됨만약 부모 클래스의 hi도 출력하고 싶으면 `super()`를 사용하면 된다. class Parent: def hi(self): print("하이")..
python 다형성(Polymorphism) 다형성이란 무엇인가? 상속관계 내의 다른 클래스들의 인스턴스들이 같은 멤버 함수 호출에 대해 각각 다르게 반응 하도록 하는 기능이다. 연산자 오버로딩도 다형성을 지원하는 중요한 기술이다. 다형성의 장점 적은 코딩으로 다양한 객체들에게 유사한 작업을 수행시킬 수 있습니다. 프로그램 작성 코드량이 줄어든다. 코드의 가독성을 높여준다.