학습로드맵

많은 학습자들이 무엇을 어디서부터 공부해야 할 지 모르고 있습니다. 그래서 간단하게 학습로드맵을 정리해 드립니다.

개발에는 목표와 관심사에 따라서 프런트엔드(Front-end) 개발자와 백엔드(Back-end) 개발자 또는 풀스택(Full-stack) 개발자로 나누어 집니다.

모든 웹 또는 모바일 개발은 프런트엔드와 백엔드 두 부분으로 구성됩니다. 프런트엔드는 사용자가 직접 보고 상호작용하는 앱이나 웹사이트를 말합니다. 백엔드는 데이터가 처리되고 저장되는 부분입니다.

프런트엔드 개발자는 사용하기 쉽고 멋진 사용자 인터페이스를 작성해야 합니다.

백엔드 개발자는 데이터베이스를 작성하고 웹 서비스 / API 구축, Sns 서비스와의 통합, 비즈니스 로직 및 작업에 대한 프런트엔드를 지원하는 모든 기능을 담당합니다.

풀스택 개발자는 프런트엔드와 백엔드 개발을 모두 알고 있습니다. 더 많은 돈을 벌기 위해서지요.


모바일 개발

모바일 앱 개발은 프런트엔드 개발에 속합니다. 많은 사람들이 앱 개발을 하고 싶어 하는데 목표와 목적에 따라서 배워야 하는 것들이 나뉘어 집니다. 모바일 앱은 안드로이드, iOS 의 두 프레임워크 중 선택해야 합니다. 이를 네이티브 프레임워크라고 합니다. Java 또는 Swift 언어를 공부해야 하며 객체지향 개념에 대한 이해가 필요합니다. 안드로이드 개발자라면 Kotlin을 공부해야 하며, iOS 개발자라면 Objective-C 코드도 읽을 줄 알아야 합니다.

안드로이드

  • Java -> Android
  • Kotlin

iOS

  • Swift -> iOS
  • Objective-C

개발자가 아닌 취미로 앱 개발을 하고자 한다면 Flutter를 추천합니다. Flutter는 Dart언어로 개발하며 하나의 코드로 안드로이드와 iOS로 모두 결과물이 나오는 크로스 플랫폼 개발 프레임워크입니다. 간단한 결과물을 만들기 위해서는 가장 적은 시간이 소요됩니다.

Flutter

  • Dart -> Flutter

하지만 기기의 네이티브 기능을 활용하기 위해서는 각 플랫폼의 네이티브 코드로 해당 부분을 작성해야 하기 때문에 취미로 개발하고자 하는 분들은 정말 단순한 앱만 만들 수 있습니다.

그리고 모바일 개발자가 가장 쉽게 백엔드 기능을 체험해 보려면 구글의 Firebase가 적합합니다. Firebase를 사용하면 데이터베이스, 파일 서버 등의 프런트엔드를 지원하는 다양한 기능을 API 차원에서 사용할 수 있습니다.