tutorial Server Server Algorithm Algorithm Programing Languages Java Base Knowledge Software Achitecture