#24 Dart Null Safety

Published: Feb. 7, 2021, 8:37 a.m.

b'\\u041f\\u043e\\u0434\\u043a\\u0430\\u0441\\u0442\\u0443 2 \\u0433\\u043e\\u0434\\u0430! \\u041a\\u0430\\u0436\\u0435\\u0442\\u0441\\u044f, \\u0441 \\u043c\\u043e\\u043c\\u0435\\u043d\\u0442\\u0430 \\u0432\\u044b\\u0445\\u043e\\u0434\\u0430 \\u0432 \\u0441\\u0432\\u0435\\u0442 \\u043f\\u0435\\u0440\\u0432\\u043e\\u0433\\u043e \\u0432\\u044b\\u043f\\u0443\\u0441\\u043a\\u0430 \\u043f\\u0440\\u043e\\u0448\\u043b\\u0430 \\u0443\\u0436\\u0435 \\u0446\\u0435\\u043b\\u0430\\u044f \\u044d\\u043f\\u043e\\u0445\\u0430. \\u0417\\u0430 \\u044d\\u0442\\u043e \\u0432\\u0440\\u0435\\u043c\\u044f Flutter \\u0438 Dart \\u043f\\u0440\\u0435\\u0442\\u0435\\u0440\\u043f\\u0435\\u043b\\u0438 \\u043c\\u043d\\u043e\\u0436\\u0435\\u0441\\u0442\\u0432\\u043e \\u0438\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u0439 \\u0432 \\u0441\\u0432\\u043e\\u0451\\u043c \\u043d\\u0435\\u0443\\u043a\\u043b\\u043e\\u043d\\u043d\\u043e\\u043c \\u0440\\u0430\\u0437\\u0432\\u0438\\u0442\\u0438\\u0438. \\u041f\\u043e\\u044d\\u0442\\u043e\\u043c\\u0443, \\u0432\\u044b\\u0431\\u043e\\u0440 \\u0442\\u0435\\u043c\\u044b \\u0434\\u043b\\u044f \\u0441\\u0435\\u0433\\u043e\\u0434\\u043d\\u044f\\u0448\\u043d\\u0435\\u0433\\u043e \\u0432\\u044b\\u043f\\u0443\\u0441\\u043a\\u0430 \\u0431\\u044b\\u043b \\u0447\\u0435\\u043c-\\u0442\\u043e \\u0441\\u0430\\u043c\\u0438\\u043c \\u0441\\u043e\\u0431\\u043e\\u0439 \\u0440\\u0430\\u0437\\u0443\\u043c\\u0435\\u044e\\u0449\\u0438\\u043c\\u0441\\u044f. \\u041a\\u043e\\u043d\\u0435\\u0447\\u043d\\u043e, \\u043c\\u044b \\u043f\\u043e\\u0433\\u043e\\u0432\\u043e\\u0440\\u0438\\u043c \\u043f\\u0440\\u043e \\u043e\\u0434\\u043d\\u0443 \\u0438\\u0437 \\u0441\\u0430\\u043c\\u044b\\u0445 \\u043e\\u0436\\u0438\\u0434\\u0430\\u0435\\u043c\\u044b\\u0445 \\u0444\\u0438\\u0447 \\u044f\\u0437\\u044b\\u043a\\u0430 Dart - null safety.\\n\\n\\u0412\\u044f\\u0447\\u0435\\u0441\\u043b\\u0430\\u0432 \\u0415\\u0433\\u043e\\u0440\\u043e\\u0432 \\u0432\\u043e\\u0442 \\u0443\\u0436\\u0435 10 \\u043b\\u0435\\u0442 \\u0440\\u0430\\u0431\\u043e\\u0442\\u0430\\u0435\\u0442 \\u0432 Google \\u043d\\u0430\\u0434 Dart VM. \\u0421 \\u043a\\u0440\\u0443\\u043f\\u043d\\u0435\\u0439\\u0448\\u0438\\u043c \\u044d\\u043a\\u0441\\u043f\\u0435\\u0440\\u0442\\u043e\\u043c \\u0432 \\u043e\\u0431\\u043b\\u0430\\u0441\\u0442\\u0438 \\u0440\\u0430\\u0437\\u0440\\u0430\\u0431\\u043e\\u0442\\u043a\\u0438 \\u044f\\u0437\\u044b\\u043a\\u043e\\u0432 \\u043f\\u0440\\u043e\\u0433\\u0440\\u0430\\u043c\\u043c\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u044f \\u043c\\u044b \\u043e\\u0431\\u0441\\u0443\\u0434\\u0438\\u043b\\u0438, \\u0437\\u0430\\u0447\\u0435\\u043c \\u0432\\u043e\\u043e\\u0431\\u0449\\u0435 \\u0441\\u043e\\u0432\\u0440\\u0435\\u043c\\u0435\\u043d\\u0435\\u043d\\u043d\\u044b\\u0435 \\u044f\\u0437\\u044b\\u043a\\u0438 \\u043f\\u0440\\u043e\\u0433\\u0440\\u0430\\u043c\\u043c\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u044f \\u0443\\u0441\\u0442\\u0440\\u0435\\u043c\\u0438\\u043b\\u0438\\u0441\\u044c \\u043d\\u0430 \\u0431\\u043e\\u0440\\u044c\\u0431\\u0443 \\u0441 Null, \\u043a\\u0430\\u043a\\u0438\\u0435 \\u0438\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u044f \\u0432 \\u044f\\u0437\\u044b\\u043a\\u0435 \\u043d\\u0435\\u043e\\u0431\\u0445\\u043e\\u0434\\u0438\\u043c\\u043e \\u0431\\u044b\\u043b\\u043e \\u0440\\u0435\\u0430\\u043b\\u0438\\u0437\\u043e\\u0432\\u0430\\u0442\\u044c \\u0434\\u043b\\u044f \\u043f\\u043e\\u0434\\u0434\\u0435\\u0440\\u0436\\u043a\\u0438 \\u043d\\u043e\\u0432\\u043e\\u0439 \\u0444\\u0438\\u0447\\u0438, \\u043f\\u043e\\u0447\\u0435\\u043c\\u0443 \\u0431\\u044b\\u043b \\u0432\\u044b\\u0431\\u0440\\u0430\\u043d \\u0438\\u043c\\u0435\\u043d\\u043d\\u043e \\u0442\\u0430\\u043a\\u043e\\u0439 \\u0441\\u043f\\u043e\\u0441\\u043e\\u0431 \\u0440\\u0435\\u0430\\u043b\\u0438\\u0437\\u0430\\u0446\\u0438\\u0438 null safety \\u0438 Dart \\u0442\\u0435\\u043f\\u0435\\u0440\\u044c \\u0442\\u0430\\u043a \\u043f\\u043e\\u0445\\u043e\\u0436 \\u043d\\u0430 Kotlin \\u043f\\u043e \\u0441\\u0438\\u043d\\u0442\\u0430\\u043a\\u0441\\u0438\\u0441\\u0443. \\u041d\\u0435 \\u0437\\u0430\\u0431\\u044b\\u043b\\u0438 \\u043f\\u043e\\u0433\\u043e\\u0432\\u043e\\u0440\\u0438\\u0442\\u044c \\u0438 \\u043f\\u0440\\u043e late-\\u043f\\u0435\\u0440\\u0435\\u043c\\u0435\\u043d\\u043d\\u044b\\u0435, \\u0434\\u0436\\u0435\\u043d\\u0435\\u0440\\u0438\\u043a\\u0438, \\u043d\\u043e\\u0432\\u044b\\u0435 \\u043e\\u043f\\u0435\\u0440\\u0430\\u0442\\u043e\\u0440\\u044b, \\u0432\\u0430\\u0436\\u043d\\u044b\\u0435 \\u043d\\u044e\\u0430\\u043d\\u0441\\u044b \\u0440\\u0430\\u0431\\u043e\\u0442\\u044b Flow Analysis, \\u0430 \\u043d\\u0430 \\u0434\\u0435\\u0441\\u0435\\u0440\\u0442 \\u043e\\u0431\\u0441\\u0443\\u0434\\u0438\\u043b\\u0438 \\u043f\\u0435\\u0440\\u0441\\u043f\\u0435\\u043a\\u0442\\u0438\\u0432\\u044b \\u0440\\u0430\\u0437\\u0432\\u0438\\u0442\\u0438\\u044f \\u044f\\u0437\\u044b\\u043a\\u0430 \\u043d\\u0430 \\u0431\\u043b\\u0438\\u0436\\u0430\\u0439\\u0448\\u0438\\u0435 \\u043d\\u0435\\u0441\\u043a\\u043e\\u043b\\u044c\\u043a\\u043e \\u043b\\u0435\\u0442 \\u0438 \\u043f\\u043e\\u043f\\u044b\\u0442\\u0430\\u043b\\u0438\\u0441\\u044c \\u0440\\u0430\\u0437\\u0433\\u0430\\u0434\\u0430\\u0442\\u044c \\u0437\\u0430\\u0433\\u0430\\u0434\\u043a\\u0443 \\u0447\\u0438\\u0441\\u043b\\u0430 \\u201c2.12\\u201d.\\n\\n\\u0423 \\u043c\\u0438\\u043a\\u0440\\u043e\\u0444\\u043e\\u043d\\u0430: \\u0415\\u0432\\u0433\\u0435\\u043d\\u0438\\u0439 \\u0421\\u0430\\u0442\\u0443\\u0440\\u043e\\u0432 (Surf), \\u0410\\u043b\\u0435\\u043a\\u0441\\u0430\\u043d\\u0434\\u0440 \\u0414\\u0435\\u043d\\u0438\\u0441\\u043e\\u0432 (Epam), \\u0412\\u044f\\u0447\\u0435\\u0441\\u043b\\u0430\\u0432 \\u0415\\u0433\\u043e\\u0440\\u043e\\u0432 (Google), \\u0414\\u0430\\u043d\\u0438\\u0438\\u043b \\u0421\\u0443\\u0440\\u043d\\u0438\\u043d (Ozon), \\u041c\\u0438\\u0445\\u0430\\u0438\\u043b \\u0417\\u043e\\u0442\\u044c\\u0435\\u0432 (Surf), \\u0420\\u043e\\u0434\\u0438\\u043e\\u043d \\u041c\\u043e\\u0441\\u0442\\u043e\\u0432\\u043e\\u0439 (\\u0414\\u043e\\u0441\\u0442\\u0430\\u0432\\u043a\\u0430 \\u043e\\u0442 \\u0413\\u0443\\u0434\\u0432\\u0438\\u043d\\u0430).\\n\\n\\u0413\\u043b\\u0430\\u0432\\u043d\\u043e\\u0435 \\u043f\\u043e \\u0432\\u044b\\u043f\\u0443\\u0441\\u043a\\u0443:\\n\\u2757\\ufe0f Sound null safety: https://dart.dev/null-safety\\n\\u2757\\ufe0f Understanding null safety: https://dart.dev/null-safety/understanding-null-safety\\n\\u2757\\ufe0f Null safety FAQ: https://dart.dev/null-safety/faq\\n\\u2757\\ufe0f \\u0413\\u0430\\u0439\\u0434 \\u043f\\u043e \\u043c\\u0438\\u0433\\u0440\\u0430\\u0446\\u0438\\u0438: https://dart.dev/null-safety/migration-guide\\n\\u2757\\ufe0f \\u0421\\u0442\\u0430\\u0442\\u044c\\u044f \\u043e \\u0442\\u043e\\u043c, \\u043a\\u0430\\u043a \\u043f\\u0440\\u0438\\u043d\\u0438\\u043c\\u0430\\u043b\\u043e\\u0441\\u044c \\u0440\\u0435\\u0448\\u0435\\u043d\\u0438\\u0435 \\u043e \\u0441\\u043f\\u043e\\u0441\\u043e\\u0431\\u0435 \\u0440\\u0435\\u0430\\u043b\\u0438\\u0437\\u0430\\u0446\\u0438\\u0438 null safety \\u0432 Dart: https://medium.com/dartlang/why-nullable-types-7dd93c28c87a\\n\\u2757\\ufe0f \\u0422\\u0440\\u0435\\u0434 \\u043d\\u0430 Reddit, \\u043a\\u0443\\u0434\\u0430 \\u043c\\u043e\\u0436\\u043d\\u043e \\u043f\\u0438\\u0441\\u0430\\u0442\\u044c \\u0444\\u0438\\u0434\\u0431\\u0435\\u043a \\u043f\\u043e null safety: https://www.reddit.com/r/FlutterDev/comments/k6q7oz/looking_for_feedback_on_migrating_code_to_use/\\n\\n\\u041d\\u043e\\u0432\\u043e\\u0441\\u0442\\u0438:\\n\\u26a1\\ufe0f Issue triage reports: https://github.com/flutter/flutter/wiki/Issue-triage-reports\\n\\u26a1\\ufe0f \\u0417\\u0430\\u043a\\u0440\\u044b\\u0442\\u044b\\u0439 Issue \\u043f\\u043e \\u043b\\u0430\\u0433\\u0430\\u043c \\u0430\\u043d\\u0438\\u043c\\u0430\\u0446\\u0438\\u0438 \\u043d\\u0430 iOS: https://github.com/flutter/flutter/issues/60267\\n\\u26a1\\ufe0f \\u0421\\u0442\\u0430\\u0442\\u044c\\u044f \\u043f\\u0440\\u043e \\u043f\\u043e\\u0434\\u0434\\u0435\\u0440\\u0436\\u043a\\u0443 \\u0441\\u0442\\u0430\\u0440\\u044b\\u0445 \\u0432\\u0435\\u0440\\u0441\\u0438\\u0439 \\u041e\\u0421: https://medium.com/flutter/providing-operating-system-compatibility-on-a-large-scale-374cc2fb0dad\\n\\n\\U0001f396\\U0001f396\\U0001f396\\n\\u0420\\u0435\\u043a\\u043b\\u0430\\u043c\\u0430:\\n\\U0001f525\\u041f\\u043e\\u043a\\u0430 \\u0432\\u0441\\u0435 \\u0442\\u043e\\u043b\\u044c\\u043a\\u043e \\u0440\\u0430\\u0441\\u0441\\u0443\\u0436\\u0434\\u0430\\u044e\\u0442 \\u043f\\u0440\\u043e Flutter, \\u043d\\u0430\\u0443\\u0447\\u0438\\u0442\\u0435\\u0441\\u044c \\u0434\\u0435\\u043b\\u0430\\u0442\\u044c \\u0441\\u0435\\u0440\\u044c\\u0435\\u0437\\u043d\\u044b\\u0435 \\u043a\\u0440\\u043ec\\u0441\\u043f\\u043b\\u0430\\u0442\\u0444\\u043e\\u0440\\u043c\\u0435\\u043d\\u043d\\u044b\\u0435 \\u0440\\u0435\\u0448\\u0435\\u043d\\u0438\\u044f \\u2014 \\u043d\\u0430 \\u0431\\u0435\\u0441\\u043f\\u043b\\u0430\\u0442\\u043d\\u044b\\u0445 \\u0432\\u0435\\u0431\\u0438\\u043d\\u0430\\u0440\\u0430\\u0445 \\u043e\\u043d\\u043b\\u0430\\u0439\\u043d-\\u043a\\u0443\\u0440\\u0441\\u0430 \\xabFlutter Mobile Developer:\\n\\n\\U0001f4ccDemo Day \\u043a\\u0443\\u0440\\u0441\\u0430 \\xabFlutter Mobile Developer\\xbb: https://otus.pw/ii9H/\\n\\u2014 \\u0417\\u0430\\u0434\\u0430\\u0434\\u0438\\u0442\\u0435 \\u043b\\u044e\\u0431\\u044b\\u0435 \\u0432\\u043e\\u043f\\u0440\\u043e\\u0441\\u044b \\u043f\\u043e Flutter. \\u041f\\u043e\\u0437\\u043d\\u0430\\u043a\\u043e\\u043c\\u0438\\u0442\\u0435\\u0441\\u044c \\u0441 \\u043f\\u0440\\u0435\\u043f\\u043e\\u0434\\u0430\\u0432\\u0430\\u0442\\u0435\\u043b\\u0435\\u043c-\\u043f\\u0440\\u0430\\u043a\\u0442\\u0438\\u043a\\u043e\\u043c, \\u043a\\u043e\\u0442\\u043e\\u0440\\u044b\\u0439 \\u0440\\u0430\\u0441\\u0441\\u043a\\u0430\\u0436\\u0435\\u0442 \\u043e \\u0441\\u0435\\u0431\\u0435, \\u0441\\u0432\\u043e\\u0451\\u043c \\u043e\\u043f\\u044b\\u0442\\u0435, \\u043f\\u043e\\u0434\\u0435\\u043b\\u0438\\u0442\\u0441\\u044f \\u043a\\u0430\\u0440\\u044c\\u0435\\u0440\\u043d\\u044b\\u043c\\u0438 \\u0438\\u043d\\u0441\\u0430\\u0439\\u0434\\u0430\\u043c\\u0438 \\u0438 \\u043b\\u0430\\u0439\\u0444\\u0445\\u0430\\u043a\\u0430\\u043c\\u0438 \\u043f\\u043e \\u0432\\u044b\\u0433\\u043e\\u0434\\u043d\\u043e\\u0439 \\u043e\\u043f\\u043b\\u0430\\u0442\\u0435 \\u043a\\u0443\\u0440\\u0441\\u0430.\\n\\n\\U0001f4cc\\xab\\u041f\\u0438\\u0448\\u0435\\u043c Flutter-\\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0435 \\u0441 \\u0438\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435\\u043c Redux\\xbb: https://otus.pw/2oyc/\\n\\u2014 \\u0423\\u0437\\u043d\\u0430\\u0435\\u0442\\u0435, \\u043a\\u0430\\u043a \\u0438\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u0442\\u044c \\u043f\\u043e\\u0434\\u0445\\u043e\\u0434 \\u043a \\u0443\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u044e \\u0441\\u043e\\u0441\\u0442\\u043e\\u044f\\u043d\\u0438\\u0435\\u043c \\u0432\\u043e Flutter-\\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u044f\\u0445. \\u0412\\u044b\\u044f\\u0441\\u043d\\u0438\\u0442\\u0435 \\u0433\\u043b\\u0430\\u0432\\u043d\\u044b\\u0435 \\u043e\\u0441\\u043e\\u0431\\u0435\\u043d\\u043d\\u043e\\u0441\\u0442\\u0438 Redux. \\u041d\\u0430\\u043f\\u0438\\u0448\\u0435\\u0442\\u0435 \\u043d\\u0435\\u0431\\u043e\\u043b\\u044c\\u0448\\u043e\\u0435 \\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0435 \\u0438 \\u043e\\u0431\\u0441\\u0443\\u0434\\u0438\\u0442\\u0435, \\u043a\\u0430\\u043a \\u0445\\u043e\\u0440\\u043e\\u0448\\u043e Redux \\u043c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431\\u0438\\u0440\\u0443\\u0435\\u0442\\u0441\\u044f \\u0432 \\u043f\\u0435\\u0440\\u0441\\u043f\\u0435\\u043a\\u0442\\u0438\\u0432\\u0435.\\n\\n\\U0001f449\\U0001f3fb\\u0420\\u0435\\u0433\\u0438\\u0441\\u0442\\u0440\\u0438\\u0440\\u0443\\u0439\\u0442\\u0435\\u0441\\u044c \\u0441\\u0435\\u0439\\u0447\\u0430\\u0441 \\u2014 \\u043d\\u0430\\u043f\\u043e\\u043c\\u043d\\u0438\\u043c \\u0432 \\u0434\\u0435\\u043d\\u044c \\u0432\\u0435\\u0431\\u0438\\u043d\\u0430\\u0440\\u0430!\\n\\U0001f396\\U0001f396\\U0001f396\\n\\n\\u041e\\u0444\\u0438\\u0446\\u0438\\u0430\\u043b\\u044c\\u043d\\u044b\\u0439 \\u043a\\u0430\\u043d\\u0430\\u043b \\u043f\\u043e\\u0434\\u043a\\u0430\\u0441\\u0442\\u0430: t.me/flutterdevpodcast_news\\n\\u041e\\u0444\\u0438\\u0446\\u0438\\u0430\\u043b\\u044c\\u043d\\u044b\\u0439 \\u0447\\u0430\\u0442 \\u043f\\u043e\\u0434\\u043a\\u0430\\u0441\\u0442\\u0430: t.me/flutterdevpodcast'