Quali funzionalità predefinite mancano di Windows richieste ai programmatori? [chiuso]

13

Quali caratteristiche manca a Windows che possono migliorare la produttività di un programmatore. So che molte persone vorrebbero che alcune funzionalità di Linux e OSX fossero trasferite o create per Windows. Cosa ti manca?

Un esempio potrebbe essere l'opzione per avere più spazi di lavoro. Quando non si ha la possibilità di utilizzare due monitor che possono tornare utili.

    
posta Ygrec 18.12.2010 - 23:07
fonte

12 risposte

14

Un compilatore e una shell utile.

Chiarimento basato sui commenti:

Non ero chiaro, avrei dovuto scrivere compilatore C / C ++. I compilatori per C # o Fortran non contano, poiché gran parte degli strumenti e delle librerie necessarie richiede un compilatore C o C ++. Era davvero pessimo, in cui non si potevano creare estensioni C per Python con un altro compilatore rispetto a Microsofts, perché è questo che è stato compilato con Python, penso che MinGW ha risolto questo problema e ora puoi farlo con MinGW, ma questa è una buona ragione perché un compilatore C / C ++ standard avrebbe dovuto essere incluso o reso disponibile gratuitamente 20 anni fa. Microsoft sta solo recentemente iniziando a capire il potere di avere un esercito di programmatori di hobby disponibili.

Non ho usato PowerShell, forse è buono. Ma l'utilità di bash per me non è nel linguaggio shell. La * sh famiglia di lingue è comunque un'orrenda bestia. Preferisco persino i file batch. ;) Sono cose come il richiamo della cronologia dei comandi e la ricerca che sono relativamente basilari in Windows, e che hanno pipeline e cose di cui sto parlando (e vedo che PowerShell ha pipeline, quindi va bene).

Ci sono cose che vanno bene anche in Windows, ma questo è un altro argomento. ;)

    
risposta data 18.12.2010 - 23:08
fonte
10
  • La capacità di scrivere ed eseguire programmi in vari linguaggi (C, C ++, Python, Perl, Ruby ...) senza dover installare nulla di extra.
  • Avere almeno un editor di testo con l'evidenziazione della sintassi installato per impostazione predefinita.
  • Un gestore di pacchetti che consente di installare facilmente librerie aggiuntive, sistemi di controllo versioni, IDE ecc.
  • Una potente interfaccia a riga di comando.
  • La possibilità di modificare la GUI per la massima efficienza (scorciatoie da tastiera, angoli caldi ecc.)
  • pagine di manuale
  • Avere il codice sorgente del sistema operativo e dei pacchetti software facilmente disponibili e concessi in licenza in modo permissivo per poterlo riutilizzare.
  • Buone prestazioni su hardware modesto.
risposta data 18.12.2010 - 23:50
fonte
4

Potrei rilasciare "required" dal titolo come ho sviluppato per Windows felicemente da quasi 20 anni. Ovviamente, ho sviluppato un bel set di strumenti e utilità. Vedi l'elenco di Scott Hanselmann per i principianti. È di prim'ordine e guarda indietro fino al 2003.

BTW, Windows 7 include PowerShell che aiuta con il " commenti "discreti".

Detto questo, è sempre bene avere strumenti migliori integrati. Prendi uno degli strumenti nell'elenco di Scott.

Realisticamente, la MS potrebbe certamente migliorare l'interfaccia utente di molti strumenti integrati come regedit, task mgr (cfr. Process Monitor) e gli strumenti perf viewer di evento. Sarebbe bello avere il supporto integrato per più appunti. Da OSX, mi piacerebbe esporre e il loro supporto multi-desktop è buono. Sarebbe bello se Windows in modo nativo (anche più facilmente) supportasse il trascinamento del testo da caselle di testo.

XCode fa davvero schifo all'IMO, quindi non lo vorrei su Windows. VS è molto meglio ma non integrato, quindi forse VS Expess incorporato con possibilità di aggiornamento. Ovviamente, l'ingombro del sistema operativo cresce con questo (come quello di OSX), quindi c'è anche un lato negativo.

