GIS开发学习推荐书目

2023-05-16

 

书名

作者

出版社

版次

GIS

基础

地理信息系统导论

[US] Kang-tsung Chang;

陈健飞 译

电子工业出版社

第七版

ArcGIS地理信息系统空间分析实验教程

汤国安 杨昕

科学出版社

第二版

编程

基础

C语言程序设计+学习辅导

谭浩强

清华大学出版社

第四版

数据结构(C语言版)

严蔚敏 吴伟民

清华大学出版社

第一版

C++面向对象程序设计

谭浩强

清华大学出版社

第二版

Java语言与面向对象程序设计

张利锋 孙丽 杨晓玲等

清华大学出版社

第一版

数据库开发

ModernDatabaseManagement

现代数据库管理

[US] Jeffrey A.Hoffer  Mary B.Prescott  Fred R.McFadden

施伯乐 杨卫东 孙未未等译

机械工业出版社

原书第六版

ArcGIS二次开发

GIS设计与实现

李满春 陈刚等

科学出版社

第二版

ArcGIS Engine地理信息系统开发教程

牟乃夏 等

测绘出版社

第一版

网络开发基础

计算机网络基础

HTML+CSS网页设计与布局从入门到精通

温谦

人民邮电出版社

第一版

Java Web程序开发入门

传智播客高教产品研发部

清华大学出版社

第一版

Spring MVC学习指南

[US]Paul Deck;

林仪明 崔毅 译

人民邮电出版社

第一版

ASP.NET Web程序设计与应用

汪维清 汪维华

清华大学出版社

第一版

WebGIS开发

WebGIS工程项目开发实践

张贵军 陈铭

清华大学出版社

第一版

 

  

GIS基础

地理信息系统导论

[US] Kang-tsungChang(张康聪);陈健飞 译;电子工业出版社;第七版

这本书内容丰富,尤其是操作实例很多,概念也讲的很详实。最新的第七版是针对ArcGIS10.0的,参考价值比较高。

《ArcGIS地理信息系统空间分析实验教程》

汤国安杨昕;科学出版社;第二版

这本书是比较经典的ArcGIS操作指南对一些分析方法也有介绍,跟上一本有些重复的内容,这一系列的书有很多,但是不需要怎么看书,多动手,多做实验。

GIS基本概念和ArcGIS操作不需要很多书,很多书上的名词解释可能会略有不同,但是万变不离其宗,要深入理解,同时要多关注学科前沿问题;ArcGIS软件操作就是前文说到的一定要多动手,可以学习看软件的帮助文档,书只是作为参考。同时现在超图公司的软件也做得不错,学完ArcGIS操作之后要对SuperMap软件了解一下。

编程基础

编程方面的书就比较多了,质量参差不齐,个人觉得清华大学出版社和机械工业出版社的系列丛书编写得比较走心。

《C语言程序设计》+学习辅导

谭浩强;清华大学出版社;第四版;

这是C语言入门最经典得教材几乎大部分高校计算机学院第一本编程书都是这个。C语言学习一定要耐得住寂寞,因为学完这一本书,把书上得内容都弄懂了,依然几乎不能做出什么东西,但是程序语言的语法、编程思想是相同的。

《数据结构(C语言版)》

严蔚敏,吴伟民;清华大学出版社;

跟上面那本一样,也是编程的经典教材,数据结构是编程中很核心很重要的内容,基础一定要打好,勿在浮沙筑高台!

《C++面向对象程序设计》

谭浩强;清华大学出版社;第二版

面向对象是编程中非常重要的方法,使用面向对象方法能够提高开发效率,使开发更加清晰。这本书讲得理论较多,但是学习过程中一定要多动手。

《Java语言与面向对象程序设计》

张利锋孙丽 杨晓玲等著;清华大学出版社

Java语言使当前使用最广范的编程语言,阿里巴巴公司的整个平台以及各种软件系统全部是由Java语言编写。因为Java语言是纯面向对象的语言,因此在有了一定面向对象基础之后再学Java会更容易上手。

数据库开发

很多人一开始学编程都会忽略数据库。数据是程序的血液,数据库就是供血液奔腾不息的血管。

《Modern Database Management》 [US] Jeffrey A.Hoffer  MaryB.Prescott  Fred R.McFadden

《现代数据库管理》施伯乐杨卫东 孙未未 等译

