java

Recursos de programación de java
This Saturday I participated in the Global day of Code Retreat event organized by Madrid Software Craftsmanship community. This was the first time I went to the a Code Retreat and I can say I like a lot very much the format.During all the day, we was resolving the game of life, in pairs, with different restrictions and deleting all the code in each iteration... It is a very interesting deliberate practice to improve our skills, and using the same problem all the time allow us to approach using d...
About this talk: Many of us developers are still getting to grips with thinking in more functional terms. With the introduction of lambdas and streams in Java 8, functional thinking becomes more important, even in a language like Java. This presentation moves beyond slide-sized examples of recently-added Java 8 features, and to shows how to leverage things like lambda expressions and the streams API to build a fully working end-to-end application, using minimal external dependencies and the latest version of Java. In this session, Trisha will build an application that consumes a feed of high-velocity data, makes sense of it and presents results in a real-time JavaFX dashboard. Trisha shows how to design this application so that it’s split into small services (possibly micro-sized). Along the way, we’ll: create pipelines of aggregate operations, encounter lambda expressions and method references, discover new ways of working with collections and bump into the new date and time API. About Trisha Gee Trisha is a developer, technical advocate, and educator based in Spain and working remotely for JetBrains. She loves the combination of solving technical problems and working out the best way to teach other developers techniques that will make their lives easier. She is a leader of the Sevilla MongoDB and Java User Groups, and a key member of the London Java Community. In 2014, she became a Java Champion, and in 2015 a MongoDB Master. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
You may be hearing a lot of buzz around functional programming. For example, Java 8 recently introduced new features (lambda expressions and method references) and APIs (Streams, Optional and CompletableFutures) inspired from functional ideas such as first-class functions, composition and immutability. However, what does this mean for my existing codebase? In this talk, we show how you can refactor your traditional object-oriented Java to using FP features and APIs from Java 8 in a beneficial manner. We discuss things like: - How to adapt to requirement changes using first-class functions. - How you can enhance code reusability using currying. - How you can make your code more robust by favoring immutability over mutability. - How you can reduce null pointer exceptions with Optional. About Raoul CEO & Co-founder of Cambridge Coding Academy, PhD Computer Science, Co-author of Java 8 in Action Raoul-Gabriel Urma is CEO and Co-Founder of Cambridge Coding Academy. He is also author of the bestselling programming book “Java 8 in Action” which sold over 15,000 copies globally. Raoul completed a PhD in Computer Science at the University of Cambridge. In addition, he holds a MEng in Computer Science from Imperial College London and graduated with first class honours having won several prizes for technical innovation. Raoul has delivered over 60 technical talks at international conferences. He has worked for Google, eBay, Oracle, and Goldman Sachs. He is also a Fellow of the Royal Society of Arts. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
¿Quieres saber más? https://www.paradigmadigital.com/ Índice interactivo aquí debajo: 00:09 Programación Reactiva 00:21 ¿Quién soy? 01:07 Índice 01:35 ¿Qué es programación reactiva? ¿Por qué ahora? 03:22 ¿Qué tiene de nuevo? 03:51 ¿Es la próxima moda pasajera? 04:17 ¿Ahora se programa todo así? 04:46 ¿Qué es RxJava? 06:39 ¿Qué ventajas nos aporta? 08:49 Simplicidad 10:15 Fundamentos 10:39 Patrón Observer 11:12 Observable 11:58 Push vs Pull 13:06 Eventos 14:25 Suscripción 14:55 Subscriber 16:21 Creación de observables 18:49 Hot vs Cold Observables 19:41 Operadores 20:08 Transformación 20:18 Map 21:49 Scan 27:59 Reduce 22:18 Buffer 23:38 FlatMap 26:11 GroupBy 26:37 Cache 27:18 Filtrado 27:24 Filter 27:44 Distinct 27:56 Otros 28:35 Combinación de Observables 28:51 Merge / Concat 29:17 Switch 29:40 Zip 30:36 CombineLatest / Amb 31:44 Temporales 31:52 Timer 32:02 Delay 32:08 Interval 32:14 Repeat 32:18 Retry 33:15 Single 33:45 Timeout 34:22 Try/catch 35:21 ¿Qué operador usar? 35:47 Side effects 36:39 Concurrencia 37:18 Lazy vs Eager 38:55 Pasar de bloqueante a No bloqueante 39:54 Paradigma + RxJava 42:16 Ejemplos 51:00 FIN. Presentación aquí: https://www.slideshare.net/paradigmatecnologico/equipo-de-marketing-de-paradigma-digital
I did Emily Bache's Parrot Refactoring Kata again (I did this kata in Java some time ago) but this time in Clojure. This is a very simple kata that is meant to practice the Replace Conditional with Polymorphism refactoring. This is the initial code of the kata that have to be refactored: Since Clojure provides several ways of achieving polymorphism, I did two versions of the kata: - One using protocols: This refactoring was a bit more involved than the one I did for the next version, but I ma...
A couple of weeks ago, I did the the Ohce kata in a Barcelona Software Craftsmanship event (I wrote a previous post about it). I wasn't happy with the resulting tests for the Ohce class: What I didn't like about the tests was that they weren't independent from each other. When I started doing TDD, they were independent, but as soon as I introduced the loop to request more user phrases, I had to stub a call to the PhraseReader in each test that returned the stop phrase to avoid infinite loops....
I've recorded myself doing the Parrot Refactoring kata in order to be able to later watch me and detect problems to correct. This is the recording of what I did: Parrot Refactoring Kata If you decide to watch it, please do it at 2x speed (I still write slowly). These are the commits after every refactoring step. You can see the code in this GitHub repository. - por Garajeando
**POR PROBLEMAS TÉCNICOS CON EL MICRÓFONO DE LA SALA, EL AUDIO SE VA UNOS SEGUNDOS EN ALGUNAS PARTES DE LA CHARLA. DISCULPAD LAS MOLESTIAS** Google has recently released a preview version of Android N, and brand new Java 8 features appeared around. They gave us a sneak peak about the future of Android development. In this talk we are going to showcase all the supported new language features up to date, detailing which ones are retrocompatible and which ones will just be available starting on API 24 (N). We will get our hands on a Clean Architecture sample project which will use java 8 functionalities on its diffent layers, in order to make people think a little bit more about how those new language features can become handy for us to simplify our code and project architecture
To make applications more portable without the heavy redesign during migration remains to be one of the main DevOps goals. In some cases, the unaffordable complexity during migration requires a significant redesign of existing legacy applications. However, stateful containers can simplify the migration task drastically. With the help of stateful containers IT companies are able to migrate legacy Java applications with zero code change making some minor or even no adjustments. After migration, engineers will be able to improve the architecture of the legacy applications by decomposing monolithic architecture to multiple containers or even to microservices. In the future that will allow to easily redesign stateful applications to stateless by moving state to another layer or keep it as is and benefit from containers portability, live migration, vertical scaling elasticity, density and other features. Come to this session to see live migration across several clouds in action with no downtime or data loss.
Interview with Peter Lawrey, Java Champion and CEO @Higher Frequency Trading Ltd during J On The Beach 2016. Málaga, Spain. May, 2016.