34 przydatne książki o programowaniu zalecane dla nowych programistów

Opublikowany: 2017-01-09

Nic dziwnego, że źle napisany kod może prowadzić do niepowodzenia projektu, niezależnie od tego, czy jest on duży, czy mały. Tak więc pisanie czystego i łatwego w zarządzaniu kodu jest niezwykle ważne dla ogólnego sukcesu projektu rozwoju oprogramowania.

Istnieją różne metody nauki prawidłowego kodowania. Oczywiście doświadczenie praktyczne jest niezwykle cenne, ale posiadanie solidnej wiedzy teoretycznej jest również niezwykle korzystne.

Część tej wiedzy jest rozwijana przez lata studiów, ale bycie na bieżąco z ważnymi książkami i artykułami może być bardzo pomocne.

W dzisiejszych czasach programiści podchodzą do problemów metodą szybkiej naprawy. Jeśli metody prób i błędów nie działają, możesz wygooglować problem i spróbować znaleźć tam rozwiązanie.

Jeśli jednak chcesz zostać doświadczonym programistą, a nie „małpką kodu”, czytanie literatury jest koniecznością. Czytanie i uczenie się kodu innych osób pozwoli Ci spojrzeć na problemy w nowy sposób i łatwiej je rozwiązać.

Jeśli nie wiesz, od czego zacząć, czytaj dalej. Zebraliśmy obszerną listę książek, które są wysoko oceniane i szanowane w społeczności programistów.

Aby pomóc Ci szybko przejść do listy książek w Twoim ulubionym języku, podzieliliśmy tytuły książek na kategorie według języka programowania, którego dotyczą, a także krótki opis każdego języka.

Jaki jest twój ulubiony język programowania?

  1. JavaScript
  2. C
  3. C#
  4. C++
  5. Jawa
  6. PHP
  7. Pyton
  8. Rubin

JavaScript

JavaScript to język, który w ostatnich czasach przechodzi coś w rodzaju odrodzenia. Podczas gdy wcześniej był używany wyłącznie do funkcji po stronie klienta, które działają w przeglądarkach internetowych użytkowników, obecnie jest używany jako język po stronie serwera, w niektórych przypadkach z użyciem Node.js.

Często jest błędnie uważany przez niektórych za „zabawkowy” język, ale nadal jest używany głównie do praktycznej funkcjonalności po stronie przeglądarki. JavaScript ma tendencję do uczenia złych nawyków w strukturze i architekturze kodu ze względu na swoją wybaczającą naturę. Jeśli interesujesz się JavaScriptem, warto poświęcić czas na następujące tytuły:

Inteligentniejszy sposób na naukę JavaScript

  1. Inteligentniejszy sposób na naukę JavaScript: nowe podejście, które wykorzystuje technologię, aby zmniejszyć wysiłek o połowę

Efektywny JavaScript

2. Efektywny JavaScript : 68 konkretnych sposobów wykorzystania mocy JavaScriptu (seria efektywnego tworzenia oprogramowania)

Elokwentny-JavaScript

3. Wymowny JavaScript : nowoczesne wprowadzenie do programowania

Nie znasz JS: ES6 i nie tylko

4. Nie znasz JS: ES6 i nie tylko

JavaScript: ostateczny przewodnik

5. Head First Programowanie JavaScript: przewodnik przyjazny dla mózgu

JavaScript: ostateczny przewodnik

6. JavaScript: Przewodnik ostateczny : Aktywuj swoje strony internetowe (przewodniki ostateczne)

C

Ogólnie rzecz biorąc, język C najlepiej sprawdza się w przypadku wymagań systemowych niższego poziomu, ale jest on również używany w systemach operacyjnych i sterownikach urządzeń, a także jest ważny w tworzeniu gier. Programy napisane w języku C mają zwykle bardzo szybkie działanie w czasie wykonywania.

Z drugiej strony język ten nie jest idealny do tworzenia standardowych aplikacji i jest rzadko używany w tworzeniu stron internetowych. Język jest również podatny i podatny na różne luki w zabezpieczeniach. Co ciekawe, prawie wszystkie exploity związane z bezpieczeństwem sieciowym można cofnąć do nieprawidłowego użycia C.

