Mi sono laureato all'università circa cinque mesi fa e ho lavorato in una startup locale negli ultimi quattro mesi. Durante l'università, ho studiato Haskell, F # etc da solo. Ci è stato insegnato Java all'università, ma sono stato esposto alla programmazione funzionale molto presto e ho trascorso molto più tempo di quello che ho fatto con la programmazione imperativa. Di conseguenza, il mio cervello è cablato per un pensiero funzionale. La compagnia che ho aderito utilizza Python e il codice è strongmente imperativo. Sto attraversando un momento difficile per leggere il codice imperativo. Non riesco a tenere traccia delle mutazioni. Quando un nidificazione for-if-else-for -... fa più di quattro livelli di profondità, perdo completamente la traccia di ciò che sta accadendo nel codice. Per aggiungerlo, Python è un linguaggio dinamico, quindi non ci sono tipi nel codice. Sono passate settimane da quando ho cercato di capire una parte della nostra base di codice (che è presumibilmente "moderatamente complessa"), ma finora non ho compiuto progressi significativi nella sua comprensione. Per favore, offrimi alcune tecniche pratiche su come dovrei fare per capire quel codice. Grazie in anticipo!
Modifica
Forse dovrei anche dire che non ci sono molti commenti nel codice, e anche i nomi non sono molto intuitivi.