Hvilket programmeringsspråk bør du lære for programvareutvikling?
Når du begynner på programmeringsbanen, er det viktig at du investerer tiden din klokt ved å velge å lære noe som både vil være til nytte for deg i nærmeste fremtid med synlige resultater på din valgte plattform, samt å få deg opprettet for fremtidige språk. Ditt valg vil avhenge av en rekke faktorer, så la oss ta en titt på deres egenskaper, lette læring og sannsynlighet for å tjene deg til å leve. Jeg vil også vise deg noen kode som skal vises “Hei Verden”, den første søknaden mange skriver når man lærer et nytt språk.
I denne første delen ser vi på språk som brukes til å programmere programvare - som i applikasjoner som kjører på datamaskinen eller mobile enheter. Neste gang ser vi på det stadig viktigere området med webprogrammeringsspråk, som brukes til å lage dynamiske nettsteder og interaktive nettleserbaserte brukergrensesnitt.
Det er to tidligere artikler i denne serien som diskuterer noen grunnleggende for noen programmeringsspråk, så hvis du er ny på programmering, så vær sikker på å lese dem også:
- Variabler og datatyper Grunnleggende om dataprogrammering 101 - Variabler og datatyper Grunnleggende om dataprogrammering 101 - Variabler og datatyper Etter å ha introdusert og snakket litt om Objektorientert Programmering før og hvor dets navnebringer kommer fra, trodde jeg det er på tide at vi går gjennom det absolutte Grunnleggende om programmering på en ikke-språkspesifikk måte. Dette ... Les mer
- Funksjoner, looper og beslutningstaking Absolutt grunnleggende programmering for nybegynnere (del 2) Absolutt grunnleggende programmering for nybegynnere (del 2) I del 2 av vår absolutte nybegynnerguide til programmering, vil jeg dekke grunnleggende funksjonene, returnere verdier, sløyfer og kondisjoner. Pass på at du har lest del 1 før du takler dette, der jeg forklarte ... Les mer
Java
Java er et fullt objektorientert språk, sterkt skrevet, med et omfattende funksjonssett fokusert på nettverk og kompatibilitet på tvers av plattformer. Programmer skrevet i Java kan kjøre på nesten alle operativsystemer - selv om ytelsen ikke vil være like god som noe som er designet for å kjøre innfødt.
Det er språket til valg for de fleste datavitenskapskurs, og derfor har nesten alle i alle fall en liten Java-programmeringserfaring. Android-programmer er også skrevet i Java, men du kan ikke bare kjøre en vanlig Java-app på Android-mobilen din eller omvendt.
Sannsynligheten for å tjene penger
Hvis du kan lage en app verdt å lade for på Android-markedet, så er verden din for å ta. Det er også mange Java-jobb på bedriftsnivå, men konkurransen er høy og betaler lav.
[Merk: Ikke forveksle Java med Javascript, som er et helt annet språk som brukes til webprogrammering - vi ser nærmere på dette neste gang].
C / C++
Selv om de egentlig skiller språk, blir de ofte gruppert sammen, da C ++ er i utgangspunktet en forbedret versjon av C, og legger til objektorienterte funksjoner. C ++ er den seriøse programmørens språkvalg, som danner grunnlaget for de fleste dataspill og mest avanserte Windows-programvare. Det er høy ytelse, men krever mye mer presisjon på programmørens del når det gjelder minnehåndtering og følgelig har en bratt læringskurve. Ikke anbefalt for absolutt nybegynnere.
Sannsynligheten for å tjene penger
Med mindre konkurranse enn Java, vil C ++ programmerere alltid være etterspurt og betalt godt, spesielt i spillbransjen.
C #
uttales C skarp, Dette er Microsofts klone av Java (selv om de to har diverged siden med mer uttalt forskjeller) - et generelt objektorientert, sterkt skrevet språk. Ytelsen er god, men ikke så fort som C ++. Programvare skrevet i C # krever. Nettverksramme for å kjøre og er bare Windows.
Sannsynligheten for å tjene penger
Det finnes et stort antall corporate C # jobber der ute for bedriftsløsninger, men det er ikke sannsynlig å tjene penger på et enkelt program, i motsetning til mobilutvikling. Likevel, det er et morsomt språk og lett å lære for nybegynnere, sikkert jeg vil anbefale det hvis du bare vil fokusere på Windows.
Du kan laste ned Microsoft Visual Studio Express gratis, noe som bidrar sterkt til GUI-design og kodefylling. Du kan også bruke den til Visual Basic og mange andre programmeringsspråker i Microsoft-merket.
Visual Basic
En annen av Microsofts bidrag, Visual Basic, er et hendelsesdrevet språk som fokuserer på enkle GUI-baserte apper. Event-driven betyr at koden du skriver, generelt vil reagere på hva brukeren gjør - hva skjer når de klikker på den knappen, for eksempel. Det er utrolig enkelt å lære og få en enkel app oppe, men i siste instans begrenset og kanskje ikke best for å faktisk lære grunnleggende programmeringskonsepter.
Mål-C / Kakao
Dette er Apple Mac-språket som de fleste OSX- og IOS-applikasjoner bygger på. Teknisk er Objective-C en utvidet versjon av C med objektorienterte funksjoner, omtrent som C ++, men er nesten alltid kombinert med kakaorammen for å bygge grafiske brukergrensesnitt og høyere nivåfunksjoner på Mac-plattformen. Du må også være forsiktig med minnehåndtering.
Syntaxen og konseptene du trenger å lære er ganske kompliserte i forhold til et språk som Java eller C #, men på den annen side gir Apple et omfattende gratis utviklingsmiljø (XCode) og verktøy som gjør prosessen med å skape ekte, brukbare apps ganske enkelt . Det er også et vell av skriftlige og videoopplæringer der ute for å veilede deg, så det er sikkert mer tilgjengelig enn C ++. Det er i utgangspunktet ditt eneste valg for OSX og iOS-utvikling, men du kan skrive for både Apple-skrivebordet og mobilmiljøet med det ene språket.
Sannsynligheten for å tjene penger
Med en utviklerkonto ($ 99 årlig) og en killerapp, har du potensial til å gjøre mye - Apple har betalt ut 2 milliarder dollar så langt. App Store-utviklere har en bedre sjanse enn Android-utviklere for å tjene penger med betalte apper, mens Android-utviklere har en tendens til å se mer avkastning på app-annonsering.
Det er alle språkene jeg skal dekke i dag, og de danner størstedelen av programvareutvikling i sanntid på PCer, Macer og mobile miljøer. Før jeg blir imponert i kommentarene, har jeg bestemt meg for å inkludere Python i den nettbaserte listen fordi det synes å være hvor det er brukt mest.
Sannheten er at når du har det grunnleggende i et hvilket som helst språk, er det relativt enkelt å lære en annen; akkurat som å kjenne kinesisk kanji gjør lesing og skriving japansk enklere programmerings språk krysser ofte over og låner fra hverandre, og deler samme sett med grunnleggende egenskaper og syntaxer. Hold deg oppdatert på neste artikkel der jeg skal se på nettbaserte språk som Javascript og PHP.
Hat-tips til Jeffery, en ivrig kommenterer her på MakeUseOf og ofte på hånden for å hjelpe deg i den tekniske svar-delen, som foreslo denne artikkelen og noen av språkene den skulle dekke.
Utforsk mer om: Programmering, Studietips.