机械工业出版社;原书第六版

跟上面的两方面内容不同,会用数据库管理系统软件不等于学会了数据库,数据库的关键内容在于对数据库概念的深入理解,已经各种数据库设计与开发方法的掌握。这本书比较厚,但是内容并不枯燥,耐心学好是很有必要的。学完这本书再去学我们的地理空间数据库就会更有心得。由于数据库通用的SQL语言相对简答,并且这本书中也有介绍,就不再单独推荐SQL相关书籍。

ArcGIS二次开发

ArcGIS桌面程序开发主要是使用AE,Esri公司提供了大量的帮助文档供开发者参考。

《GIS设计与实现》

李满春陈刚等编著;科学出版社;第二版

这本书其实是依据软件设计方法原理并结合了GIS开发的特点编写的,在实际进行项目开发之前,一定要理清思路,分清每一步要做什么。这本书就以开发的先后顺序为次详细讲解了每部分需要进行的任务,没有太多实际的操作,关键在于要明白开发的方式和顺序,以免在开发过程中遇到问题乱了全局。有了全局的把握再去做下面的事,会事半功倍。

《ArcGIS Engine地理信息系统开发教程》

牟乃夏等著;测绘出版社;

这本书是基于C#.NET的,前面并没有列出C#语言基础的书,那是因为有了C语言和C++基础就不需要再花时间专门学习C#语言了,二者语法基本一致,部分不同的地方可以在进行AE开发时随用随查。对于AE,一定要了解AE的控件结构,结合书中的例子,多看Esri的帮助文档。

学完这本书之后还可以去网上找一找SuperMap的开发文档,作为了解。

网络开发基础

网络开发主要有两个方向,一是JavaWeb,一是ASP.Net。前者当下的主流框架有SpringMVC,后者就是ASP.NET MVC了。

《计算机网络基础》

这本书我们有教材,而且我们现在做的大都是二次开发,计算机网络的内容了解学习即可,不需要自行编程实现。但是并不是说这门课不重要,如果不了解计算机网络的工作原理,网络项目开发起来是会事倍功半的。有兴趣的可以深入学习,这方面的书籍很多,清华大学出版社的精炼易懂,机械工业出版社的更为深入剖析得更为透彻。

《HTML+CSS网页设计与布局从入门到精通》

温谦著;人民邮电出版社

这是详解网页设计的,传统的网络开发尝尝从界面开始,写好界面再做功能。很多WebGIS书也会有一些这方面的介绍,但是往往时凑字数的写法,网页作为重要的一项内容,也应该打好基础。

《Java Web程序开发入门》

传智播客高教产品研发部;清华大学出版社

这是做Java网络应用的基础教程,前面说到过,勿在浮沙筑高台,打好基础,才能进行后面的开发学习。

《Spring MVC学习指南》

[US]Paul Deck; 林仪明 崔毅 译;人民邮电出版社

SpringMVC是JavaWeb开发框架中当前用得最多的一种,如果只做WebGIS开发的话看这本书了解就够了。如果想深入学习可以自己到网上找一些资料。博客园、CSDN等论坛都是学习开发的好去处。

前面两本都是JavaWeb开发方向的,这方面目前应用得也比较多。另外,Microsoft的ASP.NET框架也是很重要的一个方向的框架,而且编程使用C#语言,对于使用AE的来说,C#应该比Java更亲切一些。

《ASP.NET Web程序设计与应用》

汪维清汪维华 主编;清华大学出版社

与上一本书一样,可以作为了解。若想深入学习网络开发,而不是只做WebGIS的话可以深入学习一下,还有ASP.NETMVC框架,网上同样有许多资料。

WebGIS开发

《WebGIS工程项目开发实践》

张贵军陈铭 著;清华大学出版社

这本书是基于JavaWeb的,有理有例,还有实际项目案例,跟着做一遍就基本能够将前面所学内容融会贯通。基于ASP.NET的WebGIS书籍比较少,但是网上有不少资料,而且学了JavaWeb的网络GIS开发相信对.NET平台也是能够触类旁通的。

