WebGIS开发基础

这篇具有很好参考价值的文章主要介绍了WebGIS开发基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Web开发基础理论

B/S架构

Web软件开发通常使用B/S(Browser/Server,浏览器/服务器)架构,这是Web兴起后的一种网络结构模式,是目前网络开发的主流趋势。
B/S架构采用开放式的浏览器/服务器架构,其基本结构一般包括Web服务器、Web页面、Web浏览器和HTTP协议等部分,如图2-1所示。HTTP协议是基于客户器/服务器架构的信息分布方式,原意为“请求-响应模型”,即将包含信息等网页文档存放在Web服务器上,客户端以Web浏览器为媒介,通过程序向Web服务器发出请求并访问相应的Web网页。基于B/S架构的Web应用,将Web应用程序安装部署在服务器端,客户端直接通过Web浏览器访问,如网络上常见的门户网站、论坛、商城等。
webgis前端开发,前端,服务器,javascript,原力计划

图1 Web 基本结构

Web应用的经典多层架构为表现层、业务逻辑层、数据访问层、数据源。对应于Web的多层结构,从物理角度划分,依次为数据服务器、Web 服务器、客户端(浏览器)三个核心构件。Web应用的多层架构如图2所示,
webgis前端开发,前端,服务器,javascript,原力计划

其中,Web应用程序主要分为Web客户端与Web服务器端,即通常所说的Web前端与Web后台。Web客户端通常指表现层;Web服务器端则包括业务逻辑层与数据访问层,目前使用Web S ervice(Web服务)封装系统的业务逻辑功能与数据操作功能成为主流趋势之一。整个Web系统开发完成后,将编译后的Web应用程序部署在Web服务器上,数据库则部署在数据服务器上,用户通过客户端的浏览器(如IE)进行访问。

(1)表现层(UI):负责用户与整个系统的交互,通俗地讲就是展现给用户的页面,即用户在使用一个系统的时候,他的所见即所得。

(2)业务逻辑层(BLL):与系统所应对的业务(领域)逻辑有关,负责业务规则的制定、业务流程的实现等。针对具体问题的操作,即对数据业务逻辑处理,是针对数据层的操作。业务逻辑层扮演两个不同的角色:对于数据访问层而言是调用者;对于表现层而言是被调用者,可以使用Web S ervice的服务模式实现。

(3)数据访问层(DAL):该层主要是数据库的操作,主要负责数据库的访问,实现对数据表的选择、插入、更新、删除操作,同样可以使用基于Web S ervice的服务模式实现。

Web 应用的多层架构设计具有很多优势:开发人员可以只关注整个架构中的其中一层;可以很容易地用新的实现来替换原有层次的实现;可以降低层与层之间的依赖;有利于标准化;有利于各层逻辑的复用等。基于多层架构设计的Web应用,具备良好的数据兼容性、可移植性,维护方便。随着Web技术的发展,为解决共享难、复用差、跨平台难、业务混乱等诸多问题,Web S ervice技术应运而生。基于Web S ervice的服务模式成为Web应用的主流趋势。Web应用也趋向于前/后端分离,由此衍生出了Web前端开发与Web后台开发。

在Web发展过程中,用户需求和技术进步是推动架构进步的动力。在设计一个Web应用的架构时,要切实满足当前用户需求,同时考虑应对发展变化的灵活性。因此,Web 应用架构的扩展性非常关键。如果每次在需求变化时都会导致架构进行重大改动,那么这无疑是一个失败的设计。

客户端技术

Web前端开发技术包括网页开发技术、客户端交互实现技术等。Web前端开发技术的三要素为HTML、CSS和JavaScript,但随着RIA的流行与普及,Flash/Flex、Silverlight等也非常受欢迎。随着时代的发展,Web前端开发技术的三要素已经演变为现在的HTML5、CSS3、jQuery。

1.HTML

