为Android应用程序编写伪代码

时间:2014-02-18 13:25:41

标签: java android pseudocode

我正在尝试为Android GPS应用程序示例编写伪代码,我知道没有标准,但这样做是否可以接受或者有更好更明确的方式?

Define class MainActivity inherits Android Activity class and implements LocationListener interface
MainActivity Start
Override the void onCreate method of Activity class
start
  set the buttons of the main screen layout:
  do
  set 'my point button' to start GeoLocation class
  set 'settings button' to start Settings class
  set 'address button' to start My Address class
  set 'Help image_button' to start Help class
  done
End

Override the void onResume method of Activity class
start
  request Location Updates every 5 seconds
end
// and so on

如何表示活动生命周期? 它能代表这种方式吗?

when the activity created
do ...........
done
when the activity Resumed
//and so on

然后我会写其他类

谢谢

4 个答案:

答案 0 :(得分:2)

我不知道你是在编写伪代码,还是只是用更冗长的方式编写Java代码。

而不是写

之类的东西
@Override
public void onResume() {
 ...
}
你写了

Override the void onResume method of Activity class
start
  request Location Updates every 5 seconds
end

与从一开始编写Java代码相比,有什么优势呢?

更加抽象。

答案 1 :(得分:2)

你所提供的是非常具体的实施(并且,琐碎,原谅措辞)。伪代码的作用是以与技术无关的方式描述实际的计算/算法,但这显然不是你想要做的。例如,在你的伪代码中没有抽象,这使得很容易将程序移植到C#或Objective-C,因为Activity之类的术语不存在。

你有什么理由需要伪代码吗?

答案 2 :(得分:0)

使用groovy-DSL代替伪代码,它甚至可以编译(当然不是在android中)。 它比java代码更紧凑,并提供了很好的抽象级别

答案 3 :(得分:-1)

伪代码是算法的高级描述。因此,最好避免使用特定于语言的术语或较低级别的表达式和结构。伪代码的目标是以一种可以用任何语言(尽可能多)实现的方式来描述算法。

例如,避免使用classimplementsvoidOverride等字词。

尽管(几乎)你编写的任何伪代码在技术上都是有效的,但你应该尝试遵循结构化语法,可能是你自己的或者是一个着名的语法。看看Wikipedia's page,并从中激发灵感!

原始示例:

PROCEDURE someAlgorithm(number: Integer)
    number <- number + 42
    IF number > 50
        number -> DISPLAY
    END IF
END PROCEDURE