Android 앱을 개발하고 싶습니다. 어떤 언어를 배워야합니까?

작가: Laura McKinney
창조 날짜: 2 4 월 2021
업데이트 날짜: 1 칠월 2024
Anonim
무작정 시작하는 안드로이드 개발 07   데이터 저장 SQLite
동영상: 무작정 시작하는 안드로이드 개발 07 데이터 저장 SQLite

콘텐츠


Android 앱을 개발하는 방법을 배우겠다고 결정 하셨나요? 큰! 불행히도, 의도는 지금까지 당신을 운반 할 수 있습니다. 코드 학습은 복잡 할 수 있습니다. 시작 위치가 명확하지 않은 경우가 있습니다. 시작하기 전에 많은 질문에 대답해야합니까?

  • 어떤 프로그래밍 언어를 배워야합니까?
  • 선택한 언어에 대해 어디에서 배울 수 있습니까?
  • 기본 사항을 파악하면어디에 코드를 입력하기 시작합니까?

이 게시물에서는 첫 번째 질문에 답변하려고합니다. 시작할 프로그래밍 언어를 결정하는 것은 전적으로 달성하고자하는 것에 달려 있습니다. 그리고 일단 언어를 알게되면 IDE와 일치하는 도구를 찾을 수 있습니다.

다음 읽기 :앱을 만들고 제로 코드로 빌드하기위한 최고의 Android 앱 제조업체

라는 사이트를 읽을 때 Android 앱을 주로 만드는 방법에 관심이 있다고 가정하는 것이 안전 할 것입니다. 이 경우 몇 가지 옵션이 있습니다.

골라보세요

Android 앱을 개발하려는 경우 1 단계는 언어를 선택하는 것입니다. 다양한 안드로이드 프로그래밍 언어의 차이점은 약간 복잡하고 미묘한 차이가 있습니다. 어느 것을 시작할지 선택하려면 각자의 강점과 약점을 이해해야합니다.

그러나 나는 또한 당신을 죽이고 싶지 않습니다. 여기에서 각 언어 옵션에 대해 간략하게 설명하고 아래에 더 자세한 정보가 있습니다. 당신에게 흥미로워 보이는 것을 고른 다음 점프하십시오.

Android 개발 학습을 고려할 수있는 언어는 다음과 같습니다.

  • Java – Java는 Android 개발의 공식 언어이며 Android Studio에서 지원됩니다. 그러나 가파른 학습 곡선이 있습니다.
  • Kotlin – Kotlin은 최근 보조 "공식"Java 언어로 도입되었습니다.여러 가지면에서 Java와 비슷하지만 조금 더 쉽게 이해할 수 있습니다.
  • C / C ++ — Android Studio는 Java NDK를 사용하여 C ++도 지원합니다. 이를 통해 게임과 같은 작업에 편리하게 사용할 수있는 기본 코딩 응용 프로그램이 가능합니다. C ++은 더 복잡합니다.
  • C # — C #은 더 많은 코드를 난독 처리하는 C 또는 C ++의 초보자에게 친숙한 대안입니다. 게임 개발 및 플랫폼 간 개발에 유용한 Unity 및 Xamarin과 같은 매우 편리한 도구가 지원합니다.
  • BASIC – 보너스 옵션은 BASIC을 배우고 Anywhere Software에서 B4A IDE를 사용해 보는 것입니다. 이 도구는 쉽고 강력한 도구이지만 훨씬 더 많은 틈새 시장입니다!
  • Corona / LUA – LUA에 또 다른 크로스 플랫폼 툴 빌드. 앱 빌드 프로세스를 크게 단순화하고 기본 라이브러리를 호출 할 수 있습니다.
  • PhoneGap (HTML, CSS, JavaScript) – 대화식 웹 페이지를 작성하는 방법을 이미 알고 있다면 PhoneGap과 함께이 지식을 사용하여보다 기본적인 크로스 플랫폼 앱을 작성할 수 있습니다.

자바

