The Power and Practicality of Immutability by Venkat Subramaniam

  Рет қаралды 40,710

Devoxx

Devoxx

Күн бұрын

Пікірлер: 33
@sriganeshnagaraj9626
@sriganeshnagaraj9626 4 жыл бұрын
Very good question and answer at 50:23
@andersonmontanez8318
@andersonmontanez8318 4 жыл бұрын
Congratz Mr Venkat, your talks are always a sea a knowledge :)
@bawaparampreet24
@bawaparampreet24 4 жыл бұрын
he goofs up the example performance of imperative vs declarative.
@crabsynth3480
@crabsynth3480 4 жыл бұрын
What do u mean? Could u mention the time and what was goofed up?
@reallylordofnothing
@reallylordofnothing 11 ай бұрын
@@crabsynth3480 he wanted to show that stream calls a collection of functions on each piece of data as opposed to imperative which calls functions on collection of data but both yellow stickers are the same, so not sure what he was trying to say there.
@chordfunc3072
@chordfunc3072 5 жыл бұрын
39:50 Awesome had to try it in dart and with Rx observables :p
@reallylordofnothing
@reallylordofnothing 11 ай бұрын
Could you explain what is the difference between the two yellow sticky notes? they both are the same, so how did he explain the distinction between functions on all your data and collection of functions on each piece of data?
@madhukiranattivilli2321
@madhukiranattivilli2321 2 жыл бұрын
@46:00 -- "Impure code" line #13 "factor[0] = 0;" would be executed only after the stream methods pipeline on lines 10-11 ends. If so, how is the value of 0 going into the body of Function.apply() for factor[0] but not 2? I understand why this is called impure code, but in this particular context -- this is confusing! Anyone understood the inner meaning?
@pritishnayak
@pritishnayak 2 жыл бұрын
Streams do not start running the pipeline until there's something collecting from them. In the example, venkat gave, the stream started collection on line 15 because forEach is a terminal operation.
@madhukiranattivilli2321
@madhukiranattivilli2321 2 жыл бұрын
@@pritishnayak Yes. Thanks for writing I realized this that day itself. Forgot to remove my msg :) Initially I didn't notice that stream object was assigned on line 10.
@eldiosdelcielo
@eldiosdelcielo Жыл бұрын
needless to say u rock
@ssougnez
@ssougnez 4 жыл бұрын
Man, that was awesome....
@ILyaCyclone
@ILyaCyclone 6 жыл бұрын
Great talk, thanks a lot for the speaker.
@swatibhatt9509
@swatibhatt9509 5 жыл бұрын
As mentioned in 20:52 , Can you please explain how are you achieving thread safety using stream?
@armansingh3405
@armansingh3405 4 жыл бұрын
concurrentCollections would be used internally when relying on collectors with parallel streams.
@tarunpahuja3443
@tarunpahuja3443 2 жыл бұрын
I think point is stream uses lamba and lamba mandate variable to be effectively final.
@Rajs4u
@Rajs4u 5 жыл бұрын
Why to unfriend from FB if any body using goto 😂😂
@bg8048
@bg8048 6 жыл бұрын
In the immutable example of factor shown here. Is it good practise to assign the factor to another local variable so that function remains pure as long as code doesn't have any other dependencies on that local variable ?
@orel1996
@orel1996 5 жыл бұрын
Great lecture thank you
@trinhduyhung8211
@trinhduyhung8211 3 жыл бұрын
There seems to be something wrong with the increment method at 12:50. Anybody with me?
@duhudu
@duhudu 3 жыл бұрын
what do you mean? It's simply incrementing the passed value by 1 and passing the incremented value to next call stack.
@surendrabisht2523
@surendrabisht2523 3 жыл бұрын
great.
@leonk6950
@leonk6950 5 жыл бұрын
What is that editor with the live-evaluation of java?
@saloalvStuff
@saloalvStuff 5 жыл бұрын
This gets posted on every one of his talks. According to other commenters, it's TextMate, a Mac OS X exclusive editor.
@USONOFAV
@USONOFAV 4 жыл бұрын
How can you make your Object immutable when you pass it along in your java 8 stream pipeline? Would it be ok to mutate object within the stream pipeline functions since only one thread will execute the whole pipeline?
@dislikepineapples
@dislikepineapples 3 жыл бұрын
I think usually you will create a new refence with the mutation applied to it, but I am a beginner to functional programming, so I am not sure.
@richardlyons7408
@richardlyons7408 4 жыл бұрын
For summing even numbers, why is he multiplying each even number by 2?
@赵云-z7z
@赵云-z7z 5 жыл бұрын
Why did he take off his shoes?
@ebuzertahakanat
@ebuzertahakanat 5 жыл бұрын
why not?
@sushabh123
@sushabh123 3 жыл бұрын
25:11 totally relatable. Hahhaa
@vjmonik4792
@vjmonik4792 3 жыл бұрын
Great insights. Two suggestions 1. Take a little complex examples. Everything he talks is about arrays and for loops. 2 he needs to be more crisp in his talks and videos can be half length. He repeats things too many times.
@willingtushar
@willingtushar 3 жыл бұрын
all good but the way he's pronouncing immutability, is something I can't handle
Reactive Programming in Java by Venkat Subramaniam
52:20
Devoxx
Рет қаралды 122 М.
Exploring Collectors by Venkat Subramaniam
2:24:38
Devoxx
Рет қаралды 81 М.
Air Sigma Girl #sigma
0:32
Jin and Hattie
Рет қаралды 45 МЛН
$1 vs $500,000 Plane Ticket!
12:20
MrBeast
Рет қаралды 122 МЛН
БАБУШКА ШАРИТ #shorts
0:16
Паша Осадчий
Рет қаралды 4,1 МЛН
Functional Programming with Java 8 by Venkat Subramaniam
51:39
Design Patterns Revisited in Modern Java by Venkat Subramaniam
2:38:40
Keynote: Advent of Code, Behind the Scenes - Eric Wastl
46:01
Twelve Ways to Make Code Suck Less by Venkat Subramaniam
1:00:44
Refactoring from Imperative to Functional Style with Venkat Subramaniam
1:40:46
Software Craftspeople - India
Рет қаралды 6 М.
Air Sigma Girl #sigma
0:32
Jin and Hattie
Рет қаралды 45 МЛН