需要知道的界面姿势


  我们现在的点点点,好像完成了很多事情,很多小伙伴都将注意力集中到怎么让用户点着更舒服的研究上,好像已经忘了,为啥用户点一下就能达到他们想要的效果.

  如果有一天,调试的过程中,你点击了鼠标没有得到想要的反应, 你于是疯狂的尝试,甚至换了几个鼠标,系统也重装了,还是不行,这应该怎么办?

  知识决定创新,让我们来做个明白人,看看linux系统是怎么完成所点即所得的.

一. 用户的界面体验

  表面上,我们操作了鼠标, 鼠标连接的到主机,主机连接到显示器,显示器上做了相应的相应.

  好像鼠标移动速度和光标移动速度成线性关系,但是不是杠杆原理,也不是鼠标线拽着鼠标动的. [^v^] [-v-]


二. 程序员的界面体验

  学了计算机后,我们知道,这其实都是操作系统帮我们管理的,像 内存硬盘处理器,鼠标键盘显示器 这些都在操作系统里面报道, 然后鼠标操作的时候会产生一个鼠标事件,事件到了操作系统后,操作系统会提醒相关的桌面应用程序进行相应.


三. 操作系统的界面实现

1. 窗口管理器

  学习操作系统后,发现,居然里面还有个窗口管理器,听说这玩意儿可以控制窗口的大小位置和层次.

          在这里插入图片描述
  窗口管理器其实就是将我们的窗口程序外面包裹了一个控制区域,方便我们的窗口控制.

2. X11

  再后来了解到图形界面其实是通过X应用来实现的, X更新到11版本后,就没大更新了,所以干脆叫X为X11,更具有标识性.

在这里插入图片描述

  当然,还有3D的效果,Compiz:
Compiz
  说到3D,我们不得不提一个3D开源渲染项目 OpenGL. 这个东西也是做图像开发的, 界面说白了也是个图像,之间有啥联系呢.

  其实x11有是C-S模型,服务器端就是管理鼠标键盘显示器的程序, 客户端就是我们接触用户程序,服务器接收到鼠标和键盘的事件后,会把事件传递给对应的用户程序,用户程序可以决定怎么去响应鼠标键盘鼠标, 怎么在屏幕上显示.

  但是地层的显示其实就是一个像素点一个像素点的定义.
在这里插入图片描述

3. QT/GTK

  这样应该是多麻烦丫, 于是有小伙伴就想到提前做好,后面的小伙伴直接调用就好了,这里面做得很好的有 QT 和 GTK这些, 其实浏览器也算是喔, html调用的都是浏览器实现了的图形单元, 这样很方便吧.

4. OpenGL

  但是3D作图和2D的图像显示是不一样的,3D作画讲究的视觉变换,平面映射,各个角度对一个物体观看视觉呈现是不一样的,要做显示的话,需要大量的计算,于是就有了专门做3D处理的openGL项目.这个可以看看 计算机视觉 的相关知识进行补充.

##总结
  所以事情就晓得了:
在这里插入图片描述

四. 后记

根据网上小伙伴们的介绍,我作出了自己的解释,希望对大家有所帮助.以后点击了一下鼠标,我们就知道为啥会出现相应的操作了.


五. 参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值