JavaRush /Java Blog /Random-KO /안드로이드가 작동하는 방식. Java 개발자를 위한 소개

안드로이드가 작동하는 방식. Java 개발자를 위한 소개

Random-KO 그룹에 게시되었습니다
Java 프로그래머들 사이에서는 Android 개발에 대한 이야기를 가끔 듣게 됩니다. Android는 지난 몇 년간 Java를 선두로 유지해 온 요소입니다. Java 개발자가 Android를 이해하거나 아는 것이 얼마나 중요합니까? 글쎄, 그것은 당신이 앱 개발을 좋아하는지, 그리고 많은 사람들이 당신의 앱을 사용하기를 원하는지 여부에 달려 있습니다. 그렇다면 Android가 이러한 기회를 제공할 것입니다. Android 운영 체제를 실행하는 휴대폰의 수는 수백만 대에 달하며 iOS를 실행하는 iPhone의 수보다 계속 빠르게 증가하고 있습니다. 이는 Java 개발자가 Android용 프로그래밍 방법을 배우는 것이 합리적이라는 것을 의미하며, 이 기사에서는 이에 전념합니다. 이는 Java 프로그래밍을 처음 배우는 좋은 이유 중 하나이기도 합니다. 이 리뷰를 통해 불필요한 세부 사항은 없지만 충분한 양으로 Android의 기본 사항을 배울 수 있습니다. 안드로이드가 작동하는 방식.  Java 개발자를 위한 소개 - 1Java 개발자가 다른 개발자에 비해 갖는 한 가지 분명한 이점 은 Android API가 Java 언어 API와 매우 유사하며 Android가 J2SE SDK에서 사용할 수 있는 모든 클래스는 아니더라도 최소한 가장 중요한 클래스를 지원한다는 것입니다. 또 다른 장점은 Android 개발에도 Java와 동일한 도구를 사용할 수 있다는 것입니다. 예를 들어 Eclipse IDE는 Google이 Android 애플리케이션 개발을 위해 Eclipse용 플러그인을 제공하기 때문입니다. Android를 시작할 때 Java 개발자를 위한 최고의 Android 도서 중 두 권인 Head First Android DevelopmentAndroid in Action (3판) 과 같은 가이드를 확인해 보는 것이 좋습니다 .
안드로이드가 작동하는 방식.  Java 개발자를 위한 소개 - 2
안드로이드가 작동하는 방식.  Java 개발자를 위한 소개 - 3
반대로 iOS 개발을 시작하려면 Objective-C 언어와 iOS SDK를 배우는 어려운 과정을 거치게 됩니다. 제가 보기에는 Objective-C와 iOS로 전환하는 것이 Java 개발자보다 C++ 개발자에게 더 적합한 것 같습니다. 따라서 Java와 C++ 간의 고전적인 전쟁은 스마트폰 앱 개발에서도 계속됩니다. 어쨌든 Android 내부 기능의 특성을 이해해 봅시다.

안드로이드는 어떻게 작동하나요?

이미 언급했듯이 Android 운영 체제는 Java를 사용하여 애플리케이션을 개발합니다. Google에서 제공하는 Java API를 사용하여 Android 애플리케이션 코드를 작성한 다음 클래스 파일로 컴파일할 수 있습니다. 이것이 유사성이 끝나는 곳입니다. Android는 클래스 파일을 실행하기 위해 JVM(Java Virtual Machine)을 사용하지 않고 대신 실제 JVM이 아니며 Java 바이트코드를 실행하지 않는 Dalvik Virtual Machine을 사용합니다. Dalvik 가상 머신에서 실행하기 위해 클래스 파일은 DEX 형식(Dalvik EXecutable - Dalvik 실행 파일)으로 컴파일됩니다. DEX 형식으로 변환되면 클래스 파일은 다른 리소스와 함께 Android 패키지(APK)로 번들되어 다양한 장치에 배포 및 설치됩니다. 알아야 할 가장 중요한 점은 기본 Dalvik 가상 머신 클래스 라이브러리가 Apache Harmony 프로젝트의 하위 집합을 기반으로 하기 때문에 모든 J2SE API를 지원하지는 않는다는 것입니다. Eclipse IDE를 사용하여 Android 애플리케이션용 코드를 작성하는 경우 코드 완성 기능이 있으므로 너무 걱정할 필요가 없습니다. 이제 Android 애플리케이션이 기기에서 어떻게 실행되는지 살펴보겠습니다.

