Separation api et impl