最后我还是想再说一下,学习开发一定要循序渐进,打好基础才能更好地解决开发系统中遇到的各种综合性问题。编程是不断发展的科学,也要不断学习才可以不断适应新的需求。还有就是,书上能参考到的内容,其实在网上都有资源,甚至更好,只是需要自己去寻找,去总结。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GIS开发学习推荐书目 的相关文章

  • ubuntu 上NVIDIA驱动和CUDA9.0 的坑之一二

    1 参考链接 1 NVIDIA 官方CUDA安装文档 http docs nvidia com cuda cuda installation guide linux index html 2 NVIDIA 对XFree86 下安装驱动的说明
  • 欧拉角奇异性产生的原因

    1 欧拉角奇异性的原因 1 1 奇异性的定义 奇异性 xff0c 英文Singularity wiki中的解释为 In mathematics a singularity is in general a point at which a g
  • 数据结构----依据出栈顺序判断所需的最少栈空间

    1 问题描述 问题 若元素 a b c d e f g 顺序进栈 xff0c 且出栈顺序是 b d c f e a g 则栈的容量至少是 答案 xff1a 3 2 解法描述与分析 2 1 解法描述 记 1 2 3 4 5 6 分别对应 a
  • error: ‘usleep’ was not declared in this scope

    报错 error usleep was not declared in this scope 解决办法 在出错程序的头文件中加入即可 span class token macro property span class token dire
  • Ubuntu 安装 cuda 时卡在登录界面(login loop)的解决方案之一

    当安装 cuda 时 xff0c 需要我们需要安装NVIDIA driver driver 用来支撑cuda 库的调用 xff0c 在满足官方文档 xff08 见 Table1 xff09 对于cuda 版本对于driver版本的要求情况下
  • QT开发--串口助手的编写

    一 创建工程 正常创建一个widget项目工程 xff0c 控件的方式进行代码研究 创建好编译测试一下工程 可以编译进行下一步操作 二 串口UI界面设计 1 选择ui控件 串口接收下位机数据显示界面控件 选择容器 波特率 串口号 数据位等多
  • 又是一年,我的2013年终总结

    昨天是冬至 xff08 2013年的12月22日 xff09 xff0c 日历摆了乌龙 xff0c 不少人提前把节给过了 xff0c 感觉稀里糊涂的 xff0c 也正如自己这一年的心情一样 xff0c 再过一个星期2013年也就算落下帷幕了
  • 按位与、按位异或、按位取反

    amp 按位与 按位或 按位异或 1 按位与运算 按位与运算符 34 amp 34 是双目运算符 其功能是参与运算的两数各对应的二进位相与 只有对应的两个二进位均为1时 xff0c 结果位才为1 xff0c 否则为0 参与运算的数以补码方式
  • VS断点设置无效的问题

    新的一年第一篇博客点的名字是已经被写烂了的题目 xff0c 并且也是浪费了网友无数的宝贵时间也很难解决的老大难问题 VS无法设定断点问题 先得吐槽一下CSDN的编辑器 xff0c 火狐下竟然无法显示工具条问题 xff0c 可能是因为xhEd
  • &与&&有什么区别?

    一 简要说明 按位与 xff1a a amp b 是把 a 和 b 都转换成二进制数然后再进行与的运算 xff1b 逻辑与 xff1a a amp amp b 就是当且仅当两个操作数均为 true 时 xff0c 其结果才为 true xf
  • VC在编译链接的无故死掉解决方案(防VC6卡死)

    现在网上有很多集成了SP6的VC6 xff0c 但是使用起来会有些某名奇妙的问题 xff0c 也许是我用的龙卷风那个版本不行 xff0c 最常见的就是VC在编译链接的时候经常无故死掉的问题了 xff0c 发生时候关也关不掉 xff0c 停也
  • 给纯SDK程序加上自己的ICO图标

    方法一 xff1a 给纯SDK程序加上自己的ICO图标 1 在项目中建一个resource h文件写入一句 define IDR MAINFRAME 128 2 在项目中建一个resource rc写入一句IDI ICO ICON DISC
  • Teechart 的用法详解:在VC6.0 跟Visual Studio 2005及之后版本的区别

    csdn的文件限制导致 xff0c gif图片不清晰 xff0c 我把文章放到简书上了 xff0c 地址 xff1a http www jianshu com p 2f3f6047d99a 什么时候开始接触teechart呢 xff0c 说
  • 为什么现在多数软件都默认选择安装目录为user下的AppData而非Progamfiles?

    为什么放弃默认选择Program Files 我一直百思不得其解 都是UAC xff08 用户权限控制 xff09 惹得祸 自从VISTA引入了权限机制UAC后 xff0c windows7及以后的系统版本 xff0c 对于Program
  • PIXHAWK飞控的外部控制

    PIXHAWK飞控可以运行PX4原生固件和APM固件 xff0c 我这里用的是PX4原生固件 xff0c 因为这款固件是专门为PIXHAWK量身打造的 xff0c 两者合起来性能更强 不过据说APM固件因为其比较完善 xff0c 更加稳定
  • 只知道用一样东西,不明白他的道理,实在不高明

    无论在哪个领域 xff0c 要抓住问题的本质 xff0c 切勿停留在表面 xff0c 要不断地深入下去 就这个小的领域来说 xff0c 你花个3 5年的时间挤进前20 是非常可能的 精通某一方面的技能 xff0c 才能使自己不容易被别人所替
  • 对VC++工程编译过程的梳理

    对VC 43 43 工程编译过程的梳理 VC 43 43 的项目和解决方案文件解读 xff0c 无非就是利用这些信息进行一个软件的编译 xff0c 这些文件里面是存放的项目的配置和工程的组织 xff0c 类似于makefile文件 但是只有
  • Teechart在VC++中使用的碎碎念

    今天再看官网推荐的Teechart的使用方式 xff0c 感觉他们还是推荐使用VC 43 43 6 0的导出头文件格式 xff0c 来引入所有的类 xff0c 并操作teechart控件 All the files necessary ca
  • 汇编语言里 eax, ebx, ecx, edx, esi, edi, ebp, esp这些都是什么意思啊?

    eax ebx ecx edx esi edi ebp esp等都是X86 汇编语言中CPU上的通用寄存器的名称 xff0c 是32位的寄存器 如果用C语言来解释 xff0c 可以把这些寄存器当作变量看待 比方说 xff1a add eax
  • 计算机CPU的工作原理动画

    一直在找有关CPU相关的工作原理动画 xff0c 终于找到了 喜欢这个的可以认真看看了 CPU工作原理系列动画下载

