레슨 1, 토픽 1
진행 중

코틀린의 장점

코스메이커 2022년 1월 22일
레슨 진행중
0% 완료

그럼 이번 시간에 들어서 코틀린은 어떠한 장점이 있는지 살펴 보겠습니다

코틀린의 장점:

1.생산성 극대화

Kotlin은 Java를 기반으로하는 프로그래밍 언어입니다.

Kotlin은 Java의 노후화와 악화(java의 legacy)를 쉽게 제거 할 수 있습니다.

Kotlin은 명확하고 간결하고 역동적 인 언어입니다.

Kotlin은 작성하는 데 시간이 거의 걸리지 않고 매우 빠르게 배포 할 수 있으므로 개발자 팀의 생산성을 극대화 할 수 있습니다.

2.기존 Java 코드와 함께 작동

Kotlin은 자바 코드와 상호 운용이 가능합니다.

Kotlin은 Java 및 기타 많은 관련 프레임 워크 및 도구에 지속적(flexibility)입니다.

따라서 Kotlin으로 전환하는 것은 매우 쉽습니다.

제작중인 제품을 Kotlin으로 만 작성할 수없는 경우 다른 제품을 사용할 수 있으며 둘 다 쉽게 함께 사용할 수 있습니다.

3.쉽게 유지 보수 가능

Kotlin은 Android Studio 및 기타 많은 SDK 도구를 포함하는 많은 IDE에서 지원됩니다.

이를 통해 이미 사용중인 툴킷을 지속적으로 처리 할 수 ​​있으므로 개발자의 생산성을 극대화 할 수 있습니다.

4.더 적은 버그들

Kotlin은 명확하고 간결한 코드베이스이므로 실수 할 여지를 남기지 않으며 프로덕션에서보다 안정적인 코드를 제공하는 데 도움이됩니다. 컴파일러는 컴파일 시간에 발생할 수있는 모든 실수를 식별하여 소동이 없습니다.

5.신뢰성

많은 프로그래밍 언어를 사용할 수 있지만 Kotlin은 그 중에서 더 정교한 언어입니다.

Kotlin은 2011 년에 대형 화면에 등장했습니다. Kotlin이 소개 될 때까지 Kotlin은 최종 버전을 출시하기 전에 많은 베타 및 알파 단계를 거쳤습니다.

6.배우기 쉬움

Kotlin은 자바의 기능을 재 작성하는 것이 아니라 개선하는 것을 목표로합니다.

자바에서 작업 한 모바일 개발자는 Kotlin을 쉽게 사용할 수 있으며 자바에 대한 기술도 Kotlin에서 관련성 있고 도움이 될 것입니다.

7.함수 및 절차 프로그래밍의 장점을 합쳤습니다.

요즘에는 너무 많은 프로그래밍 언어가 시장에 나와 있으며 모든 사람이 장단점을 공평하게 공유하고 있습니다.

최상의 결과를 얻기 위해 Kotlin은 최고의 기능적 프로그래밍과 절차 적 프로그래밍을 결합했습니다.

8.오픈소스

컴파일러와 라이브러리 등 모든 도구를 포함한 코틀린은 완전히 오픈소스로 제공됩니다.

오픈소스 라이센스는 Apache2로 어떤 목적으로든 마음대로 사용할 수 있게 개방되어있습니다.

 

또한 코틀린의 기능적인 장점들도 몇가지 존재합니다. 간단히 살펴보겠습니다

1.자바와 코틀린의 혼용이 가능합니다

기존의 자바로 개발되어있던 레거시를 다시 코틀린으로 바꾸기는 어려울 것입니다.

따라서 자바의 레거시를 같이 쓸수 있게끔 코틀린과 자바는 혼용사용을 할 수 있게 제작되었습니다.

<자바와 코틀린의 동시 사용 예시>

2.Java와 Kotlin 변환 프로그램 존재

ex) Android studio에서는 자동 변환기를 제공해 줍니다.
Code -> convert Java File to Kotlin 을 누르면 자바파일이 통째 kotlin을 변환됩니다.
또한 코틀린 파일(.kt)을 먼저 만들고 자바 코드를 붙여넣기 해도 자동 변환이 됩니다.

3.Null Safety
이 부분이 가장 중요한 부분중에 하나라고 생각합니다

원래 자바를 사용하다보면 null에 관한 에러가 가장 많이 나게됩니다

null에 관해 에러를 줄이기 위해 코틀린은 null safety를 강조하였습니다

이부분은 아래 코드를 보면 이해하기 편하실겁니다.

<null 값을 가지고 싶으면 그 타입을 nullable로 선언해야 한다>

<nullable 변수에 접근할 때 null을 두가지 방식으로 확인할 수 있다>

4.Coroutine

이부분도 코틀린에 들어오면서 가장 중요한 부분중에 하나가 되었습니다.

코루틴이라고 불려서 코틀린이랑 헷갈릴수 있지만, 전혀 다른 부분이 되겠습니다.

코루틴은 자바에서 비동기,async등 여러가지로 불렸습니다

즉 코루틴은 비동기이지만, 동기처럼 보이게 정말 빠르게 작업을 처리해 줍니다

또한 용량을 적게 차지한다는 것도 가장 큰 부분입니다

여기서 동기와 비동기가 무엇인지 간단히 설명해 드리자면,

비동기:”게임시에 네트워크에 연결중입니다”라는 팝업창이 뜨고 게임이 멈췄다가 다시 네트워크에 연결이 되어야지만 게임이 시작되는 것들을 비동기라고 합니다

동기:쇼핑몰을 들어갔을때, 아직 전체 상품이 뜨지 않았지만 일단 들어가져서 확인이 가능한것을 동기라고 합니다.

사이트에 들어가서 구경하는 동안에도 계속 네트워크와 연결중이 상태라는 것이지요

다시 본론으로 넘어와서, 이렇게 네트워크의 속도와 용량등이 앱의 성능을 판단하는 하나의 척도가 되는데, 코루틴은 이러한 성능을 최대한도로 끌어올렸기 때문에, 코틀린으로 어플리케이션을 만들면 훨씬 빨라진다는 것입니다

다음 시간에는 마지막으로 코틀린이 현재 시장에서 어느정도의 위치인지와 어느 부분에서 활용이 가능한지에 대해서 확인해보는 시간을 갖도록 하겠습니다

닫기