Переход с PHP на GoLang в реальных примерах/Антон Морев, основатель и CTO wormsoft.ru

Поділитися
Вставка
  • Опубліковано 25 лип 2020

КОМЕНТАРІ • 44

  • @dimusss
    @dimusss 3 роки тому +6

    Отличный доклад, спасибо. Жаль, что было так мало времени. Скорость речи классная, поток информации залетает плотный)

  • @cheevauva
    @cheevauva 2 роки тому +7

    Я так и не понял как GO решил проблемы проекта. Он вообще их решил?

  • @Mytest437
    @Mytest437 2 роки тому

    "При передаче среза в метод, передается копия среза, но со ссылкой на старый массив".... это как?? и для чего такой огород?!?!? 🧐

  • @daniilkoliasnikov6696
    @daniilkoliasnikov6696 3 роки тому

    Go заставляет писать правильно. Горутины выводят неправильное значение, потому-что в функцию I нужно передавать аргументом, а не переменную из scope.

    • @kotoponchik
      @kotoponchik 3 роки тому

      Ищем бекэнд разработчика на golang в международный проект. Пишите на почту globint@mail.ru

    • @user-xd3nv2le2o
      @user-xd3nv2le2o 9 місяців тому

      Ну судя по всему заставить не получилось 😂

  • @zazaorg3957
    @zazaorg3957 3 роки тому +7

    охуеть открытие, компилируемый язык быстрее интерпретируемого

  • @serglifinsky4022
    @serglifinsky4022 3 роки тому +3

    Swoole + swoft

  • @everus8558
    @everus8558 Рік тому +1

    На 29:25 докладчик немного ошибся, в php есть множественное наследование через traits.

    • @user-pn7di5lp9v
      @user-pn7di5lp9v Рік тому +2

      Это да. Только если не учитывать, что trait к наследованию отношения не имеет

  • @Wivern11
    @Wivern11 3 роки тому

    Хочу перейти с PHP (Битрикс) на Go. Ищу стажировку, готов изучать с уклоном под ваш конкретный проект

    • @themansonbrother01
      @themansonbrother01 3 роки тому +9

      Ухх....битрикс. Сочувствую.

    • @GermanBoldyrev
      @GermanBoldyrev Рік тому

      Прешли в итоге. Если да то сложно ли было? Заранее спасибо!

    • @Wivern11
      @Wivern11 Рік тому +1

      @@GermanBoldyrev нет. Но перешел на Symfony

    • @alexnov4367
      @alexnov4367 Рік тому

      @@Wivern11 А на чем раньше работали и как вам Symfony? Поделитесь, пожалуйста, впечатлениями. Плюсы, минусы, выбрали бы сейчас его или нет?

    • @Wivern11
      @Wivern11 Рік тому

      @@alexnov4367 раньше был на Битриксе. Symfony конечно круче. Хоть и сложно, но для работы много знать необязательно. Ко всему можно подлезть и все можно настроить. В основном сейчас меняю пару строчек кода и все работает. На Битриксе по любому поводу надо было писать километры кода.

  • @namazbekbekarysuly9112
    @namazbekbekarysuly9112 3 роки тому +1

    До тех поп пока проект не требует больших спу, го можно и не рассматривать.
    Го отличные, но как студия я думаю они не делали какие супер сложные проекты которые требуют использования го.

  • @user-xd3nv2le2o
    @user-xd3nv2le2o 9 місяців тому +1

    Сложно слушать - как с пулемёта слова летят, а когда язык не поспевает и получаются плевки , причмокивания и тп - вообще ужасно... Как истинный руководитель мог бы и делегировать выступление...

  • @zazaorg3957
    @zazaorg3957 3 роки тому +1

    чтобы gearman отвалился из-за нехватки памяти, нужно запустить 10 тысяч воркеров. Похоже просто в нем делали какую-то херню

    • @amorev
      @amorev 3 роки тому

      Ну мы именно ее и делали:) приготовили php+gearman неправильно)

  • @user-jx4jb4of3c
    @user-jx4jb4of3c 2 роки тому +2

    В первые же 10 минут стало понятно что ребята не go учили, а в принципе учились программировать. И в целом доклад про это. Увы на рынке php если не изучать параллельно другие, в том числе системные языки, по-настоящему программировать не научиться.
    Попробуйте сходу освоить C и Rust, тогда ваш код на go точно станет ещё лучше.
    Молодцы что расширили свой кругозор, но доклад, увы скучный. Я ожидал услышать не как ребята учили очевидные вещи, а о том как это было с точки зрения бизнеса, как быстро училась команда. Какие были издержки с этим связанные. Как скоро начало получаться писать качественный код. В общем промазал с выбором видео. Видимо я не аудитория доклада.

    • @vladimirmakarov6344
      @vladimirmakarov6344 2 роки тому +2

      Забавно, да. Информации ноль. Перетирание избитой темы про слайсы, но люди и с таким подходом зарабатывают деньги, что не менее интересно

  • @kshetragia
    @kshetragia 3 роки тому +2

    Про срезы повеселил. Человек не привык работать на системном уровне. Go - это улучшенный Си, со всеми вытекающими. И работать с ним нужно как если бы вы писали качественный код на Си. Что в Си делать совсем не просто и требует огромного труда и терпения.
    Go - это таблетка от головной боли системщика - Си-шника - работа с массивами, строками, памятью, многозадачностью, модульностью из коробки. И ничего лишнего, неконтролируемого, неоднозначного
    Срез, скорее всего, делает realloc и разумеется возвращает указатель на новую область памяти. Это на столько очевидно, что не задумываясь возвращаешь новое значение указателя и живешь с ним дальше.
    Goрутина - Обычный fork+exec+pipe+signal handler

    • @EdwVee
      @EdwVee 3 роки тому +1

      1. Гоу может быть непредсказуем по потреблению памяти
      2. Горутина не имеет отношения к лежащему внизу поста, горутина даже потоком не является, не то что процессом

    • @kshetragia
      @kshetragia 3 роки тому

      @@EdwVee ничто не ново под луной. Горутина - это обычная функция, запущенная в отдельном процессе(в терминах го это M-machine). Общается горутина через каналы.
      И чем это принципиально отличается от классического fork() + pipe() ? А copy-on-write гарантирует малое потребление памяти как и при обычном fork-e.
      Просто всю грязную работу делает шедулер. Но если вы привыкли работать с тредами, то действительно - это другое. Треды на винде более легковесны, но тянут за собой кучу проблем разделения данных.

    • @EdwVee
      @EdwVee 3 роки тому +1

      @@kshetragia тем, что можно 100500 горутин создать даже в отличие от потоков, и я не говорю про процессы, тем что есть разделяемая память. Вроде и то, и то обёртка для исполняемого кода, но называть их равнозначными нельзя

    • @MsHorbjorn
      @MsHorbjorn 3 роки тому

      @@EdwVee все вполне предсказуемо если знать как все работает

    • @user-fg6jw1cy5v
      @user-fg6jw1cy5v 6 місяців тому

      @@kshetragia Горутина работает без свитч контекста, в юзерспейсе есть свой скедулер. Это не классический поток.

  • @vugpgu
    @vugpgu Місяць тому

    Не крайній, а останній

  • @MsHorbjorn
    @MsHorbjorn 3 роки тому +1

    Ужас, стыдно должно быть с таким докладом выходить, когда ты не разбираешься в том, о чем рассказываешь

  • @AndriiKuftachov
    @AndriiKuftachov 3 роки тому

    Что за фигня со звуком??????

  • @germanigortsev1361
    @germanigortsev1361 3 роки тому +5

    Слушать невозможно

  • @NikK0lay
    @NikK0lay 3 роки тому

    Проблема была в Фреймворк, был бы голый php таких бы проблем было бы меньше. Докер, это еще один бред замедляющий работу. Не удивительно что всё полетело

    • @EdwVee
      @EdwVee 3 роки тому

      Всё-таки проблема у авторов лежала в архитектуре: плодить целые процессы чтобы делать хттп запросы. Тут даже ассемблер с таким подходом не поможет.

  • @radikovichkz2470
    @radikovichkz2470 11 місяців тому

    Неправильно ООП используете. Согласно правилам солид нельзя перезаписывать методы из наследуемого класса, в новые класс нужно только добавлять функционал, учите матчасть, и кстати golang поддерживает парадигму ООП.

    • @user-xd3nv2le2o
      @user-xd3nv2le2o 9 місяців тому

      Какое правило solid запрещает переопределение методов?