전체 글
-
Typescript란?Typescript 2022. 6. 16. 10:20
타입스크립트는 javascript에 type을 강화시킨 것이다. 자바스크립트의 문제는 5 - '3' 같은 숫자 - 숫자만 가능하지만, Dynamic Typing 때문에 이런게 가능해진다. 어떻게 보면 개꿀일 수 있지만, 프로젝트 사이즈가 커지면 단점으로 바뀐다. 그래서 타입스크립트는 문자랑 숫자랑 빼는거 이상한데? 이러고 엄격히 검사해준다. 그리고 에러퀄리티가 되게 좋아진다. 이제 설치를 알아보자. 먼저, node.js를 설치해야한다. 그리곤 vscode에 터미널을 열고, npm install -g typescript 을 입력해주면 된다. 그리곤 어쩌구.ts로 파일을 만들면 된다. 그 다음, tsconfig.json파일을 만들어서 { "compilerOptions": { "target": "es5", "..
-
sys.stdin.readline(),strip()알고리즘(파이썬) 2022. 6. 15. 01:17
먼저, sys.stdin.readline()을 알아보자. 이 입력함수를 사용하기 위해서는 import sys를 사용해야 한다. import sys a = sys.stdin.readline() 이렇게 하면, 입력할 수 있다. 여기서 출력될 때 기본적으로 개행문자를 포함하는데 공백 없이 출력할 수 있게 하는 함수가 있다. rstrip() 오른쪽 공백 삭제 lstrip() 왼쪽 공백 삭제 strip() 왼쪽, 오른쪽 공백 삭제 예를 들면, ( 123 456 ) 이 있으면 rstrip 는 ( 123 456) 이 되며, lstrip 는 (123 456 ) 이 되고, strip 는 (123 456) 이 된다. 마지막으로, map을 이용하면 input과 똑같이 a, b = map(int, sys.stdin.readl..
-
static변수와 메서드 +싱글톤패턴JAVA 2022. 6. 14. 13:27
static변수는 여러 인스턴스에서 공통으로 사용하는 변수를 뜻한다. 인스턴스 A , 인스턴스 B , 인스턴스 C가 static변수를 기준값으로 사용한다. 예를 들면, 학생마다 새로운 학번을 생성하거나, 카드발급시에 카드 번호를 부여하거나 등등의 사례가 있다. 클래스 변수, 정적 변수라하며, static int serialNum 위처럼 선언한다. public static int serialNum = 1000; 이렇게 선언해주고, main을 넣은 test클래스에 Student studentLee = new Student(); studentLee.serialNum++; Student studentKim = new Student(); studentKim.serialNum--; 이렇게 생성된 인스턴스마다 ser..
-
BufferedReader/Writer알고리즘(자바) 2022. 6. 14. 02:25
입출력 방식을 빠르게 하기 위해서 사용한다. BufferedReader 은 Scanner와 BufferedWriter 은 System.out.println()와 유사하다. 이렇게 둘은 속도 측면에서 훨씬 빠르지만, 받은 데이터를 가공하는 작업이 필요한 경우가 많다. 사용하려면 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; 이들을 import해줘야한다. 또는 ctrl + shift + o 를 누르면 이클립스에서 제공해주긴 한다. BufferedReader을 먼저 알아보자. 그러기 위해서, readLine()을 알아보자. ..
-
thisJAVA 2022. 6. 13. 21:39
this는 객체 자신을 가리킨다. 즉, 인스턴스 자신의 메모리를 가진다. 예를 들면, public void setYear(int year) { this.year = year; } 위의 클래스를 사용하려고 main을 만들어서 public static void main (String[] args) { BirthDay day = new BirthDay(); day.setYear(2000); } 이렇게 쓰면, setYear에는 this라는 메모리가 스택메모리에 저장되는데, 그 메모리는 year을 가리키게 된다. 그리고 생성자가 여러개 일때, 자기 자신을 나타내는 this와 다른생성자를 호출하는 this가 있는데, String name; int age; public Person() { this("no name",..
-
접근 제어 지시자, 정보은닉, 캡슐화JAVA 2022. 6. 13. 10:30
접근 제어 지시자(access modifier)는 클래스 외부에서 클래스의 멤버 변수, 메서드, 생성자를 사용할 수 있는지 여부를 지정한다. private : 같은 클래스 내부에서만 접근이 가능하다. (외부 클래스, 상속관계클래스에서도 접근 불가) 아무것도 없음(default) : 같은 패키지 내부에서만 접근가능하다. (상속관계여도 패키지 다르면 접근 불가) protected : 같은 패키지나 상속관계의 클래스에서 접근 가능하고, 그 외 외부에선 접근할 수 없음 public : 클래스 외부 어디서나 접근 할 수 있다. 위같은 키워드들이 있고, private 으로 선언된 멤버변수에 대해 접근하려고, get(), set() 키워드가 있다. 예시를 들어보자. BirthDay클래스를 만들어보자. package ..
-
파일 읽기, 파일 쓰기Python 2022. 6. 11. 03:09
#파일 읽기/쓰기 #읽기모드 : r, 쓰기모드(기존 파일 삭제) : w, 추가모드(파일 생성 또는 추가) : a #파일 읽기 f = open('파일경로', 'r') content = f.read() #content로 f의 내용을 읽어옴 f.close() #꼭 반드시 close로 리소스 반환해야함 #또는 with open('경로', 'r') as f: #with문은 close를 하지 않아도 끝나면 반환해줌 c = f.read() 이렇게 변수에 open해서 파일을 읽거나, with키워드를 써서 별칭으로 변수를 붙이거나 둘중 하나로 파일을 읽어주면 된다. 만약, 어떤 글을 한줄씩 읽고 싶다면, with open('경로', 'r') as f: while line: print(line, end=' ') line ..
-
모듈, 패키지Python 2022. 6. 10. 13:22
파일 하나하나 단위를 모듈이라 부르며, 파일을 묶어놓은 폴더를 패키지라고 부른다. 배포를 할때도 패키지형태로 주기 때문에, 알아둬야 한다. class Fibonacci: def __init__(self, title="fibonacci"): self.title = title def fib(n): a, b = 0, 1 while a < n: print(a, end='') a,b = b, a+b print() def fib2(n): result = [] a, b = 0, 1 while a < n: result.append(a) a,b = b, a+b return result #패키지 예제 # 상대 경로 # .. : 부모 디렉토리 # . : 현재 디렉토리 # 사용1(클래스) from pkg.fibonacci i..