JavaRush /Java блогы /Random-KK /Неліктен Android әзірлеу? Жеке тәжірибеден. Дәлелдеу және...
Oleksandr Klymenko
Деңгей
Харків

Неліктен Android әзірлеу? Жеке тәжірибеден. Дәлелдеу және фактілер

Топта жарияланған
Егер сіз java білімін қайда қолдану керектігін әлі шешпегендердің бірі болсаңыз, онда бұл мақала сіз үшін сөзсіз. Мақалада андроидты дамыту сияқты бағыт қарастырылған. Менің Android әзірлеушісі болғанымның тарихы. Android әзірлеуді таңдау бойынша кеңестер мен перспективалар. Кіріңіз!
Неліктен Android әзірлеу?  Жеке тәжірибеден.  Дәлелдеу және фактілер - 1
Сәлем JavaRush студенттері! Сіздердің көпшілігіңізде IT саласындағы қандай салалар біздің сүйікті java-ны қолданатыны туралы түсінікке ие боласыз. Кейбіреулеріңіз шешім қабылдап, өз таңдауыңызды жасаған боларсыз. Бұл мақалада мен Android әзірлеушісі болғанымды айтып беремін. Мен бұл бағытты ең перспективалы деп санайтынымды түсіндіремін. Мен сізге Android дамуының не екенін түсінемін. Және, әрине, мен Android әзірлеушісі ретінде мансабыңызды сәтті бастауға арналған кеңестермен бөлісемін.
Неліктен Android әзірлеу?  Жеке тәжірибеден.  Дәлелдеу және фактілер - 2

Мен тарихтан бастайын

Көптеген адамдар JavaRush-тың басқа студенттерінің даму/табыс оқиғаларын оқығанды ​​ұнататынын өзім білемін. Тіпті бұған қызығушылық танытқаны дұрыс. Басқа адамдардың қателіктері, дұрыс әрекеттері, тәжірибесі - мұның бәрі біреуге нақты жағдайда шешім қабылдауға пайдалы болуы мүмкін. Бірақ бұл оқиғалардың бәріне ерекше қызығушылық танытпайтындар да бар. Төменде осы оқиғалардың бірі және оны оқу тек сіздің қалауыңызға байланысты =) андроидпен алғашқы танысуым 2016 жылдың жазында болды. Ол кезде мен Java тілін мүлде білмедім. Менде жалғыз білім C/C++ тілінде университеттің бірінші курсындағы бағдарламалау тәжірибесі және html/css макетіндегі кейбір білім болды. Сол жылы мен Android ОЖ-мен жұмыс істейтін алғашқы смартфонымды алдым. Мен оған өз қосымшамды жазуға және іске қосуға деген құштарлықтан қалай басылғаным есімде. Уақытты босқа өткізбей, зерттеуге кірістім. Ал Android әзірлеуге арналған негізгі бағдарламалау тілі java екені белгілі болды. Үмітсіз емес, мен әзірлеу ортасын қалай дайындау және конфигурациялау керектігін айтатын оқу бейнелерін қарай бастадым. Сол кездегі Интернеттегі барлық курстарды қарап шыққаннан кейін, ең қызықты және, менің ойымша, жақсы жоспарланған Александр Климовтың сабақтары болды.. Шамамен 2 аптаның ішінде 18 сабақты бітіріп, тегін суға түсуге жол тарттым. Менің жеке идеяларым болды және мен Google-мен бірге оларды жүзеге асыруға тырыстым. Мен әзірлеудің көп бөлігін xml белгілеуінде жүзеге асырдым - бұл экранның көрнекі көрінісі. Егер java codeын тікелей өңдеу қажет болса, мен жай ғана Google-ға алғым келетін нәрсенің сипаттамасын теріп, дайын codeты көшіріп алдым (көбінесе StackOverFlow-тан). Содан кейін Android Studio бағдарламасында оны жұмыс істегенше өңдедім. Бұл өнімсіз тәсіл маған java негіздерін білмейінше мен алысқа жете алмайтынымды түсіндірді. Android туралы бір ай білім алған соң, кездейсоқ маған әкем iOS әзірлеушісі болып жұмыс істеген компанияда Android қосымшаларын әзірлеуді ұсынды. Әрине, ешқандай жалақы туралы мәселе болған жоқ, бұл ерікті тәжірибе болды және егер менің codeым бір нәрсеге пайдалы болса, ол соңғы өнімде қалады. Міне, осылай болды, бір айдың ішінде мен xml орналасуын азды-көпті түсіндім және қолданбалардың бірінің көптеген экрандарын қайта жасай алдым. Компанияның иесі менің жұмысымның нәтижесі тапсырыс берушіге сәтті сатылғанын хабарлады және маған 100 доллар сыйақы берді. Сондықтан мен осы компанияда өте, өте, өте аз жалақыға жұмыс істеуге қалдым, бірақ нақты жобалардан үйрену мүмкіндігі бар. Қайырымды қызметкерлердің көмегінсіз емес, бірнеше күн бойы осы жобаларды зерттегеннен кейін мен java және андроидты әзірлеудің негізгі тұстарын түсіндім. Сөйтіп, ай сайын университеттегі оқуымды жұмыстағы оқумен ұштастырдым. 2017 жылдың көктемінде мен JavaRush жобасы туралы сыныптасымнан білдім, ол жазылым сатып алып, курстың көп бөлігін аяқтады. Қызығушылығым артып, байқап көрейін деп шештім. JavaRush-тың бос бөлігінен өту мен үшін, негізінен, зерттеу мақсатында болды, өйткені... Менің білім деңгейім курстың мақсатты аудиториясынан жоғары болды. Мен үшін білімімді құрылымдау да өте маңызды болды, өйткені... Тақырыптан тақырыпқа асығып, осыны сағындым. Білесіз бе, 10 деңгейден өтіп, барлық тапсырмаларды орындағаннан кейін мен өте жақсы кітапты оқудан ләззат алдым! Білімде бәрі ақыры өз орнына түсті. Уақыттың аздығынан, сондай-ақ бұрын көп тақырыптар жақсы оқылғандықтан әрі қарай жылжымадым. Қазір мен сол компанияда жоғары қарқынмен жұмыс істеймін және мансабымның ең басында болған күлкілі тапсырмаларымды күлімсіреп еске аламын. Мақалаларды жазуға мотивация - бұл бәсекелестік, сондай-ақ біліміңізді құрылымдау қажеттілігі және оны бөлісуге деген ұмтылыс, бұл менің Reflection API туралы алдыңғы мақаламда жасадым .

