Web开发介绍

Web开发介绍

一,认识一个网站

最早的软件都是运行在大型机上的,软件使用者通过“哑终端”登陆到大型机上去运行软件。

后来随着PC机的兴起,软件开始主要运行在桌面上,而数据库这样的软件运行在服务器端,这种Client/Server模式简称CS架构。

随着互联网的兴起,人们发现,CS架构不适合Web,最大的原因是Web应用程序的修改和升级非常迅速,而CS架构需要每个客户端逐个升级桌面App,因此,Browser/Server模式开始流行,简称BS架构。

在BS架构下,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取Web页面,并把Web页面展示给用户即可。

当然,Web页面也具有极强的交互性。由于Web页面是用HTML编写的,而HTML具备超强的表现力,并且,服务器端升级后,客户端无需任何部署就可以使用到新的版本,因此,BS架构迅速流行起来

B/S和C/S结构

B/S结构的优势

不需要通知客户端安装某个软件 -- 只需要客户端有浏览器

不需要通知客户端进行软件升级 -- 只需要升级服务器

可以轻松的实现跨平台 --

web1.0

Web 1.0时代开始于1994年,其主要特征是大量使用静态的 HTML 网页来发布信息,并开始使用浏览器来获取信息,这个时候主要是单向的信息传递。通过Web万维网,互联网上的资源,可以在一个网页里比较直观地表示出来,而且资源之间,在网页上可以任意链接。Web1.0的本质是聚合、联合、搜索,其聚合的对象是巨量、无序的网络信息。Web1.0 只解决了人对信息搜索、聚合的需求,而没有解决人与人之间沟通、互动和参与的需求,所以Web2.0应运而生

就是个静态网站,只能看不能写,没有交互

web2.0

Web 2.0 始于 2004 年 3 月 O’Reilly Media 公司和 MediaLive 国际公司的一次头脑风暴会议。Tim O’Reilly 在发表的“What Is Web2.0”一文中概括了Web2.0的概念,并给出了描述 Web2.0 的框图——Web2.0 MemeMap,该文成为 Web2.0 研究的经典文章。此后关于 Web2.0 的相关研究与应用迅速发展,Web2.0 的理念与相关技术日益成熟和发展,推动了Internet的变革与应用的创新。在Web2.0中,软件被当成一种服务,Internet从一系列网站演化成一个成熟的为最终用户提供网络应用的服务平台,强调用户的参与、在线的网络协作、数据储存的网络化、社会关系网络、RSS应用以及文件的共享等成为了Web2.0发展的主要支撑和表现。Web2.0模式大大激发了创造和创新的积极性,使Internet重新变得生机勃勃。Web 2.0的典型应用包括Blog、Wiki、RSS、Tag、SNS、P2P、IM等

就是动态网站,最直接的体现就是我们现在使用的商城,论坛,微博等,


二,Web应用结构 及 工作原理

二,Web框架

一,什么是框架?

软件框架就是为实现或完成某种软件开发时,提供了一些基础的软件产品,

框架的功能类似于基础设施,提供并实现最为基础的软件架构和体系

通常情况下我们依据框架来实现更为复杂的业务程序开发

一个字,框架就是程序的骨架

二,框架的优缺点

可重用

成熟,稳健

可扩展性良好

选对框架很重要

三,python中常见的框架

大包大揽 Django 被官方称之为完美主义者的Web框架。

力求精简 web.py和Tornado

新生代微框架 Flask和Bottle

四,web框架中的一些概念

MVC

  • 大部分开发语言中都有MVC框架
  • MVC框架的核心思想是:解耦
  • 降低各功能模块之间的耦合性,方便变更,更容易重构代码,最大程度上实现代码的重用
  • m表示model,主要用于对数据库层的封装
  • v表示view,用于向用户展示结果
  • c表示controller,是核心,用于处理请求、获取数据、返回结果

MVT

  • Django是一款python的web开发框架
  • 与MVC有所不同,属于MVT框架
  • m表示model,负责与数据库交互
  • v表示view,是核心,负责接收请求、获取数据、返回结果
  • t表示template,负责呈现内容到浏览器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455806.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python云端系统开发入门_Python云端系统开发入门

第01课 初识Django 课时1Django框架介绍 00 : 14 : 33 开始学习 课时2工程搭建1 00 : 28 : 50 开始学习 课时3工程搭建2 00 : 13 : 22 开始学习 第02课 请求和响应的处理 课时1获取请求url的参数 00 : 07 : 57 开始学习 课时2获取请求url的查询字符串 00 : 12 : 01 开始学习 课…

IBM 安全部门 CTO:AI 必须被重新定义为“增强智能”

编者按:随着人工智能的发展,人们对它逐渐有误会、恐惧之心。如果能够利用好人工智能,特别是在网络安全领域,它将成为人类对抗网络犯罪强有力的武器。IBM 安全部门的 CTO Sandy Bird 认为现在的人工智能应该被重新定义为“增强智能…

【Nginx】通过反向代理配置本地图床功能

