Qué características le faltan a Windows que pueden mejorar la productividad de un programador. Sé que mucha gente querría algunas características de Linux y OSX portadas o creadas también para Windows. ¿Qué te falta?
Un ejemplo sería la opción de tener múltiples espacios de trabajo. Cuando no tiene la posibilidad de usar monitores duales que pueden ser útiles.
Respuestas:
Un compilador y un shell útil.
Aclaración basada en los comentarios:
No estaba claro, debería haber escrito el compilador C / C ++. Los compiladores para C # o Fortran no cuentan, ya que muchas de las herramientas y bibliotecas que necesita requieren un compilador C o C ++. Solía ser realmente malo, donde no se podían construir extensiones C para Python con otro compilador que Microsofts, porque eso es con lo que se compiló Python, creo que MinGW ha resuelto esto y puedes hacerlo con MinGW ahora, pero esa es una buena razón por qué un compilador estándar de C / C ++ debería haberse incluido o estar disponible de forma gratuita hace 20 años. Microsoft solo recientemente está comenzando a comprender el poder de tener disponible un ejército de programadores de pasatiempos.
No he usado PowerShell, tal vez sea bueno. Pero la utilidad de bash para mí no está en el lenguaje shell. La familia de lenguas * sh son bestias horribles de todos modos. Incluso prefiero archivos por lotes. ;) Me refiero a cosas como la recuperación y búsqueda del historial de comandos, que son relativamente básicas en Windows, y que tienen tuberías y cosas de las que estoy hablando (y veo que PowerShell tiene tuberías, así que eso es bueno).
Hay cosas que también son buenas en Windows, pero ese es otro tema. ;)
fuente
fuente
apt-get source package-name
cuando quiera saber cómo funciona un paquete de software en particular.Podría eliminar "requerido" del título, ya que he desarrollado para Windows felizmente durante casi 20 años. Por supuesto, he desarrollado una buena caja de herramientas de utilidades y herramientas. Ver la lista de Scott Hanselmann para empezar. Es de primera categoría y mira hacia atrás hasta el 2003.
Por cierto, Windows 7 incluye PowerShell que ayuda con los comentarios de "shell decente".
Dicho esto, siempre es bueno tener mejores herramientas integradas. Tome cualquiera de las herramientas en la lista de Scott.
De manera realista, MS ciertamente podría mejorar la interfaz de usuario de muchas herramientas integradas, como regedit, task mgr (cf. Process Monitor) y las herramientas de visualización de eventos. Sería bueno tener soporte incorporado para múltiples portapapeles. Desde OSX, me gustaría exponer y su soporte multi-escritorio es bueno. Sería bueno que Windows nativamente (también conocido como más fácilmente) admitiera arrastrar texto desde cuadros de texto.
XCode realmente apesta a IMO, así que no querría eso en Windows. VS es mucho mejor, pero no está integrado, por lo que quizás VS Expess esté integrado con la capacidad de actualizarse. Por supuesto, la huella del sistema operativo crece con esto (como lo hace OSX), por lo que también hay un inconveniente.
distribuido gcc es muy bueno, por lo que sería muy bienvenido como marco integrado para que lo use cualquier compilador (consulte Incredibuild para obtener una solución VS).
Sería bueno si fuera más fácil obtener y usar una compilación comprobada del sistema operativo para encontrar problemas. El uso de cables de depuración es un poco extremo para la buena información que obtiene de la compilación comprobada. Las máquinas virtuales pueden hacer esto fácilmente; si es así, alguien comente con un enlace.
fuente
BASH, sed, grep, awk, find y ssh
fuente
fuente
La capacidad de cambiar la interfaz de usuario a diferentes niveles de conocimiento de los usuarios.
Por ejemplo, como desarrollador / administrador, es posible que necesite un nivel experto en la interfaz de usuario.
fuente
Las herramientas de procesamiento de archivos Unix (wc, sort, uniq, awk, cat, grep, find, etcétera), que incluyen, como otros han mencionado, un buen shell (por ejemplo, bash).
Para ser productivo en Windows, cuando estoy trabajando con cualquier cosa relacionada con el texto, eventualmente tendré que ir a la caja de herramientas de comandos de Unix. Afortunadamente, Cygwin es un excelente recurso solo para ese propósito.
Dicho esto, es necesario "domesticar" a Cygwin para que funcione bien con el sistema de archivos de Windows; a menos que anule algunas configuraciones predeterminadas, puede obtener archivos con permisos desagradables que son difíciles de eliminar. Si está muy por encima de las necesidades básicas, es mejor que tenga una VM o un arranque dual, pero para mis propósitos, estoy bastante satisfecho con Cygwin.
fuente
Estoy de acuerdo con las otras publicaciones para agregar:
Echo de menos ssh con x reenvío vs escritorio remoto de Windows. Para aquellos que no saben, puede ejecutar un programa de escritorio a través de la red, pero actúa como una ventana local.
fuente
Soporte para argumentos de línea de comando más largos. Te encontrarás rápidamente con problemas al crear soluciones java complejas que no usen sistemas de compilación Microsofts.
fuente
valgrind
ygcov
?Utilizo PowerShell cuando desarrollo en Windows (como pasatiempo) y he instalado las herramientas GnuWin32 (sed, awk, grep, etc.) y Python para obtener una secuencia de comandos fácil, así que no hay problema.
Pero me encuentro golpeando una pared cada vez que quiero inspeccionar mi programa ... Claro que puedo usar el depurador (un poco) pero:
He visto algunas herramientas aquí y allá y había una buena pregunta sobre StackOverflow y la cantidad de herramientas enumeradas es bastante aterradora ... y sus limitaciones también.
Linux ha sido creado por desarrolladores para desarrolladores, por lo que tiene muchas más herramientas amigables para desarrolladores :)
fuente
Copiar / pegar con la función de historial.
Por suerte, ClipX ofrece una solución:
PD: no estoy afiliado a ClipX;)
fuente
Un shell decente, más un compilador sería un buen comienzo en lo que respecta a las características "predeterminadas".
fuente