Android 앱을 개발할 때 가장 인기있는 첫 번째 옵션은 Java입니다. 자바는 공무원 Android 개발 언어는 Google에서 가장 많이 지원하는 언어이고 Play 스토어의 대부분의 앱이 빌드 한 언어입니다.


Android 앱을 개발하는 가장 좋은 방법은 Android Studio를 다운로드하는 것입니다. 이것은 IDE (Integrated Development Environment) 라 불리는 소프트웨어입니다. 여기에는 Android SDK (Android 개발을 용이하게하는 도구 세트)가 함께 제공되며 기본적으로 한 곳에서 시작하고 실행하는 데 필요한 모든 것을 제공합니다.

Google의 공식 자습서 및 설명서에서이 방법을 참조하면이 방법에 중점을 둔 가장 많은 수의 라이브러리 (자신의 앱을 향상시키는 무료 코드) 및 자습서를 찾을 수 있습니다.

Java 자체는 1995 년 Sun Microsystems에서 출시되었으며 광범위한 프로그래밍 응용 프로그램에 사용됩니다. Java 코드는 Android 장치에서 실행되고 코드를 해석하는 "가상 컴퓨터"에 의해 실행됩니다.

다음 읽기 : 앱 분석 : 활동 수명주기 소개

불행히도 Java는 또한 조금 복잡하고 훌륭한 "제 1 언어"가 아닙니다. 이것이 실제로 Android 개발을 시작하려는 많은 사람들에게 가장 큰 장벽을 제공 할 것입니다. 안드로이드는 생성자, 널 포인터 예외, 확인 된 예외 등과 같은 혼란스러운 주제를 가진 객체 지향 프로그래밍 언어입니다. 읽기가 어렵고 간단한 작업을 수행하는 "보일러 플레이트"코드를 많이 사용하게됩니다. Java SDK에 추가하면 상황이 더 복잡해집니다. 코더는 Java가 무엇인지, Android가 무엇인지 알기 어려울 수 있습니다! 이 경로를 사용하여 개발하려면 Android Manifest 및 마크 업 언어 XML과 같은 Gradle과 같은 개념을 기본적으로 이해해야합니다.


Java가 나쁜 언어라는 말은 아닙니다. 어떤 언어 든“나쁜”언어로 부르는 것은 잘못 일뿐만 아니라 Java의 불편 함이 실제로 우리 자신의 이익을 위해 깨끗하고 코드를 장려한다는 사실도 사실입니다. 많은 사람들이 이런 이유로 Java를 좋아하며, 가장 다재다능하고 널리 사용되는 사람 중 하나이기도합니다. PYPL (PopularitY of Programming Languages) 테이블에 따르면, Java는 고용주 중에서 가장 많이 찾는 프로그래밍 언어입니다.

인생을 훨씬 단순하게 만드는 것은 지난 몇 년 동안 힘에서 힘으로 발전해 온 Android Studio입니다. 비주얼 디자이너 및 제안과 같은 기능은 프로세스를 조금 더 매끄럽게 만들며, 개발자에게는 쉬운 구현으로 클라우드 스토리지와 같은 항목에 액세스 할 수 있도록 고급 강력한 기능이 항상 추가됩니다. 이 빠른 발전으로 때때로 따라 가기가 어려워 지더라도 탑승하는 것이 좋습니다.

그래서 평결은 무엇입니까? 완벽한 안드로이드 개발 경험을 원하는 사람들에게는 Java로 다이빙하는 것이 가장 좋습니다. 복잡한 코드를 사용하는 사람들은 디자이너와 함께 일하고 더 복잡한 것에 대한 자습서를 따르는 것이 가능합니다. 초보자이지만 게임을 만들고 싶거나 학습을 위해 학습을 시작하고 보람있는 프로젝트를 시작하려는 경우 무언가로 시작하는 것이 좋습니다. 좀 더 접지하면 더 쉽게이 부분으로 돌아옵니다.

여기에서 Gary의 Java 소개를 확인하십시오.

노트 :

