Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Industriële technologie

Top 17 programmeerboeken om uw coderingsvaardigheden in 2021 te verbeteren

Programmeren is een van de meest gevraagde velden, wat kandidaten veel kansen biedt om te leren en te verdienen. Echter, om in dit veld te gedijen, moet u continu leren en uw vaardigheden laten evolueren. En wat zou beter kunnen zijn dan boeken om van te leren?

De beste soorten programmeerboeken zijn degene die niet alleen over de syntaxis en semantiek van talen vertellen, maar u ook helpen te nadenken, te organiseren, en een betere coder te worden. Ze leren u hoe u problemen efficiënt kunt oplossen, wat inderdaad de meest cruciale les is voor een programmeur.

Er zijn talloze artikelen op het internet die claimen de lijst van must-read programmeerboeken te zijn, maar ze bevelen allemaal dezelfde oude boeken aan. Het vinden van goede en verse bronnen is echt lastig geworden.

Om deze taak voor u makkelijker te maken, hebben we enkele van de beste programmeerboeken opgelijst die specifiek geschreven zijn om u een stevige basis te geven in alle gebieden die belangrijk zijn voor een betere coder. Als u er maar één leest, bent u een stap voorop ten opzichte van bijna iedereen om u heen.

17. Don't Make Me Think, Revisited

Auteur: Steve Krug
Uitgebracht in: 2013

Geschikt voor: Beginners

De auteur maakt het onderwerp web-usability echt vermakelijk. Samen met een lichte schrijfstijl, geeft hij een vleugje wijsheid om uw aandacht van kaft tot kaft te houden.

Het boek laat u diep nadenken over bruikbaarheid en toegankelijkheid. Alle hoofdstukken zijn logisch en beknopt. Er zijn genoeg voorbeelden die het standpunt van de auteur uitleggen en laten zien hoe verschillende stakeholders in webprojecten kunnen bijdragen aan de bruikbaarheid van de site.

Mijns inziens zou iedereen dit boek moeten lezen — ontwerpers moeten het lezen om gouden regels te leren voordat ze pen op papier zetten, programmeurs moeten het lezen om de technische vereisten van het implementeren van bruikbaarheid te begrijpen, en projectmanagers moeten het lezen om de hersenen te stimuleren om te denken en de wereld op nieuwe manieren te bekijken.

16. Peopleware: Productieve Projecten en Teams

Auteur: Tom DeMarco en Tim Lister
Uitgebracht in: 2013 (Derde Editie)

Geschikt voor: Beginners

Geschreven door twee softwareconsultants, is Peopleware een beroemd boek over software-organisatiebeheer. Het benadrukt het feit dat de meeste problemen van softwareontwikkeling menselijk zijn, niet technisch.

Het boek verkent de conflicten tussen individueel werkperspectief, bedrijfsfilosofie, en werkruimtetheorie. Meeste onderwerpen worden gepresenteerd als principes ondersteund door gezaghebbende bronnen of concreet verhaal.

Elk werkende persoon (het maakt niet uit of hij/zij een manager is of gemanaged wordt) zou het moeten lezen want het vertelt u over het bouwen van succesvolle en effectieve teams op een zeer beknopte en recht-toe-dezaak manier.

15. Effectief Werken Met Legacy-code

Auteur: Michael Feathers
Uitgebracht in: 2004

Geschikt voor: Gevorderden

Feathers' boek is meer dan 16 jaar oud. Toch is de inhoud niet verouderd. Het bevat een catalogus van 24 afhankelijkheidsbrekende methoden die u in staat stellen om veilig wijzigingen in uw programma aan te brengen.

Het boek leert u hoe u met grote, niet-geteste legacy-programma's kunt werken, hoe u de plek kunt identificeren waar codewijzigingen vereist zijn, en hoe u applicaties kunt hanteren die geen geschikte structuur lijken te hebben.

U zult veel technieken vinden die in elke taal of platform toegepast kunnen worden, inclusief C, C++, C#, en Java. Sommige technieken lijken verouderd, maar u weet nooit wanneer u ze nodig kunt hebben.

