2010-07-07 10 views
11

Słyszałem, że wielu ludzi mówi, że aby być dobrym programistą, trzeba dużo dobrego kodu przeczytać.Źródła odczytu kodu

Czy możesz mi pomóc znaleźć dobry kod w Javie?

+6

Słyszałem, że "Aby być dobrym programistą, trzeba czytać dobre książki i dużo ćwiczyć". –

+1

To dobra rada. Podobnie jak studiowanie sztuki pomaga stać się dobrym artystą. –

+0

@Andreas Prawda, ale z drugiej strony prawdopodobnie nie staniesz się dobrym artystą, jeśli nie będziesz studiować innych artystów ... –

Odpowiedz

3

Polecam zapoznać się z różnymi projektami open source. Ponieważ ich kod jest swobodnie dostępny, ma on zwykle jakość honorową.

Aby uzyskać dostęp do tych źródeł, można przejść na http://koders.com lub jego alternatyw (patrz jako przykład this question on C++)

+4

W rzeczywistości jakość kodu źródłowego jest tak samo zła, jak kod zastrzeżony. –

+0

To może wzbudzić subiektywną debatę, więc odpowiem z uwagą :-) W każdym razie, mam tendencję do dostrzegania lepszego kodu Open-source (jak zły proces open-source jest pozostawiony przez darwinowski proces), kiedy zamknięte źródło (ten ja patrz w mojej firmie) jest chroniony przed doborem naturalnym poprzez swój niszowy status. – Riduidel

+2

Widziałem wiele kodu w moim czasie. Jest w większości zły. – JeremyP

3

Wybierz swoją ulubioną bibliotekę open source i rozpocząć czytanie tego. Będzie to miało dodatkową zaletę, pomagając uzyskać głębsze zrozumienie działania biblioteki. Oto całkiem niezły list of open source java libraries.

Jednak uważam, że bardziej przydatne jest samodzielne rozwiązywanie problemu programowania, a następnie poobserwowanie, w jaki sposób inni podeszli do tego samego problemu. Project Euler to świetne miejsce do robienia tego. Tylko moje osobiste preferencje.

0

Spójrz do biblioteki Swing - wykorzystuje pewne Wzorce projektowe i dobrego projektowania obiektowego.

Również czytałem kod źródłowy trackera problemów Atlassian JIRA, ale do tego potrzebna jest specjalna licencja.

2

Jako alternatywę lub starter: Te dwie książki cieszą się dobrą reputacją wśród programistów Java i pomóc, aby się zdecydować, jak dobry kod powinien wyglądać następująco:

  1. Clean Code: A Handbook of Agile Software Rzemiosła (Robert C. Martin)
  2. Efektywna Java (2nd Edition) (Joshua Bloch)

Oto kolejny ciekawy link internetowy do książki, która obejmuje odczyt kodów: Code Reading: The Open Source Perspective

Interesującym sposobem na wyćwiczenie swoich umiejętności w kierunku dobrego kodu jest ćwiczenie coding katas.

+0

Dzięki! To pomoże. – Sid

+0

Mogę denerwować niektórych ludzi, ale polecam przeciwko * Czystemu kodowi *. Zachęca fragmentację kodu do wielu śmiesznie małych metod, których sama liczba sprawia, że ​​kod jest trudny do odczytania. Tylko moja opinia, oczywiście. –

+0

@Carl - tak, mam problem z tymi poradami. Przez pewien czas próbowałem tworzyć wiele małych metod i bardzo trudno było zrozumieć, utrzymać i naprawić ten kod. Postanowiłem więc zachować mój stary styl, ale w jego książce jest znacznie więcej. Reszta jest cenna! –

3

Chciałbym również czytać książki Martina Fowlera na kodzie refaktoringu ...
http://www.refactoring.com/catalog/index.html

Znać wzorców projektowych oraz kiedy i jak je stosować.

Użyj analizy kodu statycznego, np. PMD lub innego, aby wskazać pewne problemy.
Nie ignoruj ​​ostrzeżeń we własnym kodzie.

1

Lubię przeglądać kod w standardowych bibliotekach Java.Zacznij od małych metod, których używasz; następnie przejdź do klas takich jak String, Integer i inne podstawowe typy i powoli przechodź do całych pakietów, pakietu Collections, np.

Patrząc na jedną lub dwie metody, prawdopodobnie nie będzie to wzbogacanie doświadczenia w porównaniu do patrzenia na różne klasy i zastanawianie się nad projektem.

Biblioteki Open Source są również dobre. Wybierz te, które faktycznie używasz w swojej codziennej pracy i zostały opracowane przez programistów/organizacje, których szanujesz.

1

Mam zainstalowane źródła Javy i zintegrowane z Eclipse, więc kiedy programuję i używam jakiejś klasy z API Javy, mogę zagłębić się w kod źródłowy klasy i zobaczyć, jak zaimplementowane są niektóre rzeczy. Szczególnie interesujące są klasy związane z kolekcjami i współbieżnościami.

0

Istnieje znacznie więcej źródeł projektów opensource można znaleźć w SourceForge.net. Wykorzystaj je poprawnie. Jeśli u naprawdę chcesz uzyskać więcej podążać za instynktem, na co trzeba & chcą ..

O ile wiem, jeśli masz prawdziwą ideę można osiągnąć znacznie więcej, wierzyć, że można zrobić i uwagi

All the Best

1

Chociaż kod nie może być uzasadnione, spojrzeć na źródła java niektóre MMO prywatnych serwerów. Są świetne, ponieważ źródło jest otwarte, obfite i zawiera metody do pojęć i działań, które można wyraźnie zobaczyć podczas grania w grę.

NIE promuję jednak hostingu, ponieważ jest to nielegalne w większości obszarów, ale nie krępuj się rzucić okiem na pracę.

EDIT:

Ważna uwaga: nie rozwijają gry, samodzielnie, ale są doskonałym źródłem do zrozumienia wejście programatora i wyjście wideo. Spójrz na książkę Davida Brackeena i źródła na jego stronie. Interesujące rzeczy, ale nie pobożne.

+0

Linki do najciekawszych rzeczy? –

+0

http://www.brackeen.com/javagamebook/ Szukaj: OdinMs w ragezone.com wziąć również do obejrzenia niektórych projektów open-source: - http://apache.org/ - http: // java-source.net/ - http://vue.tufts.edu/ –