즉, Java와 함께 Unity를 사용할 수도 있습니다. C # 섹션에서 Unity에 대해 설명하지만이 경로를 진행할 때 약간 더 복잡한 Java 언어를 선택한 다음이를 사용하여 Android Studio 개발로보다 쉽게 ​​전환 할 수 있습니다.

코 틀린

코 틀린은 최근 안드로이드 개발을위한“기타”공식 언어로 등장했다. 일부 추측은 이것이 언어의 프로파일을 높이고 다음 스위프트가 될 수 있다고 제안합니다.

Java와 마찬가지로 Kotlin은 Java Virtual Machine에서 실행됩니다. 또한 Java와 완벽하게 상호 운용되며 파일 크기가 느려지거나 증가하지 않습니다. 차이점은 Kotlin은 "보일러 플레이트"코드가 덜 필요하다는 것입니다. 즉,보다 간결하고 읽기 쉬운 시스템입니다. 또한 널 포인트 예외와 같은 오류를 제거하고 세미콜론으로 모든 줄을 끝내지 못하게합니다. 요컨대, 처음으로 Android 앱 개발을 배우는 것이 좋습니다.

따라서 Kotlin은 초보자에게는 쉬운 출발점이며 Android Studio를 계속 사용할 수 있다는 사실은 큰 장점입니다. 그래도 Unity에서 C #이라고하는 것처럼 여전히 간단하지는 않지만 커뮤니티 지원은 상대적으로 초기 단계입니다. 실제로, 즉시 지원을 받으려면 현재 Android Studio 베타 버전을 다운로드해야합니다.

여전히 Kotlin은 레이더에 있어야하며 Android 개발을 "적절하게"시작할 수있는 더 쉬운 진입 점을 제공 할 수 있습니다. 구글이 처음에 그것을 소개 한 이유 일 것입니다.

Kotlin을 사용해야하는 이유를 알아보십시오.

C / C ++

이 글을 읽는 대부분의 사람들이 Android 앱을 개발하기 위해이 경로를 선택해서는 안된다고 말하는 것이 공정합니다. Android Studio는 Android NDK (Native Development Kit)를 사용하여 C / C ++ 코드를 지원합니다. 즉, Java Virtual Machine에서 실행되는 것이 아니라 장치에서 기본적으로 실행되는 코드를 작성하여 메모리와 같은 것을보다 잘 제어 할 수 있습니다. 3D 게임과 같은 집중적 인 응용 프로그램의 경우 Android 장치에서 추가 성능을 끌어낼 수 있습니다. 또한 C 또는 C ++로 작성된 라이브러리를 사용할 수 있음을 의미합니다.

그러나 설정하기가 훨씬 어려워지고 더 많은 버그가 발생하며 유연성이 떨어집니다. 컴퓨터 게임을 만들고 싶다면 기성 게임 엔진을 사용하는 것이 좋습니다.

기음#

C #은 기본적으로 Microsoft에서 개발 한 더 쉽고 순수한 객체 지향 버전의 C 및 C ++입니다. C ++의 강력 함과 Visual Basic의 편리함을 가져오고 단순화 된 Java 버전처럼 읽습니다. Java와 마찬가지로 C #은 가비지 수집되므로 메모리 누수 및 메모리 확보와 같은 문제에 대해 걱정할 필요가 없습니다. 동시에 C #은 더 깔끔한 구문으로 Java보다 더 현대적입니다. 그러나 이것은 내 편견 일 수도 있습니다. Android 앱을 개발하는 데 가장 적합한 언어는 종종 맛이납니다.

안드로이드 앱 개발에 대해 특히 쉽고 친근한 소개를 원한다면 C #과 Unity의 조합을 권장합니다. Unity는 "게임 엔진"(물리 계산 및 3D 그래픽 렌더링과 같은 것을 제공함) 및 Android Studio와 같은 IDE입니다. 이 툴은 몇 줄의 코드만으로도 한 시간 안에 기본 플랫폼 게임을 설정할 수있는 매우 쉬운 게임 제작 도구입니다. 과장하지 않습니다. 또한 Google Play 스토어의 대부분의 게임 스튜디오에서 사용하는 도구이기도합니다. 그리고 멀티 플랫폼도 있습니다. 무엇보다도 이러한 방식으로 개발하면 객체 지향 코딩을 배우는 매우 실용적인 방법을 제공합니다 (이 경우 객체는 실제로 대부분의 객체이기 때문에).

