Mam zamiar przesłać projekt, nad którym pracowałem na Sourceforge na licencji GPL, i miałem nadzieję uzyskać porady dotyczące sposobu organizacji kodu w sposób łatwy do zrozumienia i używania przez programistów, którzy mogą spójrz na to, co działa dobrze z git, i sposób, w jaki Sourceforge przedstawia rzeczy.Mam zamiar otworzyć źródło projektu C++ na Sourceforge. Czy mogę uzyskać wskazówki dotyczące organizacji kodu?
moich projektów jest cross-platform C aplikacja ++, i składa się z następujących czynności:
- część biblioteki, która ma rzeczywistej pracy
- Odrębną część GUI, który wykorzystuje część biblioteki
- Biblioteki open source, których ścieżki włączania są potrzebne do kompilacji biblioteki Zmodyfikowane biblioteki open source, które zostały zmienione, a zatem są w pewnym sensie bezpośrednią częścią tego projektu, a także
- Skompilowany wynik wszystkich bibliotek
Jaki jest najlepszy sposób na uporządkowanie?
podczas pracy nad nią sam, wraz z cebulkami projektu mam to tak:
/LibPortion
/GuiPortion
/libs/bibliotek open source
biblioteki /libs/zmodyfikowane open source
/libs/skompilowany/do przechowywania skompilowanych bibliotek, w tym podczas kompilowania dla systemu Windows niektórych, które nie pochodzą z bibliotek open source, takich jak pliki biblioteki Cygwin.
Czy jest to rozsądny sposób organizowania rzeczy? Czy to pasuje do konwencji i oczekiwań?
Czy podczas sprawdzania w moim projekcie warto sprawdzić biblioteki Open Source, a także część projektu? Sądzę, że ma to sens, ponieważ minimalizuje to tarcia w związku z przygotowaniem i uruchomieniem projektu dla nowego dewelopera. Na pewno powinienem przynajmniej sprawdzić zmodyfikowane biblioteki open source.
Co jest sensownego dołączania do repozytorium w skompilowanych bibliotekach? Myślę, że najlepiej byłoby powiedzieć git, aby zignorował ten katalog i pozostawił go pustym, ponieważ jego zawartość będzie inna w każdym celu kompilacji, ponieważ mój projekt jest wieloplatformowy.
Jednak dla osób, które nie chcą mieć kłopotów z budowaniem i/lub pobieraniem wszystkich bibliotek, wydaje się naprawdę dobre dla bibliotek wstępnie skompilowanych dla głównych platform. Jaki jest najmądrzejszy sposób, żeby się nimi podzielić? Patrzę na Sourceforge i nie jest dla mnie oczywiste, jak powinienem się nimi podzielić, jeśli nie jako częścią mojego repozytorium git.
@nantucket Dopóki nie coś naprawdę strasznego, co najważniejsze jest udokumentowanie wszystkiego - od tego, jak źródło jest tak skonstruowane, aby how zbudować wykonywalny i uczynić wdrożyć wersję. Zazwyczaj sprawdzam kod źródłowy biblioteki podczas wykonywania projektów Windows i polegam na zainstalowanych bibliotekach i pakietach, gdy korzystasz z Linuksa. Jeśli muszę to zrobić, sprawdzam również w bibliotekach. Ale słowo kluczowe to: * dokument * to wszystko. –