Ну хорошо, положим что Реакт не дотягивает до SPA фреймворка. Что насчет vue? Разве там можно из коробки управлять глобальным стейтом и писать роутинг? Насколько я знаю для этого есть соответствующие либы vuex и vue-router которые идут отдельно? Почему же Vue называют фреймворком?
А что у svelte? У него есть в комплекте роутинг и работа со сторами уровня Redux/vuex или опять пишите депенденсы?
Получается что либо у нас единственный фреймворк angular(JS), либо просто учитываем то что написал автор на офф странице.
Фреймворк задаёт структуру и подход к архитектуре вашего приложения, он диктует, как вы должны писать код.
React — библиотека для отображения данных, которая включает в себя Virtual DOM, JSX, изоморфность и компонентный подход. Грубо говоря, React — это умный шаблонизатор.
Почему же библиотекой а не фреймворком для отображения данных? Структуру он вполне задает и явно диктует как мне нужно писать код(попробуйте написать любое приложения без использования хуков его Lifecycle).
Что это за такие глубокие изменения, что вместо «увеличить буфер под данные в 2 раза» (например) быстрее вышло проанализировать исходники Андроида?
Ну допустим что в приложении заполнение буфера делается некой библиотекой, общей для всех Android устройств. Каковы дальнейшие действия?
а) увеличить буфер в апстриме либы.
б) увеличить буфер после проверки некоего флага в апстриме либы
в) создать форк либы под это устройство
Первые два варианта мало того что являются костылем так еще требуют мегатонны согласований(Netflix то не маленькая) окончательно хороня надежды вписаться в дедлайны релиза, третий вариант сам по себе редкое дерьмище в плане последующей поддержки этой либы.
1) так может galaxy note 10 греется из-за неудавной батареи/контроллера и процессора либо кривизны рук Samsung разработчиков/проектировщикова не из-за того используется Java?
2) Как только тесты перешли от написания кода в С стиле(посмотрите свифтовые исходники первых трех с UnsafeMutablePointer) к использованию регеэксп либы то почему то Swift резко ударил лицом в грязь.
3) В fasta разница мизерная зато в binary-trees она пятикратная а в k-nucleotide трехкратная. Их вы предпочли проигнорировать. В чем же возможная причина? Общего между ними — использована пакетная либа платформы Foundation для многопоточности, а в Java аналогичные пакеты.
Итого в сухом остатке — если использовать встроеные в плаформы либы то почему то пропадает куда-то вся дутая производительность.
памяти Swift'ом съедено заметно меньше
Это да, есть такая беда у Java — съедать всю доступную память. С другой стороны выбирая между временем выполнения и памятью лучше выбрать время, оно стоит дороже.
PS Прекрасно представляю что из себя представляет Android изнутри и именно поэтому считаю что превзойти iOS по производительности это несбыточная задача.
Apple контролирует абсолютно все этапы работы приложения:
1) они задизайнили процессор на котором он будет работать и остальное железо
2) они целиком создали тулчейн на котором приложение будет собираться и разрабатываться
3) все драйвера и ядро операционной системы написаны ими же.
4) системные библиотеки платформы(рантайм языка приложений) точно так же полностью сделаны Apple
5) жестокий фильтр приложений, в том числе по признаку user experience и производительности.
У Google как «владельца» Android из этого есть контроль только над п4 и отчасти п2.
Железо клепают производители, они же пишут драйвера кто во что горазд. В сторе миллион приложений совершенно разного качества, практически без всякого контроля UX.
Я совершенно уверен что если бы Android использовал swift(go,c++,rust) для написаний приложений а iOS Java, то все равно ситуация была бы точно такой же.
Даже пришлось перейти на Iphone, потому что был Galaxy Note 10 и с нужными мне приложениями он постоянно перегревался и по сути не работал, беспроводная зарядка вообще не работала, она постоянно отключалась из-за перегрева
Ну 7е ноты вообще самопроизвольно возгорались, их даже запретили проносить на борт самолетов. Думаете дело в Java?
Конечно на regex-redux есть аномалия, но возможно код не очень оптимальный написали
Ничего страшного, ведь считать n-problem или рассчитывать множество мандельброта нужно гораздо чаще чем применять регеэкспы.
потому что во всех других сценариях мы видим что Java медленней
Особенно хорошо это видно в тестах binary-trees, k-nucleotide, fasta.
Ага ну да конечно, user space они же green треды из коробки(смысл вопроса про разницу kernel thread vs kernel process пропадает), внятная и стандартизированная memory model безо всяких GIL уже 20 лет как, неблокирующий IO из коробки(NIO), netty сервер для хайлоада(уже даже поддержку io_uring запилили), тонны потокобезопасных коллекций и примитивов синхронизации на любой вкус, огромное количество экспертизы размазанной по не менее огромному комьюнити, требования по знанию многопоточности предъявляются к разработчикам начиная еще с джуниор уровня.
Ну да Python прям смотрится на фоне Java явным фаворитом для highload.
Честно говоря все это похоже на какой то сюр, заходишь почитать про специфику вкатывания в Python а тут с порога: нюансы GIL, кишки Линукса. Точно подходящий инструмент для хайлоада?
(не)Счастливый обладатель телевизора на webOS образца 2017 года. Да, в целом из коробки идет неплохой набор приложений но как всегда есть нюансы.
1) youtube — не позволяет менять скорость воспроизведения
2) plex -изначально использовал для просмотра сериалов и фильмов, но в один прекрасный день обновив его и узнал о существовании бага — если сделать хоть одну перемотку то получаешь заикающийся видеопоток. Проблема «решилась» даунгрейдом версии, грустно провожал взглядом список патчимых CVE для приложения. forums.plex.tv/t/plex-app-lg-webos-keeps-buffering-every-second-after-fast-forward-and-resume/479106 — разработчику Plex в целом наплевать на эту проблему.
В итоге перешел на упомянутый в статье ugoos x3 +ATV. hdvideobox для сериалов и фильмов,Smart YouTube TV для ютуба.
Есть конечно проблема что это все не работает из коробки, hdvideobox не хочет воспроизводить сериалы последовательно серия за серией, вынуждая делать дополнительные телодвижения, ютуб и вовсе периодически отваливается стараниями корпорации добра. Но по крайней мере, по сравнению с закрытой экосистемой webOS тут я могу хоть как то повлиять на свой юзер экспириенс, а не жрать че дали.
Плохо представляю сценарий, когда все это выгодно. Крупным сервисам с огромным трафиком дешевле будет купить свои сервера, маленьким дешевле VPS.
Нестабильный трафик, когда в один день пусто а в другой густо. Либо создавать кластер с автоскейлингом, что требует нормальной такой экспертизы(да и притормаживает обычно скейлинг, хотя это очень редко бывает критично), либо вот эти вот лямбды где уже подумали за вас.
По стоимости обработки одного вызова API это будет примерно так:
1) Самое дорогое это конечно лямбды.
2) Кластер из амазоновских серверов с автоскейлингом
3) Кластер где скейлинг происходит за счет спотовых инстансов, которые стоят от 2 до 4 раз дешевле. Недостатки — их может не быть в данный момент времени и это нужно предусмотреть, их могут отобрать с 30секундным уведомлением и ваша архитектура должна это так же предусматривать.
По капитальным затратам — то есть стоимость приложения и создания инфраструктуры, все ровно наоборот.
Прикладным гейм-разработчикам это можно освоить и самостоятельно. Это можно освоить и в школе в математических специализированных классах. Это можно освоить и на коротких курсах.
Рано или поздно может возникнуть ситуация когда прикладной гейм-разработчик, по мере роста амбиций, захочет заняться разработкой движков. Если у него нет университетского бекграунда за плечами сколько по времени займет переобучение? Ну допустим озвученный вами год. А сколько бы заняло если бы он уже имел за плечами матфак?
Лично мне кажется что лучше иметь к 22-23 годам 5 лет хорошего образования и по возможности полгода опыта чем иметь полгода курсов/самообразования и 5 лет рабочего опыта. В 22-23 это будет совсем неочевидно, особенно с финансовой точки зрения, но к 30-35 годам отрыв уже будет нагляден.
Если вкратце, то нет. Максимум — для доказательств свойств тех или иных методов, чтобы показать, например, что метод аппроксимирует «идеальный» матанный объект.
Хорошо, как мне понять когда лучше использовать метод Рунге-Куты а когда Рунге-Куты-Нюстрёма(первая попавшаяся в википедии модификация) или то почему тот или иной метод работает, если я знаю матан на школьном уровне?
Но недостаточно, чтобы утверждать, что вам для счёта нужна аксиоматика Пеано вместе с доказательствами всяких её интересных свойств.
Так никто вроде не утверждал подобное, пролистал вверх до коммента преткновения, там наоборот вами утверждалось что «матан не нужен среднему программисту/синьору» а не "${имя теоремы из матанализа} вместе с доказательствами всяких ее интересных свойств не нужны среднему программисту".
Нет, мой тезис немного отличается.
Я запутался, изначальный тезис вроде был таким: среднему программисту матан не нужен, потом — программисту из геймдева(или они уже не средние?) матан нужен чуть-чуть. Эта чуть-чуть дает право говорить что матан программисту нужен или это будет неправда?
И считаете вы вполне успешно без изучения аксиоматики Пеано.
Аксиоматика Пеано и 1+1 = 11 2 являются частями арифметики. Достаточно использовать что либо одно что бы утверждать что я использую арифметику.
По вашему же получается что что бы утверждать что в работе используется матанализ нужно как минимум публиковаться по теме теории струн.
Вот Вас как Web разработчика интересует на какой аппаратной платформе я открываю Ваши сайты? Я могу просмотреть Ваши работы и на Малинке и на обычном ПК, и даже на телевизоре.
Все равно взаимосвязи больше не стало. Что бы делать подобные утверждения нужно, как минимум, постулировать неразрешимые недостатки x86. На сегодняшний день x86 превосходит по вычислительной мощности ARM но проигрывает в цене и энергопотребление(и то есть Atom). Вопрос о том кто из них представляет лучший баланс энергопотребления мощности до сих пор дискуссионный. Единственные кто двигают в сторону ARM это Apple, посмотрим что представляет их процессор вне проприетарных бенчмарков с попугаями.
Лично я считаю что рынок переделится и установится равновесие, но говорить о преимуществе ARM по всем фронтам еще очень рано да и не верю я в серебряную пулю. Цена изготовления аргумент слабый, себестоимость чипа составляет несколько процентов его рыночной стоимости. Как видно АМД очень сильно подвинулись по цене что бы откусить кусок рынка.
Как раз наоборот, это крайне непростой пример тогда получается — python+pandas. Такой выбор примера лишь порождает дополнительные вопросы. Эта связка используется в около data science вакансиях. У них, как известно, в почете знание разных математических дисциплин. На 100к со старта может претендовать абсолютно любой студент или только с профильных кафедр топ 3-5 вузов? Помимо знания языка/фреймворка/общей технической грамотности проверяется ли знание математики? Если да то понятно откуда такой ценник.
Если нет то присоединяюсь к вашему удивлению ситуацией.
А что у svelte? У него есть в комплекте роутинг и работа со сторами уровня Redux/vuex или опять пишите депенденсы?
Получается что либо у нас единственный фреймворк angular(JS), либо просто учитываем то что написал автор на офф странице.
Почему же библиотекой а не фреймворком для отображения данных? Структуру он вполне задает и явно диктует как мне нужно писать код(попробуйте написать любое приложения без использования хуков его Lifecycle).
Ну допустим что в приложении заполнение буфера делается некой библиотекой, общей для всех Android устройств. Каковы дальнейшие действия?
а) увеличить буфер в апстриме либы.
б) увеличить буфер после проверки некоего флага в апстриме либы
в) создать форк либы под это устройство
Первые два варианта мало того что являются костылем так еще требуют мегатонны согласований(Netflix то не маленькая) окончательно хороня надежды вписаться в дедлайны релиза, третий вариант сам по себе редкое дерьмище в плане последующей поддержки этой либы.
Вообще уже есть github репа в которую потихоньку стекаются все эти фиксы. Патчинг силами комьюнити. github.com/yamashi/PerformanceOverhaulCyberpunk
Интересно что бы было если CD Project выложили исходники к игре?
Однако забористые в Китае VPN, работают не только через пространство но и через время.
2) Как только тесты перешли от написания кода в С стиле(посмотрите свифтовые исходники первых трех с UnsafeMutablePointer) к использованию регеэксп либы то почему то Swift резко ударил лицом в грязь.
3) В fasta разница мизерная зато в binary-trees она пятикратная а в k-nucleotide трехкратная. Их вы предпочли проигнорировать. В чем же возможная причина? Общего между ними — использована пакетная либа платформы Foundation для многопоточности, а в Java аналогичные пакеты.
Итого в сухом остатке — если использовать встроеные в плаформы либы то почему то пропадает куда-то вся дутая производительность.
Это да, есть такая беда у Java — съедать всю доступную память. С другой стороны выбирая между временем выполнения и памятью лучше выбрать время, оно стоит дороже.
PS Прекрасно представляю что из себя представляет Android изнутри и именно поэтому считаю что превзойти iOS по производительности это несбыточная задача.
Apple контролирует абсолютно все этапы работы приложения:
1) они задизайнили процессор на котором он будет работать и остальное железо
2) они целиком создали тулчейн на котором приложение будет собираться и разрабатываться
3) все драйвера и ядро операционной системы написаны ими же.
4) системные библиотеки платформы(рантайм языка приложений) точно так же полностью сделаны Apple
5) жестокий фильтр приложений, в том числе по признаку user experience и производительности.
У Google как «владельца» Android из этого есть контроль только над п4 и отчасти п2.
Железо клепают производители, они же пишут драйвера кто во что горазд. В сторе миллион приложений совершенно разного качества, практически без всякого контроля UX.
Я совершенно уверен что если бы Android использовал swift(go,c++,rust) для написаний приложений а iOS Java, то все равно ситуация была бы точно такой же.
Ну 7е ноты вообще самопроизвольно возгорались, их даже запретили проносить на борт самолетов. Думаете дело в Java?
Ничего страшного, ведь считать n-problem или рассчитывать множество мандельброта нужно гораздо чаще чем применять регеэкспы.
Особенно хорошо это видно в тестах binary-trees, k-nucleotide, fasta.
Ну да Python прям смотрится на фоне Java явным фаворитом для highload.
1) youtube — не позволяет менять скорость воспроизведения
2) plex -изначально использовал для просмотра сериалов и фильмов, но в один прекрасный день обновив его и узнал о существовании бага — если сделать хоть одну перемотку то получаешь заикающийся видеопоток. Проблема «решилась» даунгрейдом версии, грустно провожал взглядом список патчимых CVE для приложения.
forums.plex.tv/t/plex-app-lg-webos-keeps-buffering-every-second-after-fast-forward-and-resume/479106 — разработчику Plex в целом наплевать на эту проблему.
В итоге перешел на упомянутый в статье ugoos x3 +ATV. hdvideobox для сериалов и фильмов,Smart YouTube TV для ютуба.
Есть конечно проблема что это все не работает из коробки, hdvideobox не хочет воспроизводить сериалы последовательно серия за серией, вынуждая делать дополнительные телодвижения, ютуб и вовсе периодически отваливается стараниями корпорации добра. Но по крайней мере, по сравнению с закрытой экосистемой webOS тут я могу хоть как то повлиять на свой юзер экспириенс, а не жрать че дали.
Нестабильный трафик, когда в один день пусто а в другой густо. Либо создавать кластер с автоскейлингом, что требует нормальной такой экспертизы(да и притормаживает обычно скейлинг, хотя это очень редко бывает критично), либо вот эти вот лямбды где уже подумали за вас.
По стоимости обработки одного вызова API это будет примерно так:
1) Самое дорогое это конечно лямбды.
2) Кластер из амазоновских серверов с автоскейлингом
3) Кластер где скейлинг происходит за счет спотовых инстансов, которые стоят от 2 до 4 раз дешевле. Недостатки — их может не быть в данный момент времени и это нужно предусмотреть, их могут отобрать с 30секундным уведомлением и ваша архитектура должна это так же предусматривать.
По капитальным затратам — то есть стоимость приложения и создания инфраструктуры, все ровно наоборот.
Рано или поздно может возникнуть ситуация когда прикладной гейм-разработчик, по мере роста амбиций, захочет заняться разработкой движков. Если у него нет университетского бекграунда за плечами сколько по времени займет переобучение? Ну допустим озвученный вами год. А сколько бы заняло если бы он уже имел за плечами матфак?
Лично мне кажется что лучше иметь к 22-23 годам 5 лет хорошего образования и по возможности полгода опыта чем иметь полгода курсов/самообразования и 5 лет рабочего опыта. В 22-23 это будет совсем неочевидно, особенно с финансовой точки зрения, но к 30-35 годам отрыв уже будет нагляден.
Хорошо, как мне понять когда лучше использовать метод Рунге-Куты а когда Рунге-Куты-Нюстрёма(первая попавшаяся в википедии модификация) или то почему тот или иной метод работает, если я знаю матан на школьном уровне?
Так никто вроде не утверждал подобное, пролистал вверх до коммента преткновения, там наоборот вами утверждалось что «матан не нужен среднему программисту/синьору» а не "${имя теоремы из матанализа} вместе с доказательствами всяких ее интересных свойств не нужны среднему программисту".
Я запутался, изначальный тезис вроде был таким: среднему программисту матан не нужен, потом — программисту из геймдева(или они уже не средние?) матан нужен чуть-чуть. Эта чуть-чуть дает право говорить что матан программисту нужен или это будет неправда?
Численные методы не используют матаппарат матана?
Бесконечно мало?
Аксиоматика Пеано и 1+1 =
112 являются частями арифметики. Достаточно использовать что либо одно что бы утверждать что я использую арифметику.По вашему же получается что что бы утверждать что в работе используется матанализ нужно как минимум публиковаться по теме теории струн.
Все равно взаимосвязи больше не стало. Что бы делать подобные утверждения нужно, как минимум, постулировать неразрешимые недостатки x86. На сегодняшний день x86 превосходит по вычислительной мощности ARM но проигрывает в цене и энергопотребление(и то есть Atom). Вопрос о том кто из них представляет лучший баланс энергопотребления мощности до сих пор дискуссионный. Единственные кто двигают в сторону ARM это Apple, посмотрим что представляет их процессор вне проприетарных бенчмарков с попугаями.
Лично я считаю что рынок переделится и установится равновесие, но говорить о преимуществе ARM по всем фронтам еще очень рано да и не верю я в серебряную пулю. Цена изготовления аргумент слабый, себестоимость чипа составляет несколько процентов его рыночной стоимости. Как видно АМД очень сильно подвинулись по цене что бы откусить кусок рынка.
А какая взаимосвязь?
Вот уж зубрить точно ничего не нужно.
Как раз наоборот, это крайне непростой пример тогда получается — python+pandas. Такой выбор примера лишь порождает дополнительные вопросы. Эта связка используется в около data science вакансиях. У них, как известно, в почете знание разных математических дисциплин. На 100к со старта может претендовать абсолютно любой студент или только с профильных кафедр топ 3-5 вузов? Помимо знания языка/фреймворка/общей технической грамотности проверяется ли знание математики? Если да то понятно откуда такой ценник.
Если нет то присоединяюсь к вашему удивлению ситуацией.