Monasterio de Piedra
Foto:
Parámetros:
ISO 100 18mm Apertura f/4 Velocidad 1/125 seg.
Blog personal
Monasterio de Piedra
Foto:
Parámetros:
ISO 100 18mm Apertura f/4 Velocidad 1/125 seg.
Foto:
Parámetros:
ISO 200 55 mm Apertura f5,6 Velocidad 1/1250 seg.
Ya hay una fecha de lanzamiento para Java 9, que se refactorizará para crear una plataforma modular. La fecha prevista de lanzamiento es en Marzo de 2017, aunque ya hay builds disponible en la pagina Jigsaw de Oracle (link is external). Lo importante de esto es que las características están ya cerradas (link is external):
102: Actualización en la API de procesos
110: Cliente HTTP2
143: Mejora de bloqueos
158: Loggin de la JVM mejorado
165: Control del compilador
193: Manejo de variables
197: Caché de código segmentado
199: Compilación inteligente de Java
200: JDK Modular
201: Código fuente modular
211: Eludir warnings deprecados
212: Resolver Warnings en Lint y Doclint
213: Milling project coin
214: Eliminar combniaciones de GC
215: Tiered Attribution for javac
216: Process Import Statements Correctly
217: Annotations Pipeline 2.0
219: Datagram Transport Layer Security (DTLS)
220: Modular Run-Time Images
221: Simplified Doclet API
222: jshell: The Java Shell (Read-Eval-Print Loop)
223: New Version-String Scheme
224: HTML5 Javadoc
225: Javadoc Search
226: UTF-8 Property Files
227: Unicode 7.0
228: Add More Diagnostic Commands
229: Create PKCS12 Keystores by Default
231: Remove Launch-Time JRE Version Selection
232: Improve Secure Application Performance
233: Generate Run-Time Compiler Tests Automatically
235: Test Class-File Attributes Generated by javac
236: Parser API for Nashorn
237: Linux/AArch64 Port
238: Multi-Release JAR Files
240: Remove the JVM TI hprof Agent
241: Remove the jhat Tool
243: Java-Level JVM Compiler Interface
244: TLS Application-Layer Protocol Negotiation Extension
245: Validate JVM Command-Line Flag Arguments
246: Leverage CPU Instructions for GHASH and RSA
247: Compile for Older Platform Versions
248: Make G1 the Default Garbage Collector
249: OCSP Stapling for TLS
250: Store Interned Strings in CDS Archives
251: Multi-Resolution Images
252: Use CLDR Locale Data by Default
253: Prepare JavaFX UI Controls & CSS APIs for Modularization
254: Compact Strings
255: Merge Selected Xerces 2.11.0 Updates into JAXP
256: BeanInfo Annotations
257: Update JavaFX/Media to Newer Version of GStreamer
258: HarfBuzz Font-Layout Engine
259: Stack-Walking API
260: Encapsulate Most Internal APIs
261: Module System
262: TIFF Image I/O
263: HiDPI Graphics on Windows and Linux
264: Platform Logging API and Service
265: Marlin Graphics Renderer
266: More Concurrency Updates
267: Unicode 8.0
268: XML Catalogs
269: Convenience Factory Methods for Collections
270: Reserved Stack Areas for Critical Sections
271: Unified GC Logging
272: Platform-Specific Desktop Features
273: DRBG-Based SecureRandom Implementations
274: Enhanced Method Handles
275: Modular Java Application Packaging
276: Dynamic Linking of Language-Defined Object Models
277: Enhanced Deprecation
278: Additional Tests for Humongous Objects in G1
279: Improve Test-Failure Troubleshooting
280: Indify String Concatenation
281: HotSpot C++ Unit-Test Framework
282: jlink: The Java Linker
283: Enable GTK 3 on Linux
284: New HotSpot Build System
285: Spin-Wait Hints
287: SHA-3 Hash Algorithms
288: Disable SHA-1 Certificates
289: Deprecate the Applet API
290: Filter Incoming Serialization Data
292: Implementado de caracteristicas ECMAScript 6 en Nashorn
294: Linux/s390x Port
295: Compilado por adelantado
297: Porte unificado a arm32/arm64
298: Eliminar demos y ejemplos
Fuente: https://blogs.oracle.com/java/latest-java-9-news (link is external)
Poco a poco se suceden las nuevas versiones de lenguajes, programas y frameworks. Hoy nos centraremos en las novedades de Java 8, que puede ser una típica pregunta de entrevista de trabajo para desarrolladores.
Reconócelo, no te comes mucho el coco con las contraseñas. Las repites por diestro y siniestro, lo mismo por el facebook como el foro de averias de tu movil/coche/lavadora. Pues ya sabes que corres el riesgo de cualquier ataque de seguridad contra tu privacidad, o incluso economía(no se que es peor).
Reconócelo de nuevo, usas o has usado alguna vez:
Sí, listo, pero, ¿cual pongo para acordarme?
Como idea, podeis coger ciertas letras de su libro, refran, cancion, por ejemplo la segunda letra de cada palabra de una frase que no olvides. Mezclala con numeros y caracteres.
Cuando trabajamos con SQL Developer, a veces nos es útil exportar los datos a un cierto formato, vease los tipicos del asistente:
Basta con ejecutar una sentencia como script (mediante F5) del tipo:
SELECT /*formatodelalistaanterior*/ * FROM usuarios;
Ejemplo
SELECT /*json*/ * FROM usuarios;
Nótese que el formato de json está disponible solo en las últimas versiones de SQL Developer.
He encontrado en JournalDev (link is external) un post interesante sobre los comando equivalentes entre gradle y Maven, muy útil si estamos aprendiendo Gradle y ya sabemos maven. En el se explica tanto como definir las dependencias, como construir y empaquetar el proyecto. Ejemplos:
mvn package –> gradle assemble
mvn install –> gradle install
mvn eclipse:eclipse –> gradle eclipse
En este primer post sobre consumo, cuya intención es acercar las herramientas a personas no estrictamente relacionadas con la informática, descubriremos como estar al tanto de las novedades de vuestras webs favoritas, sin que nos invadan el correo o cualquieras de nuestras cuentas personales, y sin que se pierdan. Hablamos de los agregadores de noticias, unas aplicaciones que se encargar de guardar todas las actualizaciones de nuestras webs favoritas. Para ello, simplemente hay que utilizar una de estas aplicaciones y añadir el feed(suele aparecer con un icono naraja con un punto y unos arcos, representando la difusion/sindicacion de noticias) que aparece en la pagina que nos gusta.
¿Qué agregadores de noticias existen?
Feedly (link is external). Tiene un estupendo buscador, y tiene categorizacion por temáticas. Con versiones para la web, android, e IOS.
Pulse (link is external). Igualmente permite la categorización, ofreciendo una interfaz mas visual con imágenes en miniaturas
FlipBoard. Otra alternativa interesante.
Cualquiera de ellas puede convertir tu forma de ver tus webs favoritas en el acto sin tener que visitar una a una. De esta forma encontraras directamente tus contenidos favoritos sólo cuando tu estés interesado.
Ejemplos de noticias sobre consumo:
Dada la creciente demanda de construir aplicaciones SOA (Arquitectura Orientada a Servicios), es interesante ver como se construye rápidamente una api RESTFUL con Java y Spring. Para ello me baso en el tutorial básico de la página oficial de spring.io (link is external).
En dicho tutorial, se puede descargar el proyecto con estructura Maven o Gradle. El proyecto es tan simple como que únicamente tiene una depencencia con la librería Spring Boot, aunque también sería interesante utilizar la librería Jackson, para convertir objetos en formato json, un formato estandar utilizado para las peticiones(Request) y las respuestas(Response).
Para aquellos que aún no conocen la filosofía REST, en pocas palabras consiste en hacer las operaciones típicas de una aplicacion, crear, actualizar, eliminar, listar, y buscar, mediante las operaciones HTTP básicas:
Más informacion:
https://spring.io/guides/gs/rest-service/ (link is external)
http://javapapers.com/java/java-restful-web-services-with-json-and-jersey/ (link is external)
http://javapapers.com/web-service/restful-services-crud-with-java-jax-rs-jersey/ (link is external)
Una vez realizado una serie de pruebas y testeos, he comprobado que la siguiente configuracion del fichero eclipse.ini , mejora el tiempo de arranque y ejecución considerablemente asi que la comparto:
#poner vuestra ruta al JDK de Java
-vm
C:/Java/jdk1.7.0_51/jre/bin/server/jvm.dll
-startup
plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar
–launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417
-product
org.eclipse.epp.package.jee.product
–launcher.defaultAction
openFile
–launcher.XXMaxPermSize
400M
-showsplash
org.eclipse.platform
–launcher.XXMaxPermSize
400m
–launcher.defaultAction
openFile
–launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.7
-Xms512m
-Xmx1024m
-XX:NewSize=16m
-XX:PermSize=128m
-XX:MaxPermHeapExpansion=20m
-server
-XX:+UseParallelGC
-Xverify:none
Obviamente, depende del equipo que estemos utilizando, en este caso un equipo de ultima generación de sobremesa, con 8GB de RAM, tarda en arrancar unos 3 segundos.