Jestem programistą hobbystycznym i początkującym. Przez większość czasu nie mogę rozwiązać problemu, siedząc przed komputerem. Na przykład próbowałem dowiedzieć się, czy jedna liczba jest potęgą innej. Nie mogłem znaleźć rozwiązania, dopóki nie złapałem długopisu i papieru, a potem nie przeanalizowałem problemu. W mniej więcej 3 minuty rozwiązałem go i napisałem skrypt w Pythonie.
Czasami mogę rozwiązać problem, siedząc przed komputerem, ale z pewnymi problemami. Czy to w porządku?
productivity
Mahmood Muhammad Nageeb
źródło
źródło
Odpowiedzi:
Mam tendencję do rozwiązywania moich najtrudniejszych problemów:
Odejście od monitora jest często bardzo pomocne w skoncentrowaniu się na samym problemie, a nie tylko na napisaniu implementacji.
Rozwiązywanie problemów dzieje się w twojej głowie. Wpisanie kodu programu to sposób, w jaki objaśniasz swoje rozwiązanie komputerowi.
źródło
Myślę, że to dobre pytanie. Z tego, jak to interpretuję, myślę, że pytasz: „Czy to w porządku, że okresowo muszę odsuwać się od komputera”?
Nie sądzę, że mija taki dzień, w którym nie muszę wstawać i pytać innych, co myślą, lub wyciągać skrawek papieru i zapisywać równanie, aby rozwiązać problem. Ponadto, gdy bardziej zagłębisz się w programowanie, możesz nawet nie zacząć pisać kodu, dopóki wcześniej nie utworzysz diagramu / architektury.
Kiedy byłem na studiach, brałem udział w kursie dotyczącym struktur danych i miałem problem z zaprojektowaniem algorytmu sortowania. Kiedy poprosiłem mojego profesora o pomoc, wiedział, że wcześniej nie myślałem o tym problemie. Pierwszą rzeczą, którą mi powiedział, było to, że nie byłem jeszcze gotowy do pisania kodu. Wyciągnął więc kawałek papieru i narysował kilka kwadratów, a następnie włożył liczby z tablicy. Następnie narysował kilka zdjęć, na których przesuwa kwadraty, i pokazał mi wizualnie, jak działa algorytm sortowania.
Niektóre rzeczy, które możesz zrobić, aby oczyścić umysł i rozwiązać problem:
Nie zdziw się, jeśli obudzisz się w środku nocy z rozwiązaniem.
źródło
Myślę, że z pewnością pomoże to stać się wydajnym profesjonalnym programistą / programistą, jeśli możesz. Jednak myślenie o problemie podczas tłumaczenia rozwiązania na logikę programu IMHO wymaga szkolenia, więc nie widzę problemu, jeśli serializujesz te zadania - po prostu musisz być w stanie pomyślnie wykonać oba te zadania. Myśląc o rozwiązanie od początku do końca przed rozpoczęciem kodu na pewno ma swoje zalety, ale trzeba być nieco pacjent znaków dla tego produktu.
źródło