Wiem, dlaczego jest to ogólnie dobre: szybsze poprawki bezpieczeństwa, łatwiejsze pakowanie, więcej funkcji. Próbuję jednak przekonać niektórych współpracowników, że nie musimy dołączać biblioteki do naszego programu. Bez tej biblioteki nie będzie działać, ale biblioteka jest stabilna przez pewien czas i pozostanie taka w dającej się przewidzieć przyszłości. Nie widzę żadnego powodu, aby NIE rozpinać go.
Jakich argumentów mogę użyć, aby ich przekonać?
Moja konkretna sytuacja jest taka: pracuję nad SymPy , która jest biblioteką Pythona typu open source do matematyki symbolicznej. Jego podstawową częścią jest mpmath , która jest biblioteką dla arytmetyki zmiennoprzecinkowej z wieloma prognozami . SymPy nie działa bez mpmath, nie ma alternatywy. Jako taki, jest on dołączany do SymPy od samego początku (powiedziano mi, że zazwyczaj za każdym razem, gdy importowana jest nowa wersja, występują niewielkie niezgodności). Należy również zauważyć, że twórca mpmath był kiedyś zaangażowany w rozwój SymPy. Wystąpił problem z rozdziałem mpmath, możesz przeczytać to wszystko tutaj .
Podsumowując dyskusję:
Rozpakuj:
Nieco łatwiejsze przenoszenie do Pythona 3 (drobny argument IMHO)
Łatwiejsze pakowanie do dystrybucji
Szybsze aktualizacje funkcji (bezpieczeństwa) dla użytkowników
„Zależności od pakowania i przeładunku są trudnymi problemami, ale zostały rozwiązane. To zdecydowanie nie jest obszar, w którym powinniśmy robić swoje.”
Pakuj dalej:
Instalacja. Jest łatwy w Linuksie, trudniejszy w Macu i bardzo trudny w Windowsie. Brak dostępu do su i inne problemy.
jest integralną częścią SymPy, tzn. sympy nie działa bez niego (wcale)
nie ma innego pakietu, który mógłby wykonać zadanie mpmath
„Gdy jako użytkownik pobieram sympię, oczekuję, że po prostu zadziała”.
Taka jest moja szczególna sytuacja, ale przyjmuję odpowiedź, która zapewnia dobrą, ogólną odpowiedź.