tgoop.com/dev_easy_notes/286
Last Update:
Начнем с того, какие главы мне показались годными, читая ее даже сейчас.
Вся глава про имена переменных. Вся глава – достаточно годные советы, особенно для начинающих. Особенно нравится часть про префиксы. Я до сих пор помню период, когда большинство Андройд разрабов прочитав книгу “Android программирование для проффесионалов”, всегда использовали префикс m для переменных в Activity. Потому как в этой книге все примеры кода были с этим префиксом и ведь никто не задавался вопросом: “А нафига?”
Вся глава про комментарии. Тут тоже все по делу, добавить нечего.
Далее я могу лишь рассказать про отдельные советы, которые встречаются в некоторых главах. Потому как остальные главы, кроме тех что выше, полны мракобесия и рекомендовать их полностью я не могу.
Используйте исключения вместо возвращения кодов ошибок. Довольно хороший совет, однако в нем есть нюансы. Например, как ты в kotlin заставишь пользователя обрабатывать ошибку? И ну он в своей же другой книге наоборот критикует этот подход, потому как исключения порой нарушают принцип инверсии зависимостей. Ну и еще момент, что исключения все таки довольно дорогие с точки зрения перфоманса.
Принцип разделения команд и запросов. Неожиданно, в книге есть ссылка на действительно крутую концепцию, я про нее даже делал пост. Можно докопаться лишь до того, что описана концепция так блекло, что я бы точно ее пропустил при первом чтении. Я считаю что это вообще главный и важнейший совет, который сделает код в разы удобнее и читабельнее
В главе про классы есть подглава про Связность и сцепление. Годная вещь, в которой стоит разобраться, помогает правильно разбивать логику на отдельные классы. И в этой же главе упоминаются принципы SOLID. Принципы в целом то неплохие, но опять-таки тот же SRP, ну вот он настолько абстрактный, я до сих пор теряюсь действительно ли у этого класса одна причина для изменения, поэтому ну такое…
В главе про системы есть хорошее описание того, как нужно отделять инициализацию системы от работающих компонентов. Однако всю главу про системы в целом можно сократить до: разберитесь что такое инверсия зависимостей и DI.
Ну и совсем аккуратно стоит подойти к главе про многопоточность. В ней есть крутые мысли касательно мифа, что чем больше потоков, тем быстрее программа. В остальном все описано крайне поверхностно и туманно. Про многопоточность я бы советовал прочитать “Java Concurrency in practice”, там куча конкретных примеров и она прям на балансе между совсем дебрями JVM и практической пользой.
BY Dev Easy Notes
Share with your friend now:
tgoop.com/dev_easy_notes/286