What I'm Thinking and my Braindump

Asynchronous Programming Js
15 December 2020

Promises and observables are all about: handling asynchronous execution. There are different ways in JavaScript to create asynchronous code. Callbacks Promises Async/Await RxJS Observables Callbacks This is the old-fashioned classical approach to asynchronous programming. You provide a function as an argument to another function that executes an asynchronous task. When the asynchronous task completes, the executing function calls your callback function. The main disadvantage of this approach occurs when you have multiple chained asynchronous tasks, which requires you to define callback functions within callback functions within callback functions… This is called callback hell. ... Read More

Solving Problem Mindset
15 December 2020

Now, “problem-solving” as a term in school (where you were five minutes ago) is kind of partial. It’s rather a “problem-solving training” — it’s kind of predictable. In real life, on the other hand, solving the same problems, again and again, is the last thing you want to do — and it’s not your job. Your job is to solve them once and for all — big difference. And to do that, you need to identify them, assess them, question, plan, collaborate, initiate, investigate, communicate, adapt. ... Read More

Tdd Test Programming
8 December 2020

Unit Tests: Test individual components in isolation from environment and concrete dependencies Integration Tests: Test how concrete components work together within a given subsystem End-to-End Tests: Test the behavior of an entire system with all parts functioning together Distinguish these tests from Automated UI Tests (see below) if I am driving the system via an API instead of a GUI. Automated UI Tests: These are commonly used for web-based projects, filling a couple of different roles: Content-based Testing: Verifies that the visual, content, and layout properties of a given view are correct Functional Testing: Verifies end-to-end functionality by driving the UI and verifying (from the UI layer) that the system functions correctly. ... Read More

Jim's braindump
29 November 2020

This is my braindump for a few notes about my favourites and interested tools: C# (C Sharp): Multi-threading programming in C# notes JavaScript: Arrow functions in JavaScript notes Optimized React tips Programming: Object-Oriented programming MVC in a nutshell

React Optimization
29 November 2020

Parent and child components are often re-rendered in the following scenario: When setState is called in the same component or parent component. Change in the value of “props” received from a parent. Calling forceUpdate in the component. React Performance Optimization is easy to achieve with the following simple steps. Use React Pure Components to reduce Re-rendering Using React Hooks and working with functional programming Use React. ... Read More

MVC in a Nutshell
27 November 2020

There are tons of article about MVC pattern. I’d like to wrap it in a simple way and easy to understand, no more explaination.

OOP Programming
10 November 2020

Object Oriented Programming: As we all may know, it is a programming paradigm based on the concept of “objects”. Class: classes are blueprint of an object. In other words, a class is a template while object are instances of the class. Object: an object is a unique entity which has some properties and methods. Abstraction is a way of hiding the implementation details and showing only the functionality to the users. ... Read More

Arrow Function
10 November 2020

Main benefit: No binding of ‘this’ ES6 arrow functions can’t be bound to a this keyword, so it will lexically go up a scope, and use the value of this in the scope in which it was defined. No self-referencing If your function needs to have a self-reference at any point (e.g. recursion, event handler that needs to unbind), it will not work. Arrow functions shine best with anything that requires this to be bound to the context, and not the function itself. ... Read More

Multi-threading programming
9 November 2020

Thread safety removes the following conditions in the code: Race condition occurs when two threads access a shared variable at the same time. The first thread reads the variable, and the second thread writes to the same variable at the same time. Deadlock case happens in concurrent or multi-threaded environment. It is kind of a situation in which two or more competing threads or tasks wait for the other task to finish and they never finish. ... Read More
I hope you could find something helpful on your path here. Cheers !