0. 이 글을 작성하는 이유 코틀린의 Class에서 상속을 받는 경우 ()를 붙이는 경우가 있고 안 붙이는 경우가 있다. 어떤 차이가 있는지 약간의 부연 설명을 더해서 정리하기 위해 1. Kotlin에서의 상속과 구현 Kotlin은 Java와는 다르게 extends나 implements키워드 없이 : 키워드 하나로 모든 것을 처리하고 있다. class Animal : AnimalInterface { } class Carnivore : Animal(),CarnivoreInterface { } 여기서 Java 사용자가 두 가지 부자연스럽게 느끼는 부분이 생겼다. 왜 갑자기 빨간 줄이 생겼으며 소괄호를 만들었는가 2. Kotlin의 Open키워드 Java에서는 기본적으로 클래스 생성 시 모든 접근 제어자가 d..
JAVA/Kotlin
0. 이 글을 작성하는 이유 코틀린에서 TODO가 재미있어 보여서 간단하게 정리하기 위함 1. TODO? 기존 JAVA에 익숙한 사람이라면 //TODO “impl sort logic” 같이 뭔가를 해야하는 것들에 대해 주석을 달아본 경험이 있을 것이다. Kotlin에서는 TODO라는 객체가 존재한다. 둘 다 IDE(Intellij 기준) Project의 TODO로 검색이 되는 것은 동일하다. 그렇다면 객체에는 어떤 내용이 있을까 2. TODO 객체 TODO는 2가지로 오버로드 되어있는데 단순히 에러를 던지는 메서드와 내용을 담아 던지는 메서드 2개가 있다. 이렇게 되면 상당히 직관적으로 TODO를 사용할 수 있게 된다. TODO(”이거 구현해야함”)을 넣은 경우 아직 구현되지 않은 것에 대해 NotImp..
코틀린하다가 데이터 타입에 Number도 있고 Int도 있길래 3분정도 혼란이 왔다가 코드로 확인하니 바로 이해가 되더라. 코틀린에서 숫자 관련된 모든 데이터 타입들은 Number클래스를 상속받은 클래스들이였다. Int 타입을 확인하면 아래와 같이 Primitive.kt 파일에 정의가 되어있다. Number클래스를 상속받고 있는데 Number는 아래와 같이 구현되어있다.
회사에서 하던 업무를 다시 복기해볼 겸 간단한 예제를 만들어 정리해본다. 0. 목적 아무튼 서버에 있는 JsonData를 읽어오기 1. 서버 FastAPI에서 요청이 들어왔을때 Json을 반환하게 해 주었다. @app.get("/user-data") def user_data(request : Request): print(request) file_path = "./static/Sample.json" f = open(file_path, 'r') data = json.loads(f.read()) return JSONResponse(content = data) 서버에 static디렉토리에 json파일을 만들어 넣어두고 다 읽어서 반환하게 했다. 2. 데이터 간단하게 만들었다. [{ "ID": "KR-203424..