我的第一篇CSDN博客_远程计算
2015-06-07 16:27
357 查看
前言
从本科开始学习c语言到现在已经好几年了,由于自己非常喜欢编程,除了课题外平时也喜欢写些小程序,到目前为止也写了不少代码了。但是一直没有养成随手记录的习惯,而编程中好多琐碎的东西很难记住,导致有时再次用到某个技术或功能时不得不翻出以前的代码查看,很是麻烦。现在决定开始在这里进行一些记录总结,分享一些经验。就从最近几个月业余时间做的一个自娱自乐的小项目开始吧。几个月前开始学习socket编程,突然就萌生了做一个远程matlab计算程序的想法(可能是当时正好接触到matlab计算引擎吧,还有就是我学东西比较喜欢通过一个有点儿实际用途的小项目或小程序来学,边学边做比较有意思)。没想到几个月下来竟坚持完成了这个突如其来的想法,整个项目主要实现了远程matlab计算的功能,主要包括服务端程序、服务管理程序、移动客户端(Android)和PC客户端4个程序还有协议设计、数据库设计等内容。
本篇是一个综述,项目具体细节以及开发中遇到的问题在后面的文章中会陆续介绍。
由于本人好多东西都是边学边做,有些处理或技术可能用的不合适甚至错误,希望有好心网友看到能批评指证,先在此谢过了。
结构
如下图:服务端程序
服务端程序采用win32。由于不需要界面本来打算使用控制台程序,可是控制台程序还是有个窗口,很可能被别人不小心关掉(实验室的电脑),因此最终选择了win32窗口程序而不显示窗口,这样程序便可完全后台运行了(任务管理器中显示)。而对服务程序的控制则用另一个单独的管理程序来实现。服务端程序主要包括以下内容:使用matlab计算引擎计算客户端传来的命令,生成文本结果与图片结果
协议实现
用户注册
用户操作(认证、修改密码、忘记密码等)
md5加密
命令过滤
smtp邮件操作
数据库操作
日志、配置等
服务管理程序
服务管理程序采用MFC框架实现,用于管理服务端程序,基本功能如下:启动停止服务端程序
显示当前在线用户
程序界面如下图
Android客户端
当然是Java啦,基本功能:执行命令并显示文本或图片结果
用户相关操作(注册、登录、修改密码等)
设置操作
其中命令界面如下:
PC客户端
PC客户端使用MFC,并做了界面美化。除了与移动端相同的部分外其他功能如下:可以选择本地计算引擎(不能绘制函数曲线)
独立的悬浮计算面板,使用全局快捷键调出
程序主界面与计算面板界面如下:
协议、数据库
协议是整个项目应用层协议的设计,数据库使用mysql,包括用户与命令过滤,后面都会单独介绍。源代码随着后面介绍会陆续提供。
本文原文链接 /article/10927860.html
相关文章推荐
- 【整理】常见的数组排序方法以及代码实现
- uml精粹——11.活动图(及整个读书笔记分享)
- 利用bat批处理做启动mongodb脚本
- 正则表达式语法
- Ubuntu12.04安装配置Nginx Tomcat环境
- iOS开发UI高级—20Quartz2D简单使用(二)
- Network Namespace
- CF的LINSER啥啥的H(二分),G(换位置),C(博弈),D(前缀矩阵),B(寻找来的人)
- 深入理解Java注解
- 队列模型
- 鼠标位置距浏览器窗口距离
- SSH实例(6)
- 虚拟机搭建heartbeat
- Eclipse安装SVN插件
- iOS开发UI高级—19Quartz2D简单使用(一)
- 用C++实现多线程Mutex锁(Win32)
- 循环小数->分数备忘
- C#中Dictionary的用法及用途
- MIUI打开开发者usb调试方法
- 线性表接口