Thanks to visit codestin.com
Credit goes to github.com

Skip to content

lukasz-kusek/cheat-sheet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 

Repository files navigation

Cheat sheet

Essentials of some programming related topics.

TODO

mouseless-desktop

design-patterns

object-oriented-design

  • composition vs aggregation

  • composition vs inheritance

  • coupling, cohesion

  • Liskov principle

  • SOLID

  • GRASP

  • DRY

  • Law of Demeter

  • Feature Envy

  • CQRS

  • Principle of Least Astonishment/Surprise

concurrency

  • deadlock

  • livelock

  • starvation

  • wait() vs sleep()

  • explicit vs intrinsic locks

  • atomicity

  • thread vs process

  • green thread vs native thread

  • thread-scheduling algorithm / thread-scheduler

  • Executor framework (ExecutorService, Executors)

  • fork-join pool

  • Phaser

  • http://concurrencykit.org/

core

  • substring (Java 6 vs 7)

  • Java 5/6/7/8 new features

  • static, dynamic, duck typing

  • suppressed exception

data structures

  • heap, stack, queue, tree (binary, self balanced - red-black, AVL, splay; prefix, suffix), graph

  • data structures in Java

  • http://bigocheatsheet.com/

algorithms on basic data structures

  • sorting (linear-time sorting - count sort)

  • traverse graph

  • search in binary tree

basics

  • computing square roots

  • dynamic programming

  • NP-complete algorithms

  • map/reduce

  • complexity, big O notation

nio

  • nio2

About

Essentials of some programming related topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published