Как вы научились понимать Java?

48
4
19
Вопрос возможно не по теме, но все таки немного затрагивает Minecraft, поэтому опубликую тут

Интересно, как вы и сколько времени обучались программированию?
У меня лично одна большая проблема есть. Как только я открываю проект - я не знаю что делать, хотя проходил я это уже десятки раз...

Так же есть проблема с пониманием самого языка, это сложно обьяснить, прочитал тонну книг, посмотрел кучу курсов и все это в течении нескольких лет (хотя java прям плотно изучаю последние пол года)

Но вот допустим у меня возникают некоторые вопросы, на которые я попросту не могу найти ответы.
Например я понимаю, что есть метод - он может принять какие-то параметры и использовать их, но при этом теряюсь уже вот в такой конструкции
И жутко переживаю, что не смогу сам такое придумать
Пример:
    @SideOnly(Side.CLIENT)
    private static void setRender(Block block) {
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
    }
Я именно суть не могу уловить. Почему я дожен Прописать Minecraft, затем получить майнкрафт? Получить майнкрафт? Это вообще как... Почему из получения майнкрафта я должен получить рендер предмета а затем получить еще что-то и только после этого .register с какими-то странными параметрами в виде

new ModelResourceLocation(block.getRegistryName()
Я создаю обьект в параметре? Или что, окуда это все...

Очень интересно ваше мнение на счет этой ситуации, я довольно много чем занимался и во всем что-то писал свое. Например Lua, Python, Pawn

Кому не сложно, дайте еще ссылки на src майнкрафта 1.12.2 (У меня был репозиторий сохранен, но сейчас он недоступен)
 

WantaSanchez

Опоздун
633
17
150
Интересно, как вы и сколько времени обучались программированию?
Конкретно обучение программированию было в универе по два семестра на C/C++ и семестр на Java, но конкретно по Java я учился своими силами по мере появления задач, ибо в универе у нас Java была на уровне вывести в консоль то, что ты же и напишешь в неё, или пройтись по массиву.
Почему я дожен Прописать Minecraft, затем получить майнкрафт? Получить майнкрафт? Это вообще как...
Вроде мы получаем главный класс игры. из него прочее, но можно ведь рендер и по другому зарегистрировать, к примеру так:
Java:
ModelLoader.setCustomModelResourceLocation(ITEM, 0, new ModelResourceLocation(ITEM.getRegistryName(), "inventory"));
Я создаю обьект в параметре?
Это же майн, тут и не такое бывает. :)
 

tox1cozZ

aka Agravaine
8,454
598
2,890
Лет пять назад это было, тоже около года топтался на одном месте и не мог ничего понять. А потом резко осенило и пошло как по маслу.
Такое чувство будто ты всё это время читал тонну теории, но ни разу не выполнял практические задачки.
 

VeniVidiVici

Санта Барбарис
327
15
198
А для кого-то вообще открытие, что java можно понимать, а не просто писать на ней моды по наитию 🤌
 
7,099
324
1,509
Я именно суть не могу уловить. Почему я дожен Прописать Minecraft, затем получить майнкрафт? Получить майнкрафт? Это вообще как...
Предположим, у тебя есть какие-то навыки программирования. Как бы ты мог бы сесть и написать тот код?
Если ты до момента написания не знал, что для желаемого эффекта нужно написать такой код, то... никак. Ну никак не напишешь такой код сходу, разве что случайно.
Тогда возникает вопрос: как же этот код первый раз написал первый мододел?
Для этого он перелопатил кучу кода игры и сформировал у себя понимание того, как работает игра. После для него стало прозрачным то, какой код нужно написать, чтобы получить нужный эффект.

Поэтому, чтобы понимать, че делать, когда открываешь проект, чтобы сделать желаемую фичу, нужно либо понимать, как работает определенная часть игры, либо найти готовое "заклинание" в туторах, узнать у других мододелов или найти в других модах
 
Сверху