几年后,我试图重新开始编程,因此我尝试在 android studio 中编写一个相对简单的应用程序。
我还在思考程序应该如何闲置,在哪里放置哪些属性和方法。因为我想巧妙地编写这个应用程序。 它应该是一个可以记录特定事件参数的应用程序。对于此事件(设备方向突然改变),我将创建一个类来存储数据(例如持续时间、角度...)。
我显然需要某种监听器来检查事件是否正在发生。我在哪里可以找到这个方法/监听器?
以下是我对此的想法:
应该是这个事件的类的方法吗?在我必须实施之前,这似乎是有意义的。 要调用此方法,我必须创建此对象的实例,然后调用侦听器。一旦事件发生,我就会将此实例保存到数据库中。这对我来说似乎有点奇怪。
另一方面,我可以在其他地方创建函数/方法,并且仅在事件发生后创建事件的实例。侦听器是否会成为它自己的一个类,一旦激活跟踪,我就会创建一个实例?
如果有关于这些基础知识的(简短)文档,我很乐意阅读。但由于我仍然这样做是为了好玩,所以我不会寻找一本 400 页的关于 OOP 的书。 我感谢任何有关此主题的有用评论!
我试图勾勒出JavaScript实现最需要的基本结构,它确实回答了以下问题...“如何为ES / JS对象类型实现事件调度系统?”
+- EventTarget or Observable (module) -----------------------------+
| |
| (*) optional |
| |
| +- Event (class) ------+ |
| | | |
| | uuid:string | |
| | type:string | |
| | target:EventTarget | |
| | data*:Object | |
| | | |
| +----------------------+ |
| |
| +- EventListener (class) -----------+ |
| | | |
| | target:EventTarget | |
| | type:string | |
| | handler:function | |
| | | |
| | handleEvent( evt:Event|Object ) | |
| | | |
| +-----------------------------------+ |
| |
| +- EventTarget (class) or Observable (mixin) ------------+ |
| | | |
| | addEventListener( type:string, handler:function ) | |
| | removeEventListener( type:string, handler:function ) | |
| | dispatchEvent( evt:Event|Object ) | |
| | | |
| +--------------------------------------------------------+ |
| |
+------------------------------------------------------------------+