Источники считывания кода

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

Можете ли вы помочь мне найти хороший код на Java?

Ответ 1

Исходный код стандартной библиотеки Java часто хорош для чтения, поскольку он состоит из небольших функций, которые выполняют четко определенные функции.

Я думаю, вы можете загрузить исходный код для Java 1.7 из Sun Oracle, и есть все виды open-source римейки стандартной библиотеки Java.

Ответ 2

Я бы порекомендовал вам взглянуть на различные проекты с открытым исходным кодом. Поскольку их код свободно доступен, он, как правило, имеет почетное качество.

Чтобы получить доступ к этим источникам, вы можете перейти http://koders.com или его альтернативы (см. пример этот вопрос на С++)

Ответ 3

Выберите свою любимую библиотеку с открытым исходным кодом и начните ее читать. Это будет иметь дополнительное преимущество, помогая вам получить более глубокое понимание того, как работает библиотека. Вот довольно хороший список java-библиотек с открытым исходным кодом.

Тем не менее, я считаю более полезным решать проблему программирования самостоятельно, а затем послесловие видеть, как другие подошли к той же проблеме. Project Euler - отличное место для этого. Только мои личные предпочтения.

Ответ 5

Я бы также прочитал книгу Мартина Фаулера о рефакторинге кода...
http://www.refactoring.com/catalog/index.html

Знайте шаблоны проектирования и когда и как их применять.

Используйте статический анализ кода, например PMD или другой, чтобы указать на некоторые проблемы.
Не игнорируйте предупреждения в своем коде.

Ответ 6

В качестве альтернативы или стартера: эти две книги имеют хорошую репутацию среди программистов на Java и помогают решить, как должен выглядеть хороший код:

  • Чистый код: руководство по гибкому программному мастерству (Robert C. Martin).
  • Эффективная Java (2-е издание) (Джошуа Блох)

Вот еще одна интересная веб-ссылка на книгу, которая описывает чтение кода: Чтение кода: перспектива с открытым исходным кодом

Интересный способ тренировать свои навыки по хорошему коду - это кодирование katas.

Ответ 7

Мне нравится просматривать код в стандартных библиотеках Java. Начните с небольших методов, которые вы на самом деле используете; затем перейдите к классам, таким как String, Integer и другие базовые типы, и медленно перемещайтесь ко всем пакетам, пакет Collections, например,

Глядя на метод или два, вероятно, не будет то, что обогащает опыт по сравнению с просмотром разных классов и разработкой дизайна.

Библиотеки с открытым исходным кодом тоже хороши. Выберите те, которые вы фактически используете в своей повседневной работе, и были разработаны теми программистами/организациями, которые вы уважаете.

Ответ 8

У меня есть источники Java, установленные и интегрированные в Eclipse, поэтому, когда я программирую, и я использую некоторый класс из Java API, я могу вникнуть в исходный код класса и посмотреть, как некоторые вещи реализованы. Особенно интересны классы и Concurrency связанные классы.

Ответ 9

Несмотря на то, что код не может быть законным, посмотрите на источник java некоторых MMO-серверов. Они великолепны, потому что источник открыт, щедрит и содержит методы для понятий и действий, которые вы можете увидеть во время игры.

Я НЕ продвигаю хостинг, хотя, потому что это незаконно в большинстве областей, но не стесняйтесь взглянуть на работу.

EDIT:

Важное примечание. Я сам не разрабатываю игры, но они являются отличными источниками для понимания ввода и визуального вывода программиста. Посмотрите на книгу Дэвида Брэккина и источники на его сайте. Интересный материал, но не благочестивый.

Ответ 10

Взгляните на библиотеку Swing - он использует некоторые шаблоны дизайна и хороший объектно-ориентированный дизайн.

Кроме того, я читал исходный код трекера Atlassian JIRA, но для этого вам нужна специальная лицензия.

Ответ 11

В источнике SourceForge.net. Используйте их правильно. Если вы действительно хотите больше следить за своим инстинктом, за то, что вам нужно и чего хотите.

Насколько я знаю, если у вас есть реальная тяга, вы можете выполнить гораздо больше, Поверьте, что вы можете делать и делать

Все лучшие