{"id":401188,"date":"2024-06-29T15:41:36","date_gmt":"2024-06-29T15:41:36","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=401188"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2024-06-29T15:41:36","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=401188","title":{"rendered":"<span>\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 #416 (18 \u2014 24 \u043e\u043a\u0442\u044f\u0431\u0440\u044f)<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\u0412 \u043d\u0430\u0448\u0435\u043c \u043d\u043e\u0432\u043e\u043c \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u044f App Tracking Transparency \u0438 \u0431\u043e\u0440\u044c\u0431\u0430 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438, \u043d\u043e\u0432\u044b\u0435 MacBook Pro \u0438 \u043b\u0435\u0442\u0430\u044e\u0449\u0430\u044f \u043f\u0438\u0446\u0446\u0430, \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434, \u043e\u0444\u0444\u0431\u043e\u0440\u0434\u0438\u043d\u0433, \u0442\u0440\u0430\u0442\u044b \u0436\u0438\u0442\u0435\u043b\u0435\u0439 \u0440\u0430\u0437\u043d\u044b\u0445 \u0441\u0442\u0440\u0430\u043d \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435!<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/wq\/sh\/pl\/wqshploq6h-pzsav7gfk8b9eptm.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/wq\/sh\/pl\/wqshploq6h-pzsav7gfk8b9eptm.jpeg\" data-blurred=\"true\"\/><a name=\"habracut\"><\/a><\/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&amp;id=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\/r\/w1560\/webt\/5e\/k7\/bf\/5ek7bfhjzilma-pbharuioaa7lw.png\" data-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\/r\/w1560\/getpro\/habr\/post_images\/f19\/30a\/c49\/f1930ac4945596eb9707bc7a01bc5bdc.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/f19\/30a\/c49\/f1930ac4945596eb9707bc7a01bc5bdc.png\"\/> <b>iOS<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/funcorp\/blog\/584476\/\">App Tracking Transparency: \u0447\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u043e\u0441\u044c \u0441 \u043d\u043e\u0432\u043e\u0439 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 Apple<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/marketing-monetization\/ad-networks\/kak-att-povliyal-na-mobilnuyu-reklamu.html\">\u041a\u0430\u043a ATT \u043f\u043e\u0432\u043b\u0438\u044f\u043b \u043d\u0430 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0440\u0435\u043a\u043b\u0430\u043c\u0443?<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/indriver\/blog\/583748\/\">\u0411\u043e\u0440\u044c\u0431\u0430 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438: \u043a\u0430\u043a \u043c\u044b \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u043b\u0438 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430 SwiftPM (\u0438 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0435\u0449\u0435 \u0445\u0443\u0436\u0435, \u0447\u0435\u043c \u0431\u044b\u043b\u043e)<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/584100\/\">\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0436\u0435\u0441\u0442\u043e\u0432 \u0432 iOS<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/584148\/\">Composable Contexts Architecture<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/learn\/apple-zapuskaet-tech-talks.html\">Apple \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 Tech Talks<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/devices\/novye-macbook-pro-s-chipami-m1-pro-i-m1-max.html\">\u041d\u043e\u0432\u044b\u0435 MacBook Pro \u0441 \u0447\u0438\u043f\u0430\u043c\u0438 M1 Pro \u0438 M1 Max<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/devices\/apple-predstavlyaet-airpods-novogo-pokoleniya.html\">Apple \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 AirPods \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/uxplanet.org\/ios-navigation-styles-and-which-one-should-we-choose-in-apps-52d06524254e\">\u0421\u0442\u0438\u043b\u0438 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438 iOS \u0438 \u043a\u0430\u043a\u043e\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0434\u043b\u044f \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\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/betterprogramming.pub\/6-principles-to-write-better-modules-for-your-ios-applications-3257c26e5df2\">6 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043b\u0443\u0447\u0448\u0438\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0438\u0445 iOS-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/khanlou.com\/2021\/10\/download-progress-with-awaited-network-tasks\/\">\u041f\u0440\u043e\u0433\u0440\u0435\u0441\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441 Awaited \u0441\u0435\u0442\u0435\u0432\u044b\u043c\u0438 \u0437\u0430\u0434\u0430\u0447\u0430\u043c\u0438<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/tokopedia-engineering\/superplayer-a-way-to-incorporate-avplayer-with-the-composable-architecture-f165133b5a9a\">SuperPlayer: \u0441\u043f\u043e\u0441\u043e\u0431 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c AVPlayer \u0432 Composable \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/@deepikardb\/mvvm-pattern-introduction-c8fb3be28de1\">\u0428\u0430\u0431\u043b\u043e\u043d MVVM \u2014 \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/paulallies.medium.com\/clean-architecture-in-the-flavour-of-swiftui-5-5-8430786a83\">\u0427\u0438\u0441\u0442\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0432 SwiftUI 5.5<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/techhype.io\/?story=getting-started-with-appwrites-apple-sdk\">\u041d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Appwrite iOS SDK<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/nickconfrey.medium.com\/build-tiktok-create-a-smooth-scrolling-video-feed-in-swift-on-ios-ee2095278609\">\u0414\u0435\u043b\u0430\u0435\u043c TikTok: \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u043b\u0430\u0432\u043d\u0443\u044e \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u0443 \u0432\u0438\u0434\u0435\u043e \u0444\u0438\u0434\u0430 \u0432 Swift<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/levelup.gitconnected.com\/when-will-swiftui-replace-uikit-56994132fce3\">\u041a\u043e\u0433\u0434\u0430 SwiftUI \u0437\u0430\u043c\u0435\u043d\u0438\u0442 UIKit?<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\" data-src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"\/> <a href=\"https:\/\/apptractor.ru\/info\/github\/validator.html\">Validator: \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0432\u0432\u043e\u0434\u0430<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\" data-src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"\/> <a href=\"https:\/\/apptractor.ru\/info\/github\/swiftywalkthrough.html\">SwiftyWalkthrough: \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043d\u0430 Swift<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\" data-src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"\/> <a href=\"https:\/\/apptractor.ru\/info\/github\/onboardkit.html\">OnboardKit: \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043e\u043d\u0431\u043e\u0440\u0434\u0438\u043d\u0433 \u043d\u0430 Swift<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/e1a\/3cf\/2a8\/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/e1a\/3cf\/2a8\/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png\"\/> <b>Android<\/b><\/p>\n<p>  \u2022 <a href=\"https:\/\/habr.com\/ru\/post\/584616\/\">\u041f\u043e\u0447\u0435\u043c\u0443 \u043b\u044e\u0431\u043e\u0439 Android \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e \u0445\u0443\u0436\u0435 iPhone?<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/dododev\/blog\/584498\/\">\u041b\u0435\u0442\u0430\u044e\u0449\u0430\u044f \u043f\u0438\u0446\u0446\u0430 \u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438: \u043a\u0430\u043a \u0434\u0435\u043b\u0430\u043b\u0438 \u043f\u0440\u043e\u043c\u043e\u0443\u0448\u0435\u043d \u043a\u043e\u043c\u0431\u043e \u00ab\u0414\u044e\u043d\u0430\u00bb<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/584668\/\">\u0427\u0442\u043e \u0431\u0443\u0434\u0435\u0442, \u0435\u0441\u043b\u0438 \u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0445\u043e\u0431\u0431\u0438 \u043a\u0443\u043b\u0438\u043d\u0430\u0440\u0438\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/584780\/\">\u041e\u0431\u0437\u043e\u0440 Google Play Billing 4.0.0<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/585178\/\">\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0441 Windows Subsystem for Android<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/simbirsoft\/blog\/584888\/\">\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 ML Kit \u0432 Android: \u043a\u0430\u043a \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u0442\u044c \u0448\u0442\u0440\u0438\u0445\u043a\u043e\u0434\u044b<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/tech\/307552-vkratce-vse-detali-o-google-pixel-6-i-chipe-tensor-s-prezentacii-pixel-fall-launch\">Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b Pixel 6 \u0438 Pixel 6 Pro<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/deploy\/app-stores\/google-play-snizhaet-komissii-na-podpiski.html\">Google Play \u0441\u043d\u0438\u0436\u0430\u0435\u0442 \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u0438 \u043d\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/vozmozhnosti-okhttp-o-kotoryh-vy-ne-znali.html\">\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 OkHttp \u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u044b \u043d\u0435 \u0437\u043d\u0430\u043b\u0438<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/mariana-trench.html\">Facebook \u043e\u0442\u043a\u0440\u044b\u043b \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043a\u043e\u0434\u0430 \u0434\u043b\u044f Android \u2014 Mariana Trench<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/develop\/coding\/android-parcelable-ili-serializable.html\">Android Parcelable \u0438\u043b\u0438 Serializable?<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/tech\/307552-vkratce-vse-detali-o-google-pixel-6-i-chipe-tensor-s-prezentacii-pixel-fall-launch\">Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b Pixel 6 \u0438 Pixel 6 Pro<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/@hrithik481\/roomdb-in-android-with-kotlin-coroutines-bdb11ae37acb\">Room \u0432 Android \u0441 \u043a\u043e\u0440\u0443\u0442\u0438\u043d\u0430\u043c\u0438 Kotlin<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/proandroiddev.com\/kotlin-kotlinx-serialization-1-3-e41313dcb4d2\">\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 kotlinx.serialization 1.3<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/mobile-app-development-publication\/recyclerview-with-compose-view-is-not-performant-97c74df4b77f\">RecyclerView \u0441 Compose View \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/u3x.medium.com\/challenges-of-composing-recyclerview-with-concatadapter-in-a-grid-9bcf0d0c435a\">\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f RecyclerView \u0441 ConcatAdapter \u0432 \u0441\u0435\u0442\u043a\u0435<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/proandroiddev.com\/how-i-hacked-an-android-app-for-a-premium-feature-d9ca74e797ad\">\u041a\u0430\u043a \u044f \u0432\u0437\u043b\u043e\u043c\u0430\u043b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f Android, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0435\u043c\u0438\u0443\u043c-\u0444\u0443\u043d\u043a\u0446\u0438\u044e<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/proandroiddev.com\/compose-for-wear-os-scaffold-89e0fc5cc033\">Compose for Wear OS: Scaffold<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/javarevisited\/why-experienced-developers-use-getters-and-setters-34659ae39175\">\u041f\u043e\u0447\u0435\u043c\u0443 \u043e\u043f\u044b\u0442\u043d\u044b\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u0433\u0435\u0442\u0442\u0435\u0440\u044b \u0438 \u0441\u0435\u0442\u0442\u0435\u0440\u044b<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/javarevisited\/top-50-oop-interview-questions-for-java-developers-d3c942bc813d\">50 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432 \u043f\u043e \u041e\u041e\u041f \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u0445 Java-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/betterprogramming.pub\/how-to-validate-fields-using-jetpack-compose-in-android-5ea1522331c7\">\u041a\u0430\u043a \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043f\u043e\u043b\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Jetpack Compose \u0432 Android<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/@ermadmi78\/how-to-generate-kotlin-dsl-client-by-graphql-schema-707fd0c55284\">\u041a\u0430\u043a \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c Kotlin DSL Client \u043f\u043e \u0441\u0445\u0435\u043c\u0435 GraphQL<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/wix-engineering\/how-to-execute-android-ui-tests-on-ci-and-stay-alive-eb9089d88c1f\">\u041a\u0430\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c Android UI \u0442\u0435\u0441\u0442\u044b \u0432 CI \u0438 \u043e\u0441\u0442\u0430\u0442\u044c\u0441\u044f \u0432 \u0436\u0438\u0432\u044b\u0445<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\" data-src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"\/> <a href=\"https:\/\/apptractor.ru\/info\/github\/awesome-kmm.html\">Awesome KMM: \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Kotlin Multiplatform Mobile<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\" data-src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"\/> <a href=\"https:\/\/apptractor.ru\/info\/github\/einsen.html\">Einsen: \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b \u0437\u0430\u0434\u0430\u0447 \u043d\u0430 Jetpack Compose<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/708\/1c6\/34e\/7081c634ec176ab6b953d9d19e82a09a.png\" data-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\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/cloud4y\/blog\/584578\/\">\u041a\u0430\u043a \u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b 10 000 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0432 \u042e\u0436\u043d\u043e\u0439 \u0410\u043c\u0435\u0440\u0438\u043a\u0435<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/584550\/\">\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0444\u0438\u0437\u0438\u043a\u0443 Shadow Fight Arena \u2014 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u0442\u0438\u043d\u0433\u0430 \u0441 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u043c PvP<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/rshb\/blog\/584348\/\">Flutter: \u043a\u0430\u043a \u043c\u044b \u0432\u044b\u0431\u0438\u0440\u0430\u043b\u0438 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f?<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/parallels\/blog\/584998\/\">\u0418\u0434\u0435\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434: \u0431\u0438\u0442\u0432\u0430 \u043f\u0440\u0438 Sonar<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/hh\/blog\/584574\/\">\u0422\u041e\u041f-5 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0435\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043f\u0440\u043e \u0430\u0432\u0442\u043e\u0442\u0435\u0441\u0442\u044b<\/a><br \/>  \u2022 <a href=\"https:\/\/habr.com\/ru\/company\/alconost\/blog\/584942\/\">\u041b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043c\u0443\u043b\u044c\u0442\u0438\u044f\u0437\u044b\u0447\u043d\u043e\u0441\u0442\u044c \u0432\u043e Flutter<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/talenttech\/blog\/584788\/\">\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 App flavors \u0434\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 Flutter<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/post\/584742\/\">AltUnity Tester \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 Unity \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/podlodka-238.html\">Podlodka #238: JavaScript<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/flutter-dev-podcast-31-cposoby-hraneniya-dannyh.html\">Flutter Dev Podcast #31: c\u043f\u043e\u0441\u043e\u0431\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/oksana-melnikova-qa-o-rabote-za-rubezhom-kak-voyti-v-ayti-i-trudnostyah-avtotestov.html\">\u041e\u043a\u0441\u0430\u043d\u0430 \u041c\u0435\u043b\u044c\u043d\u0438\u043a\u043e\u0432\u0430: QA \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0437\u0430 \u0440\u0443\u0431\u0435\u0436\u043e\u043c, \u043a\u0430\u043a \u0432\u043e\u0439\u0442\u0438 \u0432 \u0430\u0439\u0442\u0438 \u0438 \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u044f\u0445 \u0430\u0432\u0442\u043e\u0442\u0435\u0441\u0442\u043e\u0432<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/qodana-novaya-platforma-obespecheniya-kachestva-koda-ot-jetbrains.html\">Qodana: \u043d\u043e\u0432\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u201c\u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u0434\u0430\u201d \u043e\u0442 JetBrains<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/develop\/design\/app-design-61.html\">\u0414\u0438\u0437\u0430\u0439\u043d \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439: \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0434\u043b\u044f \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0435\u043d\u0438\u044f #61<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/unity-gaming-services.html\">Unity Gaming Services \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u044b\u0445 \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0438\u0433\u0440<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/visual-studio-code-teper-dostupna-v-vide-veb-prilozheniya.html\">Visual Studio Code \u0442\u0435\u043f\u0435\u0440\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/intel-otkryvaet-controlflag-ii-instrument-dlya-poiska-oshibok-v-kode.html\">Intel \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 ControlFlag, \u0418\u0418-\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u043a\u043e\u0434\u0435<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/learn\/uchites-bystree-ispolzuya-tehniku-feynmana.html\">\u0423\u0447\u0438\u0442\u0435\u0441\u044c \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0442\u0435\u0445\u043d\u0438\u043a\u0443 \u0424\u0435\u0439\u043d\u043c\u0430\u043d\u0430<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/develop\/webinar-praktiki.html\">\u0412\u0435\u0431\u0438\u043d\u0430\u0440 \u00ab\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\u00bb<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/flutter-dev-podcast-31-cposoby-hraneniya-dannyh.html\">Flutter Dev Podcast #31: c\u043f\u043e\u0441\u043e\u0431\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/analytics\/tolko-4-iz-10-programmistov-udovletvoreny-svoey-zarplatoy.html\">\u0422\u043e\u043b\u044c\u043a\u043e 4 \u0438\u0437 10 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0435\u043d\u044b \u0441\u0432\u043e\u0435\u0439 \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u043e\u0439<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/ux.pub\/kakim-zakonam-ux-dizayna-sleduyut-krupnye-prilozheniya-spotify-youtube-medium-twitter-pinterest-netflix-uber-instagram-i-t-d\/\">\u041a\u0430\u043a\u0438\u043c \u0437\u0430\u043a\u043e\u043d\u0430\u043c UX-\u0434\u0438\u0437\u0430\u0439\u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f: Spotify, YouTube, Medium, Twitter, Pinterest, Netflix, Uber, Instagram \u0438 \u0442.\u0434.<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/javascript.plainenglish.io\/tools-to-double-your-coding-productivity-in-2021-13d96be4bde6\">8 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0434\u0432\u043e\u044f\u0442 \u0432\u0430\u0448\u0443 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 2021<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/engineering.salesforce.com\/10-principles-for-architecture-at-salesforce-82105d5399a8\">10 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0432 Salesforce<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/secondfret.medium.com\/how-we-built-a-social-app-without-learning-to-code-and-hit-2-on-producthunt-9dad67426500\">\u041a\u0430\u043a \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0431\u0435\u0437 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u0438 \u0441\u0442\u0430\u043b\u0438 #2 \u043d\u0430 ProductHunt!)<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.muz.li\/case-study-ar-fitness-app-73b99ddd1f3a\">\u041a\u0435\u0439\u0441: \u0444\u0438\u0442\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/dangerous-engineering\/you-must-not-measure-individual-software-engineer-performance-3b68cc45cacb\">\u0412\u044b \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u0437\u043c\u0435\u0440\u044f\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/bootcamp.uxdesign.cc\/building-a-profitable-app-in-30-days-4935a4b55bfb\">\u041a\u0435\u0439\u0441: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u0431\u044b\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0437\u0430 30 \u0434\u043d\u0435\u0439<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/flutterdevs\/app-lifecycle-in-flutter-c248d894b830\">\u0416\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u043e Flutter<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/medium.com\/flutter-community\/building-flutter-apps-with-no-backend-9715b764a81e\">\u0414\u0435\u043b\u0430\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f Flutter \u0431\u0435\u0437 \u0431\u044d\u043a\u0435\u043d\u0434\u0430?<\/a><br \/>  \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\" data-src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"\/> <a href=\"https:\/\/betterprogramming.pub\/how-to-stay-ahead-of-the-competition-as-an-average-programmer-f76853677490\">\u041a\u0430\u043a \u0441\u0440\u0435\u0434\u043d\u0435\u043c\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0443 \u043e\u043f\u0435\u0440\u0435\u0436\u0430\u0442\u044c \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043e\u0432<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/getpro\/habr\/post_images\/509\/dc9\/bde\/509dc9bde69347ecbe0c21ff2973d7e7.jpg\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/509\/dc9\/bde\/509dc9bde69347ecbe0c21ff2973d7e7.jpg\" data-blurred=\"true\"\/> <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\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/cheklist-kak-uvelichit-organicheskiy-trafik-igry-v-google-play.html\">\u0427\u0435\u043a\u043b\u0438\u0441\u0442: \u043a\u0430\u043a \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043e\u0440\u0433\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0438\u0433\u0440\u044b \u0432 Google Play?<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/offbording-proschanie-s-izyaschestvom.html\">\u041e\u0444\u0444\u0431\u043e\u0440\u0434\u0438\u043d\u0433: \u043f\u0440\u043e\u0449\u0430\u043d\u0438\u0435 \u0441 \u0438\u0437\u044f\u0449\u0435\u0441\u0442\u0432\u043e\u043c<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/584636\/\">\u0412\u0430\u0448\u0435\u0439 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0430\u0443\u0434\u0438\u0442\u043e\u0440\u0438\u0438 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/measure\/app-store-analytics\/yaponiya-ostaetsya-liderom-po-mobilnym-rashodam-na-dushu-naseleniya.html\">\u042f\u043f\u043e\u043d\u0438\u044f \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043b\u0438\u0434\u0435\u0440\u043e\u043c \u043f\u043e \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u043c \u0440\u0430\u0441\u0445\u043e\u0434\u0430\u043c \u043d\u0430 \u0434\u0443\u0448\u0443 \u043d\u0430\u0441\u0435\u043b\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/marketing-monetization\/ad-networks\/otsenite-effektivnost-apple-search-ads-s-pomoschyu-besplatnogo-audita-searchads-com.html\">\u041e\u0446\u0435\u043d\u0438\u0442\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c Apple Search Ads \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0433\u043e \u0430\u0443\u0434\u0438\u0442\u0430 SearchAds.com<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/marketing-monetization\/ad-networks\/appsflyer-vypustil-13-yy-performance-index.html\">AppsFlyer \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b 13-\u044b\u0439 Performance Index<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/techhype\/spinn.html\">Spinn: Dyson \u0432 \u043c\u0438\u0440\u0435 \u043a\u043e\u0444\u0435\u043c\u0430\u0448\u0438\u043d<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/marketing-monetization\/ad-networks\/dolya-apple-search-ads-vyrosla-v-3-raza-posle-izmeneniya-konfidentsialnosti-v-ios.html\">\u0414\u043e\u043b\u044f Apple Search Ads \u0432\u044b\u0440\u043e\u0441\u043b\u0430 \u0432 3 \u0440\u0430\u0437\u0430 \u043f\u043e\u0441\u043b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 iOS<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/marketing\/306649-raskrutka-s-nulevym-byudzhetom-istoriya-malenkogo-prilozheniya\">\u0420\u0430\u0441\u043a\u0440\u0443\u0442\u043a\u0430 \u0441 \u043d\u0443\u043b\u0435\u0432\u044b\u043c \u0431\u044e\u0434\u0436\u0435\u0442\u043e\u043c. \u0418\u0441\u0442\u043e\u0440\u0438\u044f \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/marketing\/305954-prilozhenie-praktika-uvelichenie-organicheskogo-trafika-na-67-s-pomoshchyu-checkaso\">\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u2013 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043d\u0430 67% \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Checkaso<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/life\/308410-s-knizhnoy-polki-na-rynok-mobilnyh-prilozheniy-istoriya-laoshi-io\">\u0421 \u043a\u043d\u0438\u0436\u043d\u043e\u0439 \u043f\u043e\u043b\u043a\u0438 \u043d\u0430 \u0440\u044b\u043d\u043e\u043a \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0418\u0441\u0442\u043e\u0440\u0438\u044f Laoshi.io<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/getpro\/habr\/post_images\/853\/812\/9f5\/8538129f5e7b404a720121cb9c3814db.jpg\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/853\/812\/9f5\/8538129f5e7b404a720121cb9c3814db.jpg\" data-blurred=\"true\"\/> <b>AI, \u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, IoT<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/deepmind-kupil-i-otkryvaet-fizicheskiy-simulyator-mujoco.html\">DeepMind \u043a\u0443\u043f\u0438\u043b \u0438 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440 MuJoCo<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/learn\/novyy-besplatnyy-kurs-microsoft-nauka-o-dannyh-dlya-nachinayuschih.html\">\u041d\u043e\u0432\u044b\u0439 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u043a\u0443\u0440\u0441 Microsoft \u00ab\u041d\u0430\u0443\u043a\u0430 \u043e \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0445\u00bb<\/a><\/p>\n<p>  \u2190 <a href=\"https:\/\/habr.com\/ru\/company\/productivity_inside\/blog\/583940\/\">\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<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \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\/articles\/585208\/\"> https:\/\/habr.com\/ru\/articles\/585208\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\u0412 \u043d\u0430\u0448\u0435\u043c \u043d\u043e\u0432\u043e\u043c \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u044f App Tracking Transparency \u0438 \u0431\u043e\u0440\u044c\u0431\u0430 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438, \u043d\u043e\u0432\u044b\u0435 MacBook Pro \u0438 \u043b\u0435\u0442\u0430\u044e\u0449\u0430\u044f \u043f\u0438\u0446\u0446\u0430, \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434, \u043e\u0444\u0444\u0431\u043e\u0440\u0434\u0438\u043d\u0433, \u0442\u0440\u0430\u0442\u044b \u0436\u0438\u0442\u0435\u043b\u0435\u0439 \u0440\u0430\u0437\u043d\u044b\u0445 \u0441\u0442\u0440\u0430\u043d \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435!<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/wq\/sh\/pl\/wqshploq6h-pzsav7gfk8b9eptm.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/wq\/sh\/pl\/wqshploq6h-pzsav7gfk8b9eptm.jpeg\" data-blurred=\"true\"\/><\/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-401188","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/401188","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=401188"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/401188\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=401188"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=401188"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=401188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}