2010-01-29 10 views
6

Mi piacerebbe sapere come posso configurare un ambiente di sviluppo a casa. Mi piacerebbe fare una sorta di simulazione per imitare una vera società di sviluppo software. Sto imparando Ruby e Java, e ho gli strumenti necessari per piccoli progetti sul mio laptop (compilatore, interprete, IDE ecc.). Tuttavia mi piacerebbe sperimentare altre cose come il controllo della versione, gli strumenti di compilazione automatica e l'integrazione continua. Ho cercato sul Web varie risorse e sto pensando a come dedicare il mio vecchio PC a questi strumenti. Il mio più grande problema è che alcuni tutorial e documentazioni suonano come il doppio olandese e so molto poco del networking. Posso raggiungere il mio obiettivo, o forse dovrei aspettare finché non capisco di più?Come impostare un ambiente di sviluppo a casa?

+1

Quale sistema operativo è la tua macchina? –

risposta

5

È assolutamente possibile raggiungere il tuo obiettivo.

Inizia con controllo versione. Se sei su Windows, VisualSVN è un server super semplice, e TortoiseSVN è un client molto semplice. Sarai attivo e funzionante entro un'ora.

Vorrei anche raccomandare Hudson per l'integrazione continua.

Trova anche alcuni strumenti per fare il tuo test automatizzato. Ti consiglierò sia per JUnit per Java che per Selenium, se stai facendo qualsiasi tipo di sviluppo web. Inizia a praticare Test Driven Development!

Ogni good team utilizza un qualche tipo di sistema di tracciamento dei problemi. Ecco un elenco da scegliere: http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_systems

+0

Grazie! Dal momento che sto usando Ubuntu, non proverò VisualSVN e TrotoiseSVN, ma entrambi sono strumenti molto validi. Ho già installato Hudson come suggerito da S.Lott. E un grande ringraziamento per aver puntato su TDD !!! I miei amici offline dicono spesso che la programmazione basata sui libri di testo non è una programmazione in tempo reale e tutti dovrebbero provare TDD che vuole imparare la "vera programmazione". JUnit sembra un ottimo punto di partenza, cercherò di passare attraverso alcuni tutorial e realizzare progetti che lo utilizzano. – txxwq

+0

Inoltre, consiglierei di utilizzare un sistema di tracciamento dei bug per ogni progetto su cui lavori, anche se lo utilizzi solo come elenco personale. Ho incluso un link sopra alla lista completa di Wikipedia. Divertiti! – Dolph

+0

Grazie mille! Sto giocando con Hudson, ho comprato un libro su JUnit e alla fine sono finito con Git. Esaminerò i sistemi di tracciamento dei bug e sono sicuro di trovarne uno valido. – txxwq

1

Non posso darti la risposta che stai cercando, ma secondo me non c'è motivo per te di aspettare se non sei disposto a ricominciare da capo una volta che ti sei accorto di aver incasinato. con ogni tentativo di rendere il vostro ambiente di sviluppo migliorerete il suo design.

Inoltre, provando a configurare il tuo ambiente di sviluppo, sarai costretto a imparare nuove informazioni.

+0

Grazie! Ero un po 'timido, forse a causa del mio background. Come altre risposte mostrano che non c'è alcun errore nel meccanismo di apprendimento degli errori di prova in questo campo: D cerco di impostare il mio ambiente e di giocarci. – txxwq

6

Non aspettare. Fare.

Non restare impigliato a concetti che non capisci. Steamroll li supera inizialmente. Ho spesso trovato che solo provando a fare le cose, anche se non le avessi completamente comprese, alla fine avrei capito, o avrei imparato qualcosa lungo la strada che mi ha aiutato a capirlo in seguito.

La cosa peggiore da fare è aspettare.

Potrebbe diventare DAVVERO doloroso, ma perseverare e sarai molto più esperto quando esci dall'altra parte. :)

+0

Grazie, ho la stessa opinione ma a volte penso che sia controproducente, ma ci proverò. – txxwq

+1

Basta non mollare e non aver paura di chiedere aiuto quando sei veramente bloccato e non riesci a capire come andare avanti. Imparare Ruby e Ruby on Rails è stata una delle cose più difficili che ho fatto come sviluppatore perché non avevo esperienza con i sistemi operativi * nix: ho imparato TONS, ma a volte ero molto frustrato. Continua a farlo! –

+0

