Atitit 软件项目的一整套解决方案(gui界面,中间,存储数据库,图像处理,全文搜索)attilax总结

1.1. 项目的常见构成模块(界面ui gui ,数据存储数据库,图像处理等) 2

1.2. 常见的界面ui模式gui cli 3

1.3. Gui的发展 native方案(swing qt winform)>>xml方案(wpf javafx qml qss),私有h5》》dsl方案h5 4

1.4. 编程语言 5

1.5. 软件的运行模式:编译运行与直接源码运行(解释执行) 5

1.6. 数据库存储 6

1.7. 图像编程处理的四大金刚halcon matlab opencv photoshop 7

1.8. 全文检索 8

1.1. 项目的常见构成模块(界面ui gui ,数据存储数据库,图像处理等)

做出一款软件项目的常见要素有。。

依赖类库::通用的半成品软件。。代码包等。。站在巨人的肩膀上,君子善假于物也

语言::特点的环境使用特定的语言。。现在的混合编程模型是趋势,也需要混合多种编程语言来完成软件(一般一个通用语言GPL和多款DSL领域特定语言)

运行环境::一般是桌面   web 手机等,,还分为原生   h5  hybrid混合模式等。。

软件架构: cs bs web hybrid 跨架构是趋势,即是一个软件可以运行在web模式下,也可以运行在桌面gui模式,或者混合模式,一般是web优先,然后套一个本地shell

跨平台操作系统: 一般可以跨越linux win 等操作系统。。甚至安卓 ios等。。

1.2. 常见的界面ui模式gui cli

Gui模式一般俩中实现,一个基于dom模型,一个基于像素级别,性能高,但是事件模型需要自己实现,繁琐。。

普通软件大部分是属于dom模型。。一部分游戏也用像素模型,特别是比较需求性能的

1.3. Gui的发展 native方案(swing qt winform)>>xml方案(wpf javafx qml qss),私有h5》》dsl方案h5

效果图

native方案大概如图

JButton btn2=new JButton();  btn.setText("按钮文字")

native方案的缺点,受限于通用语言的语法限制,语法噪音太多,啰嗦,可读性较差。。面对嵌套层次结构界面设计可读性很差

xml方案,比如javafx fxml方案。。

<Buttonfx text="按钮文字" />

可以看到简洁很多了,解决了可读性问题,语法噪音问题,层次结构问题。但是,私有的,不是标准化的。。

第三阶段,H5阶段(html5)

<button  >按钮文字</button>标准化的问题。。

主要解决了标准化的问题。。至此阶段,gui 界面方面的dsl已经发展比较好了。。

1.4. 编程语言 

编程语言分类:命令式java c# js,函数式sql , 逻辑式语言等。。

按照是否编译,可以分为编译型语言和脚本语言。。脚本语言一般更加简化。。

按照通用与专用,可分为GPL 通用语言 Generalized Programming Language 通用编程语言和dsl领域特定语言