安装nginx sudo apt-get install nginx配置nginx.conf sudo vim /etc/nginx/nginx.conf worker_processes auto; pid /run/nginx.pid;events {worker_connections 768;# multi_accept on; }http {sendfile on;tcp_nopush on;tcp_nodelay on;keepalive_timeout 65;types_hash…

构建之法第二章

单元测试:一个开发人员要面对测试一个单元时只给出单元的代码而没有规格说明这样吃力不讨好的任务.你怎样做才会有更多的收获,而不仅仅是发现编译器的Bug?第一步是理解这个单元原本要做什么, --- 不是它实际上做了什么. 比较有效的方法是倒推出一个概要的规格说明.…

帧内预测模式提取

if (input->rdopt) { int mb_available_up; int mb_available_left; int mb_available_up_left; min_rdcost max_rdcost; // precompute all new chroma intra prediction modes // 对色度进行帧内预测 IntraChromaPredict…

Django简介以及安装

Django简介 1. 认识Django Django是一个高级的Python Web框架,它鼓励快速开发和清洁,务实的设计。由经验丰富的开发人员构建,它负责Web开发的许多麻烦,因此您可以专注于编写应用程序,而无需重新创建轮子。它是免费的…

python基础笔试面试题_python基础面试常见题

Python是目前市面上,我个人认为是最简洁、最优雅、最有前途、最全能的编程语言,没有之一。 2、通过什么途径学习的Python? 通过自学,包括网上查看一些视频,购买一些相关专业的书籍。 3、Python和Java、PHP、C、C#、C等…

django-rest-swagger显示接口备注内容

Swagger是一個API開發者的工具框架,用於生成、描述、調用和可視化RESTful風格的Web服務。總體目標是使客戶端和文件系統服務器以同樣的速度來更新,方法,參數和模型緊密集成到服務器端的代碼中,允許API始終保持同步。 在使用 djan…

安全和连接是IoT联网设备2大挑战

IoT正在推动500亿个联网设备在未来10年内从工业、零售、智能照明、智慧城市、汽车、农业、可穿戴设备、智能建筑、医疗市场涌现出来,ARM处理器部门市场营销总监Ian Smythe表示:“到2020年,消费电子和健康、智慧城市和物流、汽车和运输领域的I…

windows下部署免费ssl证书(letsencrypt)

随着网络的发展,网络安全也越来越重要,对于网站来说,从Http升级到https也是我们要做的首要事情。要实现https,首先我们需要申请一张SSL证书,这篇文章我主要介绍下边这几个方面: 1. SSL简单介绍 2. 免费Lete…

Django之URLconf路由

URLconf路由 一个干净优雅的URL方案是高质量Web应用程序中的一个重要细节。 Django可以让你设计URL,无论你想要什么,没有框架限制。 要为应用程序设计URL,您可以非正式地创建一个名为URLconf(URL配置)的Python模块。…

python中什么是关键字参数_如何使用python语言中函数的关键字参数的用法

一般情况下,在调用函数时,使用的是位置参数,即是按照参数的位置来传值;关键字参数是按照定义函数传入的参数名称来传值的。那么,关键字参数怎么使用?工具/原料 python pycharm 截图工具 WPS 方法/步骤 1 打…

HTML块级元素

在HTML5出现之前&#xff0c;人们一般把元素分为块级、内联和内联块元素。本文将详细介绍HTML块级元素h标题(Heading)元素有六个不同的级别&#xff0c;<h1>是最高级的&#xff0c;而<h6>则是最低的。一个标题元素能简要描述该节的主题从<h1>到<h6>&am…

【SSL】HTTPS配置全过程

服务器配置https协议 HTTPS&#xff0c;是以安全为目标的HTTP通道&#xff0c;简单讲是HTTP的安全版。即HTTP下加入SSL层&#xff0c;HTTPS的安全基础是SSL&#xff0c;因此加密的详细内容就需要SSL。 配置HTTPS就需要证书&#xff0c;关于证书方面不做过多解释&#xff0c;只…

iOS开发UI篇—懒载入

iOS开发UI篇—懒载入 1.懒载入基本 懒载入——也称为延迟载入&#xff0c;即在须要的时候才载入&#xff08;效率低&#xff0c;占用内存小&#xff09;。所谓懒载入&#xff0c;写的是其get方法. 注意&#xff1a;假设是懒载入的话则一定要注意先推断是否已经有了。假设没有那…

python之虚拟环境

Virtualenv(虚拟环境) VirtualEnv用于在一台机器上创建多个独立的Python虚拟运行环境&#xff0c;多个Python环境相互独立&#xff0c;互不影响.这样有很多优点,宝宝们要记住哦,比如: 在没有权限的情况下安装新套件 不同应用可以使用不同的套件版本 套件升级不影响其他应用 …

【解决】subprocess.CalledProcessError: Command ‘(‘lsb_release‘, ‘-a‘)‘ returned non-zero exit status 127

pip list 报错 Traceback (most recent call last):File "/home/sensetime/.pyenv/versions/3.6.5/bin/pip", line 11, in <module>sys.exit(main())File "/home/sensetime/.pyenv/versions/3.6.5/lib/python3.6/site-packages/pip/_internal/cli/main.p…

输出四位完全平方数_完全平方数中的规律

PS&#xff1a;很近之前自己收集的资料一个正整数如果是另一个整数的完全平方&#xff0c;那么我们就称这个数为完全平方数&#xff0c;也叫做平方数。如&#xff1a;0&#xff0c;1&#xff0c;4&#xff0c;9&#xff0c;16&#xff0c;25&#xff0c;36&#xff0c;49&#…

RTP格式图 NNEXB格式和RTP格式

Dove(12337127) 10:15:45我看JM代码里面有些疑问 看好多地方都出现了ANNEXB 时空互换(178316135) 10:16:08h264的2种码流编码格式Dove(12337127) 10:16:19我就不太理解是什么意思 刚才翻标准看见了 刚准备认真看看 Dove(12337127) 10:16:29annexb rtp 是么&#x…

第一阶段冲刺第二天

昨天把以前写过的Java普通用户类和订单类看了看&#xff0c;添加了一些变量 看了一些其他网页的代码 今天继续写关于收藏部分的代码 遇到的困难&#xff1a;还是没有什么头绪&#xff0c;做不到真正的实现转载于:https://www.cnblogs.com/lzxw/p/6800311.html