전체 글
-
Mark Down (마크다운)Software/ETC : 기타 2020. 3. 8. 17:13
소개 마크다운(Mark Down)은 일반 텍스트 문서의 양식을 편집하기 위한 문법으로 해당 문법으로 작성된 파일은 ".md"의 확장자를 가진다. (인터넷에서 흔히 볼수 있는 README.md 파일이 바로 마크다운 문법으로 작성된 파일이다) 마크다운을 이용해 작성된 문서는 HTML 등 다른 문서 형태로 쉽게 변환이 가능하지만 모든 HTML 마크업을 지원하지는 않는다. 문법 제목 (Header) 부터 까지 '#'를 통해 제목 표현이 가능하다. 사용법 # 제목 ## 제목 ### 제목 #### 제목 ##### 제목 ###### 제목 결과 제목 제목 제목 제목 제목 제목 강조 (Emphasis) 이텔릭체 표현을 위해서 ' * ' 혹은 ' _ '를 표현하고자 하는 곳에 앞..
-
[Kotlin - Basic Types] StringsSoftware/Kotlin : 코틀린 2019. 12. 20. 01:49
Strings String은 변경불가성(Immutable)으로 String의 요소는 indexing operation : s[i]로 접근 가능한 characters 이다. String은 for-loop를 통해 반복될 수 있다. for (c in str) { println(c) }+ 연산자를 통해 strings에 값을 더 붙일 수 있는데 만약 표현식에서 뒤에 붙는 값이 String이 아닌 다른 자료형일지라도 만약 앞에 값이 String인 경우 해당 연산의 값은 String이 된다. val s = "abc" + 1 println(s + "def")String literals 코틀린은 두 가지 타입의 String literals를 가지고 있다. : Escaped string은 newlines와 arbitary..
-
[Kotlin - Basic Types] Character, Booleans, ArraysSoftware/Kotlin : 코틀린 2019. 12. 17. 00:23
Characters Characters는 Char 자료형으로 표현된다. Characters는 숫자로 직접 취급될 수 없다. fun check(c: Char) { if (c == 1) { // ERROR: incompatible types // ... } }여기서 Characters는 문자 그대로 '1'을 의미한다. 만약 특수 문자의 경우 ''을 사용해서 나타낼 수 있다. (\t, \b, \n, \r, ', ", \ and $) 다른 문자 인코딩을 위해서는 Unicode의 escape 시퀀스 구문을 사용해야 한다: 'uFF00' Booleans Booleans는 "true" 와 "false" 두 가지 값만 가지며 booleans로 표시한다. 아래와 같은 내..
-
[Kotlin - Basic Types] NumbersSoftware/Kotlin : 코틀린 2019. 12. 9. 23:03
숫자 정수형 코틀린은 숫자들을 표현할 수 있는 자료형들을 기본적으로 제공한다. 그 중 정수 표현을 위한 자료형으로 4가지의 기본 자료형을 제공하고 있는데 이 4가지 자료형들은 각각 다른 크기와 값 범위를 가진다. Type Size(bits) Min value Max value Byte 8 -128 127 Short 16 -32768 32767 Int 32 -2,147,483,648 (-231) 2,147,483,647 (231 - 1) Long 64 -9,223,372,036,854,775,808 (-263) 9,223,372,036,854,775,807 (263 - 1) 모든 정수형들은 정수 값으로 초기화되며 그 값은 Int의 최대값 보다 크지 않는다. 만약 초기값이 이 값보다 크다면 해당 자료형은 L..
-
자바로 배우는 큐 (Queue)Software/Data Structure : 자료구조 2019. 10. 31. 01:49
개념 기본 자료 구조의 하나로 선입선출 / FIFO (First In First Out) 형태로 데이터를 추가하고 반환한다. Stack 의 후입선출 (LIFO)와 반대. 인터페이스 enqueue(value): 데이터를 입력/추가 dequeue(): 가장 처음에 입력된 혹은 스택에 가장 아래에 위치하고 있는 항목을 반환 구현 큐 또한 스택과 같이 배열과 연결리스트를 통해 구현이 가능하지만 이번에는 배열을 통한 구현을 해보았다. 아마도 개념 이해에는 더 쉬울 거라 생각된다. 큐는 선입선출(FIFO)의 형태를 가지므로 enqueue()가 호출되었을 때 순차적으로 배열에 저장을 하고 front index를 하나씩 증가시켜준다. 그리고 dequeue()가 호출되었을 때는 rear index 위치에 있는 queue..
-
자바로 배우는 스택 (Stack)Software/Data Structure : 자료구조 2019. 10. 30. 22:05
개념 기본 자료 구조의 하나로 후입선출 / LIFO (Last In First Out) 형태로 데이터를 추가하고 반환한다. 인터페이스 push(value): 데이터를 리스트에 추가 pop(): 가장 마지막에 입력된 혹은 스택에 가장 위에 위치하고 있는 항목을 반환 구현 스택은 배열(Array)와 연결리스트(Linkded list)를 통해 구현이 가능하다. Linked List로 구현하는 방법은 추후 Linked list에 대하여 알아 볼 때 같이 살펴보면 좋을 것으로 생각되며 지금은 스택의 개념을 먼저 짚고 넘어가야 하기 때문에 이해가 쉬운 배열로 간단한 스택을 구현해 보도록 하겠다. 스택은 후입선출(LIFO)의 형태를 가지므로 push()가 호출될 떄는 순차적으로 배열에 저장을 하고 pop()이 호출되..
-
[클래스 / Class] 클래스(Class)의 기본Software/Implementation Pattern 2019. 6. 4. 00:52
"현실 세계에 존재하는 것은 클래스(Class)의 인스턴스(Instance)일 뿐이다" - 플라톤 - 객체 지향 프로그램은 위 플라톤이 말한 후기 서양 철학의 클래스와 인스턴스의 아이디어를 도입하였다. 여기서 클래스는 비슷한 성질을 가진 모든 것을 총칭하는 단어이고 객체는 이러한 클래스를 구체한 것이라 할 수 있다. 객체 지향 프로그램에서 클래스와 객체가 가지는 의미와 중요성은 매우 크며 실제 프로그램 구현 패턴에서도 클래스 관련 구현 패턴이 가장 많은 양을 차지하고 있다. 클래스의 사용 이유 객체 지향 프로그래밍에서 클래스를 사용하는 이유는 명확하다. 그건 바로 로직에 비해 데이터의 변화가 빈번하게 이루어 지기 때문이다. "클래스의 로직과 데이터는 함께 사용되며, 로직은 데이터에 비해 변화율이 낮다. ..
-
[Java 8] Android Studio 3.x와 Java 8Software/Android : 안드로이드 2019. 3. 12. 01:01
Android Studio 3.0 버전이 2017년 10월에 정식 배포된 지 벌써 1년이 훌쩍 지났다.당시 Android Studio 3.0에 새롭게 탑재된 신규 기능들 (Android Profiler 나 APK Profiling and debugging)과 Kotlin을 정식 지원 등 많은 변화가 있었지만 그 중 많은 안드로이드 개발자들의 관심을 받은 것은 Java 8 기능과 라이브러리들에 대한 지원이었다. 구글이 Kotlin을 안드로이그 공식 개발 언어로 지정한 것이 꽤나 신선한 충격이었지만 기존의 Java를 사용해 오던 안드로이드 개발자들에게 있어서는 Kotlin보다 Java 8에 대한 지원이 더욱 반가운 소식이었을 것이다. 그래서 이번 포스팅에서는 Android Studio 3.0이상 버전부터 지..