Promocja na kursy wideo! 180 tytułów w cenach od 19.90 do 39.90 zł (w tym m.in.: Python, C, R, Docker). Sprawdź listę tytułów »

Myśl jak programista. Techniki kreatywnego rozwiązywania problemów – Helion 2013

Myśl jak programista. Techniki kreatywnego rozwiązywania problemów – Helion 2013

Czy zdarzyło Wam się usiąść z entuzjazmem do projektu? Kawa gotowa, nasiona słonecznika do chrupania również.

Przeszliście wstępną konfigurację projektu i... godzinę obserwowaliście kursor? Przyznam się, że do dzisiaj bardzo często mam z tym problem. Rozwiązania tego problemu zacząłem szukać w recenzowanej książce.

Jestem samoukiem, większość tego, co wiem, zdobyłem małymi krokami czytając wyrywkowo różne artykuły, pytając ludzi, testując rozwiązania metodą prób i błędów. Potrafię pisać programy, ale... ale pisanie programów to nie wszystko. Trzeba wiedzieć JAK je pisać, a właściwie zmienić zupełnie swój sposób myślenia.

No właśnie. Z tego, co się orientuję, to na studiach kierunków informatycznych można się spotkać z zajęciami przygotowującymi do rozwiązywania typowo programistycznych problemów. Co, jeśli jednak nie możemy sobie pozwolić na kilkuletnie szkolenie? Jednym z wyjść jest lektura książki Myśl jak programista. Techniki kreatywnego rozwiązywania problemów. Nie zastąpi ona oczywiście solidnego kursu, ale pozwoli nabrać właściwych nawyków oraz obrać właściwy kierunek w zdobywaniu wiedzy i umiejętności przydatnych dla programisty-profejsonalisty.

Dla kogo jest ta książka?

Autor już na początku zaznacza, że pozycja jest skierowana dla programisty znającego podstawową składnię i semantykę języka C++. Wymaga także pewnego doświadczenia w pisaniu oprogramowania. Raczej nie polecałbym jej osobom dopiero zaczynającym swoją przygodę z kodem – od tego są znacznie „przyjaźniejsze” podręczniki. Chyba, że ktoś chciałby przeczytać tylko jeden-dwa rozdziały, a do reszty wrócić po nauce podstaw.

Czego można się z niej dowiedzieć?

Pierwsza część książki teoretycznie ma mało wspólnego z samym programowaniem – zawarto w niej zbiór klasycznych problemów do rozwiązania, jak chociażby plansza do Sudoku albo stara i być może znana niektórym z Was łamigłówka typu Boatman Riddle.

boatman

Klasyczna łamigłówka typu "Boatman Riddle"

Jeśli nie mieliście z nimi do czynienia wcześniej, to autor pokaże jak trudna w rozwiązaniu, albo nawet pozornie „nierozwiązywalna” zagadka może nagle stać się banalna. Wystarczy zmienić tok rozumowania.

Dlatego tak istotne jest „gimnastykowanie umysłu” na wszelkie możliwe sposoby. Drugi rozdział to już zadania typowo programistyczne – m.in. „rysowanie” określonych figur geometrycznych znakami i zagadnienia związane z sumą kontrolną Luhna. Wszystkie zostały przedstawione jako krótki opis problemu i obszerny opis możliwego rozwiązania (lub rozwiązań). Nadmienię tutaj jeszcze, że każdy rozdział zakończony jest listą ciekawych ćwiczeń do wykonania we własnym zakresie – przy niektórych można się naprawdę spocić!

Przeważająca większość książki obejmuje zagadnienia strategii rozwiązywania problemów. Są to podstawy, z którymi niektórzy z Was mogli się spotkać w podręcznikach i skryptach akademickich, ale zostały opisane w sposób tak przystępny, że mogą rzucić nowe światło na niektóre trudniejsze kwestie.

Kolejne rozdziały wzbogacą wiedzę w zakresach rozwiązywania problemów przy pomocy tablic, wskaźników, klas, rekurencji i... korzystania z pracy innych programistów.

Dodam, że każdy rozdział zawiera szczegółową rozpiskę częstych błędów. Obszerne wyjaśnienia i – przede wszystkim – odpowiedzi, kiedy należy danego sposobu używać.

Czy warto?

Panuje powszechne przekonanie, że nie każdy „nadaje się” na programistę. Są ludzie, którym tłumaczy się zagadnienia dziesiątki razy  (samemu zaczyna się je rozumieć), a oni nadal nie. Po lekturze tej książki stwierdziłem jednak, że ten specyficzny sposób myślenia można w sobie rozwijać – zauważyłem na własnym przykładzie, że moje podejście się zmieniło i w przypadku niektórych problemów zaczynam podświadomie „czuć” właściwie rozwiązanie.

myprog

Okładka książki.

Nie twierdzę, że lektura ta jest remedium na każdą łamigłówkę i niedouczenie czytelnika, ale wzbogaci na pewno wiedzę i doświadczenie mniej lub bardziej początkującego programisty. Czy warto sięgnąć po tę pozycję? Z pewnością! Zagadnienia w niej poruszone nie tylko pomogą rozwiązać problemy, które wcześniej spędzały nam sen z powiek. "Myśl jak programista" to także poradnik mówiący, jak w prosty sposób poprawić optymalizację kodu już napisanego i działającego. Wasze roboty na pewno odwdzięczą się Wam większą wydajnością i precyzją działania. Zainteresowanych odsyłam do załączonego fragmentu. Książka dostępna jest w wersji papierowej oraz tańszej elektronicznej:

Spodobała Ci się recenzowana książka?

Kup wersję papierową » Kup wersję elektroniczną »

Załączniki

Myśl jak programista. Techniki kreatywnego... (pdf, 2 MB)

Fragment książki "Myśl jak programista. Techniki kreatywnego rozwiązywania problemów - Helion 2013", wydawnictwo Helion.

C, kreatywność, programowanie, pułapki

Trwa ładowanie komentarzy...