<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Комментарии / Профиль devmark]]></title>
    <link>https://habr.com/ru/users/devmark/comments/</link>
    <description><![CDATA[Хабр: комментарии пользователя devmark]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Fri, 01 May 2026 05:27:42 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      

      
        
  
    <item>
      <title>27.01.2026 18:05:34 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/989710/#comment_29443646</guid>
      <link>https://habr.com/ru/articles/989710/#comment_29443646</link>
      <description><![CDATA[<p>Парадокс Ферми - интересная тема. Я сам периодически размышляю над этим. Однако несколько смущает то, что вы написали в начале:</p><blockquote><p>Основная задача статьи — продемонстрировать, что даже если появление разумной жизни не является редким событием, её целенаправленный поиск может оставаться безрезультатным многие тысячелетия.</p></blockquote><p>Звучит так, будто вы "подогнали" симуляцию под заранее заготовленный вывод.</p><p>P.S. Интересное объяснение парадокса Ферми даёт Лю Цысинь в своей книге "Тёмный Лес".</p>]]></description>
      <pubDate>Tue, 27 Jan 2026 18:05:34 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>22.01.2026 13:42:05 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/987382/#comment_29419962</guid>
      <link>https://habr.com/ru/articles/987382/#comment_29419962</link>
      <description><![CDATA[<p>Я как раз имел в виду codex cli. Локальная разработка с помощью агента действительно удобнее и надёжнее, чем в облаке.</p>]]></description>
      <pubDate>Thu, 22 Jan 2026 13:42:05 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>22.01.2026 11:35:42 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/987382/#comment_29419230</guid>
      <link>https://habr.com/ru/articles/987382/#comment_29419230</link>
      <description><![CDATA[<p>Интересно, а почему codex заметно менее популярен (судя по опросу)? Тоже ведь неплохой агент, тем более от одного из лидеров рынка</p>]]></description>
      <pubDate>Thu, 22 Jan 2026 11:35:42 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>11.10.2025 17:41:06 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/habr_rutube/articles/953760/#comment_28949896</guid>
      <link>https://habr.com/ru/companies/habr_rutube/articles/953760/#comment_28949896</link>
      <description><![CDATA[<p>Спасибо! Будем ждать)</p>]]></description>
      <pubDate>Sat, 11 Oct 2025 17:41:06 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>07.10.2025 12:54:13 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/habr_rutube/articles/953760/#comment_28930482</guid>
      <link>https://habr.com/ru/companies/habr_rutube/articles/953760/#comment_28930482</link>
      <description><![CDATA[<p>По поводу юзабилити rutube, я каждый день пользуюсь вашим приложением на Smart TV (платформа Samsung Tizen) и у меня такое ощущение, что создатели сервиса сами своим приложением не пользуются).</p><p>Чтобы найти каналы, на которые я подписан - нужно кучу кнопок нажать (меню, подменю). И каждый раз при запуске ранее просмотренного видео этот вопрос "Вы хотите продолжить просмотр или начать с начала?". Очень нужна опция при старте приложения продолжить просмотр последнего видео.</p><p>У ВК Видео приложение для смарт тв удобнее. Хотя мне больше импонирует именно ваш подход, что вы структурно копируете YouTube (вплоть до названий ссылок), а не пытаетесь свои собственные абстракции вводить.</p><p>Я бы вам оставил подробную обратную связь в приложении, но не нашёл такой опции)</p>]]></description>
      <pubDate>Tue, 07 Oct 2025 12:54:13 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>14.09.2025 19:23:09 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28835878</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28835878</link>
      <description><![CDATA[<p>Я нисколько не пытаюсь принизить значимость мультиплатформы, но мне особо не приходилось слышать об успешных кейсах ее применения на практике. Буду признателен, если поделитесь своим. Да и на бэке Котлин до сих пор внедряется не так активно, как хотелось бы.</p>]]></description>
      <pubDate>Sun, 14 Sep 2025 19:23:09 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>14.09.2025 17:53:53 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28835634</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28835634</link>
      <description><![CDATA[<p>Возврат значений из управляющих конструкций - да, это удобно. Однако я не назвал бы это киллер фичой. Особенно если вспомнить, что это увеличивает количество возможных стилей написания методов. Скорее, приятный бонус. Мультиплатформа концептуально да, но она как будто не взлетела(</p>]]></description>
      <pubDate>Sun, 14 Sep 2025 17:53:53 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>11.08.2025 09:39:44 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28691798</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28691798</link>
      <description><![CDATA[<p>Большое кол-во исключений в сигнатуре может быть в сервисных методах самого верхнего уровня, т.к. они могут объединять все исключения с более низких уровней. Но мы конечно всегда можем просто написать throws Exception и не париться)</p>]]></description>
      <pubDate>Mon, 11 Aug 2025 09:39:44 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>10.08.2025 16:41:21 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28688614</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28688614</link>
      <description><![CDATA[<p>По поводу интеропа с java, мы стараемся у себя в проектах не смешивать java и kotlin. То есть если пишем на Kotlin, то все исходники должны быть на Kotlin (в том числе юзаем build.gradle.kts вместо грувишного buld.gradle). Но при этом мы активно используем Spring и уже знаем, где могут возникать null при вызове стандартных компонентов, а где не могут. На самом деле, если конфиг правильный, то в большинстве случаев у нас будет создан какой-то инстанс. А если нет - мы узнаем об этом ещё при старте приложения.</p>]]></description>
      <pubDate>Sun, 10 Aug 2025 16:41:21 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>10.08.2025 16:32:59 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28688598</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28688598</link>
      <description><![CDATA[<p>Спасибо за дополнение! В Kotlin работа с лямбдами действительно удобна. Однако ими тоже не следует злоупотреблять: большое количество вложенных друг в друга лямбд порождают "лесенку" в коде.</p><p>Цикл for очень удобен при "низкоуровневом", алгоритмическом программировании. Особенно когда у нас кастомный алгоритм обхода коллекции, а не банальный инкремент. Но в типовых приложениях чаще всего мы работаем с коллекциями и чаще всего перебираем элементы по очереди от начала до конца. Поэтому видимо авторы и решили оставить только for-each.</p>]]></description>
      <pubDate>Sun, 10 Aug 2025 16:32:59 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>10.08.2025 11:47:02 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28687332</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28687332</link>
      <description><![CDATA[<p>Полностью согласен! Я хотел про это написать и действительно забыл) Однако тут есть и обратная сторона медали, как и в случае с возвращаемым значением: с точки зрения единообразия в команде надо договориться, в каких случаях делаем именованные параметры, в каких - не делаем. Или всегда делаем.</p>]]></description>
      <pubDate>Sun, 10 Aug 2025 11:47:02 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>09.08.2025 13:01:28 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28684240</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28684240</link>
      <description><![CDATA[<p>Операторы очень выручают при работе со стандартной библиотекой. Я могу использовать математические операторы для работы с числами BigDecimal:</p><pre><code class="kotlin">val a = BigDecimal("100.00")
val b = BigDecimal("200.00")
val c = BigDecimal("300.00")
val sum = a * b + c

// против Java-варианта:
BigDecimal sum = a.multiply(b).plus(c);</code></pre><p>Согласитесь, что мне не нужно каждый раз лезть в реализацию стандартных математических действий. Но при этом возможность записи всяких формул в естественном виде - это удобно.</p><p>То же самое я могу сделать для своего собственного класса, например, для сложения матриц.</p><p>При этом в котлине я не могу определять вообще произвольные комбинации символов как операторы. А только фиксированный набор стандартных операторов.</p>]]></description>
      <pubDate>Sat, 09 Aug 2025 13:01:28 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 22:21:30 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28682384</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28682384</link>
      <description><![CDATA[<blockquote><p>А вот и нет! Мне пришло. Сижу периодически на платформе codingame когда делать нечего. Иногда там встречается соревнование "кто короче напишет" - подсчёт идёт в символах. Удаление всех пробелов очень спасает, иногда даже короче получается, чем у некоторых питонистов. Так что это определённо важная фича, а вы её назвали бесполезной...</p></blockquote><p>Данную статью я писал точки зрения промышленной разработки больших корпоративных проектов (основная ниша java и kotlin). Там всё-таки код в одну строку не пишут.</p><blockquote><p>А почему нет? Это не плюс на самом деле... Это даже скорее минус, что ты не можешь видеть, от чего ты наследуешься: от класса или метода.</p></blockquote><p>По поводу наследования, в процессе agile-разработки очень часто возникает ситуация, что интерфейс превращается в абстрактный класс или наоборот. Вот эти все extends и implements в таком случае особой ценности не несут.</p><blockquote><p>thymeleaf на минималках какой-то... Польза от того сомнительная, но окэй.</p></blockquote><p>Как человек, активно использующий thymeleaf в некоторых проектах, могу вас заверить, что котлиновская интерполяция строк поприятнее, т.к. она мощнее.</p><blockquote><p>Товарищ, вы боритесь менее, чем за 1 строку кода! Остановитесь! Разработчику полезно знать, где вообще подобный эксепшон в перспективе может появиться.</p></blockquote><p>В том-то и дело, что не одну) Очень часто вереница checked-эксепшенов занимает несколько строк. Особенно при использовании автоформатирования.</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 22:21:30 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 22:11:28 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28682346</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28682346</link>
      <description><![CDATA[<p>Если мы хотим выстрелить себе в ногу, то никто нам не может помешать)</p><p>Такие конструкции это всё-таки плохой код (мягко говоря), потому что мы нарушаем инкапсуляцию и полиморфизм. Тут речь больше про контракт: если я вижу, что метод принимает read-only list, значит метод декларирует, что он не собирается менять этот список.</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 22:11:28 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 22:06:06 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28682332</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28682332</link>
      <description><![CDATA[<p>В целом понимаю вашу точку зрения. И хочу дополнить, что Kotlin на Android взлетел благодаря поддержке со стороны Google.</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 22:06:06 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 11:02:10 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679554</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679554</link>
      <description><![CDATA[<p>Потому что я отталкивался от Котлин. Но можно перечислить.</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 11:02:10 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 11:00:03 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679548</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679548</link>
      <description><![CDATA[<p>На бекенде он тоже используется. Когда только Котлин появился, он закрыл прям заметные проблемы java. Сейчас в java появились аналогичные фичи и в этом немалая заслуга Котлин) а вообще наряду с контролем за null я бы отметил ещё разделение коллекций на изменяемые и неизменяемые.</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 11:00:03 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 10:56:02 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679522</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679522</link>
      <description><![CDATA[<p>Да, концептуально это тоже заметный плюс, но по факту это не синтаксис, а стандартная библиотека.</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 10:56:02 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 10:55:26 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679512</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679512</link>
      <description><![CDATA[<p>В java да, будет npe</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 10:55:26 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>08.08.2025 10:54:16 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679506</guid>
      <link>https://habr.com/ru/companies/raiffeisenbank/articles/934990/#comment_28679506</link>
      <description><![CDATA[<p>Да, существенных недостатков по большому счету нет)</p>]]></description>
      <pubDate>Fri, 08 Aug 2025 10:54:16 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

      

      

    
  </channel>
</rss>
