登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 软件工程 > 正文

Android端Python语言开发工具的设计与实现毕业论文

 2021-10-28 08:10  

摘 要

随着智能手机系统的日渐成熟和发展,智能手机其强大的功能越来越深入到人们日常的学习、工作及生活中,成为人们不可缺少的辅助工具。Android作为一个在智能手机领域占有巨大份额的系统,开发基于Android的应用是顺应市场潮流的。Android端Python语言开发工具是一款面向Python语言使用者开发的移动端代码编辑器和Python开发环境。

本项目旨在Android平台上实现对Python语言程序的编译和运行。用户可以在该应用软件中进行Python代码的编写,调试,运行,保存。在编辑代码时应用具有常用函数、库和关键词的自动补全等功能。项目具有简洁的布局和操作提示语,可以让人容易的上手使用。

本项目基于开源Android系统,使用Android原生UI开发工具以及自定义控件进行整个应用程序的界面搭建。在终端模拟器方面参考了开源的Android Terminal Emulator进行应用的命令行操作。在Python编译器方面,在Linux上使用了Android NDK对Python进行交叉编译的方式。在数据存储方面,使用了Android提供的文件操作。

关键词:Android;代码编辑;Pyhton

Abstract

With the maturity and development of smart phone systems, the powerful functions of smart phones are increasingly penetrated into people's daily study, work and life, and become an indispensable auxiliary tool for people. Android, as a system that occupies a huge share in the field of smart phones, develops Android-based applications in line with market trends. Android-side Python language development tool is a mobile terminal code editor and Python development environment for Python language users.

This project aims to compile and run Python language programs on the Android platform. Users can write, debug, run and save Python code in the application software. When editing code, apply the auto-complete function with commonly used functions, libraries, and keywords. The project has a simple layout and operation prompts, which can be easily used by people.

This project is based on the open source Android system, using Android native UI development tools and custom controls to build the interface of the entire application. In the terminal emulator, the open source Android Terminal Emulator is used for the command line operation of the application. In terms of the Python compiler, the Android NDK is used to cross-compile Python on Linux. In terms of data storage, the file operations provided by Android are used.

Key Words:Android; Code Editing; Python

目录

摘 要i

Abstractiii

第1章 绪论 1

1.1 选题背景和意义 1

1.2 研究现状 1

1.2.1 国外研究现状 1

1.2.2 国内研究现状 2

1.2.3 国内外现状研究总结 2

1.3 研究目标 2

1.4 研究内容 3

1.5 论文组织结构 3

1.6 本章小结 3

第2章 相关技术综述 4

2.1 Andriod平台 4

2.2 MVC框架 5

2.3 交叉编译Python 6

第3章 应用需求分析 8

3.1 功能性需求 8

3.1.1 代码编辑模块 8

3.1.2 程序终端模块 9

3.1.3 Python代码编译以及第三方库模块 9

3.2 非功能性需求 9

3.2.1 App对Android系统版本的兼容性 9

3.2.2 可操作性 10

3.2.3 稳定性及响应速度 10

3.3 本章小结 10

第4章 系统概要设计 11

4.1 系统概要设计 11

4.2 App应用系统架构设计 11

4.3 系统模块设计 12

4.3.1 设计UI界面 12

4.3.2 功能模块设计 12

4.4 本章小结 14

第5章 详细设计及实现 15

5.1 主页面设计 15

5.2 Android终端模块 15

5.2.1 界面设计 16

5.2.2 模块流程设计 16

5.2.3 模块整体类设计 17

5.2.4 关键代码 18

5.3 代码编辑器模块 19

5.3.1 界面设计 19

5.3.2 代码文本编辑功能 19

5.3.3 代码高亮显示功能 20

5.3.4 头文件和常用函数自动补全功能 22

5.3.5 文本大小设置功能 23

5.3.6 编辑回撤功能 23

5.3.7 文件打开保存功能 24

5.3.8 Python文件运行功能 25

5.4 Python代码编译以及第三方库模块 26

5.4.1 Python编译器移植 26

5.4.2 移植第三方库(numpy) 28

5.5 本章小结 29

第6章 应用测试及结果分析 30

6.1 应用功能测试 30

6.2 非功能性测试 31

6.3 本章小结 31

第7章 结论 32

致谢 34

第1章 绪论

本章节主要介绍了本项目的选题背景以及意义,并且简单阐述了研究的主要内容和组织结构。

1.1 选题背景和意义

在当今时代,移动终端设备已经广泛进入人们的生活。由于计算机技术的飞速发展与应用,智能手机的功能越来越丰富,并且能够在工作、生活、学习方面提供极大的便利。当前,Android系统在智能手机系统领域占据了60%以上的份额,基于市场的判断,进行Android手机应用的开发是符合潮流的。

