{"id":446183,"date":"2025-01-26T09:05:17","date_gmt":"2025-01-26T09:05:17","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=446183"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=446183","title":{"rendered":"<span>\u041c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e #572 (20 \u2014 26 \u044f\u043d\u0432\u0430\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\u043e\u0432\u043e\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0434\u043b\u044f \u043f\u0438\u043a\u043d\u0438\u043a\u0430 \u0438 \u043f\u0435\u0440\u0432\u0430\u044f \u0431\u0435\u0442\u0430 Android 16, \u043d\u0435 \u0432\u0441\u0435\u043e\u0431\u044a\u0435\u043c\u043b\u044e\u0449\u0435\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043f\u0443\u0448-\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u0438 5 \u043b\u0435\u0442 React Native \u0432 Shopify, \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0433\u0430\u0439\u0434 \u043f\u043e \u0441\u0442\u043e\u0440\u0438\u0441, \u0433\u043e\u0434\u043e\u0432\u043e\u0439 \u043e\u0442\u0447\u0435\u0442 \u201c\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u044b\u043d\u043a\u0430 \u0432 2024 \u0433\u043e\u0434\u0443\u201d \u043e\u0442 Sensor Tower \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435\u0441\u044c!<\/p>\n<p> <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/5g\/3h\/as\/5g3hasft7uwyyou-cvwnnanmagq.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/5g\/3h\/as\/5g3hasft7uwyyou-cvwnnanmagq.jpeg\" data-blurred=\"true\"\/><a name=\"habracut\"><\/a><\/p>\n<p> <b>\u041f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0430 \u043c\u043e\u0439 Telegram-\u043a\u0430\u043d\u0430\u043b <a href=\"https:\/\/t.me\/apptractor\" rel=\"nofollow noopener noreferrer\">Mobile Insights<\/a>, \u0433\u0434\u0435 \u0435\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432.<\/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\/companies\/tbank\/articles\/874868\/\">\u041a\u0430\u043a \u043c\u044b \u0441\u0434\u0435\u043b\u0430\u043b\u0438 on-device-\u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0434\u043b\u044f \u0418\u0422-\u041f\u0438\u043a\u043d\u0438\u043a\u0430<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/temy-v-sovremennyh-ios-prilozheniyah-s-uitraitcollection.html\" rel=\"nofollow noopener noreferrer\">\u0422\u0435\u043c\u044b \u0432 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 iOS-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 \u0441 UITraitCollection<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/otus\/articles\/875968\/\">\u0412\u044b\u0437\u043e\u0432 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u043e\u0433\u043e API \u0438\u0437 iOS-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 Swift<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/surfstudio\/articles\/874958\/\">\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0434\u043b\u044f SwiftUI \u2014 VSURF<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/foto-piker-2-0-kak-sdelat-fichu-na-150.html\" rel=\"nofollow noopener noreferrer\">\u0424\u043e\u0442\u043e-\u043f\u0438\u043a\u0435\u0440 2.0: \u043a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0444\u0438\u0447\u0443 \u043d\u0430 150%<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/app-store-zapuskaet-advanced-commerce-api.html\" rel=\"nofollow noopener noreferrer\">App Store \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 Advanced Commerce API<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/apple-intelligence-vklyuchat-po-umolchaniyu.html\" rel=\"nofollow noopener noreferrer\">Apple Intelligence \u0432\u043a\u043b\u044e\u0447\u0430\u0442 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/swiftwithmajid.com\/2025\/01\/21\/color-mixing-in-swiftui\/\" rel=\"nofollow noopener noreferrer\">Color mixing in SwiftUI<\/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:\/\/www.donnywals.com\/observing-properties-on-an-observable-class-outside-of-swiftui-views\/\" rel=\"nofollow noopener noreferrer\">Observing properties on an @Observable class outside of SwiftUI views<\/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:\/\/useyourloaf.com\/blog\/reducing-motion-of-animations\/\" rel=\"nofollow noopener noreferrer\">Reducing Motion of Animations<\/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:\/\/peterfriese.dev\/blog\/2025\/swiftui-action-menu\/\" rel=\"nofollow noopener noreferrer\">Creating a reusable action menu component in SwiftUI<\/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:\/\/bryce.co\/undebuggable\/\" rel=\"nofollow noopener noreferrer\">Debugging An Undebuggable App<\/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:\/\/ericsspace.com\/articles\/remove-unused-code-in-a-real-world-ios-project\/\" rel=\"nofollow noopener noreferrer\">Remove unused code in a real-world iOS project<\/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:\/\/alexanderweiss.dev\/blog\/2025-01-19-effortless-swiftui-theming\" rel=\"nofollow noopener noreferrer\">Effortless SwiftUI Theming<\/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:\/\/www.ioscoffeebreak.com\/issue\/issue29\" rel=\"nofollow noopener noreferrer\">Bringing App Intents to Your SwiftUI App<\/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:\/\/www.artemnovichkov.com\/blog\/remove-background-from-image-in-swiftui\" rel=\"nofollow noopener noreferrer\">Remove background from image in SwiftUI<\/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\/codex\/protocol-extensions-in-swift-6-0-new-tricks-1208fc8fc988\" rel=\"nofollow noopener noreferrer\">Protocol Extensions in Swift 6.0: New Tricks<\/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\/@qquang269\/ios-modular-architecture-from-monolith-to-hybrid-approaches-979f827886fb\" rel=\"nofollow noopener noreferrer\">iOS Modular Architecture: From Monolith to Hybrid Approaches<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=ERCtQoBVgJg\" rel=\"nofollow noopener noreferrer\">Guiding the Golden Age: Rebuilding Indoor Navigation for Rijksmuseum<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=w_YjwL3r-ts\" rel=\"nofollow noopener noreferrer\">Mastering Color Views in SwiftUI<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=6Y9KDTjmpLA\" rel=\"nofollow noopener noreferrer\">Notification Deep Linking | Open Specific View From Push Notifications<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=ZMWxTVr__rc\" rel=\"nofollow noopener noreferrer\">Scalable Continuous Integration for iOS<\/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\/recall.html\" rel=\"nofollow noopener noreferrer\">Recall \u2014 \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044c \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438<\/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\/sharing-2.html\" rel=\"nofollow noopener noreferrer\">Sharing \u2014 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/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\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/vyshla-pervaya-beta-versiya-android-16.html\" rel=\"nofollow noopener noreferrer\">\u0412\u044b\u0448\u043b\u0430 \u043f\u0435\u0440\u0432\u0430\u044f \u0431\u0435\u0442\u0430-\u0432\u0435\u0440\u0441\u0438\u044f Android 16<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/domclick\/articles\/870650\/\">\u041f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 \u043c\u0438\u0440 Lint&#8217;a \u0432 Android-\u043f\u0440\u043e\u0435\u043a\u0442\u0435 (\u0447\u0430\u0441\u0442\u044c 2)<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/811297\/\">\u0410\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043f\u043e\u0442\u0440\u044f\u0441\u0430\u044e\u0449\u0435\u0435, \u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e \u043d\u0435 \u0432\u0441\u0435\u043e\u0431\u044a\u0435\u043c\u043b\u044e\u0449\u0435\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e\u00a0\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043f\u0443\u0448-\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/jetpack-compose-i-edge-to-edge-na-android-15.html\" rel=\"nofollow noopener noreferrer\">Jetpack Compose \u0438 Edge-to-Edge \u043d\u0430 Android 15<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/875460\/\">\u041a\u0430\u043a \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0430\u0445\u0430\u0440 Kotlin \u043c\u043e\u0436\u0435\u0442 \u0441\u043b\u043e\u043c\u0430\u0442\u044c \u0432\u0430\u043c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/kak-sdelat-biblioteku-chtoby-ey-polzovalis.html\" rel=\"nofollow noopener noreferrer\">\u041a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u0435\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/kak-klass-proizvoditelnosti-pomog-google-maps-predostvit-pervoklassnyy-opyt.html\" rel=\"nofollow noopener noreferrer\">\u041a\u0430\u043a \u041a\u043b\u0430\u0441\u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043c\u043e\u0433 Google Maps \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0432\u0438\u0442\u044c \u043f\u0435\u0440\u0432\u043e\u043a\u043b\u0430\u0441\u0441\u043d\u044b\u0439 \u043e\u043f\u044b\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:\/\/victorbrandalise.com\/using-new-camera-extensions-api\/\" rel=\"nofollow noopener noreferrer\">Using new Camera extensions API<\/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\/widgets-with-glance-displaying-images-fe6a1c63c128\" rel=\"nofollow noopener noreferrer\">Widgets with Glance: Displaying Images<\/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\/@olivervicente\/subcomposition-in-jetpack-compose-how-to-use-measurement-phase-data-in-other-children-3965d700af8b\" rel=\"nofollow noopener noreferrer\">Subcomposition in Jetpack Compose: How to Use Measurement Phase Data in Other Children<\/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:\/\/www.marcogomiero.com\/posts\/2025\/ublock-maven\/\" rel=\"nofollow noopener noreferrer\">Don\u2019t let Maven block you!<\/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\/@stefanoq21\/mockk-my-favorite-mocking-library-for-android-ffbc47bb05a3\" rel=\"nofollow noopener noreferrer\">Mockk: My Favorite Mocking Library for 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:\/\/blog.jakelee.co.uk\/publishing-on-google-play-without-exposing-info\/\" rel=\"nofollow noopener noreferrer\">Please don\u2019t dox me Google: How to verify your Google Play account without exposing ALL of your information<\/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:\/\/www.reddit.com\/r\/androiddev\/comments\/1i77wys\/app_taken_down_beware_of_adding_a_surprise_free\/\" rel=\"nofollow noopener noreferrer\">App taken down: Beware of adding a \u00absurprise\u00bb free trial without updating the UI<\/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\/teknasyon-engineering\/code-optimization-with-proguard-and-r8-in-android-4d92e15a398b\" rel=\"nofollow noopener noreferrer\">Code Optimization with Proguard and R8 in 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\/proandroiddev\/stop-hopping-threads-6a6241016529\" rel=\"nofollow noopener noreferrer\">Stop hopping threads!<\/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:\/\/developer.android.com\/studio\/preview\/features#2024.3.2\" rel=\"nofollow noopener noreferrer\">Android Studio Meerkat Feature Drop<\/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:\/\/tuist.dev\/blog\/2025\/01\/22\/announcing-tuist-registry\" rel=\"nofollow noopener noreferrer\">Announcing Tuist Registry<\/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:\/\/www.createwithswift.com\/programmatic-navigation-with-tab-view-in-swiftui\/\" rel=\"nofollow noopener noreferrer\">Programmatic navigation with Tab View in SwiftUI<\/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\/icommunity\/auto-layout-made-easy-master-constraints-with-a-powerful-%5Cuiview-extension-9a3b9bc3b926\" rel=\"nofollow noopener noreferrer\">Auto Layout Made Easy: Master Constraints with a Powerful UIView Extension<\/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\/@YodgorbekKomilo\/comprehensive-system-design-of-linkedin-android-app-08e29fa6905e\" rel=\"nofollow noopener noreferrer\">Comprehensive System Design of LinkedIn Android App<\/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:\/\/f-droid.org\/2025\/01\/21\/a-look-back-at-2024-f-droids-progress-and-whats-coming-in-2025.html\" rel=\"nofollow noopener noreferrer\">F-Droid\u2019s Progress and What\u2019s Coming in 2025<\/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:\/\/android-developers.googleblog.com\/2025\/01\/orientation-and-resizability-changes-in-android-16.html\" rel=\"nofollow noopener noreferrer\">The future is adaptive: Changes to orientation and resizability APIs in Android 16<\/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\/qonto-way\/from-frustration-to-framework-revamping-ui-testing-at-qonto-part-1-paradigm-shift-daa1fc41b2fe\" rel=\"nofollow noopener noreferrer\">From frustration to framework: Revamping UI testing at Qont<\/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:\/\/merttoptas.medium.com\/real-world-solutions-for-remote-localization-in-jetpack-compose-apps-ea0176cdd75a\" rel=\"nofollow noopener noreferrer\">Real-World Solutions for Remote Localization in Jetpack Compose Apps<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=SYHcP2FJ8Hk\" rel=\"nofollow noopener noreferrer\">InputStreams &amp; OutputStreams In Kotlin<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=MSeI7XVzrvo\" rel=\"nofollow noopener noreferrer\">Working With Files In Kotlin<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=jXDJfvH7yqc\" rel=\"nofollow noopener noreferrer\">Compose Performance for Us Humans<\/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\/cutemusic.html\" rel=\"nofollow noopener noreferrer\">CuteMusic \u2014 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u043c\u0443\u0437\u044b\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0435\u0435\u0440 \u0434\u043b\u044f Android<\/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\/lumo-ui.html\" rel=\"nofollow noopener noreferrer\">Lumo-UI \u2014 \u043f\u043b\u0430\u0433\u0438\u043d Gradle \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 Compose<\/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\/android-interview-questions-voprosy-i-temy-s-android-sobesedovaniy.html\" rel=\"nofollow noopener noreferrer\">Android Interview Questions \u2014 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0438 \u0442\u0435\u043c\u044b \u0441 Android-\u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439<\/a><\/p>\n<p> <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/ma\/lx\/8h\/malx8hbgozt6lee8rmxmg96_s6a.png\" data-src=\"https:\/\/habrastorage.org\/webt\/ma\/lx\/8h\/malx8hbgozt6lee8rmxmg96_s6a.png\"\/> <b>\u041a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430<\/b><\/p>\n<p> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/5-let-react-native-v-shopify.html\" rel=\"nofollow noopener noreferrer\">5 \u043b\u0435\u0442 React Native \u0432 Shopify<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/sozdanie-na-flutter-mmo-dostigshey-14k-mmr-v-zakrytom-testirovanii.html\" rel=\"nofollow noopener noreferrer\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0430 Flutter MMO, \u0434\u043e\u0441\u0442\u0438\u0433\u0448\u0435\u0439 $14k MMR \u0432 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u043c \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/875834\/\">YPay &amp; YPay Inventory \u0434\u043b\u044f Flutter \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/876068\/\">\u0422\u0430\u043a\u0438\u0435 \u0440\u0430\u0437\u043d\u044b\u0435 Slivers: \u043e\u0431\u0437\u043e\u0440 \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0432\u043e Flutter. \u0427\u0430\u0441\u0442\u044c 1<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/simbirsoft\/articles\/875524\/\">\u0421\u043f\u0430\u0441\u0442\u0438 \u043f\u0440\u043e\u0435\u043a\u0442: \u0441 \u043a\u0430\u043a\u0438\u043c\u0438 \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u043c\u044b \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/873920\/\">\u0410\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430 \u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043d\u0430 Flutter. \u0427\u0430\u0441\u0442\u044c 1. Yandex AppMetrica<\/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:\/\/www.reddit.com\/r\/FlutterDev\/comments\/1i6kilk\/introducing_card_game_a_declarative_flutter\/\" rel=\"nofollow noopener noreferrer\">Introducing card_game: A declarative Flutter package that makes building card games easy<\/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:\/\/whackylabs.com\/swift\/kotlin\/compose\/2025\/01\/12\/compose-multiplatform-is-real\/\" rel=\"nofollow noopener noreferrer\">Compose multiplatform is real<\/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\/@onyangomaureen95\/writing-golden-tests-with-flutter-86d9cdd4aa2d\" rel=\"nofollow noopener noreferrer\">Writing Golden Tests in 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\/@amirhossein-ijadi\/detecting-text-with-camera-in-compose-multiplatform-b244d0f1f4d8\" rel=\"nofollow noopener noreferrer\">Detecting Text with Camera in Compose Multiplatform<\/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\/@rajbhandaripratik8\/design-systems-in-flutter-why-and-how-a689c26c0340\" rel=\"nofollow noopener noreferrer\">Design Systems in Flutter. Why and How.<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=qD-Gh7zugMI\" rel=\"nofollow noopener noreferrer\">Becoming a KMP Expert<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=BrSnxbfxNOQ\" rel=\"nofollow noopener noreferrer\">Multi-language Support in Kotlin\/Compose Multiplatform<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=rNu2GMawMzQ\" rel=\"nofollow noopener noreferrer\">Flutter Animations Made Easy<\/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\/companies\/m2tech\/articles\/874438\/\">\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0433\u0430\u0439\u0434 \u043f\u043e \u0441\u0442\u043e\u0440\u0438\u0441 \u0438\u043b\u0438 \u043a\u0430\u043a \u043c\u044b \u043f\u043e\u0432\u044b\u0441\u0438\u043b\u0438 \u043a\u043e\u043d\u0432\u0435\u0440\u0441\u0438\u044e \u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0432 9 \u0440\u0430\u0437<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/cleverpumpkin\/articles\/874904\/\">\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0440\u0443\u0442\u0438\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u0435\u043c \u0431\u044e\u0434\u0436\u0435\u0442 \u043d\u0430 \u0434\u0438\u0437\u0430\u0439\u043d: Figma Variables \u0432 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043c\u0430\u043a\u0435\u0442\u043e\u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/876130\/\">UI\/UX \u0442\u0440\u0435\u043d\u0434\u044b \u0432 2025: \u0443\u0433\u0440\u043e\u0436\u0430\u0435\u0442 \u043b\u0438 \u0418\u0418 \u0431\u0443\u0434\u0443\u0449\u0435\u043c\u0443 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u043e\u0432 \u0438 \u043a\u0430\u043a\u0438\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u043d\u0434\u044b \u043d\u0430\u0441 \u0443\u0434\u0438\u0432\u044f\u0442?<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/875098\/\">\u0422\u043e\u043a\u0435\u043d\u044b \u0446\u0432\u0435\u0442\u0430 \u0434\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f: \u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443<\/a><br \/> \u2022 ,<a href=\"https:\/\/habr.com\/ru\/articles\/876168\/\">\u0421\u0434\u0435\u043b\u0430\u0439 \u0443\u0434\u043e\u0431\u043d\u043e: \u043f\u043e\u0434\u0431\u043e\u0440\u043a\u0430 UI\/UX-\u043a\u0435\u0439\u0441\u043e\u0432 \u0438\u0437 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0438 \u043d\u0435\u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/upravlenie-resursami-v-devops-ot-oblachnyh-resheniy-do-zheleznyh-serverov.html\" rel=\"nofollow noopener noreferrer\">\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c\u0438 \u0432 DevOps: \u043e\u0442 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0434\u043e \u00ab\u0436\u0435\u043b\u0435\u0437\u043d\u044b\u0445\u00bb \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/universalnoe-reshenie-dlya-mobilnogo-avtotestirovaniya.html\" rel=\"nofollow noopener noreferrer\">\u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/smena-professii-v-it-karera-professionalnyy-rost.html\" rel=\"nofollow noopener noreferrer\">\u0421\u043c\u0435\u043d\u0430 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u0438 \u0432 IT \u2014 \u041a\u0430\u0440\u044c\u0435\u0440\u0430, \u041f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u043e\u0441\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:\/\/blog.rongarret.info\/2025\/01\/i-am-not-failure-lessons-learned-from.html\" rel=\"nofollow noopener noreferrer\">I am (not) a Failure: Lessons Learned From Six (and a half) Failed Startup Attempts<\/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:\/\/www.elenaverna.com\/p\/your-career-is-a-startup-building\" rel=\"nofollow noopener noreferrer\">Your Career is a Startup: Building Sustainable Growth, One Stage at a Time<\/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:\/\/www.antmurphy.me\/newsletter\/why-you-need-a-not-doing-list\" rel=\"nofollow noopener noreferrer\">Why You Need a \u2018NOT Doing\u2019 List, not a Todo List<\/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:\/\/adminforth.dev\/blog\/why-manual-release-notes-and-versions-are-a-chaos-and-how-to-fix-it\/\" rel=\"nofollow noopener noreferrer\">Why manual Release Notes and Versions are a chaos and how to fix it<\/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:\/\/kranga.notion.site\/The-fizzbuzz-that-did-not-get-me-the-job-180e7c22ef3b80c3a386f7f8de720ac7\" rel=\"nofollow noopener noreferrer\">The fizzbuzz that did not get me the job<\/a><br \/> \u2022 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gt\/u1\/ia\/gtu1iaz0-ajkbqpeq8n6dmql4zq.png\"\/> <a href=\"https:\/\/www.youtube.com\/watch?v=T0u5nwSA0w0\" rel=\"nofollow noopener noreferrer\">Neetcode 150 Course \u2014 All Coding Interview Questions Solved<\/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\/measure\/app-store-analytics\/sostoyanie-mobilnogo-rynka-v-2024-godu-otchet-sensor-tower.html\" rel=\"nofollow noopener noreferrer\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u044b\u043d\u043a\u0430 \u0432 2024 \u0433\u043e\u0434\u0443 \u2014 \u043e\u0442\u0447\u0435\u0442 Sensor Tower<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/nikita-bir-o-tom-kak-sozdavat-viralnye-produkty.html\" rel=\"nofollow noopener noreferrer\">\u041d\u0438\u043a\u0438\u0442\u0430 \u0411\u0438\u0440 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0432\u0438\u0440\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/sokraschaetsya-li-rynok-prilozheniy-obsuzhdenie-na-reddit.html\" rel=\"nofollow noopener noreferrer\">\u0421\u043e\u043a\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043b\u0438 \u0440\u044b\u043d\u043e\u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u2014 \u041e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 Reddit<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/875876\/\">\u0421\u0443\u043f\u0435\u0440\u0430\u043f\u043f\u044b \u00ab\u0441\u0443\u043f\u0435\u0440\u0433\u043e\u0440\u043e\u0434\u0430\u00bb \u0438\u043b\u0438 \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 Careem \u0438 Noon \u0432 \u0414\u0443\u0431\u0430\u0435? \u041e\u0431\u0437\u043e\u0440 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0427\u0430\u0441\u0442\u044c 1: Careem<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/epic-pomozhet-pokryt-rashody-razrabotchikov-na-ios.html\" rel=\"nofollow noopener noreferrer\">Epic \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0440\u044b\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043d\u0430 iOS<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/marketing-monetization\/raskryvaem-sekrety-marketinga-v-5-kvartale.html\" rel=\"nofollow noopener noreferrer\">\u0420\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u0435\u043a\u0440\u0435\u0442\u044b \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433\u0430 \u0432 5 \u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0435<\/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:\/\/habr.com\/ru\/articles\/875798\/\">\u0417\u0430\u043c\u0435\u043d\u044f\u0435\u043c \u0445\u0430\u0431\u0440\u0430\u044e\u0437\u0435\u0440\u043e\u0432 \u0418\u0418-\u0430\u0433\u0435\u043d\u0442\u0430\u043c\u0438. \u0413\u0430\u0439\u0434 \u043f\u043e browser-use<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/876486\/\">\u0418\u0441\u0442\u043e\u0440\u0438\u044f \u0431\u044e\u0434\u0436\u0435\u0442\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0442\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0432 Home Assistant)<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/875044\/\">Home Assistant \u043d\u0430 Raspberry Pi 5<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/google-i-samsung-rabotayut-nad-ar-ochkami.html\" rel=\"nofollow noopener noreferrer\">Google \u0438 Samsung \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430\u0434 AR-\u043e\u0447\u043a\u0430\u043c\u0438<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/v-smartthings-ot-samsung-poyavyatsya-funktsii-iskusstvennogo-intellekta.html\" rel=\"nofollow noopener noreferrer\">\u0412 SmartThings \u043e\u0442 Samsung \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0430<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/perplexity-zapuskaet-sonar-api-dlya-ii-poiska.html\" rel=\"nofollow noopener noreferrer\">Perplexity \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 Sonar, API \u0434\u043b\u044f \u0418\u0418-\u043f\u043e\u0438\u0441\u043a\u0430<\/a><br \/> \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/hunyuan3d-2-0.html\" rel=\"nofollow noopener noreferrer\">Tencent \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 Hunyuan3D 2.0 \u2014 \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e \u0418\u0418-\u0441\u0438\u0441\u0442\u0435\u043c\u0443 3D \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/a><\/p>\n<p> \u2190 <a href=\"https:\/\/habr.com\/ru\/articles\/874748\/\">\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\/876694\/\"> https:\/\/habr.com\/ru\/articles\/876694\/<\/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\u043e\u0432\u043e\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0434\u043b\u044f \u043f\u0438\u043a\u043d\u0438\u043a\u0430 \u0438 \u043f\u0435\u0440\u0432\u0430\u044f \u0431\u0435\u0442\u0430 Android 16, \u043d\u0435 \u0432\u0441\u0435\u043e\u0431\u044a\u0435\u043c\u043b\u044e\u0449\u0435\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043f\u0443\u0448-\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u0438 5 \u043b\u0435\u0442 React Native \u0432 Shopify, \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0433\u0430\u0439\u0434 \u043f\u043e \u0441\u0442\u043e\u0440\u0438\u0441, \u0433\u043e\u0434\u043e\u0432\u043e\u0439 \u043e\u0442\u0447\u0435\u0442 \u201c\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u044b\u043d\u043a\u0430 \u0432 2024 \u0433\u043e\u0434\u0443\u201d \u043e\u0442 Sensor Tower \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435\u0441\u044c!<\/p>\n<p> <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/5g\/3h\/as\/5g3hasft7uwyyou-cvwnnanmagq.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/5g\/3h\/as\/5g3hasft7uwyyou-cvwnnanmagq.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-446183","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/446183","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=446183"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/446183\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=446183"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=446183"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=446183"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}