按照代际划分,有一代汇编类,二代native本地编译语言(c c++),三代vm类型语言(java c# ) ,脚本语言也有时称为三代半语言,常用的js py php,4gl一般就是dsl了,常用的dsl有h5(html) sql等。。

编程语言的发展 从机器语言,汇编语言到本地native语言(c c++) 到vm语言(java  c#) 再到脚本语言(js php python等) 再到dsl

语言层次越高,可读性一般越好,可移植性越好,不过性能也越差了。。当然如果使用同样的类库的话,只是写点胶水代码的话,差别到是相对来说不大了。

机器语言, 可以说彻底淘汰,唯一的优点就是性能,其他基本全是缺点。。

汇编语言,貌似也基本淘汰,比起机器语言,提升了很大的可读性。。

native语言(c c++) 相对汇编语言可读性又大幅提升,性能方面不如汇编,但比vm语言要高。。。缺点是开发效率,以及可移植性仍然需要提升。。很多图像库貌似都是使用此开发。。依赖于性能的应用大有所为。

vm语言(java  c#)  改进了native语言的问题,增加一个vm层隔离开了os。目前的业界高层应用开发主力

脚本语言 带来更高的生产力。但目前ide的问题,大型复杂企业级开发还难当重任,目前貌似在轻复杂度代码领域比较大发展。

Dsl语言 ,领域特定语言。。比如H5做界面。。Sql做数据库查询。Matlab halcon使用的语言,用来做图像处理。。

更高的开发效率,特别对于特定领域,图像处理,界面,数据库查询等大有优势。。正则表达式,用来文本搜索等。

Dsl语言本身性能很差,但是它是调用类库的,类库使用底层语言书写的,所以对性能不影响。

1.5. 软件的运行模式:编译运行与直接源码运行(解释执行)

1.6. 数据库存储

数据库相当于一个高级的excel。。。

表头定义

数据显示与维护

1.7. 图像编程处理的四大金刚halcon matlab opencv photoshop

图像方面的编程处理也是非常的与广泛了,比如人脸识别,指纹识别,二维码扫描等,条码,拍照识别等。。

opencv

编辑

OpenCV的全称是:Open Source Computer Vision Library。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库

halcon

HALCON是德国MVtec公司开发的一套完善的标准的机器视觉算法包,拥有应用广泛的机器视觉集成开发环境

MATLAB是美国MathWorks公司出品的商业数学与图像处理软件,

Photoshop::知名的图像处理软件了。。公开只提供gui接口。。用来测试,调试,验证一些图像处理的很有用。。直接通过gui接口调用ps也是某些情况下的很好选择。。

当然一些非常频繁的图像处理都已经有成熟的类库,算法库等,可以直接几行代码调用,较为方便的集成到自己的软件当中。。

1.8. 全文检索

全文检索一般处理文章搜索的大量文字搜索,数据库默认的like搜索对这种大文字搜索性能很差。。。。

搜索主要分俩中一种是遍历搜索,扫描一遍。。小数据量下还可,大数据量当然就不行了

一种是索引搜索,就是做个目录,类似与分类,书籍目录,可以快速定位到需要的数据。。。

索引的实质,即是分类处理,就像我们数据的目录编排一样。。。

Atitit 软件项目的一整套解决方案(gui界面,中间,存储数据库,图像处理,全文搜索)attilax总结相关推荐

  1. GUI界面连接Mysql数据库

    GUI界面连接Mysql数据库 GUI程序不仅界面美观,而且使用方便,各种软件的操作上也可统一,本实验通过Java来编写GUI程序.Java提供了编写GUI程序所需要的各种类,其中在本次实验中用到了j ...

  2. java swing漂亮界面框架_开源软件分享-漂亮的JavaFx GUI界面框架

    虽然说Java目前主要的应用领域是服务端,GUI桌面端软件也有极少量的应用场景(桌面软件还是C#方便),所以今天给大家分享一款漂亮的JavaFx GUI界面框架BootstrapFX. Java Fx ...

  3. matlab利用GUI界面做简单的图像处理

    学自"MATLAB GUI界面设计"微信公众号 https://mp.weixin.qq.com/s/iygmHVMevkKzo618Yy_d0Q 程序压缩包,有需要可以自行下载: ...

  4. Python爬虫实战——签名软件设计(二)GUI界面

    Python爬虫实战 关于本文: 上一篇文章我们介绍了POST方法的使用,现在我们就说一下界面设计以及方法的调用 使用模块 from Tkinter import * import tkMessage ...

  5. 基于Java的GUI界面+SQL Server数据库课程信息管理系统

    登陆窗口: package 课程管理系统; import javax.swing.*; import java.awt.*; import java.awt.event.ActionListener; ...

  6. Python实战之小说下载神器(完结)今天教你如何白拿一款代码版资源丰富的小说下载器GUI界面编程,海量资源免费看~(追书必备神器)

    前言 这次的是一个系列内容 给大家讲解一下何一步一步实现一个完整的实战项目案例系列之 小说下载神器(完结)(GUI界面化程序) 小说的搜索功能.小说下载器的GUI界面 爱看小伙伴想要一款资源丰富,好用 ...

  7. Atitit 使用h5技术( html css js)制作桌面程序gui界面解决方案attilax总结

    Atitit 使用h5技术( html css js)制作桌面程序gui界面解决方案attilax总结 1.1. 理解Atwood定律 1 1.2. H5做出个html的ui是很方便的,跨平台 2 1 ...

  8. Atitit 使用h5技术 html css js 制作桌面程序gui界面解决方案attilax总结

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Atit ...

  9. 基于MATLAB软件GUI界面的自制简单电子琴

    基于MATLAB软件GUI界面的自制简单电子琴 概要: 本文基于MATLAB及其GUI界面设计了一个简单电子琴.利用MATLAB的GUI控件及相关算法,实现了一些简单的功能.这是作者大一暑期课程< ...

  10. 基于MATLAB软件GUI界面的可编程电音合成器软件

    基于MATLAB软件GUI界面的可编程电音合成器软件 1 总体设计 1.1 设计思路 1.2 软件运行 2 软件功能说明 2.1 软件界面 2.1.1 菜单栏 2.1.2 工具栏 2.1.3 MySy ...

最新文章

  1. 快乐学习Pandas入门篇:Pandas基础
  2. 【编程】二叉搜索树的定义
  3. Jmock 原理简单说明
  4. 配置web项目session永不超时
  5. python求平行四边形面积_python 已知平行四边形三个点,求第四个点的案例
  6. SQL学习——小结练习(1)
  7. 巨杉数据库完成数亿元D轮融资,引领金融级分布式数据库发展
  8. Matlab仿真产生复高斯白噪声,验证包络服从瑞利分布,包络平方服从指数分布
  9. CSS初始化示例代码
  10. asp.net中用LinkButton取到gridview中当前行的ID值
  11. paip.System.out.println乱码解决
  12. 一起撸个简单粗暴的Tv应用主界面的网格布局控件(上)
  13. 学堂在线体育与社会作业答案(武汉体育学院)(学堂在线)网课搜题
  14. 计算机视觉论文-2021-06-01
  15. Arduino 连接JDY-08蓝牙模块
  16. STC单片机开发板介绍以及使用(51单片机介绍)
  17. 计算机学生的理想定位范文,我理想中的学校作文范文(通用3篇)
  18. 光滑曲线_光滑流形(4)
  19. icp许可证和edi许可证区别是什么?
  20. English--元音

热门文章

  1. python导入自己写的py_10万行代码10万年薪,利用python查看自己写了多少代码!
  2. 路由器截获微信消息_猫(Modem)和路由器有什么区别?
  3. android多屏互动方案,基于Android的DLNA多屏互动系统的设计与开发
  4. 5 添加数据获得id_D3库实践笔记之元素定位与数据绑定 |可视化系列33
  5. c语言形式参数若为b 4,4月全国计算机等级二级C笔试考试题目
  6. 数据结构详解之向量vector
  7. Python3优雅操作-时间处理与定时任务
  8. 005-统一沟通-部署-基础-环境作业
  9. 29.AngularJS 简介
  10. 一个比较完整的短信接口帮助类参考