信息时代,大数据,人工智能等产业开始蓬勃发展,数据分析、数据挖掘岗位的大量需求开始浮现出来。Python作为一门高级程序语言,入门简单,而且能够编写复杂的程序,尤其是在大数据和人工智能领域有广泛的应用,使着越来越多的人投入到Python语言的学习中。2020年Python语言的使用率为9.31%,已经超过C 位于排名的第三位。

在信息时代,计算思维是非常重要的,目前高校已经开展了对非计算机专业本科生进行程序设计课程的教学活动。而Python是目前最接近自然语言的通用编程语言,对于有着英语基础的大学生有着很好的适应性,可以说是高校开展程序设计教学的理想选择[1]。高校在开展程序设计教学需要学生在计算机设备上操作,就需要进行机房的分配。Python学习者的增加,以及教学设备的不足,在移动设备上进行程序编写的需求就应由而生。

在这样的前提下,项目Android平台Python语言开发工具被提出来。对于程序员,该应用可以作为临时应用调试工具来进行程序开发。对于学生,该应用能够作为Python课程实践的一种方式。对于学校,该应用有助于减轻设备房的分配需求,提高教学质量。本项目的主要目的与意义就在于提供一种便利的方式让人进行Python的学习活动。通过在智能手机上编辑程序代码,通过该应用调试程序代码,能进一步加深对Python语言的理解。对比在计算机上的操作,该应用略去了编程环境的搭建过程,进一步降低了Python语言的学习门槛。

1.2 研究现状

Python可应用的平台包括Windows、Linux和Mac OS X。Android是以Linux内核为基础的一个操作系统,所以在Android实现Python是可能的。

1.2.1 国外研究现状

目前,想要在Android上使用Python,可以选择安装Qpython。Qpython是一个脚本引擎,可在Android设备上运行Python。Qpython具有强大的功能。首先,它支持大部分Python标准库、纯Python代码实现的第三方库以及混合C/C 代码的Python库。在此基础上,它还提供了Android API的访问功能。其次,Qpython实现了控制台模式,这种模式是与在计算机系统中运行的相同模式。最后Qpython还实现了文本编辑器,能够进行代码文件的各种操作。关于Python编译器的实现,Qpython采用了SL4A和交叉编译Python两种方式来实现。SL4A方法集成了Google开发的Python for Android 脚本的方式。交叉编译Python则是采用为Android 端编译符合其相应CPU架构的Python编码来实现。这种方式解决了Python不能在Android直接运行的问题。同时其终端控制台的实现结合了Github 项目Android-Terminal-Emulator的实现方式。Qpython已经在全球拥有数百万用户,对于编程用户来说是一个很棒的应用。

还有一种选择就是安装Termux。Termux是一个Android终端模拟器和Linux环境应用程序。与Qpython不同,Termux的功能更偏向于对Linux系统的模拟。Termux对Linux环境的模拟使Android能够使用Linux指令进行Python环境的安装。所以运行Python必须经历安装以及配置环境的过程。同时它是控制台模式,没有实现具体的代码编辑器,只能使用vi指令进行文件编辑。所以对于纯Python用户的使用来说是不利的。

总之,两款软件对于Python编译器的实现都非常成功,Qpython具有强大的功能和操作体验,而Termux能够模拟Linux来进行Python操作,更偏向与对于系统的操作。

1.2.2 国内研究现状

国内应用市场上也有着一些Python应用软件。PythonJam是一款由风变科技(深圳)有限公司开发的Python语言工具。PythonJam是该公司开发的用于进行Python教育以及进行相应Python项目练习的软件。它实现了将Python文件根据项目进行文件分类管理的功能。同时也实现了代码编辑器。它的Python文件运行功能以及终端功能是基于服务器实现的。软件通过网络将Python文件或控制台命令发送到服务器,服务器接收到相应数据并返回运行结果,软件接收到结果并将其呈现在手机相应活动界面上。该实现方式避免了本地进行编译的操作,但必须借助网络,在信号不好或无网络的地点无法使用该软件的所有功能。

1.2.3 国内外现状研究总结

目前,国内外公司对Android端Python的实现以及应用商店层出不穷的Python应用充分体现了Android端对于Python运行的需求。因此,探究Android设备对于Python的适配以及实现是十分有意义的。通过研究Android对Python的实现,能够进一步帮助Python的传播以及扩展Android手机的功能区域。

1.3 研究目标

本项目研究的主要内容是Android端Python语言开发工具的设计与实现,应用的主要目标是为用户提供Python代码编写、编译、运行的功能。用户能够在应用中打开控制台终端,启动代码编辑器,在代码编辑器中进行代码文本的运行和文件保存。总体来说,本项目的研究目标是设计并实现Android端Python语言开发工具,满足用户在Android运行Python代码的需求。

1.4 研究内容

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图