7. Объекты, строки. Программирование на Rust (весна 2019)

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 ม.ค. 2025

ความคิดเห็น • 21

  • @СергейПанов-з3ц
    @СергейПанов-з3ц 24 วันที่ผ่านมา

    Прослушал 7 лекций за 2 дня и еще в запасе 6 лекций👍.
    Супер крутые лекции❤

  • @mikhailanazarov
    @mikhailanazarov 2 ปีที่แล้ว +3

    Отличные лекции! Спасибо

  • @yugr
    @yugr 8 วันที่ผ่านมา

    43:54 - rustc тоже иногда может девиртуализовать вызов.

  • @wa7sa34cx
    @wa7sa34cx 3 ปีที่แล้ว +13

    Судя по все убывающему кол-ву комментариев на каждый следующий урок все меньше народу добирается 😆

    • @nanoqsh
      @nanoqsh 3 ปีที่แล้ว +3

      Язык непростой. Требуется много обдумывания, особенно если нет опыта программирования на низком уровне

    • @КириллКириллович
      @КириллКириллович ปีที่แล้ว +7

      @@АнтонДидиченко-н5х это курс не для фронтендеров или питонистов, а для настоящих программистов. Как несложно заметить по вопросам аудитории, там и плюсовики, и джависты.
      Лектор не говорит ничего лишнего.

    • @pav5000
      @pav5000 ปีที่แล้ว

      @@АнтонДидиченко-н5х этим как раз лекции и ценные, что лектор очень хорошо рассказывает про сложные внутренности языка. Знание этого помогает понять многие вещи, вместо того, чтобы просто заучивать. В инете полно материалов для начинающих по Расту, но из реально глубоких и качественных материалов для опытных программистов я только эти лекции нашел.

  • @alexeiguirik9463
    @alexeiguirik9463 7 หลายเดือนก่อน

    Замечание насчет строк в кодировке UTF-8. Насколько могу судить, Алексей *не совсем* прав, когда говорит, что строки в этой кодировке могут иметь внутри нулевой байт. Схема кодирования этого не допускает. Любые символы, которые представляются двумя и более байтами, в первом байте в двух старших битах будут иметь '11', а в следующих байтах - '10', то есть нулевой байт там встретиться не может; в однобайтовом символе 0 может содержаться, но тогда это и есть символ 'NUL', то есть тот самый маркер конца строки.
    Собственно, это одна из причин, по которой строки в кодировке UTF-8 без проблем обрабатываются функциями стандартной библиотеки C, которые, казалось бы, рассчитаны на работу с ASCII (например, strstr() сработает независимо от того, обе строки в UTF-8 или обе строки в ASCII).
    Чисто теоретически, можно представить ситуацию, когда внутри UTF-8 строки встречается нулевой байт, после которого строка продолжается и содержит другие байты. Тогда эта строка не сможет быть обработана (целиком) функциями стандартной библиотеки C. Однако это то же самое, когда внутри строки в однобайтовой кодировке встречается нулевой байт. Такая строка тоже будет некорректно обрабатываться функциями стандартной библиотеки C.
    На практике лично мне не приходилось сталкиваться с ситуациями, когда "неповрежденные" строки в кодировке UTF-8 содержали внутри нулевой байт. Видимо, наиболее вероятные случаи, когда можно столкнуться с чем-то подобным - вывод утилит типа xargs с флагом -0 или find с флагом -print0.

  • @luna_moonspeak
    @luna_moonspeak 5 ปีที่แล้ว +2

    1:24:00 А что за вопрос был?

    • @DarkKillerBit
      @DarkKillerBit 3 ปีที่แล้ว +2

      Подозреваю, что вопрос был о том, можно ли преобразовать Vect в Vec для формирования строки.

  • @luna_moonspeak
    @luna_moonspeak 5 ปีที่แล้ว +1

    50:24 Скажите, а в слайдах наверно ошибка, должно быть Self = mut dyn Iterator или я не поняла?

    • @alekseykladov1144
      @alekseykladov1144 5 ปีที่แล้ว +2

      Вроде всё верно, &mut dyn.
      "наш Self" тут -- это `it` из `with_any_iterator`

  • @vlad071096
    @vlad071096 2 ปีที่แล้ว

    std::error::Error всё ещё плох, или уже норм? Что с ним вообще не так?

    • @alekseykladov1144
      @alekseykladov1144 2 ปีที่แล้ว +4

      Уже сильно лучше -- из него убрали бесполезный description, и пофиксили возможность downcast. Скоро ещё грозятся сделать поддержку бектрейсов, и тогда вообще хорошо будет. Ещё со времён лекции появилось два новых крейта, anyhow и thiserror, они в целом правильно кодифицируют большую часть дизайна.

  • @DanYakovlev
    @DanYakovlev 2 ปีที่แล้ว +1

    Раст конечно лавкрафтианский язык, ведь в нем есть НЕВЫРАЗИМОЕ

  • @elliotalderson6609
    @elliotalderson6609 11 หลายเดือนก่อน

    Ох и тяжело слушать такой голос :)