2009-07-28 20 views
10

Uczę się kakao, a podczas gdy czuję się komfortowo z Objective-C i koncepcjami wokół niego, czasami mam trudności z zastosowaniem teorii (jak Model/Widok/Kontroler) do ćwiczenia. Dokumentacja Apple często daje mi "A Ha!" chwile, ale fajnie byłoby mieć dobrze napisaną aplikację Cocoa jako punkt odniesienia.Dobrze napisane aplikacje kakao o otwartym kodzie źródłowym do nauki?

Czy znasz dobrze napisaną aplikację Cocoa z publicznym kodem źródłowym?

Odpowiedz

2

Chciałbym rzucić okiem na kod źródłowy adium. Nauczyłem się Cocoa około pięciu lat temu, a wtedy często spędzałem dużo czasu na swoim kanale IRC, rozmawiając z nimi za pomocą Cocoa. Są bardzo przyjaznym zespołem, a jeden z nich jest bardzo aktywny na here too.

W każdym razie, Adium (kiedy i tak wiedziałem) jest bardzo dobrze skomponowanym kawałkiem OpenSource Cocoa: na pewno nauczysz się dużo, patrząc na sposób, w jaki tam się robi. Peter jest świetnym graczem, więc na pewno zobaczysz dużo dobrze przemyślanego, dobrze zaprojektowanego kodu, który również da ci pomysły.

HTH

+1

Adium 1.4 (wciąż w fazie rozwoju) jest dużo lepszy niż poprzednie wersje, ale wciąż ma długą drogę, zanim nazwałbym większość kodu źródłowego * dobrze *. Większość z nich działa, a kilka części działa dobrze. Ale nie jest to model dobrego projektu aplikacji kakao. (I nie napisałem tego zbyt dużo). –

+0

Jego największy problem: kilka V, * wiele * C, przy braku M. Jest tak w dużej mierze dlatego, że Adium sięga czasów, kiedy posiadanie M nie miało większego znaczenia, nie ma żadnych Wiązań, aby zapewnić oczywistą korzyść. (Nawet teraz, Wiązania mogą nie być bardzo wydajne - ale nie jesteśmy w stanie wypróbować ich za pomocą naszej ciężkiej architektury kontrolera.) Ale nasza obsługa AppleScript ucierpiała (szczególnie przed 1.3) od słabej warstwy modelu. –

1

Dzięki JKP, nie wiedział, Peter Hosey pracował na Adium! Aby dodać do tego punktu, strona Petera Hoseya ma list ponownie używanego oprogramowania open-source dla Mac (zarówno aplikacji, jak i bibliotek).

+0

Tak, Peter jest dobrym chłopcem ... był moim mentorem wiele lat temu i dziękuję mu za jego wysiłek: pamiętam, jak uczył mnie wskazówek w kółko w ciągu dnia! Jestem pewien, że prawdopodobnie też ... wstyd, że nie złapałem go z nim przez długi czas. PS: jest także liderem na growlu (http://growl.info/) również w tych dniach. – jkp

+0

Więcej tylko wrzucić kod źródłowy, z kilkoma bibliotekami - niewiele, jeśli w ogóle, aplikacji. Ta lista nie jest przeznaczona dla aplikacji. –

Powiązane problemy