안드로이드 스튜디오: 두 판 사이의 차이
편집 요약 없음 |
편집 요약 없음 |
||
(같은 사용자의 중간 판 16개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
Android Studio. | Android Studio. | ||
개발자라면 이름에서도 눈치챌 수 있듯이 [[안드로이드]] 운영체제에서 구동되는 소프트웨어를 만들기 위한 [[ | 개발자라면 이름에서도 눈치챌 수 있듯이 [[안드로이드]] 운영체제에서 구동되는 소프트웨어를 만들기 위한 [[통합개발환경]]. <del>하여간 [[비주얼 스튜디오]] 이후로 [[통합 개발 환경]]은 뻑하면 스튜디오다.</del> [[구글]]에서 무료로 제공하고 있고, [[자바]] 통합 개발 환경으로 굉장히 높은 평가를 받고 있는 [[제트브레인]] 사의 [[인텔리J]]를 베이스로 하고 있다. [[인텔리J]]는 돈 주고 사야 하는 개발 환경으로, 그럼에도 불구하고 유료 사용자가 많을 정도로 호평을 받고 있다.특히 [[리팩토링]] 기능이 뛰어난 이 [[IDE]]가 무료로 제공되는 셈이니 안드로이드 개발자로서는 희소식. 범용 [[자바]] 프로그래밍 자체가 가능은 하지만 빌드와 디버그와 같은 기능들이 철저하게 [[안드로이드]] 개발용으로 맞춰져 있기 때문에 범용 [[자바]] 개발 환경으로 쓰기는 사실상 불가능하다. <del>[[제트브레인]]이 미쳤냐 그럼.</del> 이전까지 [[구글]]은 [[이클립스]] 기반의 ADT를 통합 개발 환경으로 제공해 왔지만 [[안드로이드]] 스튜디오를 내놓은 이후 ADT는 더 이상 지원하지 않는다. | ||
빌드 및 의존성 관리를 위해서는 [[그래들]]을 사용하고 있다. | 빌드 및 의존성 관리를 위해서는 [[그래들]]을 사용하고 있다. | ||
7번째 줄: | 7번째 줄: | ||
초기에는 온갖 심각한 버그 때문에 사용에 어려움이 많았지만 버전 업이 되면서 차차 안정화 되어 가고 있다. ADT도 더 이상 업그레이드 안 되고, [[구글]]이 [[안드로이드]] 스튜디오를 열심히 밀고 있으므로 [[안드로이드]] 개발자들은 대부분 <del>울며 겨자먹기로</del> 이쪽으로 넘어가고 있는 추세다. | 초기에는 온갖 심각한 버그 때문에 사용에 어려움이 많았지만 버전 업이 되면서 차차 안정화 되어 가고 있다. ADT도 더 이상 업그레이드 안 되고, [[구글]]이 [[안드로이드]] 스튜디오를 열심히 밀고 있으므로 [[안드로이드]] 개발자들은 대부분 <del>울며 겨자먹기로</del> 이쪽으로 넘어가고 있는 추세다. | ||
인텔리J의 [[안드로이드]] 특화 버전답게 코드 편집, 특히 리팩토링 기능이 뛰어나다. [[이클립스]]의 성능도 좋지만 이쪽이 한수 위인 듯. 이 방면으로는 최강의 통합 개발 환경 중 하나로 손꼽히는 [[비주얼 스튜디오]]보다도 낫다. 사실 제트브레인은 [[비주얼 스튜디오]]의 <del>느려터진 걸로</del> 유명한 코드 작성 지원 및 [[리팩토링]] 도구인 리샤퍼(Resharper)를 만든 곳이다. | 인텔리J의 [[안드로이드]] 특화 버전답게 코드 편집, 특히 [[리팩토링]] 기능이 뛰어나다. [[이클립스]]의 성능도 좋지만 이쪽이 한수 위인 듯. 이 방면으로는 최강의 통합 개발 환경 중 하나로 손꼽히는 [[비주얼 스튜디오]]보다도 [[리팩토링]]만큼은 정말 낫다. 사실 제트브레인은 [[비주얼 스튜디오]]의 <del>느려터진 걸로</del> 유명한 코드 작성 지원 및 [[리팩토링]] 도구인 리샤퍼(Resharper)를 만든 곳이다. 당연히 [[인텔리J]]가 지원하는 버전 관리 시스템도 똑같이 지원하며, 대다수 [[IDE]]가 다 그렇듯이 [[Git]] 지원을 잘 하고 있기 때문에 [[GUI]] 환경으로도 [[Git]]의 기능 대부분을 쓸 수 있다. | ||
그런데 [[윈도우 8]] 이상 환경에서 디버깅을 위해서 [[안드로이드]] | 그런데 [[윈도우 8]] 이상 환경에서 디버깅을 위해서 [[안드로이드]] [[에뮬레이터]]를 사용할 생각이라면<ref>실제 기기를 가지고 테스트하는 게 속도 면에서는 좋지만 루팅된 기기가 아니라면 내부 파일 같은 것을 확인할 수 없기 때문에 에뮬레이터를 써야 할 때가 종종 있다.</ref> [[비주얼 스튜디오]]용으로 제공되는 [[MS]]의 [[안드로이드]] [[에뮬레이터]]를 쓰는 게 속도 면에서 더 좋다. 이쪽은 윈도우에서 지원하는 가상화 기술인 [[하이퍼-V]]를 사용하고 있으므로 [[구글]]에서 제공하는 [[에뮬레이터]]보다도 속도가 빠르다. 단 메모리를 많이 먹으므로 메모리가 넉넉한, 최소 8GB 이상인 곳에서 굴리는 게 좋다.<ref>경우에 따라서는 8GB 램 꽂은 컴퓨터에서도 메모리 모자란다고 울부짖기도 하므로 16GB 권장.</ref> [[에뮬레이터]]만 따로 설치한 다음 실행시켜 놓으면 [[USB]]에 연결된 실제 기기처럼 인식된다. 통합성이라는 면에서는 약간 떨어지지만 워낙에 속도가 깡패라... | ||
안드로이드 스튜디오 3.0부터는 [[자바]]와 함께 [[코틀린]]도 지원한다. [[코틀린]]은 [[자바]] 가상머신 기반으로 100% 호환되는 언어인데, 게다가 | 안드로이드 스튜디오 3.0부터는 [[자바]]와 함께 [[코틀린]]도 공식 지원한다. [[코틀린]]은 [[자바]] 가상머신 기반으로 100% 호환되는 언어인데, 게다가 [[코틀린]]을 만든 회사가 바로 제트브레인이다 보니 안드로이드 스튜디오에서도 수월하게 지원할 수 있다. 제트브레인 측에서는 이를 통해 [[코틀린]]의 사용 기반이 대폭 넓어질 것으로 기대하고 있다. 구글 쪽에서 봐도 [[자바]]가 계속해서 [[오라클]]과 골치아픈 소송전을 일으키는 원인이 되다 보니 심지어는 애플의 [[스위프트]]로 갈아탄다는 얘기가 나오기도 했는데, [[코틀린]] 지원을 통해서 일단 JVM 체제에서 프로그래밍 언어 전환을 이룬 다음 [[코틀린]]의 구동 환경을 [[LLVM]]과 같은 체제로 바꾸는 식으로 [[오라클]]과 문제에서 벗어나는 것도 가능한 시나리오로 제시되고 있다. 알게 모르게 [[코틀린]]을 권장하는 분위기다. 결국 구글이 [[안드로이드]] 개발 관련 공식 문서에 [[코틀린]]을 우선 사용하는 것으로 바꾸었다. 특히 Kotlin/Native로 JVM 없이 곧바로 네이티브 코드를 만드는 것도 가능하기 때문에 길게 보면 JVM을 걷어낼 가능성이 높아지고 있다. | ||
기존 버전으로는 4.3에 해당하는 2020.3.1 버전부터는 아예 기존의 버전 번호 체계를 없애고 ARCTIC FOX(북극여우)라는 이름으로 제공하고 있다. 구글 측에 따르면 [[IntelliJ IDEA]]의 버전 체계와 더욱 가깝게 버전을 관리하기 위해서라고 한다. 프로그램을 시작할 때 스플래시 창에 해당 동물의 그림이 나타난다.<ref>프리뷰 또는 베타 때에는 밋밋한 스플래시만 나타날 수도 있다.</ref> 버전과 닉네임은 다음과 같다. | |||
{| class="wikitable" | |||
|- | |||
! 버전 !! 닉네임 | |||
|- | |||
| 2020.3.1 || Arctic Fox(북극여우) | |||
|- | |||
| 2021.1.1 || Bumblebee(호박벌) | |||
|- | |||
| 2021.2.1 || Chipmunk(얼룩다람쥐) | |||
|- | |||
|2021.3.1 | |||
|Dolphin(돌고래) | |||
|- | |||
|2022.1.1 | |||
|Eels (장어) | |||
|- | |||
|2022.2.1 | |||
|Flamingo (플라밍고) | |||
|- | |||
|2023.1.1 | |||
|Hedgehog (고슴도치) | |||
|- | |||
|2023.2.1 | |||
|Iguana (이구아나) | |||
|- | |||
|2023.3.1 | |||
|Jellyfish (해파리) | |||
|- | |||
|2024.1.1 | |||
|Koala (코알) | |||
|} | |||
유심히 보면 동물 이름의 머릿글자가 버전이 올라감에 따라서 알파벳 순서가 되도록 이름을 정하고 있는 것을 알 수 있다. 이게 처음은 아닌데, 안드로이드 스튜디오의 주요 개발 타겟인 안드로이드 운영체제가 버전 9까지 디저트 이름을 가지고 별명을 지었다. <del>그 버릇 어디 가겠나</del> | |||
[[구글]]의 [[크로스 플랫폼]] [[프레임워크]]인 [[Flutter]]의 두 가지 공식 개발 환경이기도 하다. 다른 하나는 [[비주얼 스튜디오 코드]]. 기본 지원은 아니고 [[Dart]] 및 [[Flutter]] [[플러그인]]을 설치하면 된다. 기능은 [[Java]] 및 [[Kotlin]]을 쓸 때보다는 살짝 떨어진다. [[Flutter]] 개발자들은 [[비주얼 스튜디오 코드]]를 더 선호하는 편이다. | |||
{{각주}} | {{각주}} |
2024년 6월 16일 (일) 22:52 기준 최신판
Android Studio.
개발자라면 이름에서도 눈치챌 수 있듯이 안드로이드 운영체제에서 구동되는 소프트웨어를 만들기 위한 통합개발환경. 하여간 비주얼 스튜디오 이후로 통합 개발 환경은 뻑하면 스튜디오다. 구글에서 무료로 제공하고 있고, 자바 통합 개발 환경으로 굉장히 높은 평가를 받고 있는 제트브레인 사의 인텔리J를 베이스로 하고 있다. 인텔리J는 돈 주고 사야 하는 개발 환경으로, 그럼에도 불구하고 유료 사용자가 많을 정도로 호평을 받고 있다.특히 리팩토링 기능이 뛰어난 이 IDE가 무료로 제공되는 셈이니 안드로이드 개발자로서는 희소식. 범용 자바 프로그래밍 자체가 가능은 하지만 빌드와 디버그와 같은 기능들이 철저하게 안드로이드 개발용으로 맞춰져 있기 때문에 범용 자바 개발 환경으로 쓰기는 사실상 불가능하다. 제트브레인이 미쳤냐 그럼. 이전까지 구글은 이클립스 기반의 ADT를 통합 개발 환경으로 제공해 왔지만 안드로이드 스튜디오를 내놓은 이후 ADT는 더 이상 지원하지 않는다.
빌드 및 의존성 관리를 위해서는 그래들을 사용하고 있다.
초기에는 온갖 심각한 버그 때문에 사용에 어려움이 많았지만 버전 업이 되면서 차차 안정화 되어 가고 있다. ADT도 더 이상 업그레이드 안 되고, 구글이 안드로이드 스튜디오를 열심히 밀고 있으므로 안드로이드 개발자들은 대부분 울며 겨자먹기로 이쪽으로 넘어가고 있는 추세다.
인텔리J의 안드로이드 특화 버전답게 코드 편집, 특히 리팩토링 기능이 뛰어나다. 이클립스의 성능도 좋지만 이쪽이 한수 위인 듯. 이 방면으로는 최강의 통합 개발 환경 중 하나로 손꼽히는 비주얼 스튜디오보다도 리팩토링만큼은 정말 낫다. 사실 제트브레인은 비주얼 스튜디오의 느려터진 걸로 유명한 코드 작성 지원 및 리팩토링 도구인 리샤퍼(Resharper)를 만든 곳이다. 당연히 인텔리J가 지원하는 버전 관리 시스템도 똑같이 지원하며, 대다수 IDE가 다 그렇듯이 Git 지원을 잘 하고 있기 때문에 GUI 환경으로도 Git의 기능 대부분을 쓸 수 있다.
그런데 윈도우 8 이상 환경에서 디버깅을 위해서 안드로이드 에뮬레이터를 사용할 생각이라면[1] 비주얼 스튜디오용으로 제공되는 MS의 안드로이드 에뮬레이터를 쓰는 게 속도 면에서 더 좋다. 이쪽은 윈도우에서 지원하는 가상화 기술인 하이퍼-V를 사용하고 있으므로 구글에서 제공하는 에뮬레이터보다도 속도가 빠르다. 단 메모리를 많이 먹으므로 메모리가 넉넉한, 최소 8GB 이상인 곳에서 굴리는 게 좋다.[2] 에뮬레이터만 따로 설치한 다음 실행시켜 놓으면 USB에 연결된 실제 기기처럼 인식된다. 통합성이라는 면에서는 약간 떨어지지만 워낙에 속도가 깡패라...
안드로이드 스튜디오 3.0부터는 자바와 함께 코틀린도 공식 지원한다. 코틀린은 자바 가상머신 기반으로 100% 호환되는 언어인데, 게다가 코틀린을 만든 회사가 바로 제트브레인이다 보니 안드로이드 스튜디오에서도 수월하게 지원할 수 있다. 제트브레인 측에서는 이를 통해 코틀린의 사용 기반이 대폭 넓어질 것으로 기대하고 있다. 구글 쪽에서 봐도 자바가 계속해서 오라클과 골치아픈 소송전을 일으키는 원인이 되다 보니 심지어는 애플의 스위프트로 갈아탄다는 얘기가 나오기도 했는데, 코틀린 지원을 통해서 일단 JVM 체제에서 프로그래밍 언어 전환을 이룬 다음 코틀린의 구동 환경을 LLVM과 같은 체제로 바꾸는 식으로 오라클과 문제에서 벗어나는 것도 가능한 시나리오로 제시되고 있다. 알게 모르게 코틀린을 권장하는 분위기다. 결국 구글이 안드로이드 개발 관련 공식 문서에 코틀린을 우선 사용하는 것으로 바꾸었다. 특히 Kotlin/Native로 JVM 없이 곧바로 네이티브 코드를 만드는 것도 가능하기 때문에 길게 보면 JVM을 걷어낼 가능성이 높아지고 있다.
기존 버전으로는 4.3에 해당하는 2020.3.1 버전부터는 아예 기존의 버전 번호 체계를 없애고 ARCTIC FOX(북극여우)라는 이름으로 제공하고 있다. 구글 측에 따르면 IntelliJ IDEA의 버전 체계와 더욱 가깝게 버전을 관리하기 위해서라고 한다. 프로그램을 시작할 때 스플래시 창에 해당 동물의 그림이 나타난다.[3] 버전과 닉네임은 다음과 같다.
버전 | 닉네임 |
---|---|
2020.3.1 | Arctic Fox(북극여우) |
2021.1.1 | Bumblebee(호박벌) |
2021.2.1 | Chipmunk(얼룩다람쥐) |
2021.3.1 | Dolphin(돌고래) |
2022.1.1 | Eels (장어) |
2022.2.1 | Flamingo (플라밍고) |
2023.1.1 | Hedgehog (고슴도치) |
2023.2.1 | Iguana (이구아나) |
2023.3.1 | Jellyfish (해파리) |
2024.1.1 | Koala (코알) |
유심히 보면 동물 이름의 머릿글자가 버전이 올라감에 따라서 알파벳 순서가 되도록 이름을 정하고 있는 것을 알 수 있다. 이게 처음은 아닌데, 안드로이드 스튜디오의 주요 개발 타겟인 안드로이드 운영체제가 버전 9까지 디저트 이름을 가지고 별명을 지었다. 그 버릇 어디 가겠나
구글의 크로스 플랫폼 프레임워크인 Flutter의 두 가지 공식 개발 환경이기도 하다. 다른 하나는 비주얼 스튜디오 코드. 기본 지원은 아니고 Dart 및 Flutter 플러그인을 설치하면 된다. 기능은 Java 및 Kotlin을 쓸 때보다는 살짝 떨어진다. Flutter 개발자들은 비주얼 스튜디오 코드를 더 선호하는 편이다.