한계? Unity는 게임 제작에는 유용하지만 특히 Google의 머티리얼 디자인 언어를 준수하려는 경우 표준 Android 앱을 만드는 데에는 하위 수준입니다. 전문 Android 개발자가 되려는 경우이 비표준 경로는 게임 개발자가되는 것이 아니라면 고용 기회를 제한합니다.이 경우 완벽하게 관련되고 전문적인 배경이됩니다.

Unity에 관심이 없습니까? 그렇다면 언리얼 (모바일에 덜 적합한 그래픽) 또는 GameMaker Studio와 같은 단순화 된 게임 제작자를 대신 고려할 수 있습니다.

C #은 Visual Studio를 통해 Xamarin과 함께 사용할 수도 있습니다. 이는 크로스 플랫폼 (Android 및 iOS 용 하나의 코드베이스)이라는 장점으로 기존 Android 개발과 더 유사합니다. 완전한 초보자를 위해이 경로는 다시 안드로이드 개발에 대한 약간의 애매한 진입 점입니다. 그러나 iOS 및 Android 용 앱을 만들고자하는 소규모 회사의 경우 의미가 있으며 도움이되는 많은 지원과 정보가 있습니다. .

기본

C #이 Visual BASIC의 용이성과 함께 C의 힘을 제공하려는 시도라고 말한 것을 기억하십니까? BASIC (초보자 용 다목적 기호 명령 코드)은 사용하기가 매우 즐겁고 코딩 학습에있어 절대적으로 이상적인 점프이기 때문입니다.

안타깝게도 Android Studio에서 공식적으로 지원하지 않으며 Unity 또는 Xamarin에서도 사용할 수 없습니다. 좋은 소식은 BASIC에서 Anywhere Software의 B4A라는 Android 앱을 개발할 때 알려진 옵션이 적다는 것입니다. 'BASIC 4 Android'의 약자이며 예상대로 BASIC으로 Android 앱을 코딩 할 수 있습니다. Android 앱을 개발하려는 대부분의 프로그래머에게는 확실히 첫 번째 선택은 아니지만 더 많은 옵션을 제공하는 것이 좋습니다.

B4A는 RAD (Rapid Application Development) 환경으로 설계되었습니다. 인생을 더 쉽게 만들기위한 많은 다른 스마트 한 디자인 결정이 있으며, 궁금한 점이 있으면 매우지지적인 커뮤니티가 있습니다.

이것은 코딩을 배우는 좋은 방법이며,이 방법만으로도 매우 강력한 앱을 만들 수 있습니다. 고급 게임을 제작하는 데 이상적이지는 않지만 "비공식적 인"옵션으로 다시 한 번 고통받습니다. 따라서 머티리얼 디자인 사양을 정확히 충족시키는 것을 만들기가 더 어려우며 BASIC만으로 전문 개발자로 일하기가 더 어려워 질 것입니다 . 다른 큰 단점은 목록에서 무료가 아닌 유일한 옵션이라는 것입니다.

코로나

코로나는 안드로이드 앱을 개발하기위한 훨씬 더 간단한 옵션을 제공하면서도 여전히 많은 양의 파워와 컨트롤을 제공합니다. Java보다 훨씬 간단한 LUA로 코딩하고 있으며, 그 중에서도 Corona SDK (Software Development Kit)를 사용하면 훨씬 쉽게 작업 할 수 있습니다. 모든 기본 라이브러리를 지원하며 여러 플랫폼에 게시 할 수 있습니다. 주로 게임 제작에 사용되지만 다양한 방법으로도 사용할 수 있습니다. Notepad ++와 같은 텍스트 편집기를 사용하여 코드를 입력해야하며 먼저 컴파일 할 필요없이 에뮬레이터에서 해당 코드를 실행할 수 있습니다. APK를 만들고 배포 할 준비가되면 온라인 도구를 사용하여이 작업을 수행 할 수 있습니다.