14. Maak Je Eigen Neuraal Netwerk

Auteur: Tariq Rashid
Uitgebracht in: 2016

Geschikt voor: Beginners en Gevorderden

Wat zou u normaal verwachten wanneer u een boek koopt gerelateerd aan kunstmatige intelligentie. Definities op elke pagina? Theorema's en bewijzen? Veel wiskunde? Talloze droge alinea's? Nou, dit boek is anders. U krijgt precies wat u nodig hebt om het onderwerp te begrijpen en in de praktijk te brengen—niets meer, niets minder.

Het leert u hoe u uw eigen neuraal netwerk kunt maken (in Python) en trainen om handgeschreven cijfers te herkennen. Het boek is verdeeld in drie secties:

  • Sectie 1: introduceert de wiskundige concepten die ten grondslag liggen aan neuraal netwerken.
  • Sectie 2: behandelt de basis van de Python-programmeertaal en hoe u een neuraal netwerk kunt bouwen dat kan leren handgeschreven cijfers te herkennen.
  • Sectie 3: verkent de technieken voor het verbeteren van de prestaties van het neuraal netwerk en het testen op uw eigen handschrift.

Voor mensen die volledig onbewust zijn van hoe neuraal netwerken werken, kan dit boek een perfecte eye-opener zijn en de fundamenteleggen voor toekomstig leren.

13. Code: The Hidden Language of Computer Hardware & Software

Auteur: Charles Petzold
Uitgebracht in: 2000

Geschikt voor: Beginners en Gevorderden

Dit boek opent de wereld van computing door een beknopt lineair vertelformaat. Beginnend met oudere technologieën zoals Morse-code, Braille, en Booleaanse logica, pikt de auteur geleidelijk de moderne tijd op met praat over HTTP en WWW.

Hij legt dan meer recente ontwikkelingen uit, inclusief onderwerpen zoals ASCII, besturingssystemen, en drijvende-komma-wiskunde. Om de hoofdstukken interessant te maken, heeft hij ook metaforen en analogieën spaarzaam gebruikt.

Wat uw technische vaardigheden ook zijn, dit boek zal u bezaubern, en misschien wel de technofiel in u wakker maken.

12. The C++ Programming Language

Auteur: Bjarne Stroustrup
Uitgebracht in: 2000

Geschikt voor: Gevorderden tot Experts

Geschreven door de vader van C++ zelf, is dit 's werelds meest vertrouwde en wijdgelezen boek over C++. Het biedt complete, gezaghebbende dekking van de C++-taal, de sleutelontwerpten, en de standaardbibliotheek.

Dit 1300-pagina boek kan in drie secties verdeeld worden. De eerste sectie (hoofdstukken 2-5) is een crashcourse op C++. De tweede sectie (hoofdstukken 6-29) is een structuur-tutorialsectie. De laatste sectie (hoofdstuk 30-44) verkent de standaardbibliotheek, die even belangrijk en integraal onderdeel is van C++ als de taal zelf.

Als u de taal snel wilt leren, is dit niet voor u. Echter, als uw doel is om een meester te worden (het kost veel tijd en moeite om daar te komen), is dit het boek voor u. Het is een lange en zeer technische lezing die elk aspect van de taal van basis tot esoterisch in groot detail dekt.

11. Introduction to Algorithms

Auteur: Thomas Cormen, Clifford Stein, Ronald Rivest, Charles Leiserson
Uitgebracht in: 2001

Geschikt voor: Beginners en Gevorderden

Dit boek dekt een breed scala aan algoritmes in detail, van klassieke algoritmes in graaftheorie tot speciale algoritmes in getaltheorie, computationele geometrie, en string-matching.

Alles wordt uitgelegd in een zeer eenvoudige taal zonder diepgang van dekking of wiskundige rigoreus te offeren. Maar verwacht geen puur kookboek van algoritmes dat gekopieerd of gedownload kan worden.

Als u een beginner bent, moet u elk hoofdstuk zorgvuldig lezen. De oefeningen aan het einde van elk hoofdstuk helpen u het concept dat u zojuist gelezen hebt beter te begrijpen. Gooi gewoon genoeg man-uren in dit leerboek, en u zult concrete benaderingen leren om te bepalen hoe zwaar u de computer laat werken.

10. Effective Java

Auteur: Joshua Bloch
Uitgebracht in: 2017

Geschikt voor: Beginners tot Experts

Sinds de eerste editie (gepubliceerd in 2001) is Effective Java dramatisch veranderd. De auteur heeft de titel bijgewerkt om voordeel te halen uit de nieuwe Java-versie en bibliotheekfuncties.

Net als eerdere edities bevat elk hoofdstuk meerdere secties (elk geschreven in de vorm van een eenvoudig, zelfstandig essay dat inzicht geeft in subtielheden van het Java-platform) en bijgewerkte code-snippets.

Het boek dekt bijna alle belangrijke Java-functies alsook de goede en slechte praktijken van diverse bibliotheken die we vandaag de dag gebruiken. Aangezien het moeilijk is om alles te onthouden (zelfs voor ervaren programmeurs), zou ik u adviseren om het als naslagwerk te bewaren wanneer u codeert.

9. Fluent Python

Auteur: Luciano Ramalho
Uitgebracht in: 2015

Geschikt voor: Experts

Het is altijd een genot om auteurs te volgen die een programmeertaal echt begrijpen en goede didactiek hebben. Luciano Ramalho is een van die auteurs. Hij schrijft over Python met passie maar zonder de valkuilen en tekortkomingen te verbergen.

Terwijl sommige hoofdstukken erg simpel lijken, dekken anderen kwalen en complexiteiten, en raken de kern van de taal. Het dekt Python-datamodel, datastructuren, functies als objecten, controlestroom, en metaprogrammeren.

Over het algemeen zal dit 700-pagina boek u introduceren tot Python's kernfuncties en bibliotheken en u leren hoe u uw code sneller, korter, en leesbaarder kunt maken.

8. Code Complete

Auteur: Steve McConnell
Uitgebracht in: 2014 (Tweede Editie)

Geschikt voor: Beginners tot Experts

Dit klassieke boek is volledig bijgewerkt en herzien met honderden nieuwe codevoorbeelden en toonaangevende praktijken, die de wetenschap en kunst van softwareontwikkeling illustreren.

Het boek is verdeeld in zeven delen: de eerste zes delen leggen de basis, het schrijven van hoogwaardige programma's, variabelen, statements, en codeverbeteringen. Het zevende deel gaat over software-vakmanschap (karakter, stijl, lay-out, en documentatie).

Mijns inziens zou elke programmeur met 2-3 jaar ervaring dit boek moeten lezen. Hoewel het niet op alle softwareontwikkelingsprocessen toepasbaar is en op sommige plaatsen gedateerd kan zijn, brengt het zeker ideeën over die alle programmeurs moeten begrijpen en omarmen.

7. Deep Learning

Auteur: Ian Goodfellow, Yoshua Bengio en Aaron Courville
Uitgebracht in: 2016

Geschikt voor: Experts

Dit biedt een enorme hoeveelheid detail voor neurale netwerken en de diepe versies ervan. De schrijvers hebben de moeilijke onderwerpen gecategoriseerd op een manier die de ideeën soepel overbrengt.

Het boek is verdeeld in drie secties:

  • 150 pagina's achtergrond: dekt relevante concepten in numerieke berekening, kansrekening, informatietheorie, en machine learning.
  • 300 pagina's toepassing: Dit is het kerndeel dat diepe feedforward-netwerken, sequentie-modellering, convolutie-netwerken, en optimalisatie-algoritmes omvat. Het onderzoekt diverse toepassingen in natuurlijke taalverwerking, bio-informatica, en videogames.
  • 200 pagina's onderzoeksonderwerpen: dekt theoretische onderwerpen zoals representatieleren, Monte Carlo-methoden, en diepe generatieve modellen.

Dit boek is voor mensen die al bekend zijn met het concept van deep learning en de theoretische achtergrond willen verkennen. Het is ook heel goed voor Ph.D.-studenten en onderzoekers wiens werk rond kunstmatige intelligentie draait.

Lees: 50 Shades of Computer Programming Laws

6. Artificial Intelligence: A Modern Approach

Auteur: Stuart Russell, Peter Norvig
Uitgebracht in: 2015

Geschikt voor: Beginners en Gevorderden

Dit boek is niet alleen een geweldige inleiding tot kunstmatige intelligentie, maar dient ook als een overzichtscursus in technisch schrijven. Het veronderstelt niet een ton achtergrond buiten enige blootstelling aan wiskundige notatie en een basaal begrip van algorithmische efficiëntie of computationele complexiteit.

Het boek bevat alles wat u misschien wilt weten voor zover kunstmatige intelligentie betreft. Elk concept is zeer goed uitgelegd en geladen met voorbeelden om u te helpen de echte betekenis erachter te begrijpen.

Het dekt ook praktische implicaties in hetzelfde veld, zoals spraakherkenning, machinevertaling, robotica, en meer. Lees het, lees het opnieuw, en behandel het met zorg — u zult de beloning langdurig plukken.

Lees: 8 Beste Kunstmatige Intelligentie Programmeertalen

5. Clean Code: A Handbook of Agile Software Craftsmanship

Auteur: Robert Cecil Martin
Uitgebracht in: 2007

Geschikt voor: Beginners en Gevorderden

De auteur van Clean Code is het meest herkend voor het ontwikkelen van tal van software-ontwerprincipes. In dit boek heeft hij de beste agile praktijken van het schoonmaken van code 'on the fly' geïntroduceerd.

Het bevat veel code-snippets, en u moet identificeren wat er mis is met het en wat er goed is aan die code. Het boek leert u hoe slechte code eruitziet en hoe het in de eerste plaats had geschreven moeten worden.

Er zijn drie secties. De eerste introduceert de patronen, principes, en praktijken van het schrijven van schone code. De tweede bevat veel verschillende case studies. De derde bevat een lijst van heuristieken verzameld tijdens het maken van de case studies.

Terwijl de meeste voorbeelden java-gecentreerd zijn, kan iedereen met interesse in het produceren van betere code dit boek lezen — of u nu een softwareontwikkelaar, teamlead, systeemanalist, of projectmanager bent.

4. Cracking the Coding Interview

Auteur: Gayle Laakmann McDowell
Uitgebracht in: 2011

Geschikt voor: Beginners en Gevorderden

Cracking the Coding Interview is de meest uitgebreide, gedetailleerde gids over hoe u uw programmerings- of softwareontwikkelingsinterviews kunt halen.

Het begint met het uitleggen van het 'waarom' van een technisch interview, hoe u kunt oefenen voor niet-technische vragen, hoe u problemen kunt analyseren en afbreken, hoe u efficiënte code kunt schrijven, en hoe u kunt reageren op acceptatie en afwijzing.

Dan vindt u meer dan 180 programmeervragen en antwoorden, die de kern van het boek vormen. Elke sectie begint met een discussie van de kernkennis en benaderingen om vergelijkbare problemen aan te pakken, duikend in exacte technieken om ze op te lossen. U vindt ook een link in het boek zodat u de oplossingen kunt downloaden, compileren, en zelf analyseren.

3. Grokking Algorithms

Auteur: Aditya Bhargava
Uitgebracht in: 2015

Geschikt voor: Gevorderden en Experts

Het is een ontwapende aanpak van een kernonderwerp van de informatica. Het boek leert u hoe u algoritmes kunt toepassen op real-life problemen die u als coder in het dagelijks leven tegenkomt.

Het begint met simpele problemen zoals zoeken en sorteren. Naarmate u uw denkvaardigheden opbouwt, zult u complexere onderwerpen aanpakken zoals hashing, grafen, gierige algoritmes, MapReduce, P vs. NP, datacompressie, en meer. Alles wordt uitgelegd met illustraties en visuele voorbeelden.

Of u nu mobiele apps, videogames, of bedrijfstools ontwikkelt, u zult algorithmische methoden leren voor het oplossen van problemen die eerder buiten uw bereik lagen. Bijvoorbeeld, u zult begrijpen hoe datacompressie werkt met Huffman-codering, een spell-checker schrijven met graafalgoritmes, en meer.

Lees: 14 Beste Programmeersoftware Voor Het Schrijven Van Code [2020]

2. Design Patterns: Elements of Reusable Object-Oriented Software

Auteur: Erich Gamma, Ralph Johnson, Richard Helm, John Vlissides
Uitgebracht in: 1994

Geschikt voor: Beginners en Gevorderden

Het vastleggen van een rijkdom aan ervaring over het ontwerp van object-georiënteerde software, presenteert de "Gang of Four" een catalogus van eenvoudige en beknopte oplossingen voor veelvoorkomende ontwerpkwesties.

Het boek begint met het beschrijven wat patronen zijn en hoe ze nuttig kunnen zijn in object-georiënteerde tools. Het leert u hoe deze patronen passen in de softwareontwikkelfase, en hoe ontwikkelaars ze kunnen benutten om hun eigen ontwerpproblemen het meest efficiënt op te lossen.

Het boek is gesplitst in twee secties, met de eerste twee hoofdstukken die de voor- en nadelen van object-georiënteerd programmeren uitleggen, en de overige hoofdstukken die 23 klassieke software-ontwerppatronen verkennen. Het bevat genoeg voorbeelden in Smalltalk en C++.

Het wordt beschouwd als een belangrijke bron voor object-georiënteerde ontwerptheorie en -praktijk. Meer dan een half miljoen exemplaren zijn verkocht in 14 talen.

1. The Pragmatic Programmer: Your Journey to Mastery

Auteur: Andrew Hunt en David Thomas
Uitgebracht in: 2019

Geschikt voor: Beginners en Gevorderden

Dit is de tweede editie van de invloedrijke boek the Pragmatic Programmer gepubliceerd in 1999. Twee decennia later, heronderzoekt deze nieuwe editie wat het betekent om een moderne coder te zijn.

Het omvat diverse tips om het ontwikkelproces op een pragmatische manier te verbeteren. Het dekt een breed scala aan nuttige onderwerpen, van carrièreontwikkeling en persoonlijke verantwoordelijkheid tot architecturale methoden om de code flexibel en gemakkelijk onderhoudbaar te houden.

Lees: 14 Beste Programmeersoftware Voor Het Schrijven Van Code

Dit boek leert u hoe u kunt

  • Echte eisen vastleggen
  • Dynamische en aanpasbare code schrijven
  • Uw code kogelvrij maken met assertions en exceptions
  • Code rigoros testen
  • Automatisering gebruiken om ontwikkeling effectiever te maken

Als u gefrustreerd bent door de methodologieën van de meeste programmeerboeken, moet u dit eens proberen. Het heeft alles wat u nodig hebt om een pragmatische programmeur te worden.


Industriële technologie

  1. De Evolutie en Productieproces van Moderne Boeken
  2. Fundamenten van SPICE Programmeren: Praktische Gids
  3. Microprocessor programmeringsfundamenten
  4. Top 13 B2B SaaS-bedrijven in 2021 – bewezen leiders en innovators
  5. 2021 Kwantumcomputing: 12 toonaangevende toepassingen uitgelegd
  6. De 9 programmeertalen die je in 2021 moet leren ontdekken
  7. Robotlas Optimaliseren: Programmeeruitdagingen Overwinnen met Bewezen Best Practices
  8. 15 Beste C++ IDE's voor Windows, macOS & Linux – Gratis & Betaalde Opties (2021)
  9. Top 15 C++ Online Cursussen om de Taal te Beheersen (2024 Update)
  10. Top 10 C# IDE's voor Windows, macOS en Linux – 2021 Review
  11. Top 100 C Programmeervragen & Antwoorden voor Interviews (2024)