Hierdie wikiHow leer u hoe u gratis, open source sagteware in 'n programmeergemeenskap kan begin ontwikkel en onderhou. Terwyl mense wat dit doen, soms 'sagteware -hackers' genoem word, is die posisie self meer gerig op die skep en aanpassing van sagteware as om daarin te breek. As u geïnteresseerd is om die soort hacker te word wat kwesbaarhede in sagteware of bedryfstelsels soek en uitbuit, raadpleeg ons artikel oor hoe om 'n hacker te word.
Stappe
Stap 1. Verstaan wat sagteware -ontwikkeling vereis
Om 'n sagteware -hacker te wees, beteken dat u baie tyd sal spandeer aan die bou, aanpassing en opdatering van gratis sagteware om gebruikers tevrede te stel en u sagteware relevant te hou. Vir hierdie doel moet u aan die volgende kriteria voldoen:
- Hou 'n goeie begrip van beide 'n stelseltaal (bv. C ++) en 'n programmeertaal (bv. Python)
- Weet vir watter platform (e) u wil programmeer (bv. Windows, Android, ens.)
- Wees bereid om baie tyd te spandeer om te leer oor u geselekteerde tale, platforms en sagteware -genre
Stap 2. Weet dat almal 'n gratis sagteware -hacker kan word
In teenstelling met die algemene opvatting, is dit nie nodig om 'n uitstekende kennis van wiskunde, vorige koderingskennis en/of 'n kollege -graad in rekenaarwetenskap (of soortgelyke) te hê om te leer hoe om 'n gratis sagteware -hacker te word nie.
Solank u wettig geïnteresseerd is om te leer hoe om sagteware te ontwikkel en u bereid is om waar nodig kritiek te aanvaar, is daar geen rede om te dink dat u nie suksesvol 'n sagteware -hacker kan word nie
Stap 3. Bepaal jou einddoel
Sagteware-ontwikkeling kan gebruik word vir alles van 'n eenvoudige stokperdjie tot 'n voltydse loopbaan; As u weet wat u wil bereik voordat u 'n programmeertaal aanleer of 'n platform kies, sal u op die pad gefokus bly.
- Alhoewel dit nie streng nodig is nie, sal 'n graad in rekenaarwetenskap of sagteware -ontwikkeling u help om u werk te bespoedig as 'n loopbaan in sagteware -ontwikkeling u einddoel is.
- As u doel eenvoudig is om 'n app of 'n program te skep wat gebruikers help om 'n voorheen moeilike of onmoontlike taak uit te voer, moet u seker maak dat die betrokke sagteware nog nie ontwikkel word nie.
Stap 4. Bepaal 'n platform waarop u wil werk
Elke hoofplatform-Windows, macOS, iOS, Android en Linux-het sy eie gemeenskap, geprogrammeerde tale en individuele behoeftes. Dit is uiters belangrik om te weet op watter platform u sagteware van toepassing sal wees voordat u na sagteware -ontwikkeling gaan.
- Dit is die beste om op dieselfde platform te werk as waarvoor u ontwikkel. As u byvoorbeeld 'n Android-program ontwikkel, is dit beter om 'n Unix-gebaseerde stelsel soos 'n Mac of 'n Linux-rekenaar te gebruik as om Windows te gebruik.
- Linux is 'n algemeen gebruikte (en gratis) oplossing vir baie sagteware -ontwikkelaars.
Stap 5. Kies 'n koderingstaal
Daar is twee tipes koderingstale; jy moet ten minste een van elkeen leer voordat jy begin ontwikkel, alhoewel jy uiteindelik verskeie tale moet ken:
- Stelseltale - 'n Rekenaartaal wat gebruik word om direk met die stelsel te skakel. Algemene voorbeelde sluit in C, C ++ en Java.
- Programmeringstale - 'n Taal wat gebruik word om die koppelvlak van u sagteware te ontwerp (byvoorbeeld waarna gebruikers sal kyk) sowel as die funksie daarvan. Algemene voorbeelde sluit in Python, Ruby en Perl.
Stap 6. Raak gemaklik met die opdragreël
Elke rekenaar het 'n opdragreël -toepassing (bv. Opdragprompt vir Windows, Terminal vir Mac en Linux, ens.). U kan die opdragreël gebruik om met die rekenaar self te kommunikeer, sodat u gedetailleerde opdragte kan uitreik indien nodig.
Alhoewel u nie die grootste deel van u sagteware -ontwikkeling vanaf die opdragreël self sal uitvoer nie, moet u die opdragreël gebruik om sekere programme uit te voer of sagteware -opdragte met u rekenaar te integreer
Stap 7. Laai af en gebruik Notepad ++
Notepad ++ is 'n waardevolle programmeerhulpbron, aangesien dit maklik is om kodering dop te hou deur visuele hulpmiddels te implementeer en dien as 'n opvoedkundige hulpmiddel.
Alhoewel u uiteindelik verskillende opdragreëls en programme op opdragreëls sal gebruik om 'n groot deel van u kode te skryf, is Notepad ++ 'n fenomenale (en gratis) leermiddel wanneer u begin
Stap 8. Installeer 'n ontwikkelingsomgewing
U gekose programmeertale en platforms het waarskynlik ontwikkelingsagteware waarmee u u projekte vanaf u rekenaar kan stoor en toets; sulke sagteware word 'n 'ontwikkelingsomgewing' genoem. Soek en installeer, indien moontlik, 'n ontwikkelingsomgewing vir u geselekteerde taal voordat u begin leer programmeer.
- As u byvoorbeeld 'n Android -program ontwikkel, laai en installeer u die Android Studio -ontwikkelingsstel.
- Java -gebruikers gebruik dikwels 'n ontwikkelingsomgewing soos Eclipse.
Stap 9. Begin leer hoe om te programmeer
As u eers weet watter taal u wil gebruik, is dit tyd om te begin leer hoe om dit te gebruik. Daar is talle aanlyn-tutoriale-gratis sowel as betaald-waaraan u kan deelneem, en die meeste biblioteke bevat programmeertaalspesifieke boeke (byvoorbeeld C ++ vir Dummies) waarmee u gratis 'n hele taal kan volg.
Gratis programmeerhulpbronne is volop aanlyn, dus gebruik dit tot u voordeel voordat u inteken vir 'n betaalde klas of bootcamp
Stap 10. Soek 'n gemeenskap wat in u voorkeurkategorie werk
Oopbronprojekte soos dié wat op SourceForge of GitHub gevind word, het dikwels ywerige volgelinge; As u 'n projek kan vind wat dieselfde programmeertaal gebruik en/of 'n soortgelyke doel as u eie projek het, kan u by die gemeenskap aansluit om voorstelle by te voeg en die ontwikkelingsproses te sien.
Soos enige vaardigheid, is betrokkenheid by die skeppingsproses (selfs al is u net 'n waarnemer) die beste manier om praktiese ervaring op te doen
Stap 11. Interaksie met die gemeenskap
U kan alles doen, van plasing in die gemeenskapsforums tot die begin van u eie open source -projek, maar die hoofdoel is om u idees en struikelblokke deur die gemeenskap uit te voer en na hul terugvoer te luister.
As u u eie open source -projek begin, moet u bereid wees om 'n kompromie met die gemeenskap aan te gaan wat die rigting van die projek betref
Stap 12. Soek oopbronprojekte om by te dra
Soos gewoonlik met sagteware -ontwikkeling, is u hoofidee of troeteldierprojek moontlik reeds aan die gang deur 'n gemeenskap met baie meer ervaring as wat u het. As dit die geval is, kan u dit oorweeg om aan die projek deel te neem. Dit bevorder u begrip van hoe sagtewareprojekte werk, en help u om u projek lewendig te maak, al is dit in groepsverband.
Oopbronprojekte is miskien nie u einddoel nie, maar dit dien as 'n uitstekende manier om verskillende perspektiewe te sien saamkom om 'n gebruikersgerigte produk te vorm
Stap 13. Aanvaar openbare kritiek op u werk
Namate u met u sagteware -ontwikkeling vorder en u werk indien, sal u kritiek lewer. As u na die terugvoer van die gemeenskap luister, sal dit u toekomstige ontwikkeling help struktureer, maar dit sal u ook waardevolle kortpaaie en metodes leer om soortgelyke probleme vir die daaropvolgende projekte aan te pak.
Nie alle terugvoer sal opbouend wees nie. As u onbeskof of ongegrond is, moet u beleefd wees as u besluit om te reageer
Stap 14. Neem deel aan uitdagings, programme of kompetisies vir sagteware -ontwikkeling
U vind gereeld uitdagings, bootkampe, lesings, klasse en regstreekse kompetisies op die forums van u gemeenskap, op plekke soos Craigslist en op kampusse. As u aanmeld vir so 'n geleentheid of kamp, sal u 'n bietjie begeleide ervaring kry terwyl u in 'n omgewing met eendersdenkende eweknieë plaas.
Een opsie is die Summer of Code -program van Google, wat studente help om vertroud te raak met open source -projekte en gemeenskapskodering
Stap 15. Gaan voort om u vaardighede te ontwikkel
Sagteware -ontwikkeling is 'n veld wat net sal groei namate tegnologie ontwikkel, dus maak seker dat u voortdurend leer oor nuwe projekte, tale, bedryfstelsels en ander relevante inligting in u voorkeurgebied.
Die sukses van 'n gratis sagteware -hacker hang af van nuuskierigheid. Solank u aanhou om vrae te vra en antwoorde te soek, sal u tyd met sagteware-ontwikkeling produktief en lank wees
Wenke
- As u begin met die leer van C (of C ++) en Python, sal u 'n relatiewe goeie posisie hê, hoewel Java ook 'n gewilde beginpunt is.
- Uiteindelik leer u gedurende u tyd verskeie rekenaartale as 'n gratis sagteware -hacker.
- Rekenaarprogrammering lyk dalk intimiderend, maar dit is eenvoudig om met die rekenaar te praat in 'n taal wat die rekenaar verstaan.
Waarskuwings
- Dit is nie raadsaam om 'n verlate projek wat sy vorige span verloor het, weer te laat herleef nie.
- Vermy om enige vrae rakende die grondbeginsels van programmering of programmeerhulpmiddels op die besprekingsbladsy van 'n oopbronprogram te stel. Die tyd van 'n gratis sagteware -programmeerder is waardevol. Bespreek eerder die basiese beginsels van programmering in gemeenskappe vir amateur- of nuwe programmeerders.
- Om meer as 'n paar uur op 'n slag by 'n rekenaar te sit, kan 'n blywende uitwerking op u algemene gesondheid hê. Onthou om op te staan en te rek, van die skerm af weg te kyk en ten minste een keer elke paar uur rond te beweeg.
- Wees geduldig. Soos om enige vaardigheid aan te leer, verg tyd en vasberadenheid om 'n gratis sagteware -hacker te word.