我正在尝试为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
然后我会写其他类
谢谢
答案 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)
伪代码是算法的高级描述。因此,最好避免使用特定于语言的术语或较低级别的表达式和结构。伪代码的目标是以一种可以用任何语言(尽可能多)实现的方式来描述算法。
例如,避免使用class
,implements
,void
,Override
等字词。
尽管(几乎)你编写的任何伪代码在技术上都是有效的,但你应该尝试遵循结构化语法,可能是你自己的或者是一个着名的语法。看看Wikipedia's page,并从中激发灵感!
原始示例:
PROCEDURE someAlgorithm(number: Integer)
number <- number + 42
IF number > 50
number -> DISPLAY
END IF
END PROCEDURE