카테고리 없음

[패스트캠퍼스 챌린지 4일차] 안드로이드(Android) 앱 만들기 | 내돈내산 패스트캠퍼스 온라인 학습 후기

PM요나 2021. 9. 9. 23:12

장황한 패스트캠퍼스 안드로이드 앱 개발의 서론이 끝나고, 실질적인 개발을 학습하려고 합니다. 구글에서 공식으로 인정한 안드로이드 개발언어인 Kotlin과 기존의 안드로이드 개발 언어인 Java에 대해 학습하는 시간이 될 것 같습니다.

1. Kotlin에 대해 알아봅시다.

  Kotlin 은 2011년 JetBrains사가 공개한 프로그래밍 언어입니다. 특징으로 간결하고 실용성이며 Java와 상호운영성을 중시한 언어입니다.

 1) 정적 타입(statically typed) 지정 언어

   Java와 같이 Kotlin도 정적 타입의 개발 언어입니다. 정적 타입 지정은 프로그래밍 구성 요성의 타입을 컴파일 과정에 알 수 있습니다. 즉 컴파일러가 객체의 타입을 검증해준다 라고 생각할 수 있습니다. 

매소드 호출의 동적 타입 지정 언어보다 빠릅니다.
컴파일러가 프로그램의 정확성을 검증하기 때문에 실행 시 프로그램 오류로 중단될 가능성이 적습니다.
타입이 지정되어 있어 처음 보는 코드라도 유지 보수에 탁월합니다.

   위와 같이 정적 타입 언어의 장점에 대해서 정리해봤습니다.  

 2) type inference 가능한 언어

   Java와 달리 Kotlin에서는 모든 변수의 타입을 프로그래머가 직접 명시할 필요가 없습니다. Kotlin은 컴파일러가 문백으로부터 변수 타입을 자동으로 유추할 수 있기 때문에 타입 선언을 생략하기도 합니다.

 3) null safe 언어  

  Kotlin은 Null이 될 수 있는 타입을 제공하고 있어서 컴파일 시정에 null이 발생할 수 있는지 검사할 수 있기 때문에 개발되는 프로그램의 신뢰성을 높일 수 있는 개발 언어입니다.

 이렇게 설명을 하니 Java보다 조금 더 고도화된 개발 언어라는 생각이 듭니다. 그렇다면 Java에 대해서 잠깐 공부를 해보겠습니다. Java가 핵심이 아니니 간단한 개요만 설명하는 점 양해 부탁드립니다.

2. Java에 대해 간단히 알아봅시다.

 인터넷에 있는 Java의 장점에 대해서 간단하게 요약한 내용입니다. 굳이 이 수업에서는 필요 없는 내용이라고 생각됩니다.

1) Java는 객체지향 프로그래밍(OOP:Object Oriented Programming) 언어이다. 그로 인해 유지보수가 쉽고 직관적인 코드 분석이 가능하다. 
 2) 분산 네트워크 기술을 지원한다. 자바에는 TCP/IP 라이브러리가 기본적으로 포함되어있고, HTTP 프로토콜을 지원.
멀 티쓰 레딩을 지원한다.
 3) 동일한 스레드를 동시에 수행할 수 있다. 사용자 인터페이스 스레드와 장시간 계산이 필요한 스레드가 동시에 필요할 때 효과적이다.
 4) 이식성이 높다. 자바가상머신(JVM)에서 작동하기 때문에 운영체제 (ex. Window, Linux)의 종류에 상관없이 작동한다.
 5) 자동 메모리 관리(Garbage Collecter) 사용하지 않는 객체는 자동으로 메모리에서 체크하고 반환해준다.
 6) 동적 로딩 지원. 프로그램 실행시 모든 클래스가 로딩되지 않고, 필요한 시점에 클래스를 로딩하여 사용할 수 있다.
그러므로 애플리케이션의 변경사항도 비교적 적은 작업만으로 처리할 수 있다.

뭐 이런 강점이 있지만 나에게 중요하지 않다. 패스트캠퍼스 안드로이드 앱 개발 강의에서도 핵심은 Java로 개발된 안드로이드 앱 코드를 보고 분석할 수 있을 정도까지만 목표로 잡고 학습을 하면 된다고 합니다. 

3. 이제 개발을 시작하러 가봅시다.

 이러쿵 저러쿵 안드로이드 앱 개발 전 사전 지식 공부가 어느 정도 마무리되었습니다.  이제 개발 언어에서 가장 포기를 많이 하는 개발 언어의 연산자, 함수 등을 공부하는 시간이 다가오고 있습니다. 앞으로 한 챕터 한 챕터 잘라서 예시와 복습하는 자세로 패스트캠퍼스 안드로이드 앱 개발과정에 대해서 공유드려보겠습니다.

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

패스트캠퍼스 놀러 가 볼까? https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

728x90