pikapython/doc/3.PikaScript标准开发流程.md

2.2 KiB
Raw Blame History

3.Pikascript标准开发流程

本篇文档将会介绍基于PikaScript开发的标准流程这个标准流程将会涵盖大部分情况下会用到的PikaScript相关技术。

我们依然以keil的仿真工程为例如果还没有获得仿真工程请参考1.三分钟快速上手

(1) 使用已有的PikaScript类包

我们打开pikascript文件夹发现文件夹根目录下除了main.py还有Device.pyPikaObj.py和PikaStdLib.py这三个.py文件分别对应三个PikaScript类包(class package),简称(package),每个.py文件本身称为包接口(package interface)。

image

每一个PikaScript类包包接口包实现(package implement)两部分组成。

我们先打开Device.py查看一下内容在后续的文档中我们会称Device.py为Device包接口

以下就是Device.py的全部内容。

# Device.py
from PikaObj import *

class LED(TinyObj):
    def on():
        pass
    def off():
        pass

class Uart(TinyObj):
    def send(data:str):
        pass
    def setName(name:str):
        pass
    def printName():
        pass

可以看到Device.py中使用pyhon标准语法定义了两个类分别是LED类和Uart类,这两个类都继承自TinyObj

LED类中定义了两个方法分别是on()方法和off()方法,而Uart类则定义了send(data:str)方法、setName(name:str)方法和printName()方法。

可以看到,这些方法都有一个特点,与其说这是方法的定义,不如说是方法的声明因为所有的方法实现都pass掉了都没有写实现。而且方法的入口参数都是带有类型声明的。比如data:str就表示一个data参数,参数类型为str即字符串类型。

这是因为这个包的包实现是由C语言编写的也就是说PikaScript的所有类包都是使用python语法编写声明而使用C语言编写实现。PikaScript的类包开发是一种面向接口编程的混合编程技术。

在编写在使用已有的类包时,是