ICADCS同学的上位机科普
受到实验室指导老师的邀请,给学弟学妹们科普上位机。
由于上位机软件开发中会涉及到大量英语文档,因此在基本概念中,有些使用的英文介绍。
基本概念
上位机/下位机
上位机是指可以直接发出操控命令的计算机,一般是PC,屏幕上显示各种信号变化(液压,水位,温度等)。下位机是直接控制设备获取设备状况的计算机,一般是PLC/单片机之类的。上位机发出的命令首先给下位机,下位机再根据此命令控制相应设备。下位机不时读取设备状态数据(一般为模拟量),转换成数字信号反馈给上位机。
I/O
Input/output
IDE
- Integrated development environment
- An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools, and a debugger.
- Android Studio、Visual Studio
SDK
- Software development kit
- A software development kit (SDK or devkit) is typically a set of software development tools that allows the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar development platform.
- Java Development Kit(JDK)、.NET Framework SDK、iOS SDK
API
- Application programming interface
- In computer programming, an application programming interface (API) is a set of subroutine definitions, communication protocols, and tools for building software.
- 百度地图API
.NET Framework
- .NET is an open source developer platform, created by Microsoft, for building many different types of applications
- You can write .NET apps in C#, F#, or Visual Basic.
- C# is a simple, modern, object-oriented, and type-safe programming language.
Windows Forms
- Windows Forms (WinForms) is a graphical (GUI) class library included as a part of Microsoft .NET Framework providing a platform to write rich client applications for desktop, laptop, and tablet PCs.
项目处理
完整应用程序的组成
- 源程序文件
- GUI界面文件
- 资源文件
- 配置文件
项目处理过程
- 学习对应的编程语言
- 分析功能
- 拆分功能
- 明确输入输出
- 建立初版GUI界面
- 查找功能对应的库或源代码
- 弄懂对应库或源代码的使用方法
- 完成功能模块
- Debug
- 完善GUI界面
编程学习
Windows
我们编写的的是 Windows Forms 程序,使用 C# 这种编程语言编程。C# 是一种面对对象编程语言,与面对过程的 C 有很大的区别,因此我们需要把这个当作一种全新的编程语言来学习,一定要把完整的视频过一遍。这里提供两个教程网址
Android(选修)
安卓情况比较复杂,这里推荐 Google 制作的一套官方教程,可以不用先学Java,零基础入门。
Bug&Debug
- 检查配置是否匹配
- 边写边测试
- 单位测试
- 注意查看报错信息
- Google一下/Bing一下/百度一下
版本控制
Github注册
Github是一个基于git的代码托管平台,付费用户可以建无数个私人仓库,我们一般的免费用户只能使用最多5个私人仓库及无数个公共仓库,其中公共仓库代码公开。
请自行搜索注册教程
Github使用
现场演示
相关资源
- .Net官网
- Android开发者网站
- Material Design 图标 (Google主推的图标)
- Github官网
Learning By Sharing,2019©Fu_Qingchen,Markdown,$\LaTeX$
ICADCS同学的上位机科普
https://fu-qingchen.github.io/2019/08/04/WHUT/CodingLesson/