跳转到内容

实用项目:技术解决方案

来自维基教科书,开放世界中的开放书籍

单元 4 - ⇑ 计算机实践项目 ⇑

← 设计 技术解决方案 系统测试 →


这是真实的东西,你将根据你编写的代码获得分数。请注意,没有任何文档的程序只占整个单元的 31%。但是,你需要本节来完成项目的其他部分,而且本节几乎肯定比本单元的其他任何部分都要花费更长的时间。以下是一些在这一部分获得高分的快速提示,以及一些指向编程帮助指南的链接

不要仅仅使用内置函数

[编辑 | 编辑源代码]

在过去,学生可以通过在 Access 中制作项目并使用向导完成所有功能来获得不错的分数。现在情况不再是这样了,如果你这样做,你会得到很低的分数。你必须编写你自己的代码和子例程。提交一页又一页的自动生成的代码将无法获得任何分数。编写你自己的算法并为此获得荣誉!

(数据库) 规范化数据

[编辑 | 编辑源代码]
使用 Crow's Foot 符号显示的两个相关实体

确保你所有的数据库表都被规范化了。如果没有,你将会在 设计 部分中丢分,你的项目将非常难于运行。一个快速测试方法是查看你的 E-R 图是否只有 1-多关系。如果你使用了其他任何东西,你将会遇到麻烦。

(面向对象) 确保你正确地使用封装

[编辑 | 编辑源代码]

如果你正在构建你自己的代码类,请确保你没有允许用户直接访问任何变量,并且他们使用了适当的 get 和 set 例程。不要将所有内容都设置为 public!如果可以,请使用继承。通过实现这些,你将会发现考试会变得容易很多。

使用合理的变量数据类型

[编辑 | 编辑源代码]

确保你使用的數據类型是合理的。在你的数据库表和变量中使用错误的数据类型会使你扣分。

例如:如果你正在记录商店中的巧克力棒总数,你不需要使用 Long 或 Float,因为你只能拥有整數個的巧克力棒,而且你不太可能拥有超过几百万件物品。使用 Integer!

使用合理的变量名称

[编辑 | 编辑源代码]

如果你正在使用变量来存储东西,它们必须有一个有意义的名称,这样当你读取代码中的名称时,你就知道它的作用。

例如:如果你正在记录商店中的巧克力棒总数,你不想使用像 variable1 这样的名称。variable1 代表什么?使用一个合理的名称,比如 NumChoc。

使用合理的函数/过程名称

[编辑 | 编辑源代码]

如果你正在创建子例程来处理代码中的事物,请确保你为它们提供一个合理的名称,以便人们在代码中看到它们时知道它们的作用。

例如:如果你编写了一段代码来计算巧克力棒的平均价格,那么不要将其命名为 FunctionA(),FunctionA() 代表什么?将其命名为 ChocAverage()。

尝试坚持使用一种命名约定

[编辑 | 编辑源代码]

如果你正在使用大量的变量名称和函数名称,请坚持使用一种命名风格。如果你使用了许多不同的约定,事情看起来会很糟糕。 维基百科指南

例如

  • firstName, lastName, calculateDoB, numLegs
  • FirstName, LastName, CalculateDoB, NumLegs
  • First_Name, Last_Name, Calculate_DoB, Num_Legs

不要让你的名称太长

[编辑 | 编辑源代码]

长的变量名可能很难阅读,而且更容易在编写时出错,请尽可能缩短它们。

例如

太长 恰到好处
ThisIsYourFirstName FirstName
the_value_of_a_chocolate_bar ChocVal

使用表单时,为工具箱类型添加前缀

[编辑 | 编辑源代码]

当你使用表单和许多变量时,有时会很困惑你是指变量 price 还是存储价格的文本框。使用前缀来避免这种情况

表单对象 前缀 示例
文本框 txt txtFirstName
按钮 btn btnSubmit
单选按钮 rdo rdoOverEighteen
复选框 chk chkAgree
图像元素 img imgLogo
计时器 tmr tmrLogOut
标签 lbl lblIntroduction
标准变量 [无] ChocNumber

缩进你的工作

[编辑 | 编辑源代码]

许多编程环境可以帮助您自动缩进代码,您应该能够为正在使用的语言找到一个。缩进有助于人们快速阅读和理解您的代码,因为它清晰地显示了函数、过程、选择和迭代语句的结构。例如,以下代码很难阅读:

int main(int argc, char *argv[])
{
...
while (x == y) {
something();
somethingelse();
if (some_error)
do_correct();
else
continue_as_usual();
}
finalthing();
...
}

如果缩进它,它会变得更容易阅读

int main(int argc, char *argv[])
{
    ...
    while (x == y) {
        something();
        somethingelse();
        if (some_error)
            do_correct();
        else
            continue_as_usual();
    }
    finalthing();
    ...
}

在必要的地方使用注释

[编辑 | 编辑源代码]

一些最好的代码不需要注释,因为如果您正确地构建了代码并使用了所有正确的命名约定,那么它应该很容易阅读。但是,对于您正在编写的代码,您应该添加一些注释来解释每个部分的作用。


'this function takes an array of prices and outputs the average
function calculateAverage(num1(20) as integer)
{
    'add all the numbers together
    while ...
          ...
          ...
    end while
    
    console.writeline(average)
}

提交内容

[编辑 | 编辑源代码]

您需要提供您编写的全部代码。对于您的每个表单,请提供:

  • 标题
  • 屏幕截图
  • 代码

对于您的每个模块/类,请提供:

  • 标题
  • 代码

对于您创建的任何数据库表,请在 MySQL 或 Access 的设计视图中提供屏幕截图

华夏公益教科书