HTML(Hypertext Markup Language)即超文本标记语言,是用于描述网页文档的一种标记语言。它通过在用户文档中加入特定的控制字符或命令,使文档能够按照用户期望的格式输出。HTML语言主要用于客户端的页面设计。HTML作为互联网上“通行无阻”的语言,简单易用但功能强大,支持不同数据格式的文档嵌入,具有简易性、可扩展性、平台无关性等特点。

HTML文档是使用HTML语言编写的ASII文本文档,扩展名为.htm或.html,主要用于定义Web页面的内容与显示格式。HTML文档包含文档(显示)内容与HTML标记两部分,其标记基本上是成对出现的,即由一个开始标记和一个结束标记组成。

随着Web技术的发展与应用,HTML不断丰富和规范,形成相应的各个版本。HTML5 的第一份正式草案已于2008年1月22日公布,目前仍处于发展阶段,但大部分浏览器已经支持某些HTML5技术。HTML5有两大特点:首先,强化了Web网页的表现性能;其次,追加了本地数据库等 Web 应用的功能。广义上的 HTML5,实际指的是包括 HTML、CSS 和JavaScript在内的一套技术组合,它希望能够减少浏览器对于需要插件的富互联网应用(RIA)的需求,并且提供更多能有效增强网络应用的标准集。

2.CSS

CSS(Cascading Style Sheet)即级联样式表,通常又称为风格样式表(Style Sheet),用来进行网页风格设计,即表现HTML或XML等文档的样式。比如,如果想让链接字在未单击时是蓝色的,当鼠标指针移上去时变成红色且有下画线,这就是一种风格。通过设计级联样式表,可以统一控制HTML中各标志的显示属性,能够更有效地控制网页外观,具有精确指定网页元素位置、外观以及创建特殊效果的能力。

在站点网页上使用的级联样式表有三种:外部样式表、内页样式表、行内样式表。其中,网页链接到外部样式表,为网页所创建的嵌入式样式将扩充或覆盖外部样式表中的指定属性。在设计 Web 页面时,通常采用 CSS+DIV 的页面布局。相比传统的用 Table 布局的页面,CSS+DIV方式具有代码精简、易重构、访问网页速度快、浏览器兼容性好等优点。

CSS 目前的最新版本为 CSS3,是能够真正做到网页表现与内容分离的一种样式设计语言。相对于传统HTML而言,CSS能够对网页中的对象位置排版进行像素级的精确控制,支持几乎所有的字体、字号、样式,拥有对网页对象进行显示控制的能力,并能够进行初步交互设计,是目前基于文本展示的最优秀的设计语言。HTML5兼容CSS3,使得HTML5的应用更加广泛。

3.JavaScript

JavaScript的前身为LiveScript。在Netscape公司与Sun公司合作之后,引进Java的程序设计概念,将其改名为JavaScript。之所以取名为JavaScript,原因在于JavaScript是一种嵌入HTML文档的、基于对象的脚本设计语言,语法同Java语言很相似,而且JavaScript的设计使得它很容易同Java语言一同工作,还可以充分支持Java的Applet应用程序。目前,几乎所有的浏览器都支持JavaScript语言。文章来源地址https://www.toymoban.com/news/detail-704897.html

