«В самом начале 2014 года я решил начать лучше документировать свои привычки чтения и делиться ими со всеми вами.

Суть в том, что благодаря кураторству и документированию мое чтение стало более целенаправленным и разнообразным. Кроме того, я считаю, что курирование хорошего контента приносит большую пользу, помогает людям исследовать и позволяет лучшим материалам подниматься на вершину.

Надеюсь, они вам понравятся во второй половине 2014 года.

Итак, приступим…

1. Java

>> Writing Tests for Data Access Code – Green Build Is Not Good Enough

Хорошее начало для обзора этой недели — Петри передовой опыт тестирования приложения. Третий пункт о транзакционности особенно важен — не тестируйте разные семантики транзакций.

Тоже довольно забавно: «У нас есть два варианта: правильный и неправильный».

>> State of the Specialization

В Java появляются обобщения над примитивами (возможно, также и овеществление) — Брайан Гетц опубликовал очень раннее предложение, которое определенно стоит прочесть.

>> From JPA to Hibernate’s legacy and enhanced identifier generators

Далее в списке — далее по генерации идентификаторов с помощью JPA — эта серия станет отличным ресурсом для более глубокого изучения как Hibernate, так и JPA.

>> Introduction to writing custom collectors in Java 8

Кто говорит, что Java 8 не поддерживает Guava – вот хороший пример для сборщиков, который показывает, что они могут хорошо играть вместе.

>> Turning recursive file system traversal into Stream

Элегантное использование потоков для выравнивания и обхода каталога в файловой системе.

2. Весна

>> Should my tests be @Transactional?

Это одна из тех областей, где я сейчас делаю все по-другому, чем даже несколько лет назад. Мое мнение о тестах и ​​@Transactional — нет.

Почему бы и нет? Несколько причин: во-первых, я считаю ценным, чтобы тесты использовали мою систему и мои API с той же семантикой транзакций, которая фактически используется в рабочей среде; их изменение слегка изменит ситуацию — а тонкие различия в тестах — по моему опыту — нехороши.

Вторая причина, стоящая за `нет`, заключается в том, что знание того, что у меня будут ненужные данные и окончание выполнения моего набора тестов, заставляет меня писать логику теста определенным образом, действительно продумывать некоторые сценарии и, в целом, положительно влияет на гибкость тестов.

Но это мое личное предпочтение, и как Марко открывает статью – это зависит от обстоятельств. В общем, хорошая статья для прочтения.

>> SpEL support in Spring Data JPA @Query definitions

Spring Data только что стал немного круче – сказал Нафф.

>> Spring Data REST now comes with ALPS metadata

Метаданные ALPS для меня новы, и эта статья делает их довольно интересными — возможно, это шаг вперед по сравнению с медленными темпами стандартизации типов гипермедиа.

Стоит посмотреть — и, вероятно, потребуется немного покопаться, чтобы действительно получить хорошее представление о том, что такого рода метаданные могут сделать для API (раскопки, которые я планирую провести на выходных).

>> Spring Tool Suite and Groovy/Grails Tool Suite 3.6.0 released

Вышел новый STS — и, поскольку это инструмент, которым я пользуюсь каждый день, я быстро его обновил; если вы используете Eclipse и делаете Spring — действительно нет причин не попробовать.

3. Технические и размышления

>> TDD Chess Game Part 9: God Save the Queen

Хотя у меня еще не было возможности увидеть эту часть, я с самого начала освещал всю серию в своих еженедельных обзорах, поэтому я без колебаний рекомендую ее даже прежде чем я увижу это в эти выходные. Сериал переполнен – и, если быть честным, это то, что, вероятно, следует выпускать и продавать – но, поскольку это бесплатно – пройдите его, и вы многое поймете.

>> What not to do in an interview, part 2: Interviewer Edition

Хорошее продолжение первой статьи с советами по собеседованию – я был по обе стороны стола для собеседований и лично я обнаружил, что быть интервьюером намного сложнее (для меня). Вам предстоит пройти долгий-долгий путь, прежде чем вы станете наполовину приличным интервьюером — и это достойный список вещей, о которых следует помнить, когда вы находитесь в таком положении.