Habr<p>[Перевод] Dart / Flutter — применяя zero / empty объекты ко всему</p><p>Больше техническая заметка, чем статья, поэтому постараюсь изложить мысли как можно кратче. Приходя из JS/TS мира, когда я впервые написал на Dart, самой прекрасной вещью, помимо многих было использование функций isEmpty или isNotEmpty для String, List, Map, и так далее. Это было невероятно просто и прекрасно не писать каждый раз .length == 0 . Также, очень полезным паттерном были empty/zero значения как Duration.zero, Offset.zero , и другие. Спустя время, я нашел привычку использовать похожий принцип для работы с различными случаями, а также пришел к мысли - что если мы используем такие значения для большей части объектов, избавляясь от null (не для всех случаев, но тем не менее)? Немного поискав, нашел похожий паттерн в Go и других языках, и продолжил думать:</p><p><a href="https://habr.com/ru/articles/896632/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/896632/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/%D0%BE%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%BA%D0%BE%D0%B4%D0%B0" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>организация_кода</span></a> <a href="https://zhub.link/tags/%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>данные_приложения</span></a> <a href="https://zhub.link/tags/%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>теория</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D1%8B%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>объектызначения</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D1%8B" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>объекты</span></a> <a href="https://zhub.link/tags/empty" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>empty</span></a> <a href="https://zhub.link/tags/zero" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>zero</span></a></p>