В зависимости от выбора источника команда отличается.
Запусти майнкрафт из лянчера, открой таск менеджер и посмотри с какой командой он запускает игру (там она будет очень объемная). Тлянчер собирает игру из кусочков (я тут не помошник, кажется этот стандарт предложен на curseforge если что ищи их api), разбросанных по всему его каталогу, таким образом можно держать несколько установок разных версий и они не будут дублировать файлы.
Если запускать из официального jar файла (я не могу найти ссылки на его загрузку, что странно), то в 99% случаев достаточно java -jar minecraft.jar (и соответственно предварительно внедрить в него forge штатным инсталятором, ссылку я дал)
Если бы эта задача имела решение... мир был бы другим.
Это задача сведение справочников, и ее каждый раз решают заново все кому не лень.
Если решишь задачу - продавай результат, озолотишься.
Беда в том что продавцы не желают заморачиваться, китайцы создают еще больше проблем, называя свои товары максимально странно, а еще часто отсутствует необходимая информация для принятия решения.
Когда то такие монстры как market yandex решали эту проблему, формально перекладывая задачу на магазины но создав красивый каталог, но поняли что заработать по честному так не получится и появилось то что мы видим сейчас - максимально сломанный поиск, помойка в справочниках и т.п.
Everything_is_not_so_bad, из какого вы года?
если речь идет о том что при использовании веб бакэнда, где на каждый запрос нужно делать новое подключение к базе данных, то это давно поддерживается веб сервером (точнее плагином выбранногй технологии) но да если вы сами что то изобретаете, то почему нет
хранить где то пул подключений это на столько мизерная и простая задача, что любой программист ее решит за десятки минут, без использования фреймворков.
Возможно мы о разных вещах говорим но ORM это когда твой класс - описание твоих объектов автоматически (или на основе какого то описания на своем птичьем языке или в виде кода) связывается с данными в базе данных, либо синтаксически это сделано очень просто. Т.е. ты описываешь класс, его поля, а ORM твои поля автоматом заполняет из базы одним вызовом. На самом деле это очень удобно, когда за тебя автоматически заполняют поля классов, избавляя от написания скучного кода вида this.name=row['name']... и так для 100500 полей, или удобно, когда в объект одной строчкой подгружаются все связанные с ним 1-ко-многие данные ну и отслеживается их изменения. Плюс многие зачем то добавляют в фреймворк функционал самого построения запроса, делая что то типа ->where ->addWhere ->addParameter, я вообще это считаю форменным извращением.
Everything_is_not_so_bad, не путаем
защита от sql иньекций это параметризированные запросы, их поддерживает штатно драйвер
пул объединений субд это что? точнее зачем?
единственное, ради чего я бы выбирал на старте какую-либо ORM - это отсутствие привязки к типу базы данных, в большинстве случаев их использование похоже и можно даже почти без телодвижений менять бд типа mysql->sqlite.... в мире php мне нравится pdo наверняка такое же можно найти и для python
отчетливо помню что во времена, когда opera была с самостоятельным hightech движком, в нее был встроен torrent и куча всего, кажется там была такая технология - статичные сайты, внутри которых можно было использовать линки вида torrent/файл_внутри.html
не помню что было стартовой точкой отсчета, возможно централизованная вещь, но если бы браузеры по стандарту поддерживали это, можно было бы сколхозить что то на основе таких технологий как namecoin
Иерокопус Таманский, не надо советовать использование ORM там где оно не нужно, иначе человек, чтобы заварить чайник будет вызывать такси, ехать в соседний город, там покупать чайник, ехать в другой город, там покупать удлинитель, ехать в третий город, там зайти в кафешку и выпить чаю....
hint000, одна из причин, почему я даже не посмотрю на конфигурации с дешёвым аппаратным контроллером и останусь с софтовыми, а дорогой контроллер птребует очень хороших обоснований , что тот дополнительный бонус возможностей сможет оплатить его стоимость
Neitr, изучи, как работает freenet, с удивлением обнаружил на Вики что там софт обновляется до сих пор, т.е. сетью пользуются и она работает.
Смысл в том что сайты там имеют константную ссылку, но работали в браузере по http через ноду, т.е. на основе ее можно сделать очень простые скрипты в пару строк которые будут брать magnet ссылку, прямо со стартовой страницы freenet сайта, т.е. он тупо только ее будет выдавать. Сервер тоже при обновлении файла просто обновляет соответствующий файл (для разработчиков freenet сайтов по уму может не быть никакой разницы, для какой сети разрабатывать сайт). Т.е. клиентам и серверу достаточно просто установленную ноду держать.
в качестве бонуса, freenet сайт будет работать даже без запущенного сервера (само собой с некоторой вероятностью, так как данные там не должны шустро распространяться по сети).
Аналогичный функционал разрабатывался для i2p и точно помню был баунти для tor, но хз с каким результатом, я на эти сети не смотрел больше 10 лет, наверное зря, и пора снова это изучать ибо возможно скоро станет очень абсурдно все зарегулировано.
во все времена майнинга, особенно последние, майнеры перебирают версии драйверов и прошивки биоса карты для достижения максимальной производительности, особенно помню был момент, когда nvidia а за ним и amd с новыми версиями драйверов значительно (десятки процентов) понизили производительность, в т.ч. играх.
Денис _______________, он 'про жопу'
майкрософт создает проблемы для проброса видеокарты из хост системы в гостевую, если тебе нужно ее делить между несколькими виртуалками или хотя бы с хост системой.
Одно время сносно работал virtualbox, какие то игры даже шли, но начиная с win10 начались проблемы и теперь банально меню настроек windows тупо глючит.
Концепция перевода в json подразумевает что ВЕСЬ текст должен там храниться.
Это значит на html везде, включая кастомные теги и атрибуты (и javascript если честно) должны содержать не сам текст а ссылку на элементы из language json.
Придумай свой шаблонный язык описания текста (скорее всего тебе хватит просто подмены типа {ELEMENT_NAME} и пропускай весь текст, который ты собираешь на странице, через этот шаблонизатор, он же будет подставлять правильный перевод.
Т.е. в data-descr у тебя будет что то типа "{PARTNERS_SLIDE_DATA_DESCR}"
p.s. недостаток, предполагается что у тебя не будет дефолтного языка, при котором один из языков уже присутствует на странице, т.е. вся страница превращается в {ELEMENT_TEXT} но это не обязательно само собой и это можно распространять только на скрытые элементы типа кастомных атрибутов
Danila232, я добавил в комментарий p.s.
такая автоматизиация если и есть то идет в поставке с каким-нибудь фреймоврком/сайтконструктором, а у тебя как я понял самописный
Не понимаю вопроса.
Тебе, вне зависимости от того, как у тебя реализован сайт, нужно будет 'каждую строчку' перевести на другие языки и прописать это в каком-либо виде, пусть и в json.
Другой разговор, что если блок текста, даже если он состоит из нескольких элементов, по смыслу и логике не требует при переводе делить его на части, то и записывать его нужно в json как один элемент.
Но, обычно текст могут делить на html элементы исключительно из дизайнерских соображений, в этом случае у тебя два варианта - либо каждый кусок записывать в joson отдельной строчкой, выдумывая имена типа SITE_ELEMENT_1,SITE_ELEMENT_2,... либо придумать свой 'птичий язык', специальные символы-разделители, которые будут вставлены в строку с переводом, и уже в коде, который подставляет перевод, расставляться в соответствующие места. Беда второго метода в том что это добавляет мест возникновения ошибок, например если разделитель будет только делить строку на части, не описывая ее реальное расположение в html, а в html эти элементы должны размещаться например в двух измерениях (и по строчкам и по столбцам, т.е. слева направо и сверху вниз) то достаточно ошибиться с порядком строк в переводе и размещение поедет... такие ошибки очень грустно отлавливать, это не автоматизировать.
p.s. советую автоматизировать процесс создания json
тупой пример - добавь на сайт особый режим для переводчика, при котором каждый элемент, который может быть переведен, должен быть снабжен интерфейсом его редактирования (пример - добавляешь ивент ctrl+right-mouse-click, при котором открывается форма редактирования всех вариантов перевода), который будет автоматически уходить в json на сервере. Плюс к этому добавь глобальный хоткей (или gui меню) подсветки тех строк на странице, для которых не задан указанный перевод. Это повысит удобство перевода и отслеживания ошибок на порядок. И еще, имена элементов в переводчике по умолчанию предлагай сгенерированными из имен форм, html идентификаторов, классов и стилей, можешь даже в интерфейсе редактирования перевода добавть соответствующие кнопки, типа добавить номер, добавить информацию из стиля bold/strike/italic, из классов и т.п. это достаточно легко автоматизируется именно средствами браузерного javascript
а речь идет о текстовой информации, которую собирают парсеры