Grazie per avermi incoraggiato! Sto facendo lo stesso. Imparo qualcosa o affronterò un problema, quindi devo provare una soluzione. Di solito non funziona per la prima volta e dopo alcuni (o molti) tentativi ed errori riesco a passare. Quello che intendevo è che io uso uno stile diverso di apprendimento altrove. Ho studiato scienze umanistiche e leggiamo molto. Se sorge un problema, leggiamo di più! Vogliamo vedere molti esempi di soluzioni precedenti prima di venire con le nostre. In questo mondo questo è un processo parallelo. Leggi, vedi le soluzioni, scrivi le tue in brevi iterazioni. Ad ogni modo mi piace: D – txxwq

3

"controllo di versione, strumenti di generazione automatica, e l'integrazione continua"

Basta avviare il download. SVN è facile da installare in Windows.

Gli strumenti di compilazione automatizzati per Ruby e Rails non sono perfettamente sensati. Per Java, tuttavia, ci sono molti strumenti. Guarda questo: http://en.wikipedia.org/wiki/Build_automation#Software_tools per alcune idee. Scegline uno e scaricalo.

Strumenti di integrazione continua. http://en.wikipedia.org/wiki/Continuous_integration#Software Ci sono troppe scelte. Ecco il grafico: http://en.wikipedia.org/wiki/Comparison_of_Continuous_Integration_Software

Stella con Hudson. È abbastanza buono per iniziare.

+0

Grazie! Sembra che Hudson sia la scelta più facile per me. L'ho già installato e spero di poter giocare presto. – txxwq

1

"... forse dovrei aspettare finché non capisco di più?" Quale sarebbe il vantaggio di aspettare? È più probabile che tu abbia più ragione al primo tentativo, suppongo, per quello che vale. Ma aspetteresti e non imparerai più nel frattempo. Imparerai molto di più dal "fare" che dalla lettura, e ogni errore sarà una preziosa lezione appresa, probabilmente senza conseguenze serie. Provaci.

+0

Grazie! Ci andrò! Sembra che imparare a programmare richieda un set mentale molto diverso che avevo sempre avuto. – txxwq

0

Non sono associato ad Atlassian in alcun modo, ma sinceramente ti suggerisco di provare lo Dragon Slayer Quest.

Perché?

Perché con la Starter licenses, per 60 dollari, si otterrà strumenti che sono:

  • Industria dimostrato
  • completamente integrato
  • Completamente supportato
  • Molto ben documentato
  • altamente estensibile

W cappello hai bisogno è:

  • Un piccolo server connesso (qualcosa lungo le linee di un dual core con 2GB di memoria e di spazio su disco sufficiente per memorizzare i file e allegati), potrebbe facilmente essere che il vostro vecchio PC si adatta alla ruolo
  • Ubuntu Server, SVN esce dalla scatola, se non ricordo male, se non, si tratta di un pacchetto che è semplice da installare
  • lavoro attraverso le fasi della ricerca

otterrete:

  • JIRA: problema di gestione
  • GreenHopper: un add on per lo sviluppo Agile basata su JIRA
  • Confluence: Wiki (documentazione, il supporto del progetto e lo scambio di conoscenze)
  • Fisheye: Browsing Source sul steroidi
  • Bamboo : Strumento di integrazione continuo
  • Crowd: supporto SSO completo per gli strumenti sopra indicati
  • an d una maglietta se la tiri fuori.

Quindi non aspettare, basta andare.

+0

Grazie! Deve essere un buon prodotto, ma non voglio pagare per cose del genere da quando ho appena iniziato a imparare queste cose. – txxwq

1

Non so se le persone sono ancora su questo thread, ma quello che nessuno vede è il lavoro scrupoloso preso mentre trascorri il tuo tempo da solo a imparare qualsiasi concetto individuale. in pubblico, mentre socializzi con altre persone nel tuo campo di lavoro o di studio, sembra che ci siano solo alcune persone che "capiscono", ma ti prometto che, a meno che tu non sia un altro mozart, lui o lei hanno passato molte ore cercare di trovare risposte a cose che, indipendentemente dalla loro complessità, sono solo difficili da rispondere.Può essere a causa della mancanza di buone informazioni, o il concetto non clicca con il tuo cervello, in entrambi i casi, a meno che io non sia stupido da solo (che so che non lo sono, altrimenti non sarei su questo sito), tutti noi in questo sito ho trascorso ore ad apprendere qualcosa che ha una bassa complessità intellettuale, e quando finalmente fa clic (trovando la guida corretta, o solo prove ed errori), è soddisfacente per tutti noi. è questo che ci distingue dagli altri che si considerano degli hobbisti (a meno che tu non sia un hobbista appassionato come i collezionisti di francobolli: P)

Problemi correlati