Android 앱이 기기에서 어떻게 실행되나요?

Linux 운영체제와 프로세스 개념에 익숙하다면 Android 애플리케이션이 어떻게 실행되는지 쉽게 이해할 수 있습니다. 기본적으로 Android 운영 체제는 각 애플리케이션에 고유한 사용자 ID를 할당합니다. Android 애플리케이션이 시작되면 각 애플리케이션은 자체 가상 머신에서 자체 프로세스로 실행됩니다.
안드로이드가 작동하는 방식.  Java 개발자를 위한 소개 - 4
Android 운영 체제는 필요에 따라 애플리케이션 프로세스의 시작 및 종료를 제어합니다. 이는 모든 Android 애플리케이션이 서로 분리되어 작동하지만 물론 하드웨어 및 기타 시스템 리소스에 대한 액세스를 요청할 수 있음을 의미합니다. J2ME 등의 모바일 애플리케이션 개발에 익숙하다면 아마도 액세스 권한(허가)이라는 개념을 접했을 것입니다. Android 애플리케이션을 설치하거나 실행하면 인터넷, 전화번호부 또는 기타 시스템 리소스에 액세스하는 데 필요한 권한을 요청합니다. 사용자는 이러한 권한을 명시적으로 부여합니다. 그렇지 않으면 작업이 거부됩니다. 이러한 모든 권한은 Android 애플리케이션의 매니페스트 파일에 설명되어 있습니다. Java와 달리 Android 매니페스트는 모든 애플리케이션 구성 요소와 해당 설정을 나열하는 XML 파일 입니다. Android 애플리케이션의 네 가지 주요 구성요소는 활동, 서비스, 콘텐츠 제공자 및 브로드캐스트 수신기입니다. 이 중 가장 일반적인 것은 Android 애플리케이션의 별도 화면 형태에 해당하는 활동입니다. 예를 들어 Android 운영 체제용 게임에는 로그인, 기록, 지침, 게임 화면 등 여러 화면이 있을 수 있습니다. 이러한 각 요소는 애플리케이션의 다양한 활동에 해당합니다.
안드로이드가 작동하는 방식.  Java 개발자를 위한 소개 - 5
Java와 마찬가지로 Android의 좋은 점은 활동 객체 생성과 같은 개발자를 위한 일부 작업을 수행한다는 것입니다. 학급에서는 활동을 조직하는 일을 담당합니다 System. 활동을 시작해야 하는 경우 startActivity()개체를 Intent매개변수로 사용하여 메서드를 호출하기만 하면 됩니다. 이 호출에 대한 응답으로 클래스는 System새 활동 객체를 생성하거나 이전 활동 객체를 재사용합니다. 메모리 재사용이라는 가장 중요한 작업을 처리하는 Java의 가비지 수집과 유사하게 Android는 애플리케이션의 시작, 중지, 생성 및 삭제를 관리합니다. 너무 많이 제한하는 것처럼 보일 수도 있지만 그렇지 않습니다. Android는 이 프로세스를 방해하기 위해 재정의할 수 있는 수명 주기 이벤트를 제공합니다. 이것이 Android 작동 방식 에 관한 모든 것입니다 . Java 개발자로서 Android는 Java를 사용하므로 배우는 것이 합리적이므로 Java 프로그래밍 기술, 디자인 패턴 및 모범 사례에 대한 지식을 활용하여 좋은 Android 애플리케이션을 만들 수 있습니다. 물론 일부 Android 관련 사항에 적응해야 하지만 시간이 지나면 자연스럽게 적응될 것입니다. 그래서 당신은 무엇을 기다리고 있습니까? 계속해서 Android를 배우고 첫 번째 HelloWorld Android 앱을 작성해 보세요! 마지막으로, Android에 관한 최고의 책인 Head First Android Development 와 같이 Android 개발의 기초에 관한 좋은 책을 살펴보는 것이 좋습니다 . 출처: Java 프로그래머를 위한 Android 작동 방식 소개
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION