个人项目代码分析

需求分析:

  1. 该个人项目基本完成项目要求,可以随机出题,出卷查重功能都有;

代码分析:

优点:

1.逻辑清晰有条理,代码整体风格简洁明了,没有让人有太多的困惑;

2.合理的使用了goto语句,使得代码变得更简洁;

缺点:

1.代码不够结构化,没有使用面向对象的思维;没有将数据与方法归类进行封装,这样在移植代码或升级代码时往往会遇到难以预料的麻烦;

2.方法体内部内容过于庞大,一个函数方法里实现的功能太多,这样代码的维护和升级过于麻烦,可以分化各个功能为不同方法,这样整个结构会更清晰;

优化建议:

  1. 可以增加一个UI界面,增强用户体验;
  2. 可以增加一个路径自动生成功能,即就算没有个人用户的文件夹,也会自己生成指定路径的文件夹,简化用户使用要求;

原文地址:https://www.cnblogs.com/jtzy/p/11551812.html

时间: 2024-11-04 06:21:56

个人项目代码分析的相关文章

[Asp.net 5] DependencyInjection项目代码分析4-微软的实现(3)

这个系列已经写了5篇,链接地址如下: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Autofac [Asp.net 5] DependencyInjection项目代码分析3-Ninject [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(1) [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(2) 如果想

[Asp.net 5] DependencyInjection项目代码分析4-微软的实现(5)(IEnumerable<>补充)

Asp.net 5的依赖注入注入系列可以参考链接: [Asp.net 5] DependencyInjection项目代码分析-目录 我们在之前讲微软的实现时,对于OpenIEnumerableService与ClosedIEnumerableService抛下没讲,现在我们就将该部分补充完整. 我们回忆ServiceProvider类的构造函数(对外部使用的)中,注册了IEnumerable<>.new OpenIEnumerableService(_table)的关系. public Se

[Asp.net 5] DependencyInjection项目代码分析4-微软的实现(中)

在 DependencyInjection项目代码分析4-微软的实现(上)中介绍了“ServiceTable”.“ServiceEntry”.“IGenericService”.“IService”.“IServiceCallSite”,这篇介绍下“IGenericService."IService"."IServiceCallSite"实现类 GenericService类 做为IGenericService的唯一实现类,该类言简意赅,请看代码: internal

[Asp.net 5] DependencyInjection项目代码分析-目录

微软DI文章系列如下所示: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Autofac [Asp.net 5] DependencyInjection项目代码分析3-Ninject [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(1) [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(2) [Asp.net

[Asp.net 5] DependencyInjection项目代码分析4-微软的实现(4)

这个系列已经写了6篇,链接地址如下: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Autofac [Asp.net 5] DependencyInjection项目代码分析3-Ninject [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(1) [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(2) [As

结对队友个人项目代码分析

项目要求 项目名称:中小学数学卷子自动生成程序 用户: 小学.初中和高中数学老师. 功能: 1.命令行输入用户名和密码,两者之间用空格隔开(程序预设小学.初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示"当前选择为XX出题",XX为小学.初中和高中三个选项中的一个.否则提示"请输入正确的用户名.密码",重新输入用户名.密码: 2.登录后,系统提示"准备生成XX数学题目,请输入生成题目数量:",XX为小学.初中和高中三

[Asp.net 5] DependencyInjection项目代码分析

最近在研究开源代码,正好发现Asp.net5的源码,下载地址:https://github.com/aspnet. 今天主要讲的是DependencyInjection这部分,抛砖引玉,供大家参考,也欢迎莅临斧正.闲话不多说,下面就代码进行简单分析 项目架构如下: 一共包含DependencyInjection.DependencyInjection.Abstractions.DependencyInjection.Autofac.DependencyInjection.Ninject以及Dep

[Asp.net 5] DependencyInjection项目代码分析2

Microsoft.Framework.DependencyInjection.Autofac源码分析 该工程只有一个代码静态类AutofacRegistration,但是该类有3个扩展方法,以及3个内部类.扩展方法如下: public static class AutofacRegistration { public static void Populate(this ContainerBuilder builder,IEnumerable<ServiceDescriptor> descri

队友个人项目代码分析

总体分析:其代码基本实现了要求的全部功能,即能完成登录.打印所需数目的试题.试题储存在txt文档中,且能以出题时间为文档命名,文档存在所对应的账户文件夹中,还可以识别账户和账户类型是否对应. 编译界面: 结果: 缺点: 1.在题目中,不论操作数多少个,每次都只出现一对,但其实在操作数更多的时候,括号其实可以出现3对,这里明显有不足. 2.代码中有两处需要判断账户与账户类型(小学.初中.高中)的关系,其实可以共用同一个函数来实现,但该代码将共用部分重复写了两次,增加了不必要的麻烦. 3.代码中有一