***Proyecto PAPIIT IN102210***
UNAM. Facultad de Ingeniería.
Integrantes:
JUAN JOSE CARREON
J. ULISES GONZALEZ MEDINA
ANA LAURA GARCÍA ACOSTA
OMAR SIBAJA BAUTISTA
ROBERTO SOSA HIGAREDA
Buenas prácticas en el desarrollo para Android.
Consejos sobre:
- Organización del código
- Trucos en programación Java
- Reutilización
- Rendimiento
- Compartición de datos
- Usabilidad
- Etc.
***Proyecto PAPIIT IN102210***
UNAM. Facultad de Ingeniería.
Integrantes:
JUAN JOSE CARREON
J. ULISES GONZALEZ MEDINA
ANA LAURA GARCÍA ACOSTA
OMAR SIBAJA BAUTISTA
ROBERTO SOSA HIGAREDA
Buenas prácticas en el desarrollo para Android.
Consejos sobre:
- Organización del código
- Trucos en programación Java
- Reutilización
- Rendimiento
- Compartición de datos
- Usabilidad
- Etc.
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...espinozaernesto427
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta intensidad son un tipo de lámpara eléctrica de descarga de gas que produce luz por medio de un arco eléctrico entre electrodos de tungsteno alojados dentro de un tubo de alúmina o cuarzo moldeado translúcido o transparente.
lámparas más eficientes del mercado, debido a su menor consumo y por la cantidad de luz que emiten. Adquieren una vida útil de hasta 50.000 horas y no generan calor alguna. Si quieres cambiar la iluminación de tu hogar para hacerla mucho más eficiente, ¡esta es tu mejor opción!
Las nuevas lámparas de descarga de alta intensidad producen más luz visible por unidad de energía eléctrica consumida que las lámparas fluorescentes e incandescentes, ya que una mayor proporción de su radiación es luz visible, en contraste con la infrarroja. Sin embargo, la salida de lúmenes de la iluminación HID puede deteriorarse hasta en un 70% durante 10,000 horas de funcionamiento.
Muchos vehículos modernos usan bombillas HID para los principales sistemas de iluminación, aunque algunas aplicaciones ahora están pasando de bombillas HID a tecnología LED y láser.1 Modelos de lámparas van desde las típicas lámparas de 35 a 100 W de los autos, a las de más de 15 kW que se utilizan en los proyectores de cines IMAX.
Esta tecnología HID no es nueva y fue demostrada por primera vez por Francis Hauksbee en 1705. Lámpara de Nernst.
Lámpara incandescente.
Lámpara de descarga. Lámpara fluorescente. Lámpara fluorescente compacta. Lámpara de haluro metálico. Lámpara de vapor de sodio. Lámpara de vapor de mercurio. Lámpara de neón. Lámpara de deuterio. Lámpara xenón.
Lámpara LED.
Lámpara de plasma.
Flash (fotografía) Las lámparas de descarga de alta intensidad (HID) son un tipo de lámparas de descarga de gas muy utilizadas en la industria de la iluminación. Estas lámparas producen luz creando un arco eléctrico entre dos electrodos a través de un gas ionizado. Las lámparas HID son conocidas por su gran eficacia a la hora de convertir la electricidad en luz y por su larga vida útil.
A diferencia de las luces fluorescentes, que necesitan un recubrimiento de fósforo para emitir luz visible, las lámparas HID no necesitan ningún recubrimiento en el interior de sus tubos. El propio arco eléctrico emite luz visible. Sin embargo, algunas lámparas de halogenuros metálicos y muchas lámparas de vapor de mercurio tienen un recubrimiento de fósforo en el interior de la bombilla para mejorar el espectro luminoso y reproducción cromática. Las lámparas HID están disponibles en varias potencias, que van desde los 25 vatios de las lámparas de halogenuros metálicos autobalastradas y los 35 vatios de las lámparas de vapor de sodio de alta intensidad hasta los 1.000 vatios de las lámparas de vapor de mercurio y vapor de sodio de alta intensidad, e incluso hasta los 1.500 vatios de las lámparas de halogenuros metálicos.
Las lámparas HID requieren un equipo de control especial llamado balasto para funcionar
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
En este proyecto de investigación nos adentraremos en el fascinante mundo de la intersección entre el arte y los medios de comunicación en el campo de la informática.
La rápida evolución de la tecnología ha llevado a una fusión cada vez más estrecha entre el arte y los medios digitales, generando nuevas formas de expresión y comunicación.
Continuando con el desarrollo de nuestro proyecto haremos uso del método inductivo porque organizamos nuestra investigación a la particular a lo general. El diseño metodológico del trabajo es no experimental y transversal ya que no existe manipulación deliberada de las variables ni de la situación, si no que se observa los fundamental y como se dan en su contestó natural para después analizarlos.
El diseño es transversal porque los datos se recolectan en un solo momento y su propósito es describir variables y analizar su interrelación, solo se desea saber la incidencia y el valor de uno o más variables, el diseño será descriptivo porque se requiere establecer relación entre dos o más de estás.
Mediante una encuesta recopilamos la información de este proyecto los alumnos tengan conocimiento de la evolución del arte y los medios de comunicación en la información y su importancia para la institución.
En este documento analizamos ciertos conceptos relacionados con la ficha 1 y 2. Y concluimos, dando el porque es importante desarrollar nuestras habilidades de pensamiento.
Sara Sofia Bedoya Montezuma.
9-1.
Es un diagrama para La asistencia técnica o apoyo técnico es brindada por las compañías para que sus clientes puedan hacer uso de sus productos o servicios de la manera en que fueron puestos a la venta.
1. Análisis y Diseño
de Software
Interfaces de Usuario
Layouts y Vistas
Carlos A. Iglesias <cif@gsi.dit.upm.es>
Departamento de Ingeniería de Sistemas Telemáticos
http://moodle.dit.upm.es
2. Temario
● 4.1 Introducción a Android [Gar10, cap1-2 ]
● 4.2 Desarrollo con Android [Gar10, cap3-5]
● 4.3 Interfaces de Usuario [Gar10, cap6]
– 4.3.1 Ejemplo SobreTeleco
– 4.3.2 Layouts y Views
– 4.3.3 Widgets y Trazas. Interfaz del proyecto Yamba
– 4.3.4 Hebras e Internacionalización. Interfaz Yamba
● 4.4 Intenciones y Servicios [Gar10, cap7-8]
● 4.5 Acceso a Datos [Gar10, cap9]
Interfaces de Usuario 2
3. Leyenda
Teoría
Ejercicio práctico en el ordenador
Ampliación de conocimientos
Lectura / Vídeo / Podcast
Práctica libre / Experimentación
Interfaces de Usuario 3
4. Bibliografía
● Libro de texto:
– [Gar10] Learning Android, Marko Gargenta,
O'Reilly, 2010. Disponible en
http://ofps.oreilly.com/titles/9781449390501/
– Capítulo 6
– http://www.youtube.com/watch?v=SW82-YOOMIs
● Android Developers
– http://developer.android.com/guide/topics/fundamentals.html
– http://developer.android.com/guide/topics/ui/index.html
Interfaces de Usuario 4
5. Bibliografía complementaria
●
Tutorial Android UI
– http://mobile.tutsplus.com/series/android-user-interface-design/
– http://developer.android.com/resources/tutorials/views/index.html
– http://www.droiddraw.org/widgetguide.html
– Notas de Victor Matos, basadas en The Busy Coder's Guide to Android Development, M. L.
Murphy, CommonsWare, 2009.
● Vistas
– http://developer.android.com/reference/android/view/View.html
●Ejemplos
– http://apcmag.com/building-a-simple-android-app.htm
– http://www.maestrosdelweb.com/editorial/curso-android-construir-lector-de-feeds/
Interfaces de Usuario 5
6. Objetivos
● Aprender a programar interfaces
● Entender cómo crear interfaces en Android
● Entender y saber usar Vistas (View) y
Disposiciones (Layout)
● Aprender a gestionar eventos
Interfaces de Usuario 6
7. La interfaz
● En Android,la interfaz es
un árbol de objetos de dos
tipos:
– Objetos View:
componentes “widget”
(campo de texto, botón,
imagen, …)
– Objetos ViewGroup: clase
base para los layout (lineal,
tabular, etc.)
Interfaces de Usuario 7
8. La clase View
● La clase View es el componente básico para construir Uis
● UnaVista ocupa un área rectangular de la pantalla y es
responsable de dibujarse y gestionar eventos
● View
es la clase base de los widgets interactivos (botones,
campos de texto, …)
● Laclase ViewGroup es una subclase de View que es la
base para los layouts, que son contenedores invisibles que
contienen otros objetos View (o ViewGroup) y definen sus
propiedades.
Interfaces de Usuario 8
9. Visualización actividad
● Cuando una actividad llama a setContentView, le
pasa el nodo raíz del árbol
● Android lo recibe, y pinta este árbol
– Pide a cada ViewGroup que “se pinte”
– Cada hijo calcula su medida (ancho/alto) y posición. El
nodo padre puede imponer medidas
– La medida puede ser
• Un número exacto
• FILL_PARENT (tan grande como el padre menos padding)
• WRAP_CONTENT (tan grande como el contenido más
padding)
Interfaces de Usuario 9
10. Atributos comunes de View
y ViewGroup
orientation Orientación. Valores: horizontal, vertical
layout_width Ancho. Valor posible: exacto en dip (device independent pixels),
fill_parent, wrap_content
layout_height Alto. Valor posible: exacto, fill_parent, wrap_content
layout_marginX Espacio alrededor de la vista X = Top, Bottom, Left, Right, ej.
layout_marginTop)
layout_gravity Cómo las vistas hijas se posicionan. Valores: top, bottom, left, right,
center_vertical, fill_vertical, center_horizontal, fill_horizontal, center,
fill, clip_vertical, clip_horizontal, start, end
layout_weight Proporción del espacio disponible usado para la vista (valores: 1, 2,
3,..). Ej. 3 Vistas con peso 1, 1, 2, ocuparían 1/5, 1/5, 2/5 del total
layout_x Coordenada x de la vista
layout_y Coordenada y de la vista
gravity Cómo se posiciona el contenido del widget respecto del mismo
(mismos valores que layout_gravity)
id Identificador del widget. Convenio @+id/nombre (+ → Crear id en R)
text Texto del widget. Convenio: @string/nombre (referencia
values/strings.xml) Interfaces de Usuario 10
12. Usando objetos View
● Dar valores a propiedades (p.ej. Al texto de un TextView,
o...). Las propiedades con valores conocidos durante el
desarrollo se pueden fijar en ficheros XML de layout
● Fijar el foco. Pasar el foco a una vista con requestFocus()
● Fijar 'listeners'. Registrar listeners que serán notificados
de cambios. P. ej. un botón expone un listener para
notificar a los clientes cuándo ha sido pulsado.
● Fijar
visibilidad. Puedes ocultar/descubrir vistas con
setVisibility(int)
http://developer.android.com/reference/android/view/View.html
Interfaces de Usuario 12
13. Programar el layout
● Podemos hacerlo:
– De forma declarativa: en XML (layout.xml),
nos proporciona layouts estáticos
– De forma programática: en Java, podemos
crear layouts de forma dinámica
● Es más sencillo, más reutilizable y más
sencillo de mantener el enfoque declarativo
Interfaces de Usuario 13
15. Layouts predefinidos
● FrameLayout: pinta todas las vistas en la
esquina superior izda
● LinearLayout: pinta las vistas de izda a
derecha (o arriba-abajo, según el atributo
orientation)
● TableLayout: pinta las vistas en filas y
columnas
● RelativeLayout: permite indicar posición
relativa al la vista padre o a otra vista
Interfaces de Usuario 15
16. Algunos Layouts (ViewGroup)
http://developer.android.com/resources/tutorials/views/index.html
FrameLayout
Interfaces de Usuario 16
27. Muchas más
● Consulta en:
●http://developer.android.com/reference/android/widget/package-summary.html
Interfaces de Usuario 27
28. Relación XML y Java
● En XML declaramos un id
– android:id="@+id/imageViewEtsit"
● En Java accedemos a un widget con
findViewById
– ImageView foto = (ImageView) findViewById(R.id.imageViewEtsit);
●Como vimos, la clase R se genera a partir
del layout XML, y en la la clase Java de la
actividad decíamos qué layout se usaba con
setContentView(R.layout.main)
Interfaces de Usuario 28
29. Resumen
● En este tema hemos revisado los
principios de los layouts en Android
● Hemos conocido la diferencia entre View y
ViewGroup, y los principales atributos
● Hemos visto algunos widgets disponibles
● Hemos revisado la relación entre XML y
Java en las interfaces
Interfaces de Usuario 29