что "вот сейчас я реализую Х и лучше бы сделать это вот таким образом, чтобы в рантайме работало быстрее"?
- основы перформанса (например, боксинг) - понимание jmm для отлова конкарренси багов - знание что НЕ влияет на перформанс - знание, что в 99% случаев gc трогать не надо
Не спора ради, но как конкретно jmm поможет мне ловить баги? Понятно как это поможет писать хороший конкурентный и относительно низкоуровневый java-style код. Но как это поможет в высокоуровневом scala коде? Да даже в том же java-style коде баги обычно затрагивают слишком большую часть системы чтобы просто сесть в обнимку со спекой и проверить каждый лок и каждую волатайл переменную.
Знание класса проблем Знание, как тяжело корректно писать код на низкоуровневых примитивах, и почему это делать не надо
Ех, а я надеялся на конкретные советы... Потому что jmm я впринципе неплохо знаю, но как дебагать код на низкоуровневых примитивах - нет. В проде у меня, конечно, такого нигде нет, но вот для некоторых пет-проектов было бы не плохо.
Обсуждают сегодня