본문 바로가기

전체 글

(70)
코틀린: 유튜브 동영상(3장)도 함께 참고하세요 https://youtu.be/8sk8uskaago책에서 설명하지 못했던 내용까지 포함해서 유튜브 동영상을 업로드하고 있습니다. 3장 내용을 소개하는 유튜브 강의 사이트입니다. 3장은 모두 11개의 동영상 콘텐츠로 구성되어 있습니다.코틀린 관련 동영상 업로드가 끝나면, 곧 jetpack compose 기반 안드로이드 앱 개발 동영상을 업로드할 예정입니다.
코틀린: 유튜브 동영상(2장)도 함께 참조하세요 책에서 설명하지 못했던 내용까지 포함해서 유튜브 동영상을 업로드하고 있습니다. '코틀린 1시간안에 정복하기' 이런 식의 동영상이 아니라, 총 57개의 강의 콘텐츠로 구성했습니다.코틀린을 잘 알아야 jetpack compose 기반 안드로이드 앱을 충실하게 만들 수 있습니다.2장 내용을 소개하는 유튜브 강의 사이트입니다. 2장은 모두 10개의 동영상 콘텐츠로 구성되어 있습니다.https://youtu.be/mwrGw21SDhY
코틀린: 유튜브 동영상(1장)도 함께 참조하세요 책에서 설명하지 못했던 내용까지 포함해서 유튜브 동영상을 업로드하고 있습니다. '코틀린 1시간안에 정복하기' 이런 식의 동영상이 아니라, 총 57개의 강의 콘텐츠로 구성했습니다.코틀린을 잘 알아야 jetpack compose 기반 안드로이드 앱을 충실하게 만들 수 있습니다.첫 번째 유튜브 강의입니다. 1장은 모두 4개의 강의 동영상으로 구성되어 있습니다.매일 1개씩 동영상 콘텐츠를 업로드하고 있습니다.https://youtu.be/OQ0VaFsJXTw
재미있는 코틀린 함수 - 실전 문제 도전 이 예제는 (코틀린 언어를 개발한) Jetbrain에서 출제한 함수형 프로그래밍 연습 문제를 참조했습니다. 아래 코드 실행 결과는 무엇일까요? 컴파일 할 때 에러가 발생하지 않을까요? 에러 없이 잘~ 실행됩니다. 2개의 foo() 함수는 형식인자 타입이 다르기 때문에 함수를 재정의(overloading, 교재 p.195)한 것입니다. foo("abc")는 foo(str: String)를 실행하며, foo(foo("abc"))는 foo(arg: Unit)을 실행합니다. 아래 코드는 foo("abc")가 foo(str: String) 를 호출할 때 "abc"를 출력합니다. fun foo(arg: Unit): Unit = argfun foo(str: String) = println(str)fun main() ..
코틀린: 정규 표현(3) ■ 응용 4: 정확하게 이메일 주소를 입력했는지 검사가장 기본적인 이메일 패턴은 "example@gmail.com"입니다. 이에 대한 정규 패턴은 "^[a-zA-Z]+@[a-zA-Z.]+$" 입니다. 메타 기호 ^과 $는 각각 문자열의 시작과 끝을 가리킵니다. 이메일은 영어 대소문자 1개 이상으로 시작해야 합니다("^[a-zA-Z]+"). 이어서 기호 @가 있어야 하며, 영어 대소문자와 마침표(.)로 이루어진 문자열이 1개 이상 나타나고 끝나야 합니다("[a-zA-Z.]+$"). 아래 예에서 변수 email(example@gmail.com)이 이 패턴과 일치하지만, email4와 email5는 일치하지 않습니다. email4( example@gmailcom )는 기호 @ 다음에 마침표(.)가 없기 때문입..
코틀린: 정규 표현(2) 정규 표현(1)에서 기본적인 정규 표현 사용법과 코딩 스타일을 알아 보았습니다. 메타 기호 각각의 의미와 사용 방법에 대해 설명하는 것보다는 응용 예제를 다뤄보면서 메타 기호 사용 방법을 익혀나가는 게 도움이 될 겁니다.■ 응용 1 : 날짜 및 휴대폰 번호 추출먼저 문자열에서 날짜를 추출합니다. "\d"는 "[0-9]"와 같은 정규표현입니다. '\d'는 소문자 d가 아니라, 숫자([0-9])를 나타내는 메타 기호입니다. 소문자 d와 구분하기 위해 역슬래시(\)를 붙여 '\d'로 사용합니다. 문자열 따옴표(")안에서 사용할 때는 이스케이프(escape) 문자인 역슬래시(\)를 하나 더붙여 '\\d'로 사용해야 합니다. 이스케이프 문자를 추가하는 게 귀찮거나 헷갈리면(?) 삼중 따옴표(""")를 사용하면 됩..
코틀린: 정규 표현(1) 쉽게 다가가는 최신 프로그래밍: 코틀린에서는 정규 표현을 전혀 다루지 못해 여기서 자세히 설명하겠습니다.정규 표현(regular expression)은 문자열 패턴을 정의합니다. 정규 표현은 메타 기호(meta symbol)를 사용하기 때문에, 메타 기호의 의미를 잘 알고 있어야 합니다. DOS 창이나 Unix/Linux 쉘에서 명령어 "dir *.exe" 를 사용해 본 적 없나요? *(star)가 바로 메타 기호입니다. "dir *.exe" 는 해당 폴더에서 확장자가 exe인 모든 파일을 보여달라는 명령이죠. 정규 표현은 컴퓨터 전공자에게는 기본입니다. 프로그래밍 언어의 문법(Context Free Grammar)을 이해하려면 정규 표현을 알아야 하기 때문입니다. 정규 표현은 유한 오토마타(finite..
쉬어가는 글: 람다 식은 어떻게 유래되었나요? 자세한 내용은 쉽게 다가가는 최신 프로그래밍: 코틀린 - 3.2 함수형 프로그래밍을 참고하기 바랍니다. 프로그래밍 언어가 등장한 역사적 변천 과정을 얘기해보려고 합니다.람다 식(lambda expression)이 등장한 배경을 알려면 람다 대수(lambda calculus)를 알아야 합니다. 람다 대수는 튜링 기계(turing machine, TM)를 만든 Alan B. Turing의 지도 교수인 Alonzo Church까지 연결됩니다. 람다 대수가 등장한 시기는 1930년대이며 컴퓨터가 없었습니다. Church는 영국의 수학자입니다. 이 당시 수학자들이 고민하던 문제는 뭐였을까요? "어떤 가설(문장)이 논리적으로 타당한지 판단할 수 있는 장치가 있을까" 였습니다. 이를 결정 문제(decision pr..