diff --git a/documents/AboutKotlin_1.md b/documents/AboutKotlin_1.md
new file mode 100644
index 0000000000000000000000000000000000000000..1ae141f94bf4716b621560edad0b382f24fe446d
--- /dev/null
+++ b/documents/AboutKotlin_1.md
@@ -0,0 +1,106 @@
+# 코틀린 정리하면서 공부하기 (1)
+
+## 변수, 상수, 타입
+
+#### 1. 정의
+
+- <b>변수(variable)</b>와 <b>상수(constant)</b>
+
+  애플리케이션에서 값을 저장하고 데이터를 전달할 수 있는 어떤 공간
+
+- <b>데이터 타입</b>
+
+  상수나 변수에 저장된 데이터 유형
+
+  
+
+#### 2. 변수
+
+* 변수 생성
+
+##### [변수 정의 키워드]  [변수이름] : [타입 정의] [대입 연산자] [대입값]
+
+*예시) var experiencePoints : Int = 5*  
+
+
+
+* 변수 정의 키워드 종류
+
+  **런타임 생성 변수**
+
+  프로그램이 실행되는 동안 변수들이 생성되어 값이 지정된다.
+
+  * **var - <u>값이 변경</u>되는 변수**
+
+     variable 라고 한다.
+
+  * **val - <u>값이 변경되지 않는</u> 변수**
+
+    **(단, 상수(constant)는 아니다)**
+
+    value (= read-only variable) 라고 한다.
+
+    var이 필요하지 않을 때는 val을 사용하는 것이 바람직하다.
+
+  
+
+  **컴파일 상수** (컴파일시 생성되는 변수)
+
+  모든 함수의 외부에 정의되어 값이 지정된다. 따라서 프로그램 실행 전에 컴파일러가 알 수 있어야하기 때문에 [기본타입](#기본타입)중 하나여야 한다.
+
+  * **constant val ** 
+
+    ```kotlin
+    const val MAX: Int = 100000
+    
+    fun main (){
+        ...
+    }
+    ```
+
+    
+
+    
+
+*  if 대입값의 타입이 타입 정의 에 정의한 타입과 다르면
+  **인텔리제이**는! 
+
+  <u>정적 타입 검사(static type checking)</u> 를 하여 프로그램이 컴파일하기 전에 오류를 알려준다.
+
+  
+
+  컴파일 후 **코틀린 컴파일러**는!
+
+  코틀린이 <u>정적 타입 시스템</u>이기 때문에 코틀린 컴파일러가 컴파일 시점에 코드의 적합 여부를 알려준다.
+
+
+
+#### 3. 타입
+
+* 기본타입
+
+  | String     | Float     | Byte        |
+  | ---------- | --------- | ----------- |
+  | **Int**    | **Long**  | **Char**    |
+  | **Double** | **Short** | **Boolean** |
+
+  자바에서 기본타입은 소스코드 파일로 정의되지 않으며 키워드로 나타내진다. 반면에 참조 타입은 별 개의 소스 코드 파일로 정의된다. 자바와 다르게 코틀린에서는 기본타입도  참조타입으로 지원한다. 
+
+* **타입 추론**
+
+​	변수를 선언할 때는 타입을 생략해도 된다.  코틀린 컴파일러가 변수 타입을 알고 처리해준다.
+
+```kotlin
+val username01: String = "Joylish" // 기본 변수 생성; 타입 String 선언
+
+val username02 = "Happy" // 타입 생략
+```
+
+
+
+
+
+
+
+
+