Неліктен Android әзірлеу Java бастаушы бағдарламашы үшін перспективалы бағыт болып табылады?

Мен Android әзірлеу деген не және оны бастау үшін қандай білім қажет екендігінің жалпы көрінісін сипаттаудан бастаймын.
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 3
Негізгі техникалық құрал java болып табылатын барлық салалардың ішінде Android әзірлеу осы нақты бағдарламалау тілін білу тұрғысынан ең талап етілмейтіні болып табылады. Android жүйесіндегі көптеген java мүмкіндіктері олардың пайдасыздығына байланысты пайдаланылмайды және олардың көпшілігі gradle құрастырушысының белгілі нұсқаларында толығымен алынып тасталды. Осыған байланысты, java тілін білудің өзі үшін кіру шегі аяқталған JavaRush курстарының деңгейінде: java core және java синтаксисі. Әрине, көп ағынды түсінуді ұмытпау керек, мұнда мұндай тәжірибе өте пайдалы болады. Осындай Java білімі арқылы сіз өзіңізді сенімді сезінесіз. Android жүйесінің UI (Пайдаланушы интерфейсі) бөлігін қарастырайық. Қолданба элементтерінің орналасуы немесе орналасуы xml қабаттарының көмегімен жүзеге асырылады. Мұнда күтілетін нәтижені алу үшін әртүрлі тегтерді біріктіру керек. Егер сіз html орналасуымен айналысқан болсаңыз, оны тез меңгересіз. Бірақ сіз html-мен таныс болмасаңыз да, бұл туралы күрделі ештеңе жоқ және Интернетте бұл тақырып бойынша көптеген материалдар бар. Android Studio IDE ішіндегі xml белгілеу мысалы:
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 4
Әрі қарай, маңызды мәселе - git нұсқасын басқару жүйесін білу және түсіну. Бұл технологиясыз Android қосымшасын жасауды елестету қиын. Бірақ мұнда білікті маман болудың қажеті жоқ. Жаңадан бастаушы ретінде сізге репозиториймен күрделі манипуляцияларды сирек орындау қажет болады. Сондай-ақ, егер терминалды пайдалану және кейбір пәрмендерді үнемі енгізу сізге жат болса және git пайдалану дәл осыны білдірсе, онда SourceTree танымал графикалық қабығы бар , ол сіздің барлық тармақтарыңызды тартады және сіздің қай жерде екеніңізді нақты түсінуге мүмкіндік береді. Енді Android-ті дамыту бағытын таңдау перспективалары туралы сөйлесейік. Жоғарыда айтылғандарға қарамастан, Android жүйесін үйренуге кірудің өте төмен шегінің артында көптеген мүмкіндіктер мен даму жолдары жатыр! Android операциялық жүйесі - өте қарқынды дамып келе жатқан платформа. Жыл сайын дерлік жаңа нұсқа шығарылады, ол пайдаланушылар үшін жаңа мүмкіндіктер мен әзірлеушілер үшін әртүрлі жақсылықтар әкеледі. Осыған байланысты сіздің жұмысыңыз ешқашан белгілі бір тұрақты нұсқаны қолдаудың күнделікті тәртібіне айналмайды, әрқашан жаңа нәрсе болады, әрқашан қозғалатын жер болады. Мысалы, жақында Google Android үшін ресми әзірлеу тілі ретінде kotlin жариялады. Сондай-ақ олар MVVM (Model-View-ViewModel) дизайн үлгісін пайдаланып Android қолданбасының жаңа архитектурасын ұсынды. Платформаның танымалдығы туралы ұмытпаңыз:
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 5
Мансаптық өсу тұрғысынан алдымен бір жалақыға, ал біраз уақыттан кейін екіншісіне және т.б. үшін үнемі codeтаудың қажеті жоқ. Жақында танымал позиция - сәулетші, оның міндеті қосымшаларды бақылау және жобалау, оның архитектурасы туралы көзқарасын алға жылжыту. Дизайн үлгілерін дұрыс білу арқылы бұл есіктер сіз үшін ашық болады. Android жүйесінде жұмыс істейтін гаджеттер мен құрылғылардың көптігі тек мобильді қосымшаларды жазудың қажеті жоқ екенін көрсетеді. Сіз сағаттар, теледидарлар, автомобильдер және тіпті тоңазытқыштар үшін бағдарламалар жасай аласыз! Көріп отырғаныңыздай, көптеген перспективалар бар және бұл тізімді жалғастыруға болады, бірақ мен мақаланың көлемі өте үлкен болады деп қорқамын. Бірақ осы мүмкіндіктердің барлығын шындыққа айналдыру үшін мен сіздермен бірнеше кеңестермен бөліскім келеді. Жоғарыда айтылғандай, Android лайықты жылдамдықпен дамып келеді және көптеген даму элементтері жай ғана ескіреді. Оларды зерттеуге уақытыңызды жоғалтпаңыз. Бұлардың орнын жаңалары басып қойған болуы мүмкін, уақытыңызды заманауи тәсілдерді зерттеуге арнағаныңыз жөн. Әрқашан осы салада сізден көп уақыт жұмыс істегендердің кеңестерін тыңдаңыз, кейде кейбір кеңестер Google-дағы кез келген ақпараттан құндырақ болады. Сондай-ақ мұндай адамдардан кеңес сұраудан қорықпаңыз. Android әлемі туралы қосымша ақпарат көзін табыңыз, мысалы, Habré немесе басқа танымал АТ қауымдастықтарындағы мобильді әзірлеушілер мақалаларының дайджесттері. Мен осы жерде аяқтаймын. Менің мақалам Android әзірлеу әлемін елестетуге көмектесті деп үміттенемін және сіз аздап пайдалы болдыңыз =) Пікірлеріңізді түсініктемелерде жазыңыз немесе ұнатулар арқылы қолдау көрсетіңіз. Барлығыңызға рахмет және кез келген java бағытында сәттілік!
Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION