Как стать автором
Обновить

Комментарии 12

Спасибо! Отлично дополняет Ваш канал на Ютубе. Однако, Ваши выпускники, Иван, не должны повторять «РанЕйбл», Вы же аутсорсников готовите :)
Если Вы имеете в виду, что у меня просто чудовищное произношение, то да.
Есть такая беда, не могу исправить:(
Да нет же! Я посмотрел десятки часов Ваших курсов, заметил 3-4 случая, не больше. (Buy как Пока, например). На вводных Вы говорите, что английский в профессии обязателен. Полностью согласен. Просто в новых видеокурсах поправьте. По мере нахождения буду отписывать в личку.
Благодарный заказчик.
А еще стоит добавить, что бросание RuntimeException сильно замедляет код, т.к. при каждом бросании копирует стек вызовов весь и чтобы это победить, нужно переопределить метод fillStackTrace().
Господи, да что же все так привязались к медленно работе исключений?
Сколько же раз у вас бросается исключений в секунду? 1.000, 10.000, 100.000 в секунду?
Переписывайте такой код!
В нормальном коде не более 10-100 бросков в секунду.
Например, в первой версии playframework через runtime исключения был сделан механизм render, чтобы не писать постоянно return и там это конкретно замедляло код (поэтому авторы и сделали то, что я описал выше). И можно еще придумать множество специфичных решений через unchecked exceptions, которые требуют быстрого выполнения.
Ваш пример говорит о криворукости программистов, а не о «медленности runtime исключений». Исключения только для исключений, строить логику на них — это проблема архитектуры.
Ислючения — механизм для «особенных ситуаций». Не стоит строить логику работы на исключениях.
PlayFramework — из мира Scala. Этот язык не везде идеально ложится на JVM, отмеченный Вами момент так же (кажется) есть у встроенных в Scala акторов (реализация выхода из замыкания через бросок исключения, если я правильно выражаюсь).
— Я полностью согласен с тем, что исключения не самый быстрый механизм работы. И что есть способы его ускорить, но такие указания для «неокрепших умов» могут толкнуть на нетипичный дизайн кода (есть отличие в том как писать методички и как писать справочники, это — скорее методичка).
— На замечание по поводу PlayFramework — спасибо, не знал. Вы могли бы кинуть кусок кода или ссылку, где можно больше прочитать про API рендеринга?
— Так вы же пишете учебные статьи, поэтому и появляются дополнения. Мы знаем, что не стоит строить логику на исключениях, а разработчик, только столкнувшийся с Java, прочитав вашу статью, может и не узнать об этом.

dim_s, вероятно, говорил про первую версию play framework, где, например, метод ok() контроллера бросал Exception.
>> — Так вы же пишете учебные статьи, поэтому и появляются дополнения. Мы знаем, что не стоит строить логику на исключениях, а разработчик, только столкнувшийся с Java, прочитав вашу статью, может и не узнать об этом.
— В этом смысле — все правильно. Но я стараюсь написать то, или структурировать материал так, чего/как нет в «классических» книгах: Хорстманн, Эккель, Гослинг, Шилдт.
Т.е. я сам свой материал рассматриваю как некоторое дополнение, а не единственный источник знаний.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий