O ile nie spodziewacie się rozszerzenia tego na wiele części, nie chciałbym jeszcze dodawać bazy danych. Posiadanie bazy danych oznacza duży zbiór rzeczy do nauczenia się dla ciebie i więcej rzeczy do zainstalowania, aby działały dla innych osób. Dodanie wbudowanej bazy danych sprawia, że końcowy plik wykonywalny jest przenośny, ale osoba z twoim kodem źródłowym ma teraz jeszcze jedną rzecz do zrobienia.
Myślę, że lista wyraźnie nazwanych stałych i funkcji implementujących reguły bardzo pomoże. Jeśli nadasz wszystkim naturalne nazwy i skupisz się na umiejętnościach programowania , powinieneś być w stanie stworzyć czytelny program.
Idealnie byłoby skończyć z kodem, który mówi:
LeftBearingHoleDepth = BearingWidth + HoleDepthTolerance;
if (not CheckPartWidth(LeftBearingHoleDepth, {other parameters})
{whatever you need to adjust}
W zależności od tego, jak lokalne są stałe, kusiłoby mnie, aby zadeklarować je w funkcjach, w których są używane, tam gdzie to możliwe. Przydatne jest włączenie:
SomeAPICall(10,324.5, 1, 0.02, 6857);
w
const NumberOfOilDrainHoles = 10
const OilDrainHoleSpacing = 324.5
{etc}
SomeAPICall(NumberOfOilDrainHoles, OilDrainHoleSpacing, {etc}
Daje to w dużej mierze samokontrujący się kod, a także zachęca każdego, kto modyfikuje kod, do nadawania podobnie znaczących nazw dodawanym przez siebie treściom. Uruchomienie lokalne ułatwia także radzenie sobie z całkowitą liczbą stałych, które zgromadzisz. To staje się trochę denerwujące, jeśli musisz przewijać długą listę stałych, aby upewnić się, że wartość jest tą, którą chcesz.
Jedna wskazówka dla imion: umieść najważniejsze słowo po lewej stronie. Może nie jest tak dobrze czytany, ale ułatwia znajdowanie rzeczy. Przez większość czasu patrzysz na miskę i zastanawiasz się nad śrubą, nie patrzysz na śrubę i zastanawiasz się, gdzie ona jest, więc nazwij to SumpBoltThreadPitch, a nie BoltThreadPitchSump. Następnie posortuj listę stałych. Później, aby wyodrębnić wszystkie skoki wątków, możesz uzyskać listę w edytorze tekstu i albo użyć funkcji find, albo użyć narzędzia takiego jak grep, aby zwrócić tylko linie zawierające „ThreadPitch”.