随机推荐

  • CSerialPort串口类最新修正版(解决关闭死锁问题)2014-01-11

    这是一份优秀的类文件 xff0c 好多的地方值得我们学习 xff0c 具体在多线程 xff0c 事件 xff0c 自定义消息 xff0c 类的封装方面等等 Remon提供的串口类网址为 xff1a http codeguru earthwe
  • 国密算法(SM2)java语言的实现:利用bcprov库来实现SM2算法,非对称算法

    SM2算法简介 随着密码技术和计算机技术的发展 xff0c 目前常用的1024位RSA算法面临严重的安全威胁 xff0c 我们国家密码管理部门经过研究 xff0c 决定采用SM2椭圆曲线算法替换RSA算法 SM2是非对称加密算法 xff1b
  • Android系统源码分析-进程间通信机制binder(一):守护进程servicemanager

    1 简介 xff1a 在上一篇 xff08 Android系统源码分析 从init进程开始 xff09 中 xff0c 我们已经看到 xff0c servicemanager是init进程通过init rc的service指令来启动的守护进
  • 树莓派搭建网站,并免费内网穿透发布上线到公网

    系列文章 树莓派搭建网站 xff0c 并免费内网穿透发布上线到公网树莓派搭建WordPress网站 xff0c 并内网穿透发布上线无需公网IP服务器为树莓派上的WordPress网站配置自己的域名 xff0c 并内网穿透发布上线公网可访问S
  • zookeeper 启动报错:exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain) java.io.IOExcept

    ERROR Unexpected exception exiting abnormally org apache zookeeper server ZooKeeperServerMain java io IOException No sna
  • 放弃B/S模式开始新的探索

    真的已经到了自己的忍耐极限了 xff0c 从今天开始用C S模式去开发这个前入式系统 xff01 真的有点不舍 xff0c 毕竟自己已经付出了很多 xff0c 但确实没有办法 xff0c 导师在等着要结果哦 xff01 放弃 从另一个角度来
  • QGC地面站二次开发教程一

    这一节是关于Q Ground Control源码编译安装的教程 因为需要做二次开发 xff0c 所以必须要用QtCreator进行编译 改程序 再编译 采用的QGC源码版本是v3 4 0 是2018年8月10日最新的版本 xff0c 在QG
  • 从猿六年---C++笔试\面试的不成熟小建议来啦

    文章目录 前言 背景面试流程资料总结 刷题指南个人经验总结寄语 前言 背景 本人情况 xff0c 2014年毕业 xff0c 前两年做的更多的是量化分析岗 16年转的C 43 43 开发 xff0c 满打满算也有6年多C 43 43 开发经
  • UPDATE OPENDATASOURCE('SQLOLEDB','')的正确语法格式

    自己补充一下 update naika set xyhkr 61 dateadd Month 1 xyhkr syl 61 a syl b pssl b heti ywjyf 61 a ywjyf 43 39 43 39 43 b psyf
  • 教你玩转Linux—用户账号的管理

    导读用户账号的管理工作主要涉及到用户账号的添加 修改和删除 添加用户账号就是在系统中创建一个新账号 xff0c 然后为新账号分配用户号 用户组 主目录和登录Shell等资源 刚添加的账号是被锁定的 xff0c 无法使用 1 添加新的用户账号
  • 【CMAKE系列】cmake中CMakeLists.txt脚本的常用语法

    在不同的平台编译的时候 xff0c 会用到一些系统内置的变量 xff0c 比如操作系统名称 xff0c 版本号之类 xff1a CMAKE SYSTEM xff1a 系統全名 xff0c 如 Linux 2 4 22 xff0c FreeB
  • linux usb usbip驱动详解(一)

    在分析usbip驱动前 xff0c 我们先来学习一下usb总线在linux系统下的表示 我们知道在linux中 xff0c proc和 sys这个两个文件系统包含了很多有用的信息 xff0c 所以usb的信息自然也少不了利用它们来展示 1
  • linux usb usbip驱动详解(二)

    终于来到usbip驱动代码分析了 xff01 我们在做产品时 xff0c 通常是先讨论方案 制定协议 编码和测试 usbip的方案是行得通的 xff0c 它是从URB对象获取信息 xff0c 然后从tcp发送出去的 xff0c URB是li
  • linux usb usbip驱动详解(四)

    我们先讲解vhci hcd驱动 xff08 linux 4 20 14的usbip驱动 xff09 usb主机控制器驱动hcd学习心得 xff1a 可以阅读某款SOC的主机控制器驱动代码 xff0c 譬如TI的am3358芯片 xff0c
  • docker 启动 centos-7 xrpd server

    docker 启动 centos 7 xrpd server 效果预览 docker 启动 centos 7 xrpd server 连接容器 docker run dit name 61 xrdp p 10022 22 p 13389 3
  • 常见数据结构和算法 的图形界面可视化实现

    解压后 xff0c 运行里面的index html xff0c 推荐火狐浏览器下 针对某一数据结构 或 算法的实现 xff0c 有动态的界面演示 xff0c 并且有相应的代码 xff0c 对学习有很好的参考作用 http pan baidu
  • 再见,2012,你好,2013.

    其实这篇日志过年前 xff0c 已经写得差不多 xff0c 但是忘记发了 xff0c 现在补上 xff0c 现在应该还不是太晚吧 ps xff1a 想了一个很俗的标题 61 61 2012年 xff0c 是对我意义最不平凡的一年 这一年 x
  • 无人机—加速度计与光流数据融合

    加速度计与光流数据融合 无人机的定点定高飞行时实现目标识别追踪 xff0c 航点规划 xff0c 循迹巡线等下一个任务的基础 xff0c 稳定的定高定点飞行才能执行其他高级算法 在室内没有GPS的情况下 xff0c 要想实现这个目标 xff
  • 【转】C语言中 -> 是什么意思?

    gt 是一个整体 xff0c 它是用于指向结构体 C 43 43 中的class等含有子数据的指针用来取子数据 换种说法 xff0c 如果我们在C语言中定义了一个结构体 xff0c 然后申明一个指针指向这个结构体 xff0c 那么我们要用指
  • GIS开发学习推荐书目

    书名 作者 出版社 版次 GIS 基础 地理信息系统导论 US Kang tsung Chang xff1b 陈健飞 译 电子工业出版社 第七版 ArcGIS地理信息系统空间分析实验教程 汤国安 杨昕 科学出版社 第二版 编程 基础 C语言