1.什么是软件?
软件(software):计算机中按照特定的顺序组织的计算机数据和指令的集合!一般情况下软件分为系统软件、应用软件以及介于两者之间的中间件。也就是说软件是安装在操作系统上的,可以用来执行一定功能的计算机程序。
2.软件是用来做什么的?
软件是为了解决生活中的实际问题的
3.那解决生活中实际问题的核心是什么?
进行数据处理———通过软件购物,看电影,聊天,办公,玩游戏
4.数据处理的方式?
不同软件共同的部分:增加,删除,修改,查询 [遍历]
相同的部分:处理流程
流程分为两类:
简单的流程处理逻辑:步骤简单 也就是所说的本地处理。
单机软件:本地处理,也就是在本机就可以完成的过程。
复杂的流程处理逻辑:流程步骤增加,限制升级了,需要进行远程操作。
网络软件:需要借助某些软件(qq ,微信)来进行远程操作才能实现的功能。
5.软件的分类——模拟现实生活
系统软件:通过软件的使用是否需要联网
系统软件:直接安装在硬件上和计算机硬件进行数据交互大软件,如windows操作系统,Android手机操作系统等。
应用软件:
应用软件:安装在操作系统上,用于解决一定的实际业务问题的软件,如office办公软件,QQ聊天软件等。
中间件:
中间件:应用软件和操作系统软件交互的特殊的软件,如负载均衡软件等。
6.应用软件的分类
根据应用是否联网来分类:
1.单机软件:不需要联网,安装在操作系统上,单台主机就可以独立运行并实现软件的操作。比如CS,office,paint。
2.网络软件:需要联网,安装在操作系统上,必须在联网的情况下才能正常执行软件功能的操作。比如QQ ,微信聊天工具。
7.网络软件的分类
根据应用客户端是否需要安装软件来分类:
1.C/S 结构软件:客户端(client)/服务器(server)软件,客户端需要单独下载安装之后,才能正常操作的软件。如QQ , LOL
2.B/S 结构软件:浏览器(Browser)服务器(server)软件,客户端不需要下载安装,只需要用户的电脑上安装有浏览器就可以正常使用软件的全部功能。如:网页游戏、web QQ、淘宝、京东。
8.什么是网站 ?
网站:在网络上可以访问,可以通过客户端浏览器直接访问到网页。
9.网站的分类
1.静态网站(网页):主要用来进行信息展示的网页数据,在网络上被发布共享,其他人通过浏览器直接访问查看,如公司的官方网站,学校的首页等。
2.动态网站:主要通过浏览器访问到网页数据,并且可以进行数据分析处理的网站,如淘宝上购物买商品,包括了网页中的数据,可以动态的从服务器获取并且展示!
如何获取网站上的数据:
1.通过网络url 地址,直接访问服务器,获取并展示服务器上的数据。
2.AJAX:异步刷新技术,在不断刷新网页的前提下,从服务器获取数据;通过DOM操作将数据渲染展示到网页中。
什么样的网站称为软件?
对行业来说:可以执行数据动态处理的网站,就是一种网络软件。
通俗来讲:网站就是软件。
网站和软件的区分
网站包含软件,软件不能直接表示网站。
10.软件的三层结构
(1)软件界面
a) 程序控制界面
(2)数据处理
a) 程序控制数据库
(3)数据存储
11.软件的设计结构
分层模型:软件代码可以在设计过程中,分成不同的层次结构,主要体现在上层代码,下层代码。
|--myproject/ 项目文件夹
|--main.py 程序运行的入口
|--menu.py 程序的界面:专门展示给用户查看界面数据的操作
|--server.py 程序的业务处理类,服务类,专门进行功能处理
|--data.py 数据处理类:专门进行数据的增删查改
|-- mysql 数据存储:数据的仓库
备注:
分层模型的开发原则(项目规范):上层代码可以调用下层代码的变量,函数,方法;下层代码只能返回结果给上层代码使用;同层之间可以互相调用;不能跨层调用。
规范的作用:为了更加高效,快速的开发项目。
实施的操作:尽可能的满足项目规范