Welke programmeertaal moet je leren voor softwareontwikkeling?
Wanneer u begint met het programmeren, is het belangrijk dat u uw tijd verstandig investeert in het kiezen van iets dat u in de nabije toekomst ten goede komt, met zichtbare resultaten op uw voorkeursplatform, en dat u klaarstoomt voor toekomstige talen. Uw keuze hangt af van een aantal factoren, dus laten we eens kijken naar hun kenmerken, het gemak van leren en de waarschijnlijkheid om u van de kost te verdienen. Ik zal je ook een code tonen om weer te geven “Hallo Wereld”, de eerste applicatie die veel mensen schrijven bij het leren van een nieuwe taal.
In dit eerste deel zullen we kijken naar talen die worden gebruikt om software te programmeren - zoals in toepassingen die op de computer of op mobiele apparaten worden uitgevoerd. Volgende keer zullen we kijken naar het steeds belangrijker wordende gebied van web-programmeertalen, gebruikt om dynamische websites en interactieve browsergebaseerde gebruikersinterfaces te creëren.
Er zijn twee eerdere artikelen in deze serie die enkele grondbeginselen van programmeertalen bespreken, dus als je nieuw bent in programmeren, lees die dan ook:
- Variabelen en datatypes De basisprincipes van computerprogrammering 101 - Variabelen en datatypen De basisprincipes van computerprogrammering 101 - Variabelen en gegevenstypes Nadat ik iets had geïntroduceerd en gepraat over objectgeoriënteerde programmering voor en waar zijn naamgenoot vandaan komt, dacht ik dat het tijd is om door het absolute te gaan basis van programmeren op een niet-taalspecifieke manier. Dit ... Lees meer
- Functies, lussen en besluitvorming De absolute basis van programmeren voor beginners (deel 2) De absolute basis van programmeren voor beginners (deel 2) In deel 2 van onze absolute handleiding voor beginners voor het programmeren, zal ik de basisbeginselen van functies behandelen, terugkeren waarden, lussen en conditionals. Zorg ervoor dat je deel 1 hebt gelezen voordat je dit aanpakt, waar ik de ... Lees Meer heb uitgelegd
Java
Java is een volledig objectgeoriënteerde taal, sterk getypeerd, met een uitgebreide functieset gericht op netwerk- en platformonafhankelijke compatibiliteit. Toepassingen die in Java zijn geschreven, kunnen op vrijwel elk besturingssysteem worden uitgevoerd, hoewel de prestaties niet zo goed zijn als iets dat is ontworpen om native te worden uitgevoerd.
Het is de taal bij uitstek voor de meeste Computer Science-cursussen, en daarom heeft bijna iedereen een beetje Java-programmeerervaring. Android-applicaties zijn ook in Java geschreven, hoewel je niet zomaar een gewone Java-app op je Android-mobiel kunt gebruiken, of andersom.
Waarschijnlijkheid van het maken van u geld
Als je een app kunt maken die de moeite waard is om op te laden op de Android Marketplace, dan is de wereld van jou voor het oprapen. Er zijn ook veel Java-jobs op ondernemingsniveau, maar de concurrentie is hoog en betaalt weinig.
[Notitie: Verwar Java niet met Javascript, wat een geheel andere taal is die wordt gebruikt voor webprogrammering - we zullen dit de volgende keer meer bekijken].
C / C++
Hoewel ze in feite afzonderlijke talen zijn, worden ze vaak bij elkaar gegroepeerd, omdat C ++ in feite een verbeterde versie van C is en objectgeoriënteerde functies toevoegt. C ++ is de taal van de serieuze programmeur, en vormt de basis voor de meeste computerspellen en de meest geavanceerde Windows-software. Het is een hoge prestatie, maar vereist veel meer precisie bij de programmeurs als het gaat om geheugenbeheer en heeft bijgevolg een steile leercurve. Niet aanbevolen voor absolute beginners.
Waarschijnlijkheid van het maken van u geld
Met minder concurrentie dan Java, zullen C ++ -programmeurs altijd in de vraag zijn en goed betaald krijgen, vooral in de gamesindustrie.
C #
geprononceerd C scherp, dit is Microsoft's kloon van Java (hoewel de twee sindsdien zijn afgeweken met meer uitgesproken verschillen) - een algemene object-georiënteerde sterk getypeerde taal. De prestaties zijn goed, maar niet zo snel als C ++. Software geschreven in C # vereist. Net Framework om uit te voeren en is alleen voor Windows.
Waarschijnlijkheid van het maken van u geld
Er is een groot aantal zakelijke C # -taken voor bedrijfsoplossingen, maar het is onwaarschijnlijk dat u geld verdient op een enkel stuk software, in tegenstelling tot mobiele ontwikkeling. Toch is het een leuke taal en gemakkelijk te leren voor beginners, ik zou het zeker aanbevelen als je je alleen op Windows wilt concentreren.
U kunt Microsoft Visual Studio Express gratis downloaden, wat enorm helpt bij het maken van grafische afbeeldingen en het voltooien van code. U kunt het ook gebruiken voor Visual Basic en vele andere programmeertalen van Microsoft-merken.
Visual Basic
Een andere bijdrage van Microsoft is Visual Basic, een door gebeurtenissen gestuurde taal die zich richt op eenvoudige op grafische gebruikersinterface gebaseerde apps. Gebeurtenisgestuurd betekent dat de code die u schrijft over het algemeen reageert op wat de gebruiker doet - wat gebeurt er bijvoorbeeld wanneer ze op die knop klikken. Het is ongelooflijk gemakkelijk te leren en een eenvoudige app te krijgen, maar uiteindelijk beperkt en misschien niet het beste voor het leren van fundamentele programmeerconcepten..
Objective-C / Cocoa
Dit is de Apple Mac-taal waarop de meeste OSX- en iOS-applicaties zijn gebouwd. Technisch gezien is Objective-C een uitgebreide versie van C met objectgeoriënteerde functies, net zoals C ++, maar wordt bijna altijd gecombineerd met het Cocoa-framework voor het bouwen van grafische gebruikersinterfaces en functies van hoger niveau op het Mac-platform. Je moet ook voorzichtig zijn met geheugenbeheer.
De syntaxis en concepten die u moet leren zijn vrij complex in vergelijking met een taal als Java of C #, maar aan de andere kant biedt Apple een uitgebreide gratis ontwikkelomgeving (XCode) en hulpmiddelen die het proces van het maken van echte, bruikbare apps vrij eenvoudig maken . Er is ook een schat aan schriftelijke en videozelfstudies om je te begeleiden, dus het is zeker beter toegankelijk dan C ++. Het is eigenlijk je enige keuze voor OSX- en iOS-ontwikkeling, maar je kunt schrijven voor zowel de Apple desktop als de mobiele omgeving met de enige taal.
Waarschijnlijkheid van het maken van u geld
Met een ontwikkelaarsaccount ($ 99 per jaar) en een geweldige app, heb je het potentieel om veel te verdienen - Apple heeft tot nu toe $ 2 miljard betaald. App Store-ontwikkelaars hebben een betere kans dan Android-ontwikkelaars om geld te verdienen met betaalde apps, terwijl Android-ontwikkelaars meestal meer rendement op in-app-advertenties zien.
Dat zijn alle talen die ik vandaag ga bespreken, en zij vormen het grootste deel van de echte softwareontwikkeling op pc's, Macs en mobiele omgevingen. Voordat ik in de reacties wordt gestraald, heb ik besloten om Python op te nemen in de webgebaseerde lijst, omdat dat lijkt te zijn waar het het meest wordt gebruikt.
De waarheid is dat als je eenmaal de basis in elke taal hebt, het relatief eenvoudig is om een andere te leren; net zoals het kennen van Chinese kanji het lezen en schrijven van Japans eenvoudiger maakt - programmeertalen kruisen elkaar vaak en lenen van elkaar en delen dezelfde set basiskenmerken en syntaxis. Blijf op de hoogte voor het volgende artikel waarin ik kijk naar web-gebaseerde talen zoals Javascript en PHP.
Hat-tip voor Jeffery, een fervent commentator hier bij MakeUseOf en vaak bij de hand om te helpen in de sectie Tech Answers, die dit artikel en een aantal talen voorstelde.
Meer informatie over: programmeren, studietips.