{"id":297345,"date":"2020-01-19T15:00:21","date_gmt":"2020-01-19T15:00:21","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=297345"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=297345","title":{"rendered":"\u0414\u0430\u0439\u0434\u0436\u0435\u0441\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 #329 (13 \u2014 19 \u044f\u043d\u0432\u0430\u0440\u044f)"},"content":{"rendered":"\n<div class=\"post__text post__text-html\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/company\/digital-ecosystems\/blog\/484542\/\">\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043d\u043e\u0432\u044b\u043c \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u043e\u043c \u2014 \u0432 \u043d\u0435\u043c \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u044b \u0438 \u044f\u0437\u044b\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0433\u043e\u0434\u043e\u0432\u043e\u0439 \u043e\u0442\u0447\u0435\u0442 App Annie \u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f Duolingo. <\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/r2\/uj\/_x\/r2uj_xntnvrutmozyow0w8jz_mi.png\"><a name=\"habracut\"><\/a><\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td width=\"150\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/vo\/rn\/u7\/vornu7hu0kjkmk1jwluuqb1usj4.jpeg\" width=\"150\"><\/td>\n<td>\n<h3><a href=\"https:\/\/habr.com\/ru\/company\/X5RetailGroup\/blog\/484220\/\">\u0414\u043e\u0441\u0442\u0430\u0432\u043a\u0443 \u0437\u0430\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438? \u041a\u0430\u043a \u00ab\u041f\u0435\u0440\u0435\u043a\u0440\u0451\u0441\u0442\u043e\u043a\u00bb \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 6000 \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u0432 \u0434\u0435\u043d\u044c<\/a><\/h3>\n<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p> \u041c\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u0441\u0430\u0439\u0442 \u0432 2017-\u043c. \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u0441\u0440\u0435\u0434\u043d\u044f\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u043a\u043e\u043b\u043e 6 000 \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u0432 \u0441\u0443\u0442\u043a\u0438. \u0421 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0432\u0440\u043e\u0434\u0435 \u043a\u0430\u043a \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e, \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u2014 \u0432\u0441\u0451 \u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u043e \u043d\u0435 \u0440\u0430\u0437\u043c\u0430\u0437\u0430\u043d\u043e \u0440\u043e\u0432\u043d\u044b\u043c \u0441\u043b\u043e\u0435\u043c \u043d\u0430 24 \u0447\u0430\u0441\u0430, \u043b\u044e\u0434\u0438 \u043d\u0435 \u0437\u0430\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b \u043a\u0440\u0443\u0433\u043b\u043e\u0441\u0443\u0442\u043e\u0447\u043d\u043e, \u0437\u0434\u0435\u0441\u044c \u0442\u043e\u0436\u0435 \u0435\u0441\u0442\u044c \u043f\u043e\u0434\u0432\u044f\u0437\u043a\u0430 \u043d\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0443\u044e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f.   <\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td width=\"150\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/dw\/ai\/vo\/dwaivox52mibzevzhhzr_apv4c8.png\" width=\"150\"><\/td>\n<td>\n<h3><a href=\"https:\/\/habr.com\/ru\/company\/dodopizzadev\/blog\/481200\/\">Voice Control \u0438 VoiceOver: \u043a\u0430\u043a \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043d\u0435\u0437\u0440\u044f\u0447\u0438\u0445 \u0438\u043b\u0438 \u043d\u0435\u043f\u043e\u0434\u0432\u0438\u0436\u043d\u044b\u0445<\/a><\/h3>\n<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p> \u0422\u0435\u043b\u0435\u0444\u043e\u043d \u0434\u0430\u0432\u043d\u043e \u0441\u0442\u0430\u043b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435\u043c \u043c\u0435\u043d\u044f, \u0438 \u044f \u0441\u043b\u0430\u0431\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u0441\u0432\u043e\u044e \u0436\u0438\u0437\u043d\u044c \u0431\u0435\u0437 \u043f\u0430\u0440\u044b \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0441\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0434\u0435\u043d\u044c. \u041d\u043e \u043a\u0430\u043a \u0431\u044b\u0442\u044c \u0442\u0435\u043c, \u043a\u0442\u043e \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432\u0437\u044f\u0442\u044c \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0432 \u0440\u0443\u043a\u0443 \u0438\u043b\u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u044d\u043a\u0440\u0430\u043d?<\/p>\n<p>  <b>\u042d\u0442\u043e\u0442 \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432 \u0432\u0438\u0434\u0435 \u0435\u0436\u0435\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e\u0439 <a href=\"http:\/\/apptractor.us3.list-manage2.com\/subscribe?u=fbdb52f18301080a3cc983f4b%5E_%5Eamp%5E_%5Eid=bb7bc0a9c0\">\u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0438<\/a>. \u0410 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e \u043d\u043e\u0432\u043e\u0441\u0442\u0438 \u043c\u044b \u0440\u0430\u0441\u0441\u044b\u043b\u0430\u0435\u043c \u0432 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/5e\/k7\/bf\/5ek7bfhjzilma-pbharuioaa7lw.png\"><a href=\"https:\/\/t.me\/apptractor\">Telegram-\u043a\u0430\u043d\u0430\u043b\u0435<\/a>.<\/b><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/f19\/30a\/c49\/f1930ac4945596eb9707bc7a01bc5bdc.png\"> <b>iOS<\/b><\/p>\n<p>  \u2022 <font color=\"green\">(+25)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/badoo\/blog\/483830\/\">\u0420\u043e\u0443\u0442\u0438\u043d\u0433 \u0434\u043b\u044f iOS: \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022 <font color=\"green\">(+21)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/vk\/blog\/481626\/\">\u0421\u043b\u043e\u0436\u043d\u044b\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439 \u0432 iOS: \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043b\u0435\u043d\u0442\u044b \u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435<\/a><br \/>  \u2022 <font color=\"green\">(+3)<\/font> <a href=\"https:\/\/habr.com\/ru\/post\/483882\/\">Unit \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 Clean Swift<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/news\/apple-xnor-ai.html\">Apple \u043a\u0443\u043f\u0438\u043b\u0430 \u0418\u0418-\u0441\u0442\u0430\u0440\u0442\u0430\u043f Xnor.ai<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/better-programming\/may-i-see-the-swiftui-menu-please-b9d40246c2f5\">\u041c\u043e\u0433\u0443 \u043b\u0438 \u044f \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043c\u0435\u043d\u044e SwiftUI, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430?<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/flawless-app-stories\/the-best-architecture-for-ios-app-does-it-even-exist-3af357ac62e7\">\u041b\u0443\u0447\u0448\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0434\u043b\u044f iOS-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u043e\u043e\u0431\u0449\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442?<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/better-programming\/gaud%C3%AD-for-ios-theming-and-dark-mode-86fe8fe60aeb\">Gaud\u00ed \u0434\u043b\u044f iOS: \u0442\u0435\u043c\u044b \u0438 \u0442\u0435\u043c\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/flawless-app-stories\/swift-ui-movie-booking-app-b1a9806bc9ec\">Swift UI: \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0431\u0440\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0438\u043b\u044c\u043c\u043e\u0432<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/blog.uptech.team\/tips-tricks-for-ios-app-debugging-d715a02dc7d9\">\u0421\u043e\u0432\u0435\u0442\u044b \u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043f\u043e \u043e\u0442\u043b\u0430\u0434\u043a\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0434\u043b\u044f iOS<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/swlh\/swiftui-create-a-stretchable-header-with-parallax-scrolling-4a98faeeb262\">SwiftUI: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0440\u0430\u0441\u0442\u044f\u0433\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430 \u0441 \u043f\u0430\u0440\u0430\u043b\u043b\u0430\u043a\u0441\u043e\u043c<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/dolap-tech\/hidden-gems-of-uistackview-3b94a0001d29\">\u0421\u043a\u0440\u044b\u0442\u044b\u0435 \u0441\u043e\u043a\u0440\u043e\u0432\u0438\u0449\u0430 UIStackView<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/flawless-app-stories\/realitykit-synchronization-289ba9409a6e\">\u041d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 RealityKit: \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u0430\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/better-programming\/how-to-implement-viper-architecture-in-your-ios-app-rest-api-and-kingfisher-f494a0891c43\">\u041a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 VIPER \u0432 iOS-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Swift 5<\/a><br \/>  <a href=\"https:\/\/apptractor.ru\/info\/github\/sotabbar.html\">SOTabBar: \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0439 TabBar \u0434\u043b\u044f iOS<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/e1a\/3cf\/2a8\/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png\"> <b>Android<\/b><\/p>\n<p>  \u2022 <font color=\"green\">(+17)<\/font> <a href=\"https:\/\/habr.com\/ru\/post\/483878\/\">\u041a\u0430\u043a \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e\u0431 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u0445 Android \u0437\u0430 15 \u043c\u0438\u043d\u0443\u0442<\/a><br \/>  \u2022 <font color=\"green\">(+3)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/484100\/\">\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c \u0432 Google Maps SDK \u0434\u043b\u044f Android<\/a><br \/>  \u2022 <font color=\"green\">(0)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/484526\/\">\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 sdl2 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043d\u0430 android<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/apps\/github-android.html\">GitHub \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b \u0431\u0435\u0442\u0443 \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f Android<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/news\/open-letter-google.html\">\u041f\u0440\u0430\u0432\u043e\u0437\u0430\u0449\u0438\u0442\u043d\u0438\u043a\u0438 \u043f\u0440\u043e\u0441\u044f\u0442 Google \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/media\/android-broadcast-4.html\">Android Broadcast #4: \u00ab\u041f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u043a\u043e\u0440\u0443\u0442\u0438\u043d\u043e\u0432\u00bb c \u0418\u043b\u044c\u043c\u0438\u0440\u043e\u043c \u0423\u0441\u043c\u0430\u043d\u043e\u0432\u044b\u043c<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/proandroiddev.com\/migrating-to-viewpager2-89354b9b068d\">\u041c\u0438\u0433\u0440\u0430\u0446\u0438\u044f \u043d\u0430 ViewPager2<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/infinum.com\/the-capsized-eight\/how-to-prepare-your-android-app-for-a-pentest\">\u041a\u0430\u043a \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f Android \u043a \u043f\u0435\u043d\u0442\u0435\u0441\u0442\u0443<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/android.jlelse.eu\/11-golden-rules-for-android-app-development-13b0361ded4c\">11 \u0437\u043e\u043b\u043e\u0442\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u0434\u043b\u044f Android-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/halcyon-mobile\/modern-features-to-consider-for-your-android-app-ff7fa5301bb1\">\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0433\u043e Android-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/better-programming\/deep-dive-into-jetpack-compose-b09713760019\">\u0413\u043b\u0443\u0431\u043e\u043a\u043e\u0435 \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 Jetpack Compose<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/swlh\/kotlin-killer-features-for-programmers-and-software-engineers-part-1-beba24474dbd\">\u041a\u0438\u043b\u043b\u0435\u0440-\u0444\u0438\u0447\u0438 Kotlin \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/better-programming\/r8-shrinking-in-android-27f3edbbad9e\">\u0423\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 R8 \u0432 Android<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/proandroiddev.com\/kotlin-multiplatform-mvvm-clean-architecture-f20b99f90b95\">Kotlin Multiplatform \u2014 MVVM \u0438 \u0427\u0438\u0441\u0442\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/becominghuman.ai\/designing-decision-trees-from-scratch-on-android-68bf7ee0d01a\">\u041f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0441 \u043d\u0443\u043b\u044f \u043d\u0430 Android<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/proandroiddev.com\/maximizing-code-sharing-between-android-and-ios-with-kotlin-multiplatform-85d58d0a2cf1\">\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u043c\u0435\u0436\u0434\u0443 Android \u0438 iOS \u0441 Kotlin Multiplatform<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/android.jlelse.eu\/virtual-machine-in-android-everything-you-need-to-know-9ec695f7313b\">\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u0430\u0448\u0438\u043d\u0430 \u0432 Android: \u0432\u0441\u0435, \u0447\u0442\u043e \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0437\u043d\u0430\u0442\u044c<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/default-to-open\/handling-lifecycle-with-view-binding-in-fragments-a7f237c56832\">\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u043c \u0446\u0438\u043a\u043b\u043e\u043c \u0441 View Binding \u0432 Fragments<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/swlh\/kotlin-chat-tutorial-the-clean-way-fca8f754aeb3\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0447\u0430\u0442\u0430 \u043d\u0430 Kotlin: \u0447\u0438\u0441\u0442\u044b\u0439 \u043f\u0443\u0442\u044c<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/kotlin-pokedex.html\">Kotlin Pokedex: \u044d\u043d\u0446\u0438\u043a\u043b\u043e\u043f\u0435\u0434\u0438\u044f \u043f\u043e\u043a\u0435\u043c\u043e\u043d\u043e\u0432 \u043d\u0430 Kotlin<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/medium.com\/better-programming\/5-android-libraries-to-inspire-the-designer-in-you-bbe000286cb9\">5 Android-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u044f\u0442 \u0432 \u0432\u0430\u0441 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0430<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/708\/1c6\/34e\/7081c634ec176ab6b953d9d19e82a09a.png\"> <b>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430<\/b><\/p>\n<p>  \u2022 <font color=\"green\">(+43)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/pvs-studio\/blog\/484166\/\">VVVVVV??? VVVVVV!!! \ud83d\ude42<\/a> +\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/483874\/\">\u041f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430 VVVVVV \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0433\u0440\u0443\u0431\u043e \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0438\u0433\u0440\u044b \u0432\u043d\u0443\u0442\u0440\u0438<\/a><br \/>  \u2022 <font color=\"green\">(+26)<\/font> <a href=\"https:\/\/habr.com\/ru\/company\/pixonic\/blog\/484172\/\">\u041d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0432 Unity: \u043a\u0430\u043a \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0441\u0431\u043e\u0440\u043e\u043a \u0438 \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441\u044b + \u043f\u0430\u0439\u043f\u043b\u0430\u0439\u043d \u0432 \u043f\u043e\u0434\u0430\u0440\u043e\u043a<\/a><br \/>  \u2022 <font color=\"green\">(+21)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/482928\/\">\u0417\u0440\u0435\u043d\u0438\u0435 \u0425\u0438\u0449\u043d\u0438\u043a\u0430: \u044d\u0444\u0444\u0435\u043a\u0442 \u0442\u0435\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0438\u0434\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022 <font color=\"green\">(+10)<\/font> <a href=\"https:\/\/habr.com\/ru\/post\/483954\/\">\u0410\u043d\u043e\u043d\u0441 Global Game Jam 2020 \u0432 \u043a\u043e\u043d\u0446\u0435 \u044f\u043d\u0432\u0430\u0440\u044f<\/a><br \/>  \u2022 <font color=\"green\">(+7)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/484094\/\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0437\u043e\u043c\u0431\u0438-\u0448\u0443\u0442\u0435\u0440\u0430 \u043e\u0442 \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e \u043b\u0438\u0446\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e DOTS<\/a><br \/>  \u2022 <font color=\"green\">(+6)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/484176\/\">\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u00ab\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u00bb \u0432 Unity<\/a><br \/>  \u2022 <font color=\"green\">(+5)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/483468\/\">\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u044b \u043d\u0430 Flutter \u2014 \u044d\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e<\/a><br \/>  \u2022 <font color=\"green\">(+5)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/484506\/\">\u042f \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444 \u0438 \u044f \u0441\u0434\u0435\u043b\u0430\u044e \u0441\u0430\u043c \u0441\u0435\u0431\u0435 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442<\/a><br \/>  \u2022 <font color=\"green\">(+5)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/maxilect\/blog\/484218\/\">\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e: \u043a\u0430\u043a \u043c\u044b \u0443\u0441\u043a\u043e\u0440\u0438\u043b\u0438 \u0430\u0432\u0442\u043e\u0442\u0435\u0441\u0442\u044b \u0432 3-4 \u0440\u0430\u0437\u0430, \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0432 \u0441\u0442\u0430\u0440\u044b\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/measure\/user-analytics\/make-sense-76.html\">make sense #76: \u043e \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u043c\u043e\u0434\u0435\u043b\u0438 \u043c\u0435\u0442\u0440\u0438\u043a \u0438 \u0438\u043d\u0441\u0430\u0439\u0442\u0430\u0445 \u0438\u0437 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/media\/mobile-people-talks-security.html\">Mobile People Talks: \u0412\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 iOS, Android \u0438 \u0432\u0441\u044f\u043a\u0438\u0435 \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0438\u0437\u043c\u0443 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/media\/podlodka-146.html\">Podlodka #146: \u0418\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/news\/cocos-play.html\">Cocos \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0446\u0435\u043d\u0442\u0440\u044b \u043c\u0438\u043d\u0438-\u0438\u0433\u0440 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/develop\/game-engines-2019.html\">\u0421\u0430\u043c\u044b\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0438\u0433\u0440\u043e\u0432\u044b\u0435 \u0434\u0432\u0438\u0436\u043a\u0438 2019<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/reyting-yazyikov-programmirovaniya-2020\">\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043f\u043e\u0434 iOS \u0438 Android: \u0440\u0435\u0439\u0442\u0438\u043d\u0433 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f 2020<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/articles\/icon-libraries.html\">\u0411\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0435 \u0438\u043a\u043e\u043d\u043a\u0438: 15 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/develop\/app-constructors\/google-appsheet.html\">Google \u043a\u0443\u043f\u0438\u043b \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 AppSheet<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/news\/c-2019.html\">\u0421 \u0441\u0442\u0430\u043b \u044f\u0437\u044b\u043a\u043e\u043c \u0433\u043e\u0434\u0430 \u043f\u043e \u0432\u0435\u0440\u0441\u0438\u0438 TIOBE\u00a0<\/a><br \/>  \u2022 <a href=\"https:\/\/ux.pub\/potomu-chto-tsveta-eto-krasivo\/\">\u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0446\u0432\u0435\u0442\u0430 \u2013 \u044d\u0442\u043e \u043a\u0440\u0430\u0441\u0438\u0432\u043e. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u0446\u0432\u0435\u0442\u043e\u0432\u043e\u0439 \u043f\u0430\u043b\u0438\u0442\u0440\u044b \u0434\u043b\u044f IBM<\/a><br \/>  \u2022 <a href=\"https:\/\/vc.ru\/tribuna\/100922-voyti-v-it-i-digital-s-neprofilnym-obrazovaniem-i-zapustit-svoe-mobilnoe-prilozhenie\">\u0412\u043e\u0439\u0442\u0438 \u0432 IT \u0438 digital \u0441 \u043d\u0435\u043f\u0440\u043e\u0444\u0438\u043b\u044c\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0432\u043e\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/uxdesign.cc\/a-guide-to-adding-animations-to-your-product-examples-and-tools-7350af66cf78\">\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438 \u0432 \u0432\u0430\u0448 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u2014 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/uxdesign.cc\/micro-habits-ui-design-patterns-4b2b7c1b4f07?gi=d50f76575bd4\">7 UI-\u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0432\u044b\u0447\u0435\u043a: \u0440\u0430\u0437\u0431\u043e\u0440 \u043a\u0435\u0439\u0441\u0430<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@alexkatrompas\/the-fall-of-the-software-engineer-the-rise-of-the-programmer-technician-451a572d28b0\">\u041f\u0430\u0434\u0435\u043d\u0438\u0435 Software Engineer, \u0432\u043e\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 Programmer Technician<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/uxdesign.cc\/7-tips-for-dropdown-menu-design-da86d548584c\">7 \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u043f\u043e \u0434\u0438\u0437\u0430\u0439\u043d\u0443 \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u043d\u044e<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/better-programming\/monitor-your-flutter-apps-health-end-to-end-with-github-actions-8a9fb1889c6a\">\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 Flutter-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e GitHub Actions<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/uxdesign.cc\/creating-a-mobile-app-as-a-side-project-ux-and-dev-collaboration-356d5cb6ddc4\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a\u0430\u043a \u043f\u043e\u0431\u043e\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u2014 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0430 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/flutter-community\/custom-scroll-physics-in-flutter-3224dd9e9b41\">\u041a\u0430\u0441\u0442\u043e\u043c\u043d\u0430\u044f \u0444\u0438\u0437\u0438\u043a\u0430 \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u0438 \u0432\u043e Flutter<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/blog.uptech.team\/quick-and-easy-firebase-app-distribution-with-circleci-and-fastlane-93a0cefbd10\">\u0411\u044b\u0441\u0442\u0440\u043e\u0435 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 Firebase \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e CircleCI \u0438 Fastlane<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/levelup.gitconnected.com\/making-a-flutter-todo-app-from-scratch-part-1-bd66608b1818\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 Todo-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 Flutter \u0441 \u043d\u0443\u043b\u044f<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/game-off-2019.html\">\u041f\u043e\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u0438 Game Off 2019<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/mono.html\">Mono: \u0448\u0440\u0438\u0444\u0442 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/509\/dc9\/bde\/509dc9bde69347ecbe0c21ff2973d7e7.jpg\"> <b>\u0410\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430, \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433 \u0438 \u043c\u043e\u043d\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u044f<\/b><\/p>\n<p>  \u2022 <a href=\"https:\/\/apptractor.ru\/measure\/user-analytics\/state-of-mobile-2020.html\">\u0413\u043e\u0434\u043e\u0432\u043e\u0439 \u043e\u0442\u0447\u0435\u0442 State of Mobile 2020 \u043e\u0442 App Annie: \u0440\u043e\u0441\u0441\u0438\u044f\u043d\u0435 \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u043b\u0438 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 \u0431\u043e\u043b\u0435\u0435 $1 \u043c\u043b\u0440\u0434<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/test\/split-testing\/duolingo-1.html\">Duolingo: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u043d\u0430 1% \u043a\u0430\u0436\u0434\u0443\u044e \u043d\u0435\u0434\u0435\u043b\u044e<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/news\/fleeceware-600.html\">\u0410\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438 \u043d\u0430\u0448\u043b\u0438 Fleeceware-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0443 600 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/marketing-monetization\/app-store-optimization\/sistematicheskiy-podhod-k-aso-c-cro-tsiklom.html\">\u0421\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a ASO c CRO-\u0446\u0438\u043a\u043b\u043e\u043c<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/measure\/app-store-analytics\/itogi-2019-goda-odnoklassnikov.html\">\u0414\u043e\u0445\u043e\u0434\u044b \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0438\u0433\u0440 \u0432 \u041e\u0434\u043d\u043e\u043a\u043b\u0430\u0441\u0441\u043d\u0438\u043a\u0430\u0445 \u0432\u044b\u0440\u043e\u0441\u043b\u0438 \u0432 2 \u0440\u0430\u0437\u0430<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/techhype\/classpass.html\">ClassPass \u0441\u0442\u0430\u043b \u0435\u0434\u0438\u043d\u043e\u0440\u043e\u0433\u043e\u043c<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/measure\/app-store-analytics\/2019-data-digest.html\">\u0421\u0430\u043c\u044b\u0435 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0438\u0433\u0440\u044b 2019 \u0433\u043e\u0434\u0430<\/a><br \/>  \u2022 <a href=\"https:\/\/vc.ru\/marketing\/101295-zachem-skyeng-pokupaet-reklamu-na-besplatnyy-produkt\">\u0417\u0430\u0447\u0435\u043c Skyeng \u043f\u043e\u043a\u0443\u043f\u0430\u0435\u0442 \u0440\u0435\u043a\u043b\u0430\u043c\u0443 \u043d\u0430 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442<\/a><br \/>  \u2022 <a href=\"https:\/\/vc.ru\/services\/100900-komu-nuzhny-optimizatory-app-store-i-kak-podruzhitsya-s-apple-intervyu-s-osnovatelem-servisa-splitmetrics-iz-minska\">\u041a\u043e\u043c\u0443 \u043d\u0443\u0436\u043d\u044b \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0442\u043e\u0440\u044b App Store \u0438 \u043a\u0430\u043a \u043f\u043e\u0434\u0440\u0443\u0436\u0438\u0442\u044c\u0441\u044f \u0441 Apple: \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0441 \u043e\u0441\u043d\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430 SplitMetrics \u0438\u0437 \u041c\u0438\u043d\u0441\u043a\u0430<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/853\/812\/9f5\/8538129f5e7b404a720121cb9c3814db.jpg\"> <b>AI, \u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, IoT<\/b><\/p>\n<p>  \u2022 <font color=\"green\">(+28)<\/font> <a href=\"https:\/\/habr.com\/ru\/company\/pvs-studio\/blog\/484208\/\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0432 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0430\u043d\u0430\u043b\u0438\u0437\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c<\/a><br \/>  \u2022 <font color=\"green\">(+20)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/484214\/\">\u0422\u0435\u043d\u0437\u043e\u0440\u044b \u0432 TensorFlow<\/a><br \/>  \u2022 <font color=\"green\">(+9)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/483922\/\">\u0423\u043c\u043d\u044b\u0439 \u0434\u043e\u043c \u043d\u0430 \u043a\u043e\u043b\u0435\u0441\u2026 \u0410\u043b\u0438\u0441\u0430\u0445<\/a><br \/>  \u2022 <font color=\"green\">(+8)<\/font>\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/484296\/\">Lytko \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u0442<\/a><br \/>  \u2022 <a href=\"https:\/\/apptractor.ru\/info\/news\/amazon-autogluon.html\">Amazon AutoGluon \u0441\u043e\u0437\u0434\u0430\u0435\u0442 ML-\u043c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 3 \u0441\u0442\u0440\u043e\u0447\u043a\u0438 \u043a\u043e\u0434\u0430<\/a><\/p>\n<p>  \u2190 <a href=\"https:\/\/habr.com\/ru\/company\/digital-ecosystems\/blog\/482726\/\">\u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442<\/a>. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u0438\u043b\u0438 \u0432\u044b \u043d\u0430\u0448\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0443 \u2014 \u043f\u0440\u0438\u0448\u043b\u0438\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432 <a href=\"mailto:lbogolubov@gmail.com\">\u043f\u043e\u0447\u0442\u0443<\/a>.<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/digital-ecosystems\/blog\/484542\/\"> https:\/\/habr.com\/ru\/company\/digital-ecosystems\/blog\/484542\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/company\/digital-ecosystems\/blog\/484542\/\">\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043d\u043e\u0432\u044b\u043c \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u043e\u043c \u2014 \u0432 \u043d\u0435\u043c \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u044b \u0438 \u044f\u0437\u044b\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0433\u043e\u0434\u043e\u0432\u043e\u0439 \u043e\u0442\u0447\u0435\u0442 App Annie \u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f Duolingo. <\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/r2\/uj\/_x\/r2uj_xntnvrutmozyow0w8jz_mi.png\"><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-297345","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/297345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=297345"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/297345\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=297345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=297345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=297345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}