Skip to content

Instantly share code, notes, and snippets.

@alhaiz313
alhaiz313 / clean_code.md
Created February 20, 2021 07:47 — forked from wojteklu/clean_code.md
Summary of 'Clean code' by Robert C. Martin

Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.


General rules

  1. Follow standard conventions.
  2. Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
  3. Boy scout rule. Leave the campground cleaner than you found it.
  4. Always find root cause. Always look for the root cause of a problem.

Design rules

@alhaiz313
alhaiz313 / ArrayDeque.java
Created June 7, 2020 15:14 — forked from samueltcsantos/ArrayDeque.java
ArrayDeque my own Implementation in Java
package adt.deque;
/**
* Implementing a Deque with a Circular Array.
*
* @author Samuel T. C. Santos
* @version 1.0
* @param <E>
*/
public class ArrayDeque<E> implements Deque<E> {
@alhaiz313
alhaiz313 / gist:0cd075c706a71124855392a27f891f97
Created June 5, 2020 11:13 — forked from psayre23/gist:c30a821239f4818b0709
Runtime Complexity of Java Collections
Below are the Big O performance of common functions of different Java Collections.
List | Add | Remove | Get | Contains | Next | Data Structure
---------------------|------|--------|------|----------|------|---------------
ArrayList | O(1) | O(n) | O(1) | O(n) | O(1) | Array
LinkedList | O(1) | O(1) | O(n) | O(n) | O(1) | Linked List
CopyOnWriteArrayList | O(n) | O(n) | O(1) | O(n) | O(1) | Array