@rkenmi - Home

Spring - Basic Concept

Spring has an object called the "Bean Factory". This factory creates new objects, or rather, new Beans for us, without the need of instantiating via the new keyword. The factory reads off of a Spring configuration file, which can either be a XML file stored locally, or a class annotated with @Configuration at compile-time.

SpringSpring Beans

Basic Encryption

There are two types of encryptions: symmetric and asymmetric. In a symmetric encryption, one secret key is generated, and that very same key is shared between the sender and receiver. Databases benefit from using symmetric encryptions, as they are much faster to use as opposed to the asymmetric alternative.

encryptionaesrsadsasymmetric encryptionasymmetric encryption

Google Protocol Buffers

From Wikipedia: Protocol Buffers are a method of serializing structured data. It is useful in developing programs to communicate with each other over a wire or for storing data. Here are some key characteristics of protobuf: Serialization into bytecode means that data is condensed -- small in size.

protobufserialization

B-Trees vs. LSM Trees

B-Trees Modern databases are typically represented as B-Trees or LSM Trees (Log structured merge trees). B-trees are "tried and true" data structures that are popular in database usage, most notably SQL databases.

LSMB-Treedatabases

Inversion of Control (IoC)

IoC, or Inversion of Control, is essentially a way of dealing with dependency injection. Frameworks like Spring are well known for this idea. In traditional control flows, a subclass may depend on another class for certain dependencies.

JavaSpringInversion of ControlDependency Injection