Java Full Stack Theory