到了这里,关于WebGIS开发基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • webgis开发参考资料

    http://zhihu.geoscene.cn/article/1038 2、arcgis server 紧促(bundle)格式缓存文件的读取 https://blog.csdn.net/abc553226713/article/details/8668839 3、ArcGIS 10.0紧凑型切片读写方法 https://www.cnblogs.com/yuantf/p/3320876.html 4、发布地图服务时导入已有的tpk切片包作为缓存 https://blog.csdn.net/hellfire2007/article/de

    2024年02月08日
    浏览(48)
  • golang实现webgis后端开发

    目录 前言 二、实现步骤 1.postgis数据库和model的绑定 2.将pg库中的要素转换为geojson (1)几何定义 (2)将wkb解析为几何类型 (3)定义geojson类型 (4)数据转换 (5)数据返回  2.前端传入的geojson储存到数据库 3、其他功能实现 总结         停更了接近一个月都在研究一门新语言gola

    2024年02月08日
    浏览(49)
  • WebGIS学习-01-GIS基础概念与Mapbox基础

    1.栅格数据: -.jpg,.png等图片数据; -卫星等拍摄的影像;.tiff 2.矢量数据: -geojson的数据,多用于绘制边界 -放大缩小都不会失真,且高度支持手绘 对于栅格数据: -1.网页将栅格数据渲染为img标签 -2.利用canvas进行绘图 对于矢量数据: -1.渲染为svg标签 -2.渲染为canvas leaflet:

    2024年02月07日
    浏览(46)
  • 【100天精通python】Day47:python网络编程_Web开发:web服务器,前端基础以及静态服务器

    目录 1  网络编程与web编程 1.1 网络编程 1.2 web编程  1.3 前后端交互的基本原理/

    2024年02月11日
    浏览(51)
  • SuperMap GIS基础产品WebGIS FAQ集锦(3)

    【iClient】iClient for Leaflet,如何修改map的默认渲染方式? 【解决办法】map的默认渲染方式取决于浏览器支持,可通过renderer属性设置,设置为L.SVG或L.Canvas 【iClient】leaflet在4326坐标系下为什么绘制圆后展示在地图中为椭圆? 【问题原因】因为4326为84地理坐标系.纬度离赤道越远圆

    2024年02月11日
    浏览(49)
  • SuperMap GIS基础产品WebGIS FAQ集锦(2)

    【iClient】Vue中该如何使用inject传递Map容器? 【解决方案】provide和inject绑定是不可响应的,所以传递时需要传递对象的property,使它变为可响应,示例如下: 【iClient】OpenLayer如何禁止使用默认的鼠标双击放大地图事件? 【问题原因】在OpenLayer中,默认有一个DoubleClickZoom事件

    2024年02月03日
    浏览(49)
  • WebGIS开发最全技术面试题(3万字干货)

    最全webgis二三维开发面试题(带答案),全文3万字干货~ 完整版PDF请后台私信或点击下方链接: 领取完整版面试题 以下为正文: 简单自我介绍 八股文 针对项目,问项目中的业务逻辑,以及使用的技术栈 你之前是做什么的 做过哪些项目,在项目里承担的工作职责 选择有亮

    2024年02月07日
    浏览(37)
  • WebGIS开发八大实战项目,新手必看,精品教程,附源码笔记

    1.前端技能:Html、CSS、 Javascript、WebAPLs、Vue等 2.二维技能:WebGIS基础理论及开发、MapGIS二次开发Openlayers、Leaflet、Mapbox 、Echarts、公共开发平台开发等 3.三维技能:Blender、Three.js、Cesium等 1.w3school https://www.w3school.com.cn/index.html  w3school是一个广为人知的学习网站,提供了丰富的

    2024年02月21日
    浏览(45)
  • webGIS 之 智慧校园案例

    右上⻆就有了交互控件,且可以⽤⿏标左键单击添加标记。 使⽤GeoJSON在本地存储中记录数据 首页我们需要创建一个store.js文件用来写读取和存入的函数 在index .html引入 script src=\\\"./js/store.js\\\"/script 实现思路:使用marker覆盖物的点击事件,导入数据的地方恢复旧数据的点击事件

    2024年04月26日
    浏览(37)
  • webgis(四)

    关于如何添加自定义底图可以看其他大佬的文章: https://cloud.tencent.com/developer/article/2340544 https://blog.csdn.net/weixin_49546561/article/details/121699225 https://zhuanlan.zhihu.com/p/413366752 https://blog.csdn.net/weixin_45532870/article/details/132191366 或者直接去官方文档查阅: https://developers.arcgis.com/javascr

    2024年02月21日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包