gcc distribuito è molto buono, quindi sarebbe molto gradito come framework integrato per qualsiasi compilatore da usare (vedi Incredibuild per una soluzione VS).

Sarebbe bello se fosse più facile ottenere e utilizzare una build controllata del sistema operativo per trovare i problemi. Usare i cavi di debug è un po 'estremo per le buone informazioni che si ottengono dalla Checked Build. Le macchine virtuali possono farlo facilmente - in caso affermativo, si prega di commentare con un link.

    
risposta data 18.12.2010 - 23:54
fonte
4

BASH, sed, grep, awk, find e ssh

    
risposta data 19.12.2010 - 07:05
fonte
2
  • Copia / incolla per più oggetti
  • Incolla senza formattazione (senza informazioni su font / dimensioni)
risposta data 19.12.2010 - 00:14
fonte
2

La possibilità di cambiare l'interfaccia utente con conoscenze degli utenti a diversi livelli.

Ad esempio come sviluppatore / amministratore potresti aver bisogno di un livello esperto nell'interfaccia utente.

    
risposta data 19.12.2010 - 10:27
fonte
1

Gli strumenti di elaborazione dei file Unix (wc, sort, uniq, awk, cat, grep, find, eccetera), inclusi - come altri hanno menzionato - una buona shell (ad es. bash).

Per essere produttivo in Windows, quando sto lavorando con qualsiasi cosa relativa al testo, alla fine avrò bisogno di entrare nella casella degli strumenti del comando Unix. Fortunatamente Cygwin è un'ottima risorsa solo per questo scopo.

Detto questo, è necessario "domare" Cygwin per funzionare bene con il file system di Windows; a meno che non si sostituiscano alcune impostazioni predefinite, è possibile ottenere file con permessi sgradevoli difficili da eliminare. Qualcosa di troppo al di sopra dei bisogni di base e stai meglio con una VM o un doppio avvio, ma per i miei scopi sono abbastanza soddisfatto di Cygwin.

    
risposta data 19.12.2010 - 03:42
fonte
0

Sono d'accordo con gli altri post per aggiungere:

Mi manca ssh con x forwarding vs windows desktop remoto. Per coloro che non sanno che è possibile eseguire un programma desktop attraverso la rete, ma si comporta come una finestra locale.

    
risposta data 19.12.2010 - 06:24
fonte
0

Supporto per argomenti della riga di comando più lunghi. Incontrerai rapidamente problemi quando costruisci soluzioni java complesse che non usano i sistemi di generazione di Microsofts.

    
risposta data 20.12.2010 - 10:42
fonte
0

valgrind e gcov ?

Uso PowerShell durante lo sviluppo su Windows (come hobby) e ho installato gli strumenti GnuWin32 (sed, awk, grep, ecc ...) e Python per ottenere degli script facili, quindi nessun problema lì.

Ma mi trovo a colpire un muro ogni volta che voglio ispezionare il mio programma ... Certo che posso usare il debugger (un po ') ma:

  • come si individua una perdita di memoria?
  • come si identificano gli hog della memoria?
  • come si identificano i punti caldi?
  • come si identificano le parti inutilizzate / non testate del codice?

Ho visto alcuni strumenti qua e là e c'era una buona domanda su StackOverflow e il numero di strumenti elencati è piuttosto spaventoso ... e anche i loro limiti.

Linux è stato creato dagli sviluppatori per gli sviluppatori, quindi ha ottenuto molti più strumenti per gli sviluppatori:)

    
risposta data 20.12.2010 - 13:05
fonte
0

Copia / incolla con la funzione cronologia.

Fortunatamente ClipX offre una soluzione:

PS Non sono affiliato con ClipX;)

    
risposta data 20.12.2010 - 13:17
fonte
-1

Una shell decente, più un compilatore sarebbe un buon inizio per quanto riguarda le funzionalità "predefinite".

    
risposta data 18.12.2010 - 23:09
fonte

Leggi altre domande sui tag