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,一经查实,立即删除!

相关文章

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…

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

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

【SSL】HTTPS配置全过程

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

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

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

为企业提供本地销售人员的Universal Avenue获1000万美元A轮融资

为各类B2B企业提供本地销售人员的瑞典初创企业Universal Avenue近日获得了1000万美元的A轮融资。此轮融资由Eight Roads(富达国际的投资机构)领投,原有投资者Northzone和MOOR跟投,加上2015年获得的500万美元种子轮融资&#xff0c…

【Linux分享】Linux常用命令+教程分享

今天分享分为两部分 :) PART01 Linux常用命令分享/ PART02 关于BD面试经验分享 30mins Linux Command: PART 1 你本可以张口就来..... 本篇内容分享的宗旨: 拿下Linux面试 别面试的时候呆呆地说个ls了🚑 本篇分享详细地介绍了常用Linux指令的功能、语法、参…

万能无线鼠标对码软件_400元就能买ROG无线游戏鼠标,ROG影刃2无线版使用体验...

影刃2是ROG刚刚推出的一款新产品,定位入门游戏玩家。目前市面上定位入门游戏玩家的无线鼠标真不多,400块以内的预算想要选购一款合适的无线游戏鼠标,选择其实非常有限。 就ROG产品线而言,烈刃2的价格到了700块钱;罗技G…

wampserver 虚拟主机

转载:http://blog.csdn.net/knight_quan/article/details/51830683 1.背景: 在进行网站开发的时候,通常需要以http://localhost或者127.0.0.1等地址来访问本地环境的网站。不过随着开发项目的增多,需要每次先访问localhost然后再选…

PL/SQL的结构

2019独角兽企业重金招聘Python工程师标准>>> [DECLARE] --声明开始关键字/*这里是声明部分,包括PL/SQL中的变量、常量以及类型第等*/BEGIN --执行部分开始标志/*这里是执行部分,是整个PL/SQL块的主体部分,该部分必须存在,可以是SQL语句或流程控制语句等…

cf方框透视易语言代码怎么写_易语言真的那么不入流吗?

很多人鄙视易语言,为什么那么多人一提易语言,除了骂,还是骂,易语言很大错误吗?知乎上的大神们是这么说的一个语言的“入流”,和是不是英文关键字无关,而是和这种语言进入某一子行业的契机有关。…

python发展历程

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! Python是我喜欢的语言,简洁,优美,容易使用。前两天,我很激昂的向朋友宣传Python的好处。 听过之…

【Django】RBAC权限管理系统模块-理解

今天文章分为两部分 :) PART1 RBAC权限管理内容分享/ PART2 关于字节跳动一面 10 Minutes Django-RBAC: PART 1 这权限管理系统主要功能是什么? 顾名思义,在系统中可以灵活的划分角色组,可以根据功能特性来划分:- 比如设置系…

Linux使用circos

1.在conda中安装bioconda conda install -c bioconda circos -y # 测试是否所有的module都安装好了 circos -module # 所有都显示OK则成功 ok 0.39 Font::TTF::Font ok 2.68 GD ok 0.2 GD::Polyline ... .... 2.检查模块是否齐全 circos -module 3.下…

【Mysql】数据库主从搭建-基于docker

后台可回复【1024】即可获取相关宝藏内容分享 :) 为什么基于Docker搭建? 资源有限 虚拟机搭建对机器配置有要求,并且安装mysql步骤繁琐 一台机器上可以运行多个Docker容器 Docker容器之间相互独立,有独立ip,互不冲突…

java创建对象new后面为啥可以传入参数_你有认真了解过自己的“Java对象”吗?渣男...

对象在 JVM 中是怎么存储的对象头里有什么?作为一名 Javaer,生活中的我们可能暂时没有对象,但是工作中每天都会创建大量的 Java 对象,你有试着去了解下自己的“对象”吗?我们从四个方面重新认识下自己的“对象”创建对…

【技术+某度面经】Jenkins 内容+百度面经分享

后台可回复【1024】即可获取相关宝藏内容分享 :) Q1: Jenkins是什么?? A:Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。 今天文章分为两部分 :) PART1 Jenkins技术分享 / PART2 关…