코틀린의 예외 처리
2022. 1. 12. 20:26
프로그래밍/Kotlin
코틀린의 예외 처리 코틀린의 예외처리는 자바나 다른 언어의 예외 처리와 비슷함 함수는 정상적으로 종료할 수 있지만 오류가 발생하면 예외를 던질 수 있음 // 조건이 참이면 number의 값이 초기화되고 거짓이면 초기화되지 않고 throw를 호출한다. val number = try { Integer.parseInt(reader.readLine()) } catch (e: NumberFormatException) { return // 예외가 발생한 경우 catch 블록 다음의 코드는 실행되지 않는다. } try, catch, finally 자바 코드와 가장 큰 차이는 throws절이 코드에 없다는 점 자바에서는 함수를 작성할 떄 함수 선언 뒤에 throws IOException을 붙여야 함 (IOExption..
코틀린 기초(while과 for)
2022. 1. 11. 20:23
프로그래밍/Kotlin
대상을 이터레이션: while과 for 루프 코틀린의 while루프는 자바와 동일함 for는 자바의 for-each 루프에 해당하는 형태만 존재함 수에 대한 이터레이션: 범위와 수열 100부터 거꾸로 세되 짝수만 출력 👇 fun main(args: Array) { for (i in 100 downTo 1 step 2) { print(fizzBuzz(i)) } } 여기서는 증가 값 step을 갖는 수열에 대해 이터레이션함 증가 값을 사용하면 수를 건너 띌 수 있음 증가 값을 음수로 만들면 정방향 수열이 아닌 역방향 수열을 만들 수 있음 이 예제에서 100 downTo 1은 역방향 수열을 만듦. in으로 컬렉션이나 범위의 원소 검사 in 연산자를 사용해 어떤 값이 범위에 속하는지 검사할 수 있음 반대로 !i..
코틀린 기초(enum과 when)
2022. 1. 10. 20:17
프로그래밍/Kotlin
enum 클래스 정의 자바와 마찬가지로 enum은 단순히 값만 열거하는 존재가 아님 enum 클래스 안에도 프러퍼티나 메소드를 정의할 수 있음 enum class Color( val r: Int, val g: Int, val b: Int ) { RED(255, 0, 0), ORANGE(255, 165, 0), YELLOW(255, 255, 0), GREEN(0, 255, 0), BLUE(0, 0, 255), INDIGO(75, 0, 130), VIOLET(238, 130, 238); fun rgb() = (r * 256 + g) * 256 + b } enum 클래스 안에 메소드를 정의하는 경우 반드시 enum 상수 목록과 메소드 정의 사이에 세미콜론을 넣어야 함 when으로 enum 클래스 다루기 자바의..
코틀린 기초(클래스와 프로퍼티)
2022. 1. 6. 20:21
프로그래밍/Kotlin
클래스 자바 Person 클래스 👇 public class Person { private final String name; public Person(String name) { this.name = name; } public String getName() { return name; } } 자바-코틀린 변환기를 써서 위의 Person 클래스를 코틀린으로 변환 👇 class Person(val name: String) 자바를 코틀린으로 변환한 결과, public 가시성 변경자가 사라졌음 코틀린의 기본 가시성은 public이므로 이런 경우 변경자를 생략해도 됨 프로퍼티 자바에서는 필드와 접근자(getter, setter)를 한데 묶어 프로퍼티라고 부르며, 프로퍼티라는 개념을 활용하는 프레임워크가 많음 코틀린은 ..
코틀린 기초(함수와 변수)
2022. 1. 5. 20:03
프로그래밍/Kotlin
Hello, World! 'Hello, World!' 프린트 예제 👇 fun main(args: Array) { println("Hello, world!") } 단순한 코드지만 코틀린의 여러가지 특성을 보여줌 함수를 선언할 때 fun 키워드를 사용 파라미터 이름 뒤에 그 파라미터의 타입을 씀 함수를 최상위수준에 정의할 수 있다. (자바와 달리) 꼭 클래스 안에 함수를 넣어야 할 필요가 없음 배열도 일반적인 클래스와 마찬가지다. 코틀린에는 자바와 달리 배열처리를 위한 문법이 따로 존재하지 않음 System.out.println 대신에 println이라고 씀. 코틀린 표준 라이브러리는 여러 가지 표준 자바 라이브러리 함수를 간결하게 사용할 수 있게 감싼 래퍼를 제공 최신 프로그래밍 언어 경향과 마찬가지로 줄..
코틀린 응용
2022. 1. 4. 20:13
프로그래밍/Kotlin
코틀린 응용 코틀린은 주로 서버와 안드로이드 개발에서 널리 사용되고 있음 코틀린 서버 프로그래밍 다음과 같은 응용 분야를 포함하는 여러 분야가 서버 프로그래밍에 포함됨 브라우저에 HTML 페이지를 돌려주는 웹 애플리케이션 모바일 애플리케이션에게 HTTP를 통해 JSON API를 제공하는 백엔드 애플리케이션 RPC(원격 프로시저 호출) 프로토콜을 통해 서로 통신하는 작은 서비스들로 이뤄진 마이크로서비스 개발자들은 이런 애플리케이션을 수년간 자바로 개발해 오면서 이런 종류의 애플리케이션 개발에 도움을 줄 수 있는 기술과 프레임워크를 엄청나게 만들어왔음 이런 환경에서 자바 코드와 매끄럽게 상호운용할 수 있다는 점이 코틀린의 큰 장점임 자바 클래스를 코틀린으로 확장해도 아무 문제가 없으며, 코틀린 클래스 안의 ..
코틀린이란?
2022. 1. 3. 20:19
프로그래밍/Kotlin
코틀린이란? 자바 플랫폼에서 돌아가는 새로운 프로그래밍 언어 코틀린은 기존 자바 라이브러리나 프레임워크와 함께 잘 작동하며, 성능도 자바와 같은 수준임 대상 플랫폼: 서버, 안드로이드 등 자바가 실행되는 모든 곳 코틀린의 주목적은 현재 자바가 사용되고 있는 모든 용도에 적합하면서도 더 간결하고 생산적이며 안전한 대체 언어를 제공하는 것 코틀린을 활용할 수 있는 가장 일반적인 영역은 다음과 같음 서버상의 코드(특히 웹 애플리케이션의 백엔드) 안드로이드 디바이스에서 실행되는 모바일 애플리케이션 자바뿐 아니라 자바스크립트로도 코틀린을 컴파일할 수 있음 따라서 코틀린 코드를 브라우저나 노드에서 실행 가능 (코틀린 1.1부터는 자바스크립트를 공식적으로 지원한다 밝힘) 코틀린이 정한 목표 영역은 상당히 광범위함 코..
org.springframework.beans.factory.BeanCreationException 해결 방법
2021. 12. 31. 20:02
프로그래밍/Spring
org.springframework.beans.factory.BeanCreationException 에러 해결 방법 내부망으로 접속을 해야 하는데 외부망으로 해당 프로젝트 사이트에 접속하는 경우 발생할 수 있는 에러 👉 내부망으로 변경하여 접속을 하면 에러가 해결될 수도 있음 그 외 다른 해결 방법 👉 프로젝트 클린 후 서버 재실행 👉 나의 경우 .project 파일을 잘라내기 한 후 clean → 다시 붙여넣고 clean하니 실행됨