Desde el punto de vista del desarrollador de aplicaciones de escritorio, ¿hay alguna diferencia entre desarrollar para Windows XP y desarrollar para Windows Vista?¿Cuáles son las principales diferencias entre la programación para Windows XP y Vista?
Respuesta
interfaz de usuario
Mirando el Windows Vista User Experience Guidelines se puede ver que han cambiado muchos elementos de interfaz de usuario, que debe tener en cuenta. Algunas cosas importantes a tomar nota de:
- Larger icons
- Nueva font (que afecta a unos constistency interfaz de usuario personalizada)
- Nueva dialog box features (task dialogs)
- Altered common dialogs (como Abrir archivo, Guardar como, etc. .)
- texto de diálogo style and tone y look and feel
- Nueva Aero Wizards
- rediseñado toolbars
- Mejor notification UI
- Nuevo método recomendado de incluir una search control
- Glass
64-bits
Vista tiene una edición de 64 bits, y aunque también lo hizo XP, los usuarios son más propensos a utilizar Vista que XP 64 64. Ahora usted tiene que tratar con:
- Registry virtualization
- Registry redirection (Wow6432Node)
- Registry reflection
- instaladores Digital signatures for kernel modules
- MSI tienen new properties para hacer frente a
UAC
User Account Control afecta enormemente los permisos predeterminados que su aplicación tiene en la interacción con el sistema operativo.
- How UAC works and affects your application (ver también las requirements doc)
- Installers have to deal with UAC
nuevas API
Hay nuevas APIs que están dirigidos a cualquiera de los nuevos métodos de construcción aplicación o permitiendo nueva funcionalidad:
- Cryptography API: Next Generation (GNC)
- Extensible Application Markup Language (XAML)
- Windows Communication Foundation (WCF)
- Windows Workflow Foundation (WF)
- Y many more smaller ones
instaladores
Dado que las instalaciones sólo puede utilizar tiempos de ejecución comunes que instalan después de una transacción ha completado, custom actionswill fail si su dll de acción personalizada requiere los tiempos de ejecución de Visual C++ por encima de VS 2005 CRT (no SP1).
no te ocurra asuma que su usuario tiene acceso a ciertas áreas clave del disco (es decir, archivos de programa, ventanas directorio etc). En cambio, la cuenta de usuario predeterminada solo podrá escribir en una pequeña sección de sus datos de aplicación. Además, no podrán escribir en áreas globales del registro, solo la sección de usuario actual.
Por supuesto, puede elevar sus privilegios, pero eso en sí mismo es una tarea.
En general, la programación de Vista es igual a la de XP, solo hay que tener en cuenta las nuevas restricciones de la cuenta.
Tenga una mirada en esta página en lo que respecta a hacer su aplicación "UAC conscientes"
http://www.codeproject.com/KB/vista-security/MakingAppsUACAware.aspx
No puede haber, pero eso es una elección consciente de hacer que el desarrollador. Puede usar nuevas funciones de Vista, como UAC y CommandLinks y Aero, etc. Pero no es necesario (incluso el UAC puede programarse, simplemente no haga nada que necesite privilegios de administrador). Si eliges ignorar todas las cosas de Vista, entonces no hay absolutamente ninguna diferencia entre los dos.
Si desea incluir esas cosas en su aplicación, hace la diferencia. Pero yo diría que no es muy grande. Y si abstraes las diferencias (por ejemplo, escribes tu propia función que muestra un TaskDialog para Vista, pero que simplifica la entrada que das en un MesssageBox en XP), entonces solo escribirás contra tu propio código, y las diferencias parecerán casi nada.
Además, muchas de las cosas nuevas de Vista (por ejemplo, UAC o Aero) son cosas que te preocupan una vez, cuando creas la primera funcionalidad que la usa, la haces funcionar y nunca vuelvas a pensar en ella mientras desarrollas la aplicación.
Con mucho, la parte más dolorosa de mover una aplicación de XP a Vista (desde mi punto de vista) es lidiar con los numerosos servicios y cosas de IPv6 que usan puertos que anteriormente eran gratuitos y con el aprovisionamiento inalámbrico -> Transición nativa de WiFi.
Las cosas de UAC son básicamente un punto discutible; hay muy poco que el desarrollador de aplicaciones tenga que hacer.
- 1. ¿Cuáles son las principales diferencias entre Cocoa y CocoaTouch?
- 2. ¿Cuáles son las principales diferencias entre StringTemplate y FreeMarker?
- 3. ¿Cuáles son las principales diferencias entre fwrite y write?
- 4. ¿Cuáles son las principales diferencias entre EnhancedPatternLayout y PatternLayout?
- 5. ¿Cuáles son las principales diferencias entre Meteor, Ember.js y Backbone.js?
- 6. ¿Cuáles son las principales diferencias entre Sinatra y Ramaze?
- 7. ¿Cuáles son las principales diferencias entre JavaScript y ActionScript 3?
- 8. ¿Cuáles son las diferencias entre $ {} y # {}?
- 9. ¿Cuáles son las mayores diferencias entre fopen y curl?
- 10. ¿Cuáles son las diferencias entre PECL y PEAR?
- 11. ¿Cuáles son las diferencias entre la lechuga y la pictografía?
- 12. ¿Cuáles son las diferencias entre JSP, PHP, HTML5 y javascript?
- 13. Go-Scala-Go! ¿Cuáles son las principales diferencias?
- 14. ¿Cuáles son las principales diferencias entre las API Repa 2 y 3?
- 15. ¿Cuáles son las principales diferencias entre las mejoras de CoffeeScript y Dart en JavaScript?
- 16. ¿Cuáles son las diferencias entre HTTP 1.0 y 1.1?
- 17. ¿Cuáles son las diferencias entre PHP y Java?
- 18. ¿Cuáles son las diferencias entre g ++ versión 4.0.0.8 y 4.3.2?
- 19. ¿Cuáles son las diferencias de uso entre size_t y off_t?
- 20. Pasar de WPF a Silverlight: ¿Cuáles son las principales diferencias?
- 21. ¿Cuáles son las diferencias entre Vanilla Perl y Strawberry Perl?
- 22. ¿Cuáles son las diferencias entre PEG y CFG?
- 23. ¿Cuáles son las principales diferencias entre Jetbrains 'MPS y Eclipse Xtext?
- 24. ¿Cuáles son las principales diferencias entre Rails 1.X y 2.X
- 25. multidifusión UDP usando winsock diferencias API entre XP y Vista
- 26. ¿Cuáles son las principales diferencias entre Emacs Lisp y Common Lisp?
- 27. ¿Cuáles son las diferencias y similitudes entre MVC y MVVM?
- 28. ¿Cuáles son las diferencias entre una vista de instantánea y una vista dinámica?
- 29. ¿Cuáles son las principales diferencias entre HAML, SASS/Brújula y ERB?
- 30. ¿Cuáles son las principales diferencias entre los dialectos sql de mysql y oracle?