Przeczytaj następujące informacje:

Język programowania C

7. Język programowania C

Programowanie w bibliotece programistów C 4th Edition

8. Programowanie w C (4th Edition) (Biblioteka programisty)

C Programowanie Absolute Beginners Guide 3rd Edition

9. C Programowanie Absolute Beginner's Guide (3rd Edition)

Biblioteka programistów C Primer Plus 6th Edition

10. C Primer Plus (6. edycja) (biblioteka programisty)

Praktyczne programowanie w C

11. Praktyczne programowanie w C : Dlaczego 2+2 = 5986? (Podręczniki w skrócie)

C#

Nic dziwnego, że język C# jest oparty na języku C, w związku z czym uczenie się struktury języka można przenieść na inne języki, takie jak Java, Objective-C, PHP i C++.

C#, wraz z zawsze popularną Javą, jest jednym z najbardziej pożądanych języków programowania dla pracodawców. Visual Studio oparty na C# jest na całym świecie uważany za najlepsze IDE, podczas gdy inne narzędzia oparte na C#, takie jak Xamarin Studio i platforma Mono, są powszechnie używane przez programistów do pisania aplikacji C# na urządzenia mobilne, Mac, Linux itp.

C# to język obiektowy, który umożliwia korzystanie z intuicyjnych modeli obiektowych. Podczas gdy niektórzy programiści sugerują, że jest to coś w rodzaju oszustwa, wielu programistów faktycznie to preferuje.

Ponadto C# jest dobrze zarządzanym językiem, więc programista nie musi martwić się o zarządzanie pamięcią.

Dalsze czytanie, które polecamy:

C-6.0 i NET-4.6 Framework

12. C# 6.0 i .NET 4.6 Framework

C w głębi

13. C# w głębi, 3. edycja

Przewodnik po odtwarzaczach C

14. Przewodnik gracza C# (wydanie drugie)

C++

C++ skutecznie łączy niskopoziomową moc języka C z kilkoma warstwami abstrakcji, czyniąc go bardziej wielowymiarowym i dynamicznym językiem.

Jeśli jakaś cecha nie istnieje w języku, często można ją w nią zapisać, jeśli jesteś wystarczająco guru. Za pomocą tego języka można wykonywać programowanie imperatywne, funkcjonalne, deklaratywne i w stylu OO.

Niemniej jednak C++ jest niezwykle solidny, a sposoby interakcji jego różnorodnych funkcji są bardzo złożone. Żaden programista nie może korzystać z całego zestawu bloków konstrukcyjnych zapewnianych przez C++, ale wybór właściwego podzbioru programu wymaga wielkiego wysiłku i mądrości.

Te książki mogą pomóc ci lepiej zrozumieć ten język:

15. Przyspieszony C++: Praktyczne programowanie na przykładzie

C Primer

16. C++ Primer (wydanie 5)

55 konkretnych sposobów na ulepszenie programów i projektów

17. Efektywny C++: 55 konkretnych sposobów ulepszania programów i projektów (3rd Edition)

Jawa

Java to najpopularniejszy język w aplikacjach korporacyjnych. Przede wszystkim jest wspierany przez Oracle i ma wiele rozszerzeń/platform napisanych na nim, w tym nowsze rzeczy, takie jak NoSQL i funkcjonalne języki stylu, takie jak Scala.

Java jest językiem Androida, a zatem jest również bardzo istotna dla rozwoju urządzeń mobilnych i jest wspierana przez Google. Jednak praca z narzędziami Java może być trudna.

Niezbędne lektury dla entuzjastów języka Java obejmują:

Head First Java

18. Head First Java, 2. edycja

Java: The Complete Reference, wydanie dziewiąte

19. Java: pełne informacje, wydanie dziewiąte

Efektywna Java

20. Efektywna Java (wydanie drugie)

Head First Design Patterns: Przewodnik przyjazny dla mózgu

21. Pierwsze wzorce projektowe: przewodnik przyjazny dla mózgu

