JavaRush /Java Blog /Random-KO /왜 안드로이드 개발을 해야 할까요? 개인적인 경험에서. 추론과 사실
Oleksandr Klymenko
레벨 13
Харків

왜 안드로이드 개발을 해야 할까요? 개인적인 경험에서. 추론과 사실

Random-KO 그룹에 게시되었습니다
Java 지식을 어디에 적용할지 아직 결정하지 못한 분이라면 이 기사가 도움이 될 것입니다. 이 기사에서는 안드로이드 개발과 같은 방향에 대해 논의합니다. 내가 안드로이드 개발자가 된 이야기. 안드로이드 개발 선택을 위한 팁과 전망. 올!
왜 안드로이드 개발을 해야 할까요?  개인적인 경험에서.  추론과 사실 - 1
안녕하세요, JavaRush 학생 여러분! 많은 분들이 이미 IT 분야에서 우리가 사랑하는 Java를 사용하는 산업이 무엇인지 알고 계십니다. 이미 결정하고 선택하신 분들도 계실 겁니다. 이번 글에서는 제가 어떻게 안드로이드 개발자가 되었는지 알려드리겠습니다. 왜 이 방향이 가장 유망하다고 생각하는지 설명하겠습니다. 안드로이드 개발이 무엇인지에 대해 알려드리겠습니다. 물론, Android 개발자로서 성공적인 경력을 시작하기 위한 팁도 공유하겠습니다.
왜 안드로이드 개발을 해야 할까요?  개인적인 경험에서.  추론과 사실 - 2

역사부터 시작하겠습니다

