An overview of evaluation and enhancement methods for code generation by large language models | Synapse