Java Puzzlers: pułapki, pułapki i narożne przypadki

22. Puzzle Java: pułapki, pułapki i narożne przypadki

PHP

Z jakiegoś powodu PHP jest językiem, który ludzie albo kochają, albo nienawidzą, czasem jedno i drugie. PHP jest powszechnie wszechobecny, ale jednocześnie przez wielu uważany jest za okropny (tj. źle zaprojektowany) język. To powiedziawszy, PHP jest używane w ogromnej liczbie odnoszących sukcesy stron internetowych, w tym na Facebooku i WordPressie. Język jest używany wyłącznie w aplikacjach internetowych.

W przeciwieństwie do tego, język PHP prezentuje część pracy niskiej jakości, która jest generowana w branży, z wieloma przykładami złego kodu online.

Zapoznaj się z tymi książkami, aby rozpocząć:

Zaawansowane programowanie PHP

23. Zaawansowane programowanie PHP

Pierwsze kroki w PHP i MySQL

24. Head First PHP i MySQL: przewodnik przyjazny dla mózgu

Nowoczesne PHP Nowe funkcje i dobre praktyki

25. Nowoczesny PHP: nowe funkcje i dobre praktyki

PHP i MySQL Muracha

26. PHP i MySQL Muracha, 2. edycja

PHP i MySQL Nowicjusz dla Ninja

27. PHP i MySQL: nowicjusz dla ninja : łatwy sposób na zbudowanie własnej witryny opartej na bazie danych

Pyton

Python to popularny język interpretowany znany z szybkiego automatyzowania powtarzalnych zadań. Oszczędza dużo czasu na programowanie dla profesjonalnych programistów. Według TIOBE, dobrze znanego indeksu języków programowania, Python jest czwartym najpopularniejszym językiem programowania od grudnia 2016 roku.

Python jest uważany za nieco powolny, jeśli chodzi o czas kompilacji w porównaniu z innymi współczesnymi językami programowania. Istnieją również pewne problemy z bezpieczeństwem, ponieważ jest wpisywany dynamicznie.

Python nie jest powszechnie używany do tworzenia aplikacji mobilnych. Ale możliwe jest pisanie aplikacji na Androida, iOS lub Windows w Pythonie poprzez implementację frameworka Kivy.

Dowiedz się więcej, oglądając te tytuły:

Nauka Pythona

28. Nauka Pythona, wydanie 5

Pomyśl o Pythonie

29. Think Python: jak myśleć jak informatyk

Książka kucharska Pythona

30. Książka kucharska Pythona, wydanie trzecie

Crash kurs Pythona

31. Python Crash Course : praktyczne, oparte na projektach wprowadzenie do programowania

Rubin

Ruby jest bardzo popularnym i „fajnym” zwł. w społeczności startupowej. Wielu uważa, że ​​jest to doskonała alternatywa dla Javy, jeśli chodzi o szybkie tworzenie aplikacji internetowych.

Potencjalne wady obejmują fakt, że jest to szybko rozwijający się język, z dużą ilością nieaktualnej dokumentacji online. Nie jest to naprawdę przydatne do tworzenia aplikacji GUI i jest naprawdę istotne tylko w przypadku aplikacji internetowych.

Poszerz swoją wiedzę na temat Ruby on Rails, czytając:

Wymowny Rubin

32. Wymowny Rubin (Addison-Wesley Profesjonalny Rubin)

Praktyczne projektowanie zorientowane obiektowo w Ruby

33. Samouczek Ruby on Rails : Naucz się tworzenia stron internetowych z Rails (3rd Edition) (Addison-Wesley Professional Ruby)

Samouczek Ruby on Rails

34. Praktyczne projektowanie obiektowe w Ruby : Agile Primer (Addison-Wesley Professional Ruby)

Jeśli dotarłeś tak daleko do artykułu, zauważysz, że omówiliśmy każdy główny język programowania i odpowiedni materiał, który naszym zdaniem entuzjastyczny programista powinien przeczytać.

Powodzenia i szczęśliwej nauki!