나는 많은 사람들이 다른 JavaRush 학생들의 개발/성공 사례를 읽는 것을 좋아한다는 것을 알고 있습니다. 이에 관심을 갖는 것도 옳다. 다른 사람의 실수, 올바른 행동, 경험 등 이 모든 것이 누군가가 실제 상황에서 결정을 내리는 데 유용할 수 있습니다. 하지만 이 모든 이야기에 별로 관심이 없는 사람들도 있습니다. 아래는 이러한 이야기 ​​중 하나이며, 읽는 것은 당신의 욕구에만 달려 있습니다. =) 제가 안드로이드를 처음 접한 것은 2016년 여름이었습니다. 그 당시 저는 Java를 전혀 몰랐습니다. 내가 가진 유일한 지식은 대학 1학년 C/C++ 프로그래밍 경험과 html/css 레이아웃에 대한 약간의 지식뿐이었습니다. 같은 해에 저는 Android OS를 실행하는 첫 번째 스마트폰을 갖게 되었습니다. 나는 그것에 내 자신의 응용 프로그램을 작성하고 실행하려는 열망에 어떻게 압도되었는지 기억합니다. 시간을 낭비하지 않고 연구를 시작했습니다. 그리고 안드로이드 개발을 위한 주요 프로그래밍 언어는 자바라는 사실이 밝혀졌습니다. 절망하지 않고 개발 환경을 준비하고 구성하는 방법을 알려주는 교육 비디오를 보기 시작했습니다. 당시 무료로 제공되었던 인터넷의 모든 강좌를 살펴본 결과 가장 흥미롭고 잘 계획된 강좌는 Alexander Klimov의 강의 였습니다.. 약 2주 동안 18개의 레슨을 마친 후 자유수영을 시작했습니다. 나만의 아이디어가 있었고 Google과 함께 이를 구현하려고 노력했습니다. 나는 대부분의 개발을 xml 마크업에서 수행했습니다. 이는 화면을 시각적으로 표현한 것입니다. Java 코드를 직접 편집해야 하는 경우에는 얻고자 하는 내용에 대한 설명을 Google에 입력하고 기성 코드(대부분 StackOverFlow에서 가져옴)를 복사했습니다. 그런 다음 Android Studio에서 작동할 때까지 편집했습니다. 이 비생산적인 접근 방식을 통해 Java의 기본 지식 없이는 멀리 갈 수 없다는 것이 분명해졌습니다. Android에 대해 한 달 동안 알게 된 후 우연히 아버지가 iOS 개발자로 일하시던 회사에서 Android 애플리케이션을 개발하라는 제안을 받았습니다. 당연히 급여에 대해서는 의문의 여지가 없었고 이는 자발적인 관행이었고 내 코드가 무언가에 유용했다면 최종 제품에 남을 것입니다. 그래서 한 달 안에 나는 XML 레이아웃을 어느 정도 이해하고 응용 프로그램 중 하나의 많은 화면을 다시 디자인할 수 있었습니다. 회사의 주인은 제가 작업한 결과가 고객에게 성공적으로 판매되었다는 소식을 전하고 저에게 100달러의 포상금을 주었습니다. 그래서 저는 아주 아주 아주 적은 급여로 이 회사에서 일했지만 실제 프로젝트에서 배울 수 있는 기회를 얻었습니다. 친절한 직원들의 도움 없이 며칠 동안 이 프로젝트를 조사한 후 저는 Java와 Android 개발의 주요 포인트를 알아냈습니다. 그래서 매달 대학 공부와 직장 공부를 결합했습니다. 2017년 봄에 나는 동급생으로부터 JavaRush 프로젝트에 대해 배웠고, 그녀는 구독을 구입하여 대부분의 과정을 완료했습니다. 나는 관심이 생겼고 그것을 시도하기로 결정했습니다. JavaRush의 무료 부분을 살펴보는 것은 대부분 연구 목적으로 이루어졌습니다. 왜냐하면... 내 지식 수준은 강좌의 대상 청중보다 높았습니다. 지식을 체계화하는 것도 나에게 매우 중요했습니다. 왜냐하면... 나는 한 번에 이것을 놓쳤고 주제에서 주제로 돌진했습니다. 아시다시피, 10개의 레벨을 통과하고 모든 작업을 완료한 후 아주 좋은 책을 읽는 즐거움을 얻었습니다! 지식에서는 마침내 모든 것이 제자리에 놓였습니다. 시간이 부족하고 이전에 많은 주제를 잘 연구했기 때문에 더 이상 진행하지 않았습니다. 이제 나는 같은 회사에서 더 높은 비율로 계속 일하고 있으며 경력 초기에 웃겼던 일을 미소로 기억합니다. 기사를 작성하는 동기는 경쟁일 뿐만 아니라 지식을 구조화해야 할 필요성과 이를 공유하려는 욕구입니다. 이는 제가 Reflection API에 대한 이전 기사 에서 했던 것과 같습니다 .

Android 개발이 초보 Java 프로그래머에게 유망한 방향인 이유는 무엇입니까?