기본 코딩 기술이 필요하지만 프로그래밍 세계에 대한 훌륭하고 부드러운 소개를 제공합니다. 동시에, 그것은 어느 정도 제한적이며“앱 빌더”영역으로 들어가는 데 몇 단계가 제거되었습니다. 이것은 비교적 간단한 것을 만들고 싶어하며 코딩 기술을 개발하거나 전문가가되는 것에 관심이없는 사람에게 더 유용합니다. 인앱 구매와 같은 기능을 사용하려면 요금을 지불해야합니다. 네이티브 안드로이드 API도 마찬가지입니다.

PhoneGap

마지막으로, 앱 빌더 프로그램을 사용하지 않으려는 경우 Android 앱 개발을 위해 전환 할 수있는 마지막 "간단한"옵션은 PhoneGap입니다. PhoneGap은 Apache Cordova에서 제공하며 기본적으로 웹 사이트를 만드는 데 사용하는 것과 동일한 코드 (HTML, CSS 및 JavaScript)를 사용하여 앱을 만들 수 있습니다. 그런 다음 "WebView"를 통해 표시되지만 앱처럼 패키징됩니다. 그러면 PhoneGap은 브리지처럼 작동하여 개발자가 가속도계 나 카메라와 같은 휴대폰 또는 태블릿의 기본 기능에 액세스 할 수 있습니다.

이것은 실제로 "진정한"안드로이드 개발이 아니며, 유일한 실제 프로그래밍은 JavaScript입니다. 많은 기본 작업의 경우 작업을 수행하지만 진정한 "Android 앱 개발자"(사실)를 주장하려면이 목록에서 다른 선택 중 하나를 용감해야합니다.

결론

따라서 선택하십시오! 파이썬으로 Android 앱을 쉽게 개발할 수있는 방법이 있었으면하지만 Java 및 Kotlin에서 C, C # 및 BASIC에 이르기까지 Android 앱 개발을위한 다양한 옵션이 있습니다! PhoneGap을 사용하여 HTML과 CSS를 사용하여 간단한 것을 만들 수도 있습니다.

올바른 선택은 당신의 감성과 목표에 달려 있지만, 무엇을 결정 하든지 코드를 학습하는 것은 환상적인 보람있는 경험이며 많은 문을 열어주는 것입니다. 그리고 안드로이드로 코딩하는 법을 배우는 것은 시작하기에 완벽한 장소입니다. 이제 안드로이드 앱을 개발하는 방법에 대해 적어도 조금 더 알고 싶겠지 만, 궁금한 점이 있으면 의견을 보내 주시면 Google 팀과 독자가 답변을 드리기 위해 최선을 다하겠습니다. 행운을 빕니다!

다음 읽기 : Android 개발을위한 Java 구문 소개 | 소비 API : Android에서 Retrofit 시작하기

찾고 있다면 재미있는 전자 프로젝트또는 관엽 식물에 물을 뿌려서 살아있는 상태로 유지하고 싶을 때 Arduino Automatic mart Plant Watering Kit 2.0을 확인하십시오.이 키트에는 필요한 모든 것이 포함되어 있습니다. 수분 레벨을 모니터링하도록 Arduino Leonardo 보드를 프로그래밍 할 수 있습니다. 한 번에 최대 4 개...

Withing (이전 Nokia)는 Withing teel HR port 스마트 워치를 출시했습니다.Withing teel HR port는 활동 추적에 중점을 둔 하이브리드 아날로그 / 디지털 스마트 워치입니다.이 시계에는 몇 가지 주요 기능이 없지만 아날로그 페이스와 200 달러 가격표를 고려할 때 많은 노력이 필요합니다.이 기사의 헤드 라인이 혼란 스러...

흥미로운 출판물