Overview 0:00 remarkably interesting overview Reactive programming == (is equal to) Functional programming ++ 1. Functional programming 7:36 Functional programming: Normal functions: 1) We pass object to function 2) We create object in a function 3) We return object from a function Higher-Order Functions: 1) We pass function to function 2) We create function in a function 3) We return function from a function Functional programming == functional composition + lazy evaluation 12:40 List Vs Stream List: is data-structure while Stream: is abstraction 2. Function composition 13:00 3. Lazy evaluation 16:00 4. Efficiency and lazy evaluations 24:00 5. 24:55 Efficiency is attained by not doing things faster, But by avoiding things should not be done in the first place 6. Reactive Programming 26:00 7. Responding to stimuli 27:00 8. Why do we need a different programming model? 28:00 Answer is a world full of electronic devices, big data & demands on the application performance & different (variety of) user-base as well 9. Applications 28:48 10. We've lived in CRUD 31:28 Dataflow computing 34:20 he also talked about serverless computing (AWS lambda & do serverless programming) 12. Stream of data think dataflow 36:50 OOP: i. Abstraction خیال, تصور , خلاصہ ii. Encapsulation (via information hiding like private data) iii. Inheritance iv. Polymorphism (compile time and runtime) Reactive Programming is: i. Elastic اپنے آپ کو حالات کے مطابق ڈھالنا computing (something like in "Kubernetes" application must be able to scale or shrink dynamically) ii. Message driven (Do not share database) You can toothbrush but never the database 1) Message-driven means instead of using a central database for communication between components/microservices use "Message" driven architecture things like: a) Kafka stream (uses more of a pub/sub approach to send messages) b) RabbitMQ (uses exchanges to route messages to queues) c) Redis is a database that can be used as a message-broker d) AWS offers Amazon Kinesis Data Streams, a Kafka alternative that is fully managed. Running your Kafka deployment on Amazon EC2 provides a high-performance, scalable solution for ingesting streaming data. AWS offers many different instance types and storage option combinations for Kafka deployments. e) Etc. iii. Responsive (Like in the D-Zone website data (ref-cards) keep coming at the end of the website and you feel like the website never ends) iv. Resilience (fail gracefully) 13. Transformation of dataflow 43:00 14. Reactive Applications 45:00 15. From Reactive to functional 48:55 Java Stream VS Reactive Stream 52:35 16. Observable 59:34 Strategies in reactive programming: 1. Backpressure (on the data) 2. DROP (the data)
Professor, I love the way you explain it. It is so hilarious when we take real-life examples and compare them with programming! :) I think I have learned it. Now I am wondering about some complex and breath-taking uses of Throwables, Observables and emitters...
Overview 0:00 remarkably interesting overview
Reactive programming == (is equal to)
Functional programming ++
1. Functional programming 7:36
Functional programming:
Normal functions:
1) We pass object to function
2) We create object in a function
3) We return object from a function
Higher-Order Functions:
1) We pass function to function
2) We create function in a function
3) We return function from a function
Functional programming ==
functional composition + lazy evaluation
12:40 List Vs Stream
List: is data-structure while Stream: is abstraction
2. Function composition 13:00
3. Lazy evaluation 16:00
4. Efficiency and lazy evaluations 24:00
5. 24:55 Efficiency is attained by not doing things faster,
But by avoiding things should not be done in the first place
6. Reactive Programming 26:00
7. Responding to stimuli 27:00
8. Why do we need a different programming model? 28:00 Answer is a world full of electronic devices, big data & demands on the application performance & different (variety of) user-base as well
9. Applications 28:48
10. We've lived in CRUD 31:28
Dataflow computing 34:20 he also talked about serverless computing (AWS lambda & do serverless programming)
12. Stream of data think dataflow 36:50
OOP:
i. Abstraction خیال, تصور , خلاصہ
ii. Encapsulation (via information hiding like private data)
iii. Inheritance
iv. Polymorphism (compile time and runtime)
Reactive Programming is:
i. Elastic اپنے آپ کو حالات کے مطابق ڈھالنا computing (something like in "Kubernetes" application must be able to scale or shrink dynamically)
ii. Message driven (Do not share database) You can toothbrush but never the database
1) Message-driven means instead of using a central database for communication between components/microservices use "Message" driven architecture things like:
a) Kafka stream (uses more of a pub/sub approach to send messages)
b) RabbitMQ (uses exchanges to route messages to queues)
c) Redis is a database that can be used as a message-broker
d) AWS offers Amazon Kinesis Data Streams, a Kafka alternative that is fully managed. Running your Kafka deployment on Amazon EC2 provides a high-performance, scalable solution for ingesting streaming data. AWS offers many different instance types and storage option combinations for Kafka deployments.
e) Etc.
iii. Responsive (Like in the D-Zone website data (ref-cards) keep coming at the end of the website and you feel like the website never ends)
iv. Resilience (fail gracefully)
13. Transformation of dataflow 43:00
14. Reactive Applications 45:00
15. From Reactive to functional 48:55
Java Stream VS Reactive Stream 52:35
16. Observable 59:34
Strategies in reactive programming:
1. Backpressure (on the data)
2. DROP (the data)
Just Awesome Venkat.
Good lecture ...
Amazed ..
Professor, I love the way you explain it. It is so hilarious when we take real-life examples and compare them with programming! :) I think I have learned it. Now I am wondering about some complex and breath-taking uses of Throwables, Observables and emitters...
Venkat++
Very good minds and speakers at this organization, yet non-appreciative, unreactive, dead crowds.
perhaps non functional and non reactive crowd :p
*Listening to that guy is almost unbearable!*