Не ходите в геймдев, особенно мобильный. Вас ещё сильнее шокируют соотношения затрат на рекламу и разработку, а так же показатели roi. Да и других сфер, где есть только один показатель - отбиваемость рекламы, не так уж и мало.
Этим активно занимался Александреску, пытаясь внести в D. Но в итоге не получилось даже стандартную библиотеку нормально описать. Он обещает вернуться к этой задаче, но уже лет 5 никаких подвижек.
К сожалению исходники закрыты. Я, например, давно хотел поиграться с ИИ боя, написать хороший алгоритм, использовать его как инструмент для поиска новых приёмов, как это произошло в шахматах. И даже при наличии исходников хоты было бы сложно это сделать в силу того, что это не с ноля написанный проект, а патчи к старой игре без исходников. VCMI - наоборот, полный набор исходников, с ним гораздо приятнее работать.
Что же вы для VCMI скрин из HotA взяли? Я уж было подумал, что они портировали хоту и теперь можно поиграть. Но нет. А без HDmod, ладдера и HotA этот движок не нужен.
Огромное спасибо за статью. Давно сам хотел написать что-то подобное, потому что постоянно сталкиваюсь с библиотеками на CMake, которыми совершенно невозможно пользоваться. То как subdirectory не работает, то свои переменные выставляет сложно.
Вы путаете книги. Дизайн и эволюция - не справочник, а история создания. Она про причины принятых решений, в то время как cppreference - справочник с результатами принятых решений.
Робинзон Крузо нервно курит в сторонке. 4 человека выживали 6 лет на необитаемом острове за полярным кругом, а потом фактически купили себе билет домой. Я только для погружения в эту историю готов туда лететь, но надо аутентично, на паруснике из Архангельска.
Идея и решение - извращение, но спасибо, что поделились, это интересно.
Если хотите запретить создание на стеке, то лучше делать приватным деструктор, а не конструкторы. Это даёт возможность не делать create и при появлении новых публичных конструкторов, например в потомках, всё ещё будет работать.
Спасибо за пост, приятно видеть сочетание велотуринга и технологий.
Пришёл задавать вопрос, упомянутый в посте: сотню в день можно и на педалях ехать. Да, с палаткой, вещами и едой на неделю, ещё и с набором высоты под километр. И нет это не какие-то рекорды, это весьма спокойный туринг. Упоротые спортсмены ездят кратно больше.
А сам вопрос звучит на самом деле не так: неужели на велосипеде интересно ехать без кручения педалей? Половина кайфа же в этом. С мотором есть мотоциклы, машины и тд, у которых нет проблем с электричеством. Имхо, велосипед для того и нужен чтобы двигать его своими мышцами. Посадка на велосипеде заточена под работу ногами, без этого можно гораздо удобнее устроиться, как на скутерах например.
Если совсем упростить, то радиоактивная вода не наводит радиацию. Основным источником наведённой радиации являются нейтроны, а вода не будет их излучать. Радиация всё же не вирус, который чудом пролазит сквозь стены.
Ну как-то очень притянуто. const должен быть там, где данные не меняются. Если функция/объект не меняют данные, то должен быть const. Иначе ломается вся const корректность. Я так и не понял, ради чего надо жертвовать корректностью? В одном месте мы якобы получим больше явного, зато когда уже есть const объект единственным выбором будет копирование.
Я взял ваш код на C++ и Java и сравнил без JNI, просто две разных программы. На обеих версиях, что линейной, что квадратичной, результаты идентичны для обоих языков. Разницей в 4 раза даже не пахнет.
Debian 11, AMD Ryzen Threadripper 3970X
openjdk 11.0.13 2021-10-19 запускал через java main.java.
gcc version 10.2.1 g++ -O2 -o cmp_java java.cc && ./cmp_java
В обоих случаях около 1.8 секунды при размере задачи 50_000
И это вполне ожидаемые разультаты для числодробилки, потому что на подобном коде jit особо не уступает aot.
Но возьмите задачу, которая требует больше разнородных действий, сильнее нагружает GC, использует системные api и увидите, что всё уже совсем не в пользу Java. Поэтому заявления, что java быстрее jni мягко говоря необоснованы.
Не спорю, на java можно писать высокопроизводительный код, но начиная с некоторой сложности задачи, это становится слишком тяжело - мест, где можно потерять всю скорость, язык и библиотеки предоставляют массу.
Весь раздел про синтаксис - демонстрация его полного незнания и непонимания. Хоть бы почитали, откуда взялась эта точка с запятой, особенно после классов.
В некоторых других моментах есть зерно истины, но накидали в одну кучу так, что пользы - ноль. Даже крик души полезно структурировать.
Хоть и не нашёл по ссылкам, но уверен, что температура и давления "управляемы" это manageable в оригинале, то есть скорее "терпимы", "допустимы" в этом контексте. И дословный перевод даёт вот такое совершенно неправильное значение. Имхо, человек осмысленно этот текст даже не читал после перевода.
Не ходите в геймдев, особенно мобильный. Вас ещё сильнее шокируют соотношения затрат на рекламу и разработку, а так же показатели roi. Да и других сфер, где есть только один показатель - отбиваемость рекламы, не так уж и мало.
Этим активно занимался Александреску, пытаясь внести в D. Но в итоге не получилось даже стандартную библиотеку нормально описать. Он обещает вернуться к этой задаче, но уже лет 5 никаких подвижек.
https://forum.dlang.org/thread/58be13e9-91cc-9cdd-0c1f-e6c439aa8c53@erdani.org
К сожалению исходники закрыты. Я, например, давно хотел поиграться с ИИ боя, написать хороший алгоритм, использовать его как инструмент для поиска новых приёмов, как это произошло в шахматах. И даже при наличии исходников хоты было бы сложно это сделать в силу того, что это не с ноля написанный проект, а патчи к старой игре без исходников. VCMI - наоборот, полный набор исходников, с ним гораздо приятнее работать.
Что же вы для VCMI скрин из HotA взяли? Я уж было подумал, что они портировали хоту и теперь можно поиграть. Но нет. А без HDmod, ладдера и HotA этот движок не нужен.
Огромное спасибо за статью. Давно сам хотел написать что-то подобное, потому что постоянно сталкиваюсь с библиотеками на CMake, которыми совершенно невозможно пользоваться. То как subdirectory не работает, то свои переменные выставляет сложно.
Вы путаете книги. Дизайн и эволюция - не справочник, а история создания. Она про причины принятых решений, в то время как cppreference - справочник с результатами принятых решений.
Переезжать на Шпицберген на удалёнку в России было модно ещё 300 лет назад.
https://ru.wikipedia.org/wiki/Выживание_четырёх_моряков_на_острове_архипелага_Шпицберген
Робинзон Крузо нервно курит в сторонке. 4 человека выживали 6 лет на необитаемом острове за полярным кругом, а потом фактически купили себе билет домой. Я только для погружения в эту историю готов туда лететь, но надо аутентично, на паруснике из Архангельска.
Идея и решение - извращение, но спасибо, что поделились, это интересно.
Если хотите запретить создание на стеке, то лучше делать приватным деструктор, а не конструкторы. Это даёт возможность не делать create и при появлении новых публичных конструкторов, например в потомках, всё ещё будет работать.
Спасибо за пост, приятно видеть сочетание велотуринга и технологий.
Пришёл задавать вопрос, упомянутый в посте: сотню в день можно и на педалях ехать. Да, с палаткой, вещами и едой на неделю, ещё и с набором высоты под километр. И нет это не какие-то рекорды, это весьма спокойный туринг. Упоротые спортсмены ездят кратно больше.
А сам вопрос звучит на самом деле не так: неужели на велосипеде интересно ехать без кручения педалей? Половина кайфа же в этом. С мотором есть мотоциклы, машины и тд, у которых нет проблем с электричеством. Имхо, велосипед для того и нужен чтобы двигать его своими мышцами. Посадка на велосипеде заточена под работу ногами, без этого можно гораздо удобнее устроиться, как на скутерах например.
P.S. Поделитесь ссылками на маршруты.
Ничего лучше, чем поиск картинок в гугле предложить не могу. Там есть удачные пары
https://www.google.com/search?q=обратная+сторона+луны
<offtopic>
От изображения видимой стороны Луны у меня глаз задёргался. https://habrastorage.org/r/w1560/webt/ig/8z/sd/ig8zsdexev81_ysfey03_or-joq.jpeg Кто её так склеил? Разные части с разных фаз и совсем не солнечно синхронно, что я бы понял, а наоборот в полный рассинхрон.
Если совсем упростить, то радиоактивная вода не наводит радиацию. Основным источником наведённой радиации являются нейтроны, а вода не будет их излучать. Радиация всё же не вирус, который чудом пролазит сквозь стены.
Там выдадут и совсем не то, что в посте.
Ну как-то очень притянуто. const должен быть там, где данные не меняются. Если функция/объект не меняют данные, то должен быть const. Иначе ломается вся const корректность. Я так и не понял, ради чего надо жертвовать корректностью? В одном месте мы якобы получим больше явного, зато когда уже есть const объект единственным выбором будет копирование.
2 бита для разницы в 10 <zanuda/>
Нургл не ставит точки, а лишь запускает перерождение. Бесконечно.
Я взял ваш код на C++ и Java и сравнил без JNI, просто две разных программы. На обеих версиях, что линейной, что квадратичной, результаты идентичны для обоих языков. Разницей в 4 раза даже не пахнет.
Debian 11, AMD Ryzen Threadripper 3970X
openjdk 11.0.13 2021-10-19 запускал через
java main.java.gcc version 10.2.1
g++ -O2 -o cmp_java java.cc && ./cmp_javaВ обоих случаях около 1.8 секунды при размере задачи 50_000
И это вполне ожидаемые разультаты для числодробилки, потому что на подобном коде jit особо не уступает aot.
Но возьмите задачу, которая требует больше разнородных действий, сильнее нагружает GC, использует системные api и увидите, что всё уже совсем не в пользу Java. Поэтому заявления, что java быстрее jni мягко говоря необоснованы.
Не спорю, на java можно писать высокопроизводительный код, но начиная с некоторой сложности задачи, это становится слишком тяжело - мест, где можно потерять всю скорость, язык и библиотеки предоставляют массу.
Весь раздел про синтаксис - демонстрация его полного незнания и непонимания. Хоть бы почитали, откуда взялась эта точка с запятой, особенно после классов.
В некоторых других моментах есть зерно истины, но накидали в одну кучу так, что пользы - ноль. Даже крик души полезно структурировать.
Хоть и не нашёл по ссылкам, но уверен, что температура и давления "управляемы" это manageable в оригинале, то есть скорее "терпимы", "допустимы" в этом контексте. И дословный перевод даёт вот такое совершенно неправильное значение. Имхо, человек осмысленно этот текст даже не читал после перевода.
Простите, но вы на каком языке сейчас общаетесь. Выглядит, как очень плохой перевод.