먼저 Android 개발이 무엇인지, 시작하려면 어떤 지식이 필요한지에 대한 일반적인 그림을 설명하겠습니다.
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 3
주요 기술 도구가 Java인 모든 영역 중에서 Android 개발은 이 특정 프로그래밍 언어에 대한 지식 측면에서 가장 까다롭습니다. Android의 많은 Java 기능은 쓸모가 없기 때문에 사용되지 않으며, 일부 기능은 Gradle 빌더의 특정 버전에서 완전히 제외되었습니다. 이와 관련하여 Java 자체에 대한 지식의 시작 임계값은 JavaRush 과정(Java Core 및 Java 구문)을 완료한 수준입니다. 물론 멀티스레딩에 대한 이해를 잊어서는 안 되며, 이러한 경험은 매우 유용할 것입니다. 이러한 Java 지식을 통해 당신은 상당한 자신감을 갖게 될 것입니다. 안드로이드의 UI(User Interface) 부분을 살펴보겠습니다. 애플리케이션 요소의 레이아웃이나 배열은 XML 레이어를 사용하여 수행됩니다. 여기에서 예상되는 결과를 얻으려면 다양한 태그를 결합해야 합니다. HTML 레이아웃을 다루셨다면 꽤 빨리 익숙해지실 것입니다. 그러나 html에 익숙하지 않더라도 복잡한 내용은 없으며 인터넷에는 이 주제에 대한 자료가 많이 있습니다. Android Studio IDE의 xml 마크업 예:
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 4
다음으로 중요한 점은 git 버전 관리 시스템에 대한 지식과 이해입니다. 이 기술 없이 안드로이드 애플리케이션을 개발하는 것은 상상하기 어렵습니다. 하지만 여기서는 고급 전문가가 될 필요가 없습니다. 초보자로서 저장소에 대해 복잡한 조작을 수행할 필요가 거의 없습니다. 또한 터미널을 사용하고 일부 명령을 지속적으로 입력하는 것이 낯설고 git을 사용하는 것이 정확히 이것을 의미하는 경우 모든 분기를 그리고 현재 위치를 명확하게 이해할 수 있는 인기 있는 그래픽 셸 SourceTree가 있습니다. 자, 이제 안드로이드 개발 방향을 선택할 전망에 대해 이야기해 보겠습니다. 위의 내용에도 불구하고 Android 학습에 대한 다소 낮은 문턱 뒤에는 수많은 기회와 개발 경로가 있습니다! Android OS는 상당히 빠르게 발전하는 플랫폼입니다. 거의 매년 새로운 버전이 출시되어 사용자에게는 새로운 기능을 제공하고 개발자에게는 다양한 혜택을 제공합니다. 이와 관련하여 귀하의 작업은 특정 안정 버전을 지원하는 일상으로 바뀌지 않을 것이며 항상 새로운 것이 있을 것이며 항상 이동할 곳이 있을 것입니다. 예를 들어, 얼마 전 Google은 kotlin을 Android의 공식 개발 언어로 발표했습니다. 또한 MVVM(Model-View-ViewModel) 디자인 패턴을 사용하여 Android 애플리케이션을 위한 새로운 아키텍처를 제시했습니다. 플랫폼의 인기를 잊지 마세요.
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 5
경력 성장 측면에서 볼 때, 한 급여에 대해 먼저 코딩하고 잠시 후 다른 급여 등을 지속적으로 코딩할 필요는 없습니다. 최근 인기 있는 직위는 애플리케이션을 감독하고 설계하여 아키텍처에 대한 자신의 비전을 홍보하는 건축가의 직책입니다. 디자인 패턴에 대한 적절한 지식이 있으면 이러한 문이 열릴 것입니다. Android를 실행하는 수많은 가젯과 장치는 모바일 애플리케이션만 작성할 필요가 없음을 시사합니다. 시계, TV, 자동차, 냉장고까지 프로그램을 개발할 수 있습니다! 보시다시피 잠재 고객이 많고 이 목록을 계속할 수 있지만 기사 길이가 상당히 길어질 것 같습니다. 하지만 이러한 모든 가능성을 현실로 만들기 위해 몇 가지 팁을 여러분과 공유하고 싶습니다. 위에서 언급했듯이 Android는 괜찮은 속도로 개발되고 있으며 많은 개발 요소가 단순히 구식이 되어가고 있습니다. 공부하는데 시간을 낭비하지 마세요. 대부분의 경우 새로운 것이 이미 이를 대체했으므로 보다 현대적인 접근 방식을 연구하는 데 시간을 투자하는 것이 좋습니다. 항상 당신보다 이 분야에서 오랫동안 일해 온 사람들의 조언에 귀를 기울이십시오. 때로는 어떤 조언이 Google의 어떤 정보보다 더 가치가 있을 수도 있습니다. 그리고 그런 사람들에게 조언을 구하는 것도 두려워하지 마세요. 예를 들어 Habré 또는 기타 인기 IT 커뮤니티 의 모바일 개발자 기사 요약과 같이 Android 세계에 대한 추가 정보 소스를 찾아보세요 . 여기서 마치겠습니다. 제 글이 여러분이 안드로이드 개발의 세계를 상상하는 데 도움이 되기를 바라며, 유용한 것들을 배웠기를 바랍니다. =) 피드백을 댓글로 남겨주시거나 좋아요를 눌러주세요. 모두에게 감사드리며 모든 Java 방향에서 행운을 빕니다!
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION