Hoe een programmeur te worden

Schrijver: John Stephens
Datum Van Creatie: 1 Januari 2021
Updatedatum: 2 Juli- 2024
Anonim
HOE LEER JE PROGRAMMEREN? | Programmeren voor beginners (2020)
Video: HOE LEER JE PROGRAMMEREN? | Programmeren voor beginners (2020)

Inhoud

Ontwikkelaar worden is een proces dat zich opstapelt en je vaardigheden in de loop van de tijd opbouwt, en het kan een leuke en lonende baan worden (intellectueel, mentaal en financieel). ). Deze tutorial belooft je niet de magie van een gemakkelijke manier om een ​​programmeur te worden, en de volgorde van de stappen is niet zo belangrijk, maar je zult de essentie begrijpen van hoe je een ontwikkelaar kunt worden. tot een programmeur in een van de moderne programmeervelden.

Stappen

  1. Volg een inleidende cursus in een (of alle) van de volgende vakken:
    • Logica
    • Discrete wiskunde
    • Programmeertaal (een beginner kan het beste C ++ / Java / Python leren)


    Gene Linetsky, MS

    Oprichter en technisch directeur van start-ups Gene Linetsky is oprichter van start-ups en software-engineer in de San Francisco Bay Area. Hij zit al meer dan 30 jaar in de hightech-industrie en is momenteel technisch directeur bij Poynt, een technologiebedrijf dat slimme POS-apparaten voor bedrijven maakt.

    Gene Linetsky, MS
    Start-up oprichter en technisch directeur

    Je hebt geen coderingsgraad nodig. Hoewel het leren van programmeertalen nuttig is, zegt Gene Linesky, software-engineer en oprichter van een startup: "Of een diploma nuttig is of niet, is controversieel. daarin kun je programmeren zien als een leerproces - je leert van fouten. "


  2. Leer meer over databaseconcepten zoals tabellen, views / queries en procedures. U kunt hiervoor elk eenvoudig databasepakket gebruiken, bijvoorbeeld:
    • MS Access
    • DB V
    • Fox Pro
    • Paradox
    • MySQL is een goede database om te leren, omdat het gratis is, vaak wordt gebruikt en de databases vaak worden geopend met SQL-query's.

  3. Bepaal wat voor soort ontwikkelaar je wilt zijn. Programmeurs vallen over het algemeen in een van de volgende categorieën:
    • webontwikkelaar
    • Desktop applicatie programmeur
      • Besturingssysteem-georiënteerde programmeur (gekoppeld aan een enkel besturingssysteem of een reeks besturingssystemen)
      • Een platformonafhankelijke ontwikkelaar
    • Gedistribueerde applicatieprogrammeur
    • Bibliotheken / platform / framework / kernprogrammeur
    • Systeemprogrammeur
      • Kernel personeel programmeur
      • Driver programmeur
      • Programmeur-compiler
    • Programmeerwetenschapper
  4. Onderzoek de technologieën en programmeertalen die verband houden met het programmeergebied dat u kiest. De volgende secties zullen de taken van de verschillende soorten programmering verdelen. advertentie

Methode 1 van 6: Webprogrammering

  1. Begrijp wat webprogrammering nodig heeft. Webapplicaties zijn softwarecomponenten die zijn ontworpen om bovenop de internetarchitectuur te werken. Dit betekent dat applicaties toegankelijk zijn via een browsersoftware zoals Firefox of Internet Explorer. Deze applicaties bevinden zich bovenop de internetarchitectuur, wat betekent dat er geen echte verbinding met internet nodig is. Dit betekent dat webapplicaties worden gebouwd op basis van standaard webtechnologieën zoals:
    • HTTP
    • FTP
    • POP3
    • SMTP
    • TCP
    • IP-protocollen
    • HTML
    • XML
    • Coldfusion
    • ADDER
    • JSP
    • Php
    • ASP.NET
  2. Bekijk de verschillende pagina's om te zien hoe ze er gewoonlijk uitzien. (Door met de rechtermuisknop te klikken en vervolgens Bron weergeven te selecteren (broncode weergeven) of op F12 te drukken). U moet naar diversiteit zoeken in het type / de inhoud van de website, niet in het aantal webpagina's dat u ziet. Over het algemeen moet u ten minste één pagina bezoeken voor elk van de volgende soorten websites:
    • Introductiepagina's van bedrijven (commerciële bedrijven, non-profitorganisaties / organisaties, overheidsinstanties)
    • Webindexeringstools (zoekmachines, meta-zoeksites, speciale zoekmachines, directories)
    • Datamining-sites
    • Persoonlijke pagina's
    • Documentatie- / encyclopediesites (Wiki, datasheets, technische specificaties en gebruikersgidsen, blogs en tijdschriften, nieuws- en nieuwssites, gele pagina's ...)
    • Sociale sites (sociale portalen, bladwijzers en online notitiesites)
    • Samenwerkingssites (inclusief alle bovenstaande categorieën, zoals wiki's en blogs)
  3. Leer ten minste één brainstormtechniek / -methode en een stuk software dat wordt gebruikt om dat te doen. Voorbeelden: brainstormgrafieken en MS Visio-software.

  4. Raak vertrouwd met de sitestructuur. Dit is het maken van conceptuele sitemaps, sitemaps en navigatiestructuren.
  5. Volg een intensieve opleiding tot grafisch ontwerpen. Probeer ten minste één softwarepakket voor grafische bewerking / manipulatie te leren (niet vereist, maar sterk aanbevolen).

  6. Leer de basisprincipes van internetinfrastructuur. Het omvat het begrijpen van het basisidee van:
    • Algemene webserviceprotocollen (HTTP, FTP, SMTP en POP3 of IMAP4)
    • Webserversoftware (bij voorkeur de software voor het platform waarop u er primair mee gaat werken)
    • Webbrowsersoftware.
    • Server- en clientsoftware voor e-mail

  7. Leer HTML- en CSS-talen. Mogelijk hebt u ook het pakket “What You See Is What You Get (WYSIWYG) (What You See Is What You Get)” nodig voor HTML-bewerking.
  8. Leer XML en XML-gerelateerde technologieën zoals XSL en XPath (optioneel maar aanbevolen).
  9. Maak eenvoudige statische webpagina's totdat u vertrouwd en vertrouwd bent met HTML.
  10. Leer de scripttaal van een klant. De meeste gebruikers leren JavaScript. Anderen leren VBScript, maar het is niet compatibel met de meeste browsers.
  11. Maak uzelf vertrouwd met de scripttaal van de klant die u hebt geleerd. Probeer je best te doen met precies die taal. Ga alleen verder als u op zijn minst bekend bent met de scripttaal van de client.
  12. Leer minstens één server programmeertaal. Als u ervoor kiest om uzelf te beperken tot serversoftware, leer dan de programmeertalen die door die software worden ondersteund. Als dit niet het geval is, leer dan ten minste één programmeertaal voor elke serversoftware.
  13. Maak een proefproject voor uzelf nadat u klaar bent met het bestuderen van de programmeertaal van de server.
  14. Zet je eigen website op en ga experimenteren met je eigen online. advertentie

Methode 2 van 6: Abdominale programmering van desktoptoepassingen

  1. Begrijp wat u moet doen met het programmeren van desktoptoepassingen. De meeste desktopprogrammeurs schrijven code voor zakelijke oplossingen, dus het leren kennen van hun bedrijf, hun organisatiestructuren en hun financiële structuren bespaart veel tijd.
  2. Studie van verschillende computerhardwarearchitecturen. Een fundamentele cursus in digitaal circuitontwerp en een andere in computerarchitectuur zullen van belang zijn. Sommige mensen denken echter dat het vrij moeilijk is om het voor beginners te leren, dus het lezen van twee of drie tutorials (zoals deze en deze) is voldoende. U kunt vervolgens naar deze stap terugkeren nadat u uw eerste programmeertaal heeft geleerd.
  3. Leer een elementaire programmeertaal (voor kinderen). Schaam je niet om zo'n taal te leren, alleen maar omdat je te oud bent om een ​​'kind' te worden genoemd. Een voorbeeld van dergelijke programmeertalen is Scratch. Deze programmeertalen kunnen de moeilijkheid om uw eerste programmeertaal te leren aanzienlijk verminderen. Deze stap is echter optioneel, u kunt deze ook vóór de vorige stap doen.
  4. Meer informatie over procedurele, objectgeoriënteerde en functionele programmeermodellen.
  5. Volg een basiscursus in een van de procedurele programmeertalen. Welke taal u later ook kiest, u heeft nog steeds een zekere mate van procedureel programmeren nodig. Bovendien zijn programmeurs van mening dat procedureel programmeren het gemakkelijkste startpunt is om het idee van programmeren in het algemeen te begrijpen.
  6. Leer ten minste één geavanceerde modelleermethode, zoals UML of ORM.
  7. Begin met het schrijven van een kleine consoletoepassing of iets dergelijks. Je kunt de kleine oefeningen gebruiken in programmeertaalboeken. Om dit te doen, selecteert u een hulpmiddel voor het schrijven van programma's in overeenstemming met de programmeertaal die u wilt schrijven.
  8. Volg een meer gevorderde cursus in de programmeertaal van uw keuze. Zorg ervoor dat u de volgende concepten begrijpt en ze relatief gemakkelijk kunt toepassen voordat u verder gaat:
    • Invoer- en uitvoerinformatie voor de gebruikers van een programma.
    • De logische stroom en uitvoeringsstroom van de programma's in proceduretalen.
    • Variabelen declareren, toewijzen en vergelijken.
    • Branch statements bij het programmeren, zoals if..then..else en select / switch..case.
    • Herhaal instructies zoals while..do, do.. While / till, for..next.
    • De syntaxis van uw programmeertaal voor het maken en aanroepen van procedures en functies.
    • Datatypes en manipulatie.
    • Door de gebruiker gedefinieerde gegevenstypen (records / structuren / eenheden) en hun gebruik.
    • Als uw taal functie-overbelasting ondersteunt, begrijp het dan.
    • Geheugentoegangsmethoden van de taal die u kiest (aanwijzingen, hoe de inhoud van een cel te lezen ...)
    • Als uw taal overbelasting door operators ondersteunt, moet u deze begrijpen.
    • Als uw taal functie-aanwijzingen ondersteunt, moet u deze begrijpen.
  9. Pas geavanceerde technieken toe die u hebt geleerd.
    • Objectgeoriënteerd model.

  10. Volg een basiscursus in minstens één andere programmeertaal in een ander programmeermodel. U moet voor elk model één programmeertaal leren, wat de meeste geavanceerde programmeurs doen. U moet echter meestal beginnen met een taal, er een tijdje aan werken, uw kennis toepassen en oefenen. Nadat u praktische programmeerervaring heeft opgedaan, leert u een nieuwe taal. Probeer een van de volgende taalarrays:
    • Logisch programmeermodel.
    • Functioneel programmeermodel.

  11. Laten we proberen de twee programmeertalen die u tot nu toe hebt geleerd, te vergelijken. Evalueer de sterke en zwakke punten van elke taal. Dit wordt meestal gedaan door:
    • Neem een ​​eerder eenvoudig taakpatroon met de eerste programmeertaal en herschrijf dit in de tweede programmeertaal.
    • Maak een nieuw project en probeer het in beide talen uit. Afhankelijk van welk project je kiest en de taal die je kiest, is het soms onwaarschijnlijk dat je het in beide talen kunt doen!
    • Vergelijk als een snelle opzoektabel of samenvattende tabel tussen twee vergelijkbare uitspraken in twee talen en de unieke kenmerken van elk.
    • Probeer een manier te vinden om de unieke kenmerken van een van de talen in de andere na te bootsen.

  12. Leer programmeerconcepten met een van de talen die u hebt geleerd. De meeste programmeertalen hebben versies / bibliotheken die visualisatie ondersteunen en andere soorten programmeren die helpen bij communicatie of iets dergelijks. U kunt dit doen door:
    • Leer voorlopige programmering van evenementen. De meeste visuele programmering is tot op zekere hoogte afhankelijk van gebeurtenissen en de afhandeling van gebeurtenissen (met behulp van de programmeertaal van uw keuze).
    • Probeer zoveel mogelijk desktopsoftware uit en ontdek wat ze doen. De meeste softwareontwikkelingsbedrijven bieden gebruikers testversies (bèta) van producten om software te testen. Blijf daarom up-to-date met de vooruitgang in de gebruikersinterface.
    • Lees enkele artikelen of tutorials over grafische gebruikersinterfaces.
  13. Pas uw kennis toe op kleine softwareprojecten die u ontwerpt. Probeer uw programmeervaardigheden toe te passen op de problemen waarmee u dagelijks wordt geconfronteerd. Schrijf bijvoorbeeld een programma om bestanden batchgewijs te hernoemen, tekstbestanden visueel te vergelijken, de namen van bestanden in een map naar een geheugen / tekstbestand te kopiëren, enzovoort. Onthoud dat het eerst zo simpel is.
  14. Maak een virtueel "afstudeerproject". Voltooi het project tot het einde en pas de visualisatietechnieken toe die je tot nu toe hebt geleerd.
  15. Vergroot uw begrip van visuele frameworks / bibliotheken / pakketten die u eerder hebt geleerd door cursussen voor gevorderden te volgen, meer aandacht te besteden aan details en meer tips en trucs voor het framework te leren. uw werk van online bronnen.
  16. Zoek naar andere visuele elementpakketten / bibliotheken voor uw programmeertaal en bestudeer ze.
  17. Volg een grafische cursus (geen grafische vormgeving). Het zal erg handig zijn voor programmeurs die aantrekkelijke UI-elementen willen schrijven.
  18. Word een spelprogrammeur (optioneel). Het programmeren van games wordt nog steeds grotendeels beschouwd als desktopprogrammering. Als u van plan bent een game-ontwikkelaar te worden, moet u na het voltooien van deze stappen meer leren over het programmeren van games. Een grafische cursus is vereist voor game-programmeurs, en de tweede taal van keuze in de vorige stappen moet een logische / functionele programmeertaal zijn (kies Prolog of Lisp). advertentie

Methode 3 van 6: gedistribueerde applicatieprogrammering

  1. Lees meer over gedistribueerde applicatieprogrammering. Gedistribueerde applicatieprogrammering wordt door velen beschouwd als een van de moeilijkste om te leren en vereist een rijke kennis van computers en communicatietechnologieën.
  2. Bekijk snel spraaksystemen en hun hardware. Deze stap is optioneel. Het is echter erg handig om kennis te hebben van netwerktopologieën.
  3. Maak uzelf vertrouwd met de hardware-architectuur en netwerkapparatuur zoals centrale concentrators (hubs), switches en routers (routers).
  4. Volg een cursus over protocollen en de basis. U moet een goed begrip hebben van het Open Systems Connection (OSI) -model, Ethernet, IP, TCP, UDP en HTTP voordat u begint met het programmeren van gedistribueerde applicaties.
  5. Leer de XML-taal en maak u ermee vertrouwd.
  6. Begin met het leren van een scripttaal voor de commando-interpreter. Voor op Windows gebaseerde programmering kan dit elk script zijn dat werkt met Windows Scripting Host. Voor op Linux gebaseerde programmering zijn de Bash- en Perl-scripts voldoende. JavaScript wordt hiervoor op beide platforms ten zeerste aanbevolen om de volgende redenen:
    • Het wordt ondersteund door de meeste scripttools in elk besturingssysteem (Windows Scripting Host ondersteunt standaard JavaScript, de meeste Linux-distributies hebben een ondersteuningspakket voor JavaScript-scriptingcommunicatie) .
    • Het wordt door veel programmeurs beschouwd als gemakkelijker te leren.
    • Het heeft een van ALGOL afgeleide syntaxis waarmee u vertrouwd kunt raken met vele andere programmeertalen wanneer u een tweede programmeertaal moet kiezen. C, C ++, C #, Java en J # hebben allemaal een syntaxis die is afgeleid van ALGOL.
    • Door JavaScript te leren, maakt u uzelf vertrouwd met client-scripting voor webpagina's, wat uiteraard een gunstig neveneffect is!
  7. Pas eerst procedureel programmeren alleen toe in de scripttaal van uw keuze. U kunt dan meer geavanceerde programmeerpatronen en -technieken gebruiken in overeenstemming met uw scripttaal en wat deze ondersteunt. Alle scripttalen houden zich tot op zekere hoogte bezig met procedureel programmeren.
  8. Gebruik de scripttaal die u hebt geleerd om scripts te schrijven die de communicatie tussen machines verzorgen. Lees wat er nodig is om het te doen. Alleen eenvoudige contactgegevens zijn voldoende.
  9. Schakel over naar een desktop programmeer- / scripttaal. Het beste is een taal met meerdere paradigma's, zoals Python. Voorstudie over deze tweede taal. Java is om vele redenen de taal bij uitstek voor de meeste programmeurs. C # helpt echter om een ​​sneller momentum in deze array te creëren. Java en C # hebben de voorkeur om de volgende redenen:
    • Het zijn objectgeoriënteerde programmeertalen die programmeurs in grote groepen helpen om onderdelen te vermijden, omdat ze allemaal de mogelijkheid hebben om componenten te ondersteunen (d.w.z. code-eenheden, frontier vertaling uitgevoerd voor een bepaalde taak kan in andere programma's worden gebruikt)
    • Ze ondersteunen tot op zekere hoogte zowel gebeurtenisgestuurd programmeren als OO (objectgeoriënteerd) en procedureel programmeren.
    • Het raamwerk waarop de taal is gebouwd, wordt gekenmerkt door een gedistribueerd karakter (in het geval van Java).
    • Er zijn vooraf gemaakte programmeerpakketten beschikbaar om netwerken af ​​te handelen, hetzij open source, hetzij ingebouwd in het framework; Dit maakt het gemakkelijk voor ontwikkelaars om aan de producten van anderen te werken.
  10. Concentreer u meer op de kerntaalfuncties, vooral degene die netwerken ondersteunen. Besteed minder aandacht aan UI-elementen zoals het uitvoeren van informatie, ontwerp en technieken voor het werkvenster en UI-elementen.
  11. Volg een gedistribueerde applicatiearchitectuur en ontwerptraining. U kunt studeren via boeken, online tutorials of academische cursussen. Hoe dan ook, u moet de architectuur van gedistribueerde applicaties en de bijbehorende concepten begrijpen.
  12. Leer hoe u servicecomponenten bouwt en hoe u de programmeertaal van uw keuze gebruikt.
  13. Leer een of meer van de volgende technologieën. Je moet ze tenminste allemaal doornemen. De meerderheid van de gedistribueerde applicatieontwikkelaars leren niet alleen een of twee programmeertalen, maar minstens één programmeertaal per besturingssysteem. Dit komt omdat als u wilt dat uw toepassing wordt "gedistribueerd", u er ten minste één versie van moet verstrekken voor elk populair besturingssysteem.
    • Common Object Request Broker Architecture (CORBA)
    • Simple Object Access Protocol (SOAP)
    • Asynchrone JavaScript en XML (AJAX) (asynchrone JavaScript en XML)
    • Distributed Component Object Model (DCOM) (Distributed Component Object Model)
    • .NET Remoting (oplossing voor het verwerken van externe berekeningen)
    • XML-webservices
    advertentie

Methode 4 van 6: Bibliotheek / Platform / Framework / Core Programming

  1. Begrijp wat kernprogrammering is. Kernprogrammeurs zijn slechts gevorderde programmeurs die programmeertoepassingen omzetten in programmeercode-eenheden voor gebruik door andere programmeurs.
  2. Als je dat nog niet hebt gedaan, leer dan een programmeertaal die helpt bij het bouwen van herbruikbare componenten / pakketten.
  3. Volg een cursus voor gevorderden in UML en ORM. De meeste bibliotheekontwikkelaars gebruiken een van deze of beide.
  4. Volg een cursus software engineering.
  5. Leer in ieder geval modulaire, componentgebaseerde, objectgeoriënteerde en gebeurtenisgestuurde programmeerconcepten en -technieken. Hoe meer programmeermodellen en talen u begrijpt, hoe succesvoller u zult zijn als bibliotheek- / pakketontwikkelaar.
  6. Lees meer over de verschillende besturingssystemen en programmeerframeworks die erdoor worden ondersteund.
  7. Richt uw leerinspanningen op platformonafhankelijke frameworks, programmeertalen en technologieën.
  8. Als de talen die je tot nu toe hebt bestudeerd versies van de ANSI / ISO / IEEE / W3C-normen hebben, beheers dan de normen. Probeer waar mogelijk standaardcodes te gebruiken.
  9. Probeer de eenvoudige bibliotheken na te bootsen die vooraf zijn gemaakt, vooral de open source-bibliotheken. Dit is erg handig in de vroege stadia van het worden van een bibliotheek- / pakketontwikkelaar. Begin met eenvoudige pakketten zoals tussenliggende wetenschappelijke berekeningen en pakketten voor eenheidconversie. Als je een student bent, profiteer dan van niet-programmerende disciplines door te proberen hun vergelijkingen en wetenschappelijke vermenigvuldiging als bibliotheken te implementeren.
  10. Zoek en probeer open source-pakketten in uw programmeerveld. Download eerst de binaries / executables van het pakket. Probeer het te gebruiken en ontdek de sterke en zwakke punten. Als u klaar bent, downloadt u de broncode en probeert u erachter te komen hoe u dit doet. Probeer die bibliotheken of delen ervan opnieuw te maken. Allereerst, doe het nadat je de broncode hebt gezien en doe het dan voordat je de broncode ziet. Probeer in latere stadia die bibliotheken te verfijnen.
  11. Bestudeer de verschillende benaderingen voor het distribueren en implementeren van componenten onder programmeurs.
    • Vaak hebben bibliotheek- / pakketprogrammeurs de neiging om recursief en / of herhaaldelijk na te denken over alle problemen die hen worden voorgelegd. Beschouw elk probleem als een verzameling kleinere problemen (een reeks eenvoudigere taken) of als een iteratief proces om de omvang van het probleem terug te brengen tot kleinere Stapel de reeksen op elkaar.
    • Ontwikkelaars van bibliotheken / pakketten hebben de neiging om te generaliseren. Dat is wanneer ze een eenvoudig specifiek probleem voorgeschoteld krijgen, ze denken vaak aan een algemener probleem en proberen dat algemene probleem op te lossen zodat het automatisch de kleinere problemen oplost.
    advertentie

Methode 5 van 6: Systeemprogrammering

  1. Begrijp wat systeemprogrammering inhoudt. De systeemprogrammeur houdt zich bezig met de "wetenschap" van de programmering, niet met de specifieke implementaties ervan. Bind jezelf niet vast aan een specifieke achtergrond.
  2. Volg de eerste drie stappen om een ​​Desktop Application Programmer te worden.
  3. Volg een inleidende cursus over lineaire algebra.
  4. Volg een computercursus.
  5. Volg een discrete cursus wiskunde en / of logica.
  6. Maak uzelf vertrouwd met de verschillende basisbesturingssystemen. Dit kan gedaan worden door:
    • Begrijp hoe besturingssystemen zijn geïnstalleerd.
    • Lees hoe u verschillende besturingssystemen op één pc installeert (optioneel, maar aanbevolen).
    • Installeer meer dan één besturingssysteem. Installeer geen andere plug-in op het systeem; gebruik in plaats daarvan alleen de basisfuncties van het besturingssysteem.
  7. Volg een cursus (of lees misschien een boek) over computerhardwarearchitectuur [[.
  8. Ontwikkel begrip van verschillende computerhardwareplatforms.
  9. Ga aan de slag met de assembleertaal van het besturingssysteem / hardwareplatform van uw keuze. Later leert u meer assembleertaal voor andere besturingssystemen / platforms.
  10. Leer de ANSI C- en C ++ -talen, samen met procedurele concepten.
  11. Begrijp en oefen standaard C / C ++ -bibliotheken op het platform van uw keuze. Speciale aandacht verdient de Standard Template Library (STL) en eventueel de Active Template Library (ATL).
  12. Zoek online bronnen, boeken en cursussen om de functies van C te begrijpen op het platform van uw keuze.
  13. Oefen geavanceerde codegeneratie met C en C ++.
  14. Leer meer geavanceerde assembleertaal.
  15. Volg een cursus over het ontwerpen van besturingssystemen.
  16. Vind en lees materiaal op het specifieke platform van uw keuze. Dit wordt gemakkelijker als u een op Unix gebaseerd besturingssysteem kiest. Beheers het systeem waar u later aan gaat werken.
  17. Oefen wat je wint. Laten we eerst enkele kleine systeemhulpprogramma's maken. Het helpt meestal als u:
    • Probeer de kleine tools die op uw systeem beschikbaar zijn, opnieuw te maken.
    • Probeer hulpprogramma's die beschikbaar zijn in andere besturingssystemen naar de uwe te migreren.
  18. Leer talen in de volgorde waarin ze het nuttigst zijn. Dit is de enige array waarin de eerste programmeertaal zijn betekenis leert hebben.Leer eerst ANSI C, niet eerst C ++, C #, Java of D. Leer dan C ++.
    • Beperk de eerste taal tot C en alleen C omdat programmeursystemen vereisen dat programmeurs bekend zijn met de volgende concepten:
      • Compileer de daadwerkelijke en de volledige broncode.
      • Objectuitvoerbestanden op laag niveau.
      • Binair gekoppelde codes.
      • Programmering van machinetaal / assembleertaal op laag niveau. Veel mensen geloven dat C-taal zowel alternatief als gemakkelijker is om assembleertaal te leren. Het ondersteunt ook het invoegen van assembly-code in de code wanneer je maar wilt en het is gewoon procedureel (zoals assembly).
    advertentie

Methode 6 van 6: Programming Science

  1. Weet wat een programmeur doet. Programmeerwetenschappers zijn zeer geavanceerde programmeurs die, in plaats van applicaties te ontwikkelen, computationele technologieën ontwikkelen zoals codering, programmeertalen en datamining-algoritmen. Deze graad wordt zelden behaald zonder diepgaand academisch en onderzoek.
  2. Cumulatieve wetenschappelijke kennis staat gelijk aan een 4-jarige opleiding informatica. Dit kan op een van de volgende manieren worden bereikt:
    • Neem een ​​echte academische graad (wat vaak het geval is).
    • Zoek een cursusoverzicht voor een dergelijke opleiding bij een van de beschikbare universiteiten en bestudeer de onderwerpen zelf of volg privécursussen. Theoretisch kun je dit bereiken, maar je moet de eerste weg inslaan.
  3. Selecteer een gespecialiseerde array. Wees specifieker, hoe beter. Dit hangt af van uw voorkeur. Het volgende is echter een lijst met de belangrijkste onderwerpen in de wetenschap van computerprogrammering:
    • Ontwerpalgoritmen (zoeken, classificeren, coderen, decoderen en detecteren van fouten in communicatie zijn enkele voorbeelden)
    • Ontwerp / optimalisatie van programmeertalen / compilers
    • Arrays van kunstmatige intelligentie (patroonherkenning, spraakherkenning, natuurlijke taalverwerking, neurale netwerken)
    • Robotica
    • Wetenschappelijke programmering
    • Super berekening
    • Computerondersteund ontwerpen / modelleren (CAD / CAM)
    • Virtuele realiteit
    • Computergraphics (Computergraphics wordt vaak verward met grafisch ontwerp of grafisch gebruikersinterfaceontwerp.) Computergraphics is het vakgebied van het weergeven en manipuleren van grafische afbeeldingen in computersystemen. berekening).
  4. Overweeg om een ​​hogere academische graad te behalen. Je kunt een master- of doctoraatsopleiding volgen.
  5. Leer programmeertalen en technologieën die relevant zijn voor het door u gekozen programmeerveld. advertentie

Advies

  • Ongeacht het type programmering dat u wilt proberen en welk niveau u ook wilt bereiken, overweeg om lessen te volgen bij uw plaatselijke gemeenschapscollege of universiteit. Laat u niet intimideren door termen als "Computer Science". Elke les die je volgt en die geen initiële vereisten of vereisten vereist, zal zich richten op het aanleren van de basisprincipes van programmeren, maar neem toch eerst contact op met je instructeur of mentor. Zorg ervoor dat dit is wat u zoekt, aangezien lessen als "Computervaardigheden" zich meer kunnen richten op het wennen aan kantoortoepassingen of iets dergelijks.