自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (50)
  • 收藏
  • 关注

空空如也

实战Gradle.pdf.zip

内容简介 · · · · · · Gradle 是Java 软件开发中的自动化构建工具,类似于传统工具如Ant 和Maven。Gradle 吸收或沿用了Maven 中比较成功的一些实践,但相对于Maven 或Ant 又有极强的扩展。 《实战Gradle》(Gradle in Action)全方位地讲解了Gradle 工具相关的知识,包括Gradle 的基本知识、自动化构建的基本概念和最佳实践,以实际案例的方式解释如何使用Gradle 进行软件项目构建。除了基础知识外,由于软件开发绝对不仅仅是实现业务逻辑代码,《实战Gradle》还介绍了一些解决软件开发中常见问题的实践,如多语言、多项目构建,Gradle 在持续集成和持续交付中的应用,Gradle 构建JVM 其他语言,以及Gradle 集成JavaScript 构建等。 云计算和DevOps 的兴起,给软件行业带来了翻天覆地的变化,《实战Gradle》对于云计算平台、开源社区中的一些工具与Gradle 的结合使用也做了相关的介绍。 因为Groovy 用于编写Gradle 构建配置的DSL,所以为了帮助读者更好地理解Gradle,《实战Gradle》还讲解了Groovy 的基本知识,虽然不是全方位地讲解Groovy,但是理解Gradle 足矣。 作者简介 · · · · · · Benjamin Muschko 是一名拥有超过 10 年开发和交付商业软件工作经验的软件开发工程师。他是 Gradleware 工程团队的成员,也是多个 Gradle 流行插件的作者。 目录 · · · · · · 第1 部分 Gradle 介绍 1 1 项目自动化介绍 3 1.1 没有项目自动化的生活 4 1.2 项目自动化的好处 5 1.2.1 防止手动介入 5 1.2.2 创建可重复的构建 5 1.2.3 让构建便携 5 1.3 项目自动化的类型 6 1.3.1 按需构建 6 1.3.2 触发构建 7 1.3.3 预定构建 7 1.4 构建工具 8 1.4.1 什么是构建工具 9 1.4.2 构建工具的剖析 10 1.5 Java 构建工具 12 1.5.1 Apache Ant 12 1.5.2 Apache Maven 16 1.5.3 对下一代构建工具的需求 19 1.6 总结 20 2 下一代构建工具:Gradle 23 2.1 为什么要用Gradle,为什么是现在 24 2.1.1 Java 构建工具的演变 25 2.1.2 为什么应该选择Gradle 27 2.2 Gradle 引人注目的特性集 29 2.2.1 可表达性的构建语言和底层的API 29 2.2.2 Gradle 就是Groovy 31 2.2.3 灵活的约定 32 2.2.4 鲁棒和强大的依赖管理 33 2.2.5 可扩展的构建 34 2.2.6 轻松的可扩展性 34 2.2.7 和其他构建工具集成 35 2.2.8 社区和公司的推动 36 2.2.9 锦上添花:额外的特性 36 2.3 更大的场景:持续交付 36 2.3.1 从构建到部署自动化项目 37 2.4 安装Gradle 38 2.5 开始使用Gradle 40 2.6 使用Gradle 的命令行 42 2.6.1 列出项目中所有可用的task 43 2.6.2 任务执行 44 2.6.3 命令行选项 46 2.6.4 Gradle 守护进程 47 2.7 总结 48 3 通过范例学习构建Gradle 项目 49 3.1 介绍学习案例 50 3.1.1 To Do 应用程序 50 3.1.2 任务管理用例 50 3.1.3 检查组件交互 51 3.1.4 构建应用功能 52 3.2 构建Java 项目 55 3.2.1 使用Java 插件 55 3.2.2 定制你的项目 59 3.2.3 配置和使用外部依赖 60 3.3 用Gradle 做Web 开发 62 3.3.1 添加Web 组件 62 3.3.2 使用War 和Jetty 插件 64 3.4 Gradle 包装器 69 3.4.1 配置包装器 70 3.4.2 使用包装器 71 3.4.3 定制包装器 73 3.5 总结 73 第2 部分 掌握基本原理 75 4 构建脚本概要 77 4.1 构建块 78 4.1.1 项目 78 4.1.2 任务 80 4.1.3 属性 80 4.2 使用task 82 4.2.1 项目版本管理 82 4.2.2 声明task 动作 83 4.2.3 访问DefaultTask 属性 84 4.2.4 定义task 依赖 85 4.2.5 终结器task 86 4.2.6 添加任意代码 87 4.2.7 理解task 配置 87 4.2.8 声明task 的inputs 和outputs 90 4.2.9 编写和使用自定义task 92 4.2.10 Gradle 的内置task 类型 95 4.2.11 task 规则 97 4.2.12 在buildSrc 目录下构建代码 100 4.3 挂接到构建生命周期 101 4.3.1 挂接到task 执行图 103 4.3.2 实现task 执行图监听器 103 4.3.3 初始化构建环境 4.4 总结 106 5 依赖管理 107 5.1 依赖管理概述 108 5.1.1 不完善的依赖管理技术 108 5.1.2 自动化依赖管理的重要性 108 5.1.3 使用自动化依赖管理 110 5.1.4 自动化依赖管理的挑战 110 5.2 通过例子学习依赖管理 112 5.3 依赖配置 113 5.3.1 理解配置API 表示 113 5.3.2 自定义配置 114 5.3.3 访问配置 115 5.4 声明依赖 115 5.4.1 理解依赖API 表示 116 5.4.2 外部模块依赖 117 5.4.3 文件依赖 121 5.5 使用和配置仓库 122 5.5.1 理解仓库API 表示 123 5.5.2 Maven 仓库 124 5.5.3 Ivy 仓库 126 5.5.4 扁平的目录仓库 126 5.6 理解本地依赖缓存 127 5.6.1 分析缓存结构 127 5.6.2 显著的缓存特性 129 5.7 解决依赖问题 130 5.7.1 应对版本冲突 130 5.7.2 强制指定一个版本 131 5.7.3 使用依赖观察报告 131 5.7.4 刷新缓存 132 5.8 总结 133 6 多项目构建 135 6.1 模块化项目 136 6.1.1 耦合与内聚 136 6.1.2 模块划分 137 6.1.3 模块化重构 138 6.2 组装多项目构建 139 6.2.1 settings 文件介绍 140 6.2.2 理解settings API 表示 141 6.2.3 settings 执行 142 6.2.4 获取settings 文件 142 6.2.5 分层布局与扁平布局 143 6.3 配置子项目 144 6.3.1 理解Project API 表示 145 6.3.2 定义特定的行为 146 6.3.3 声明项目依赖 147 6.3.4 多项目部分构建 149 6.3.5 声明跨项目的task 依赖 151 6.3.6 定义公共行为 153 6.4 独立的项目文件 154 6.4.1 为每个项目创建构建文件 155 6.4.2 定义根项目的构建代码 155 6.4.3 定义子项目的构建代码 155 6.5 自定义项目 156 6.6 总结 157 7 Gradle 测试 159 7.1 自动化测试 160 7.1.1 自动化测试类型 160 7.1.2 自动化测试金字塔 160 7.2 测试Java 应用程序 161 7.2.1 项目布局 162 7.2.2 测试配置 162 7.2.3 测试task 163 7.2.4 自动化测试检测 164 7.3 单元测试 164 7.3.1 使用JUnit 164 7.3.2 使用其他的单元测试框架 168 7.3.3 结合使用多个单元测试框架 170 7.4 配置测试执行 172 7.4.1 命令行选项 173 7.4.2 理解测试API 表示 174 7.4.3 控制运行时行为 175 7.4.4 控制测试日志 176 7.4.5 并行执行测试 178 7.4.6 响应测试生命周期事件 179 7.4.7 实现测试监听器 180 7.5 集成测试 181 7.5.1 引入用例研究 181 7.5.2 编写测试类 181 7.5.3 在构建中支持集成测试 182 7.5.4 为集成测试建立约定 184 7.5.5 引导测试环境 186 7.6 功能测试 187 7.6.1 引入用例研究 187 7.6.2 在构建中支持功能测试 188 7.7 总结 192 8 扩展Gradle 195 8.1 通过案例学习介绍插件 196 8.1.1 在云中使用Grade 管理应用 196 8.1.2 设置云环境 197 8.2 从零起步构建插件 200 8.3 写一个脚本插件 201 8.3.1 添加CloudBees 的API 类库 201 8.3.2 在task 中使用CloudBees 的API 202 8.4 编写定制的task 类 206 8.4.1 定制task 的实现选项 206 8.4.2 在buildSrc 下定义定制任务 207 8.5 使用和构建对象插件 214 8.5.1 使用对象插件 215 8.5.2 解析对象插件 217 8.5.3 编写对象插件 218 8.5.4 插件扩展机制 219 8.5.5 给插件一个有意义的名字 222 8.5.6 测试对象插件 222 8.5.7 开发和使用独立的对象插件 224 8.6 总结 226 9 集成与迁移 229 9.1 Ant 与Gradle 230 9.1.1 在Gradle 中使用Ant 脚本功能 231 9.1.2 在Gradle 中使用标准的Ant 任务 237 9.1.3 迁移策略 239 9.2 Maven 和Gradle 242 9.2.1 异同之处 243 9.2.2 迁移策略 246 9.3 比较构建 249 9.4 总结 251 第3 部分 从构建到部署 253 10 IDE 支持和工具 255 10.1 使用IDE 插件生成项目文件 256 10.1.1 使用Eclipse 插件 257 10.1.2 使用IDEA 插件 265 10.1.3 使用Sublime Text 插件 270 10.2 在流行的IDE 中管理Gradle 项目 273 10.2.1 SpringSource STS 对Gradle 的支持 274 10.2.2 IntelliJ IDEA 对Gradle 的支持 278 10.2.3 NetBeans 对Gradle 的支持 280 10.3 使用工具API 集成Gradle 283 10.4 总结 287 11 构建多语言项目 289 11.1 使用Gradle 管理JavaScript 290 11.1.1 处理JavaScript 的典型task 290 11.1.2 在To Do 应用程序中使用JavaScript 291 11.1.3 对JavaScript 库依赖管理 292 11.1.4 利用第三方Ant task 合并和压缩JavaScript 294 11.1.5 将JavaScript 优化作为开发工作流的一部分 296 11.1.6 使用外部的Java 库分析JavaScript 代码 297 11.1.7 使用第三方Gradle JavaScript 插件 299 11.1.8 在Gradle 中使用Grunt 300 11.2 构建基于JVM 的多语言项目 303 11.2.1 JVM 语言插件的基本功能 303 11.2.2 构建Groovy 项目 305 11.2.3 构建Scala 项目 310 11.3 其他语言 314 11.4 总结 315 12 代码质量管理和监测 317 12.1 将代码分析集成到构建中 318 12.2 衡量代码覆盖率 319 12.2.1 探索代码覆盖率工具 320 12.2.2 使用JaCoCo 插件 322 12.2.3 使用Cobertura 插件 324 12.3 执行静态代码分析 326 12.3.1 探讨静态代码分析工具 327 12.3.2 使用Checkstyle 插件 329 12.3.3 使用PMD 插件 331 12.3.4 使用FindBugs 插件 333 12.3.5 使用JDepend 插件 334 12.4 集成Sonar 335 12.4.1 安装并运行Sonar 337 12.4.2 使用Sonnar Runner 分析项目 338 12.4.3 将代码覆盖率报告发布到Sonar 340 12.5 总结 343 13 持续集成 345 13.1 持续集成的好处 346 13.2 安装Git 348 13.2.1 创建GitHub 账号 348 13.2.2 forking GitHub 仓库 349 13.2.3 安装和配置Git 349 13.3 使用Jenkins 构建项目 350 13.3.1 开始使用Jenkins 350 13.3.2 安装Git 和Gradle 插件 350 13.3.3 定义build job 352 13.3.4 执行build job 354 13.3.5 添加测试报告 356 13.4 探索基于云的解决方案 359 13.5 使用Jenkins 创建构建管道 360 13.5.1 创建构建管道的挑战 360 13.5.2 探索基本的Jenkins 插件 361 13.5.3 配置构建管道 364 13.6 总结 366 14 打包和发布 367 14.1 打包和分发 368 14.1.1 定义附加包 369 14.1.2 创建分发包 371 14.2 发布 374 14.2.1 发布到Maven 仓库中 375 14.2.2 老的和新的发布机制 376 14.2.3 声明软件组件为Maven 发布包 376 14.2.4 发布软件组件到本地Maven 缓存中 377 14.2.5 声明自定义的发布包 379 14.2.6 修改所生成的POM 文件 381 14.2.7 发布到本地Maven 仓库中 383 14.2.8 发布到远程的Maven 仓库中 385 14.3 发布到公共的二进制仓库 388 14.3.1 发布到JFrog Bintray 中 388 14.3.2 发布到Maven Central 392 14.4 打包和发布作为构建管道的一部分 393 14.4.1 构建一次 393 14.4.2 发布一次并重用 394 14.4.3 选择一个合适的版本管理方案 395 14.4.4 在可部署包中加入构建信息 398 14.4.5 发布To Do 应用程序WAR 文件 399 14.4.6 扩展构建管道 400 14.5 总结 401 15 基础环境准备和部署 403 15.1 准备基础环境 404 15.1.1 基础设施即代码 404 15.1.2 使用Vagrant 和Puppet 创建虚拟机 405 15.1.3 从Gradle 执行Vagrant 命令 407 15.2 针对部署环境 409 15.2.1 在Groovy 脚本中定义配置 409 15.2.2 使用Groovy 的ConfigSlurper 读取配置 411 15.2.3 在构建中使用配置 412 15.3 自动部署 413 15.3.1 从二进制仓库中获取包 413 15.3.2 确定必需的部署步骤 415 15.3.3 通过SSH 命令部署 415 15.4 部署测试 420 15.4.1 使用冒烟测试验证部署成功 420 15.4.2 使用验收测试验证应用程序功能 423 15.5 将部署集成到构建管道中 424 15.5.1 自动部署到测试环境 425 15.5.2 部署测试 425 15.5.3 按需部署到UAT 和产品环境 426 15.6 总结 427 A 驾驭命令行 429 B Gradle 用户所需要了解的Groovy 435 索引 447

2018-03-20

Android编程权威指南 第3版

Android编程权威指南 第3版 作 者 :(美)比尔·菲利普斯,克里斯·斯图尔特,克莉丝汀·马西卡诺 出版发行 : 北京:人民邮电出版社 , 2017.06 ISBN号 :978-7-115-45759-2 丛书名 : 图灵程序设计丛书 原书定价 : 129.00 主题词 : 移动终端-应用程序-程序设计 中图法分类号 : TN929.53 参考文献格式 : (美)比尔·菲利普斯,克里斯·斯图尔特,克莉丝汀·马西卡诺. Android编程权威指南 第3版[M]. 北京:人民邮电出版社, 2017.06.

2018-03-20

Go程序设计语言.Alan Donovan. Brian W.Kernighan[著].李道兵[译]

作 者 :(美)艾伦·多诺万著;李道兵译 出版发行 : 北京:机械工业出版社 , 2017.04 ISBN号 :7-111-55842-2 页 数 : 286 丛书名 : 计算机科学丛书 主题词 : C语言-程序设计 中图法分类号 : TP312.8 内容提要: 本书由《C程序设计语言》的作者Kernighan和谷歌公司Go团队主管AlanDonovan联袂撰写,是学习Go语言程序设计指南。本书共13章,主要内容包括:Go的基础知识、基本结构、基本数据类型、复合数据类型、函数、方法、接口、goroutine、通道、共享变量的并发性、包、go工具、测试、反射等。本书适合作为计算机相关专业的教材,也可供Go语言爱好者阅读。 参考文献格式 : (美)艾伦·多诺万著;李道兵译. 计算机科学丛书 Go程序设计语言[M]. 北京:机械工业出版社, 2017.04.

2018-03-14

高性能电子商务平台构建 架构、设计与开发

内容简介 · · · · · · 中国领先的电商系统解决方案提供商ShopNC官方首次分享他们多年来开发电商平台的先进理念、核心技术和宝贵经验,本书将成为业内构建电商平台的标准技术范本。它不仅宏观介绍电商平台技术架构和标准套件组成,而且还详细讲解各种套件的模块构成、设计思路和代码实现,以及电商平台的界面设计、用户体验,为构建安全、可靠、易维护、高性能的电商平台提供了完整的技术和解决方案。 全书10章,分为四个部分:第一部分(第1章)功能规划,介绍了标准电商平台的构成套件及各套件的功能组成部分;第二部分(第2章)技术架构规划,规划实现第一部分功能需要用到的技术点及实现方法,搭建在代码编写前需要的技术框架;第三部分(第3~9章)功能实现,细致而全面地讲解了构成电子商务平台的各个功能模块的设计思路、代码实现、技巧分享、以及最终功能的实例体验,完成了从理论到实践的完美转换;第四部分(第10章)安装部署,将已制作完成的商城部署至服务器,并介绍了集群部署中主要节点的部署过程。 这四个部分对电子商务平台从规划,再到各个重点模块构建,再到部署及性能、用户体验的优化,全面透彻地进行了讲解,满足了从电子商务平台建立到运维的基本需求。按照以上内容逐一进行商城的开发工作,可以使一项本来繁琐杂乱的工作变得有条不紊,并充满魅力。 作者简介 · · · · · · ShopNC,全称天津市网城天创科技有限责任公司,成立于2007年,电商技术平台领域的领导者,专注提供电商整体解决方案。公司拥有国内领先的技术人才、开发团队及资深的行业解决方案专家。自主研发出成熟的B2B2C模式电商平台、C2C模式多店商城、O2O本地生活类电商、CMS文章资讯、社交圈子社区、微商城分享互动、在线IM通讯、CRM、移动手机平台应用及微信商城等系统,拥有全面、完善的电商产品综合服务体系。 公司创始人兼CEO吴津津拥有多年LAMP架构下开发经验,主持开发过多个知名PHP软件项目。目前致力于企业级PHP应用架构、集群化部署、分布式应用及系统安全方面的实践与研究,同时,他也是国内最早的PHP技术推广者之一,多年来一直致力于PHP技术的普及与推广。 目录 · · · · · · 推荐序一 推荐序二 前 言 第1章电商平台标准化套件1 1.1商城系统2 1.2圈子6 1.3 CMS7 1.4 IM8 1.5移动端9 1.6 本章小结9 第2章电商平台的技术架构10 2.1操作系统11 2.2 应用服务器11 2.3 负载均衡13 2.3.1F514 2.3.2LVS14 2.3.3Nginx18 2.3.4HAProxy18 2.4缓存19 2.4.1客户端缓存19 2.4.2CDN加速20 2.4.3静态文件缓存20 2.4.4数据缓存21 2.5数据存储21 2.5.1关系型数据库21 2.5.2内存型数据库22 2.5.3分布式数据库22 2.5.4MySQL可扩展方案23 2.6文件存储24 2.7消息队列25 2.8搜索设计25 2.9开发框架26 2.10本章小结27 第3章商城套件的设计与实现28 3.1会员模块28 3.1.1模块构成28 3.1.2设计思路29 3.1.3代码实现35 3.1.4功能体验38 3.1.5开发和使用40 3.2商品模块43 3.2.1 模块构成44 3.2.2设计思路46 3.2.3代码实现49 3.2.4功能体验60 3.3 促销模块63 3.3.1模块构成64 3.3.2设计思路69 3.3.3 代码实现71 3.3.4 功能体验77 3.3.5 开发和使用80 3.4 购物车模块82 3.4.1 模块构成82 3.4.2 设计思路82 3.4.3 代码实现85 3.4.4 功能体验96 3.5 配送模块98 3.5.1 模块构成99 3.5.2 设计思路100 3.5.3 功能实现101 3.5.4 物流跟踪107 3.6 订单模块107 3.6.1 设计思路107 3.6.2 代码实现111 3.6.3 功能体验123 3.7 支付接口127 3.7.1 接入原理127 3.7.2 设计思路128 3.7.3代码实现129 3.8 退单模块134 3.8.1 模块构成134 3.8.2 设计思路135 3.8.3 代码实现137 3.8.4 功能体验142 3.8.5 开发技巧145 3.9 结算模块146 3.9.1 设计思路146 3.9.2 代码实现148 3.9.3 功能体验154 3.10 统计模块158 3.10.1 模块构成159 3.10.2 设计思路162 3.10.3 代码实现169 3.10.4 功能体验173 3.10.5 开发和使用180 3.11 预存款181 3.11.1 设计思路182 3.11.2 代码实现183 3.11.3 功能体验189 3.12本章小结194 第4章CMS套件的设计与实现195 4.1CMS文章195 4.1.1模块构成196 4.1.2 设计思路196 4.1.3代码实现197 4.1.4功能体验200 4.2CMS画报202 4.2.1模块构成202 4.2.2设计思路203 4.2.3代码实现203 4.2.4功能体验204 4.3CMS专题205 4.3.1模块构成205 4.3.2设计思路206 4.3.3代码实现207 4.3.4功能体验208 4.4CMS首页编辑209 4.4.1 模块构成209 4.4.2 设计思路210 4.4.3 代码实现211 4.4.4 功能体验212 4.5其他功能215 4.5.1评论215 4.5.2心情216 4.5.3分享217 4.5.4 导航管理217 4.6 本章小结218 第5章社交平台的设计与实现219 5.1SNS模块219 5.1.1模块构成219 5.1.2设计思路220 5.1.3 代码实现221 5.1.4 功能体验223 5.2 圈子(讨论组)套件224 5.2.1 圈子特点224 5.2.2 设计思路225 5.2.3 代码实现228 5.2.4功能体验238 5.3 本章小结240 第6章IM套件的设计与实现241 6.1 模块构成241 6.2 设计思路241 6.3代码实现245 6.3.1Node服务器端245 6.3.2PHP服务器端252 6.3.3页面客户端254 6.4功能体验262 6.5 开发技巧263 6.6 本章小结263 第7章移动应用套件的设计与实现264 7.1 设计思路264 7.1.1 产品设计265 7.1.2设计原则265 7.2 代码实现267 7.2.1 框架结构介绍267 7.2.2 CrashHandler工具类268 7.2.3DbHelper工具类274 7.2.4HttpHelper工具类276 7.2.5ImageHelper工具类278 7.2.6SystemHelper工具类283 7.3相关工具及第三方框架介绍287 7.3.1原型设计工具介绍287 7.3.2AndroidAnnotations介绍289 7.3.3轻量级ORM框架ActiveAndroid介绍290 7.4 本章小结292 第8章O2O套件的设计与实现293 8.1 O2O模式概述293 8.1.1 O2O模式的产生背景293 8.1.2 O2O模式的特点294 8.1.3 O2O模式的优势与核心294 8.2 产品设计思路296 8.3 商户模块的设计与实现297 8.3.1 模块构成297 8.3.2 设计思路298 8.3.3 代码实现300 8.3.4 功能体验307 8.4 团购模块设计311 8.4.1 模块构成311 8.4.2 设计思路312 8.4.3 代码实现313 8.4.4 功能体验319 8.5 优惠券模块设计321 8.5.1 模块构成321 8.5.2 设计思路322 8.5.3 代码实现324 8.5.4 功能体验328 8.6 结算模块设计331 8.6.1 模块构成331 8.6.2 设计思路332 8.6.3 代码实现333 8.6.4 功能体验335 8.7 本章小结336 第9章电商平台界面设计与用户体验337 9.1 网页设计的那些事儿337 9.1.1 视觉设计、交互设计、前端开发337 9.1.2 为代码增加可读性注释338 9.1.3 语义化的HMTL5标签使用340 9.1.4 base.css会减轻你的工作负担347 9.1.5 如何给CSS命名351 9.1.6 应该用id还是class354 9.1.7 能少用就少用CSS Hack356 9.1.8 一些CSS和浏览器之间的怪异显示及对应的解决办法357 9.2 商城首页360 9.2.1 B2B2C商城首页设计元素360 9.2.2 色彩风格、导航、顶部的统一化364 9.2.3 焦点广告区域的制作366 9.2.4 内容块的制作与可视化编辑理念370 9.3 商品详情页面372 9.3.1 商品页面布局方式372 9.3.2 针对搜索引擎的页面优化制作374 9.4 购物车页面377 9.4.1 购物车页面设计特征377 9.4.2 根据页面需要选择HTML标签的技巧380 9.5 订单页面385 9.5.1 购物详单设计理念385 9.5.2 订单中要有哪些内容388 9.5.3 状态步骤的设计与制作389 9.6 本章小结392 第10章电商平台的安装与部署393 10.1 Web服务器部署393 10.2 数据库部署404 10.3 电商系统安装406 10.3.1 基本安装406 10.3.2 设置定时任务409 10.3.3 开启伪静态411 10.3.4 设置域名412 10.4 图片存储部署413 10.5 缓存服务器部署413 10.6 搜索服务器部署414 10.7 IM服务器部署416 10.8 本章小结418 附录A移动端接口文档419 附录BShopNC B2B2C商城功能要点423 ShopNC成员简介424

2018-03-14

现代企业的Web架构、流程及组织

内容简介 · · · · · · 用户急剧增加,流量迅猛增长,交易频繁进行……这对于一个技术组织来说,无疑是件幸福的事情。然而,如果网站不能满足持续增长的客户需求,响应时间变慢,各种故障频出,甚至停机无法提供服务,那么幸福必将是短暂的。这就要求网站具有很好的可扩展性,能根据需求持续扩展服务能力。 不同于其他类似主题的图书主要关注当前技术的实现,本书强调,可扩展性不仅仅是技术问题,还涉及组织、流程、架构等方方面面。没有一个顺畅的流程、合理的组织结构或能进行沟通的管理者,再好的技术和想法也会大打折扣。而没有遵循一定原则的架构设计,等到瓶颈出现时难免令人懊悔。扩展组织、流程和系统,使之相互支持,达到良性循环,不仅仅是门科学,还是一门艺术。本书正是对此提供了全面的、实践证明确实有效的解决思路和实用技巧。 两位作者具有三十多年扩展系统的丰富经验,既服务过如通用电气、摩托罗拉、Gateway、eBay、PayPal等大公司,也曾任职于众多经常面临扩展问题的创业公司。结合阅读他们的另一部作品《高扩展性网站的50条原则》,必定会有更多收获。 本书主要内容包括: 可扩展组织的人员配置:技术组织领导者需要了解的人员、组织、管理和领导力方面的技能。 制定扩展流程:超高速发展的企业扩展技术平台所需的流程,包括故障和问题管理、危机管理、变更管理、确定余量、风险管理、性能和压力测试、回退等。 构建可扩展的方案:通过AKF扩展立方识别扩展需求,选择最佳的解决方法,并借助缓存、应用和数据库划分以及异步设计等优化系统性能。 利用新兴的技术,如云和网格,实现扩展。 构建有效的监控策略,及时回答最重要的问题。 为快速的数据增长和新的数据中心进行规划。 作者简介 · · · · · · Martin L.Abbott 扩展咨询公司AKF Partners的创始合伙人之一。在此之前,他是Quigo公司的COO,负责产品战略、产品管理、技术开发和客户服务。在Quigo之前,他在eBay工作了将近六年,最后的职位是技术部的SVP、CTO和执行主管团队成员。更早之前,他在Gateway和摩托罗拉担任过程序员、管理者及执行主管。他现任onForce、LodgeNet Interactive(NASD: LNET)以及Bullhorn的董事会成员。此外,他还在Rearden Commerce、Goldmail和LiveOps担任咨询委员会的成员。在西点军校取得计算机科学的学士学位后,他在佛罗里达大学取得了计算机工程的硕士学位,并参加过哈佛商学院的高级经理培训课程,现正在美国凯斯西储大学攻读管理学的博士学位。 Michael T. Fisher 扩展咨询公司AKF Partners的创始合伙人之一。他曾在Quigo担任了两年的CTO,在Quigo被AOL收购后的过渡期,还担任过这家公司的总裁。在Quigo之前,他是PayPal公司(eBay旗下公司之一)的开发和架构副总裁,负责建立一个有两百多位工程师的组织。更早之前,他在通用电气工作过七年,致力于开发公司的技术战略和流程。在西点军校取得了计算机科学的学士学位后,他在夏威夷太平洋大学取得了硕士学位,后在肯尼迪西部大学取得了信息管理系统的博士学位,在美国凯斯西储大学获得了MBA。此外,他还是六西格玛黑带大师,现正在美国凯斯西储大学攻读管理学的博士学位。 目录 · · · · · · 目    录 导言  1 第一部分  可扩展组织的人员配备 第1章  人员和领导力对可扩展性的影响  6 1.1  AllScale简介  6 1.2  为什么要考虑人员  7 1.3  为什么要考虑组织  8 1.4  为什么要考虑管理和领导力  12 1.5  结论  14 本章要点  14 第2章  可扩展技术组织中的角色  15 2.1  失败的后果  15 2.2  角色的定义  16 2.3  执行主管的职责  17 2.3.1  CEO  18 2.3.2  CFO  19 2.3.3  业务单元责任人和P&L责任人  19 2.3.4  CTO/CIO  19 2.4  组织的职责  20 2.4.1  架构团队的职责  21 2.4.2  软件开发团队的职责  21 2.4.3  生产运营团队的职责  21 2.4.4  基础设施团队的职责  22 2.4.5  质量保证团队的职责  22 2.4.6  产能计划团队的职责  22 2.5  个人贡献者的职责和特征  23 2.5.1  架构师  23 2.5.2  软件工程师  23 2.5.3  操作员  24 2.5.4  基础设施工程师  24 2.5.5  QA工程师/分析师  24 2.5.6  产能计划员  25 2.6  一个组织示例  25 2.7  定义职责的工具  26 2.8  结论  28 本章要点  29 第3章  设计组织  30 3.1  影响可扩展性的组织因素  30 3.2  团队规模  32 3.2.1  警示信号  35 3.2.2  扩大团队或拆分团队  36 3.3  组织架构  38 3.3.1  职能型组织  38 3.3.2  矩阵型组织  40 3.4  结论  42 本章要点  43 第4章  领导力101  44 4.1  什么是领导力  45 4.2  领导力的一个概念模型  46 4.3  评估你是谁  47 4.4  身先士卒  49 4.5  保持谦虚的态度  49 4.6  使命第一,人员至上  50 4.7  做出及时、合理、符合道德的决策  51 4.8  给团队授能和可扩展性  51 4.9  一切围绕股东价值  52 4.10  愿景  53 4.11  使命  55 4.12  战略目标  55 4.13  整合愿景、使命和战略目标  57 4.14  通向成功的因果图  59 4.15  结论  61 本章要点  61 第5章  管理101  63 5.1  管理是什么  63 5.2  项目和任务管理  64 5.3  建设团队——一个运动比喻  65 5.4  提升团队——一个花园比喻  66 5.5  衡量方法、指标和目标评估  69 5.6  目标树  71 5.7  为成功铺路  72 5.8  结论  72 本章要点  73 第6章  进行商业论证  74 6.1  理解经验的鸿沟  74 6.1.1  为什么业务主管可能成为问题所在  75 6.1.2  为什么技术主管可能成为问题所在  75 6.2  破除企业思维定式  76 6.2.1  建立关系  78 6.2.2  树立榜样  78 6.2.3  培训其他主管  78 6.2.4  利用RASCI模型  79 6.2.5  用商业语言交谈  79 6.2.6  让他们参与进来  79 6.2.7  用事实让主管团队感到恐慌  80 6.3  为扩展论证  80 6.4  结论  83 本章要点  83 第二部分  制定扩展流程 第7章  理解流程对扩展的重要性  86 7.1  流程的目的  87 7.2  正确的时间,正确的流程  89 7.2.1  需要有多严苛  90 7.2.2  需要有多复杂  91 7.3  好的流程何时会变成坏的  93 7.4  结论  93 本章要点  94 第8章  管理故障和问题  95 8.1  什么是故障  96 8.2  什么是问题  96 8.3  故障管理的步骤  97 8.4  问题管理的步骤  99 8.5  化解故障管理与问题管理之间的冲突  100 8.6  故障和问题的生命周期  100 8.7  召开每日故障例会  101 8.8  召开季度故障回顾会议  102 8.9  事后分析流程  102 8.10  综合应用  104 8.11  结论  106 本章要点  106 第9章  管理危机和升级  107 9.1  什么是危机  107 9.2  为什么要把危机与其他故障区分开来  108 9.3  危机如何改变一个公司  108 9.4  为混乱赋予秩序  109 9.4.1 “问题经理”的角色  110 9.4.2  团队经理的角色  111 9.4.3  首席工程师的角色  112 9.4.4  个人贡献者的角色  113 9.5  沟通和控制  113 9.6  作战室  114 9.7  升级  115 9.8  状态沟通  115 9.9  危机事后分析会议  116 9.10  危机后续跟进和沟通  117 9.11  结论  117 本章要点  118 第10章  控制生产环境中的变更  119 10.1  什么是变更  120 10.2  变更识别  121 10.3  变更管理  122 10.3.1  变更建议  123 10.3.2  变更批准  125 10.3.3  变更日程安排  125 10.3.4  变更实施和记录  127 10.3.5  变更验证  127 10.3.6  变更审查  127 10.4  变更控制会议  128 10.5  持续的流程改善  128 10.6  结论  129 本章要点  129 第11章  确定应用的余量  131 11.1  流程的目的  131 11.2  流程的步骤  132 11.3  理想的使用比例  135 11.4  结论  137 本章要点  138 第12章  探讨架构设计原则  139 12.1  原则和目标  139 12.2  原则选择  142 12.3  AKF的十二条架构设计原则  143 12.3.1  N+1设计  143 12.3.2  设计为能够回退的  144 12.3.3  设计为能够禁用的  144 12.3.4  设计为能够监控的  144 12.3.5  设计为多个活动站点  144 12.3.6  采用成熟的技术  144 12.3.7  设计为异步的  145 12.3.8  无状态系统  145 12.3.9  进行横向扩展而不是纵向扩展  145 12.3.10  设计为至少可以在两条轴上进行扩展  145 12.3.11  非核心的组件可以购买  145 12.3.12  采用同质化硬件  145 12.4  扩展原则深度解析  146 12.4.1  设计为能够监控的  146 12.4.2  设计为多个活动站点  147 12.4.3  设计为异步的  147 12.4.4  无状态系统  148 12.4.5  进行横向扩展而不是纵向扩展  148 12.4.6  设计为至少可以在两条轴上进行扩展  149 12.5  结论  150 本章要点  150 第13章  联合架构设计  151 13.1  修正组织的功能障碍  151 13.2  设计为能够跨部门扩展  153 13.3  开始条件和结束条件  155 13.4  结论  157 本章要点  157 第14章  架构评审委员会  159 14.1  通过审查确保可扩展性  159 14.2  委员会成员  160 14.3  会议实施  162 14.4  开始条件和结束条件  164 14.5  结论  165 本章要点  166 第15章  关注核心竞争力:构建还是         采购  167 15.1  构建还是采购与可扩展性的关系  167 15.2  关注成本  168 15.3  关注竞争优势  168 15.4 “非我所建”现象  169 15.5  结合成本和竞争优势  170 15.5.1  这个组件能够创造竞争优势吗?  170 15.5.2  我们是这个组件或资产最好的责任人吗?  171 15.5.3  这个组件上的竞争如何?  171 15.5.4  我们能经济有效地构建这个组件吗?  171 15.6  AllScale公司的构建还是采购难题  172 15.7  结论  173 本章要点  174 第16章  确定风险  175 16.1  风险管理对扩展的重要性  175 16.2  衡量风险  176 16.3  管理风险  181 16.4  结论  183 本章要点  184 第17章  性能测试和压力测试  185 17.1  执行性能测试  185 17.1.1  判断标准  186 17.1.2  测试环境  186 17.1.3  定义测试  187 17.1.4  执行测试  188 17.1.5  分析数据  188 17.1.6  报告给工程师  189 17.1.7  重复测试和分析  189 17.2  压力测试不要有压力  190 17.2.1  确立目标  190 17.2.2  识别关键服务  191 17.2.3  确定负载  191 17.2.4  测试环境  192 17.2.5  识别监控项  192 17.2.6  制造负载  192 17.2.7  执行测试  193 17.2.8  分析数据  193 17.3  可扩展性的性能测试和压力测试  194 17.4  结论  195 本章要点  196 第18章  屏障条件和回退  197 18.1  屏障条件  197 18.1.1  屏障条件和敏捷开发  198 18.1.2  屏障条件和瀑布开发  200 18.1.3  屏障条件和混合模型  200 18.2  回退能力  201 18.2.1  回退窗口需求  201 18.2.2  回退的技术考量  202 18.2.3  回退的成本考量  203 18.3  功能减负——设计为能够禁用的  203 18.4  结论  204 本章要点  205 第19章  要快还是要正确  206 19.1  业务上的权衡  206 19.2  与可扩展性的关系  209 19.3  如何做决策  210 19.4  结论  213 本章要点  214 第三部分  构建可扩展的方案 第20章  不受技术限制的设计  216 20.1  实现并非架构  216 20.2  不受技术限制的设计  217 20.2.1  TAD和成本  217 20.2.2  TAD和风险  218 20.2.3  TAD和可扩展性  219 20.2.4  TAD和可用性  221 20.3  TAD方法  221 20.4  结论  222 本章要点  222 第21章  创建故障隔离的架构  224 21.1  故障隔离的架构的术语  224 21.2  故障隔离的好处  226 21.2.1  故障隔离和可用性——限制影响  226 21.2.2  故障隔离和可用性——故障检测和解决  228 21.2.3  故障隔离和可扩展性  228 21.2.4  故障隔离和上市时间  229 21.2.5  故障隔离和成本  229 21.3  如何进行故障隔离  230 21.3.1  原则1:什么都不能共享  230 21.3.2  原则2:什么都不能跨过泳道边界  231 21.3.3  原则3:在泳道内交易  231 21.4  何时实现故障隔离  231 21.4.1  方法1:把最赚钱的功能放入泳道  232 21.4.2  方法2:把最容易引发故障的功能放入泳道  232 21.4.3  方法3:根据自然界限划分泳道  232 21.5  如何测试故障隔离的设计  233 21.6  结论  233 本章要点  234 第22章  AKF扩展立方入门  235 22.1  概念,还是规则和工具  235 22.2  AKF扩展立方介绍  236 22.3  扩展立方的含义  237 22.4  扩展立方的X轴  238 22.5  扩展立方的Y轴  239 22.6  扩展立方的Z轴  240 22.7  综合应用  241 22.8  何时何地使用扩展立方  243 22.9  结论  243 本章要点  244 第23章  为扩展划分应用  245 23.1  应用的AKF扩展立方  245 23.2  AKF应用扩展立方的X轴  246 23.3  AKF应用扩展立方的Y轴  248 23.4  AKF应用扩展立方的Z轴  249 23.5  综合应用  251 23.6  应用扩展立方的实际应用  253 23.6.1  电子商务平台  253 23.6.2  人力资源管理系统  254 23.6.3  后台办公IT系统  255 23.6.4  经验之谈  255 23.7  结论  256 本章要点  257 第24章  为扩展划分数据库  258 24.1  数据库的AKF扩展立方  258 24.2  AKF数据库扩展立方的X轴  259 24.3  AKF数据库扩展立方的Y轴  262 24.4  AKF数据库扩展立方的Z轴  264 24.5  综合应用  265 24.6  数据库扩展立方的实际应用  267 24.6.1  电子商务平台  267 24.6.2  人力资源管理系统  269 24.6.3  后台办公IT系统  269 24.6.4  经验之谈  270 24.6.5  时间方面的考量  270 24.7  结论  271 本章要点  271 第25章  为性能和扩展进行缓存  272 25.1  缓存定义  272 25.2  对象缓存  275 25.3  应用缓存  277 25.3.1  代理缓存  278 25.3.2  反向代理缓存  279 25.3.3  缓存软件  280 25.4  内容交付网络  281 25.5  结论  282 本章要点  282 第26章  实现扩展的异步设计  284 26.1  同步的定义  284 26.2  同步调用,还是异步调用  285 26.2.1  同步扩展,还是异步扩展  286 26.2.2  异步系统示例  288 26.3  定义状态  290 26.4  结论  293 本章要点  294 第四部分  解决其他的问题和挑战 第27章  数据太多  296 27.1  数据的成本  296 27.2  数据的价值和成本–价值难题  298 27.3  让数据成为有利可图的  299 27.3.1  期权价值  300 27.3.2  竞争优势  300 27.3.3  成本合理的解决方案(分层的存储方案)  301 27.3.4  转换数据  302 27.4  处理大量的数据  302 27.5  结论  305 本章要点  306 第28章  云和网格  307 28.1  历史和定义  307 28.1.1  网格计算  309 28.1.2  公共云和私有云  310 28.2  云的特征和架构  311 28.2.1  按用量付费  311 28.2.2  按需扩展  311 28.2.3  多租户  312 28.2.4  虚拟化  313 28.3  云和网格的区别  314 28.4  结论  315 本章要点  316 第29章  在云上翱翔  317 29.1  云计算的利弊  317 29.1.1  云计算的优点  318 29.1.2  云计算的缺点  320 29.2  云计算的不同用法  323 29.2.1  环境  323 29.2.2  技能集合  325 29.3  决策流程  325 29.4  结论  327 本章要点  328 第30章  接上网格  329 30.1  网格的利弊  329 30.1.1  网格的优点  330 30.1.2  网格的缺点  331 30.2  网格计算的不同用法  333 30.2.1  生产网格  333 30.2.2  编译网格  334 30.2.3  数据仓库网格  335 30.2.4  后台办公网格  335 30.3  决策流程  336 30.4  结论  338 本章要点  338 第31章  监控应用  340 31.1  “为什么我们没能及早发现它?”  340 31.2  实现监控的框架  342 31.2.1  用户体验和业务指标  345 31.2.2  系统监控  345 31.2.3  应用监控  346 31.3  衡量监控:什么有价值,什么无价值  347 31.4  监控和流程  348 31.5  结论  349 本章要点  349 第32章  规划数据中心  350 32.1  数据中心的成本和约束  350 32.2  位置、位置、还是位置  352 32.3  数据中心与增量增长  354 32.4  三条三之原则  355 32.4.1  第一条三之原则:数据中心的三个成本驱动力  355 32.4.2  第二条三之原则:三对服务器来说是个神奇数字  356 32.4.3  第三条三之原则:三对数据中心来说是个神奇数字  356 32.5  构建多个活动数据中心要考虑的因素  359 32.6  结论  360 本章要点  361 第33章  综合应用  362 33.1  接下来做什么  363 33.2  案例分析  365 33.2.1  eBay:巨大的成功和可扩展性大爆炸  365 33.2.2  Quigo:出现可扩展性问题的年轻产品  366 33.2.3  ShareThis:一个创业公司的故事  367 33.3  参考资料  368 附    录 附录A  计算可用性  372 附录B  产能规划计算  378 附录C  负载和性能计算  383

2018-03-14

RESTful Web Services Cookbook 中文版

内容简介 · · · · · · RESTful Web Services Cookbook中文版:REST最佳实践手册,ISBN:9787121143908,作者:(美)Subbu Allamaraju(沙布·阿拉马拉尤)著,丁雪丰,常可 译 作者简介 · · · · · · “无论您打算使用何种语言构建RESTful服务,本书都是一本极佳的指南。内容丰富、考虑周到,囊括了与服务设计与实现相关的很多最佳实践。” ——Eben Hewitt 架构师 “Java SOA Cookbook”作者 目录 · · · · · · 前言 i 第1章 使用统一接口 1 1.1 如何保持交互的可见性 2 1.2 何时需要权衡可见性 4 1.3 如何维护应用程序状态 6 1.4 如何在服务器端实现安全和幂等的方法 9 1.5 如何在客户端处理安全和幂等方法 12 1.6 何时使用get方法 13 1.7 何时使用post方法 15 1.8 如何使用post方法创建资源 17 1.9 何时使用put方法创建新资源 19 1.10 如何使用post方法实现异步任务 20 1.11 如何使用delete方法实现异步删除 23 1.12 何时使用自定义http方法 24 1.13 何时及如何使用自定义http标头 26 第2章 识别资源 29 2.1 如何从领域名词中识别资源 30 2.2 如何选择资源粒度 31 2.3 如何将资源组织为集合 32 .2.4 何时将资源合并为复合资源 35 2.5 如何支持计算或处理函数 37 2.6 何时及如何使用控制器来操作资源 40 第3章 设计表述 45 3.1 如何使用实体头来注解表述 46 3.2 如何解释实体头 50 3.3 如何避免字符编码不匹配 51 3.4 如何选择表述格式和媒体类型 52 3.5 如何设计xml表述 56 3.6 如何设计json表述 58 3.7 如何设计集合表述 59 3.8 如何保持同构的集合 61 3.9 如何在表述中使用可移植的数据格式 63 3.10 何时使用实体标识符 65 3.11 如何在表述中编码二进制数据 66 3.12 何时以及如何提供html表述 68 3.13 如何返回错误 70 3.14 如何在客户端处理错误 74 第4章 设计uri 77 4.1 如何设计uri 77 4.2 如何将uri用做模糊标识符 81 4.3 如何让客户端将uri视为模糊标识符 83 4.4 如何保持酷的uri 85 第5章 web链接 88 5.1 如何在xml表述中使用链接 89 5.2 如何在json表述中使用链接 92 5.3 何时以及如何使用链接标头 93 5.4 如何分配链接关系类型 94 5.5 如何使用链接来管理应用程序的流程 97 5.6 如何处理临时uri 101 5.7 何时以及如何使用uri模板 103 5.8 如何在客户端使用链接 105 第6章 atom和atompub 108 6.1 如何利用atom建模资源 109 6.2 何时使用atom 113 6.3 如何使用atompub服务和分类文件 117 6.4 如何针对feed和entry资源使用atompub 119 6.5 如何使用媒体资源 122 第7章 内容协商 125 7.1 如何标明客户端偏好 126 7.2 如何实现媒体类型协商 128 7.3 如何实现语言协商 129 7.4 如何实现字符编码协商 131 7.5 如何支持压缩 132 7.6 何时以及如何发送vary头 133 7.7 如何处理协商失败 134 7.8 如何使用代理驱动的内容协商 136 7.9 何时支持服务器驱动的协商 137 第8章 查询 139 8.1 如何针对查询设计uri 139 8.2 如何设计查询响应 142 8.3 如何支持有大量输入的查询请求 144 8.4 如何存储查询 146 第9章 web缓存 149 9.1 如何设置过期缓存头 150 9.2 何时设置过期缓存头 153 9.3 何时以及如何在客户端中使用过期缓存头 156 9.4 如何支持复合资源的缓存 157 9.5 如何保持新鲜且温暖的缓存 158 第10章 条件请求 161 10.1 如何生成last-modified和etag头 163 10.2 如何在服务器端实现条件get请求 164 10.3 如何从客户端提交条件get和head请求 167 10.4 如何在服务器端实现条件put请求 169 10.5 如何在服务器端实现条件delete请求 173 10.6 如何从客户端发起无条件get请求 175 10.7 如何从客户端提交条件put和delete请求 176 10.8 如何使post请求条件化 178 10.9 如何生成一次性uri 181 第11章 其他内容 184 11.1 如何复制资源 185 11.2 如何合并资源 187 11.3 如何移动资源 189 11.4 何时使用webdav方法 191 11.5 如何支持跨服务器的操作 193 11.6 如何获取资源的快照 195 11.7 如何撤销资源更新 198 11.8 如何为部分更新提炼资源 200 11.9 如何使用patch方法 203 11.10 如何批量处理相似的资源 206 11.11 如何触发批量操作 209 11.12 何时使用post来合并多个请求 211 11.13 如何支持批量请求 215 11.14 如何支持事务 217 第12章 安全 220 12.1 如何使用基本身份验证来验证客户端 221 12.2 如何使用摘要身份验证来验证客户端 224 12.3 如何使用三方oauth 226 12.4 如何使用两方oauth 232 12.5 如何处理uri中的敏感信息 235 12.6 如何维护表述的机密性与完整性 237 第13章 可扩展性与版本控制 239 13.1 如何维持uri的兼容性 240 13.2 如何维持xml和json表述的兼容性 242 13.3 如何扩展atom 245 13.4 如何维持链接的兼容性 249 13.5 如何实现支持可扩展性的客户端 250 13.6 何时需要版本化 251 13.7 如何版本化restful web服务 252 第14章 服务发现 256 14.1 如何编写restful web服务的文档 256 14.2 如何使用options 259 附录a 辅助读物 261 附录b rest概述 265 附录c http方法 268 附录d atom syndication format 273 附录e 链接关系类型 279 索引 287

2018-03-14

Higher Engineering Mathematics 5th Edition

Bibliographic Details Title: Higher Engineering Mathematics, Fifth ... Publisher: Newnes Publication Date: 2007 Binding: Paperback Book Condition:Used: Good About this title Synopsis: John Bird's approach, based on numerous worked examples and interactive problems, is ideal for students from a wide range of academic backgrounds, and can be worked through at the student's own pace. Basic mathematical theories are explained in the simplest of terms, supported by practical engineering examples and applications from a wide variety of engineering disciplines, to ensure the reader can relate the theory to actual engineering practice. This extensive and thorough topic coverage makes this an ideal text for a range of university degree modules, Foundation Degrees, and HNC/D units. An established text which has helped many thousands of students to gain exam success, now in its fifth edition Higher Engineering Mathematics has been further extended with new topics to maximise the book's applicability for first year engineering degree students, and those following Foundation Degrees. New material includes: inequalities; differentiation of parametric equations; differentiation of hyperbolic functions; and homogeneous first order differential equations. This book also caters specifically for the engineering mathematics units of the Higher National Engineering schemes from Edexcel, including the core unit Analytical Methods for Engineers, and the two specialist units Further Analytical Methods for Engineers and Engineering Mathematics in their entirety, common to both the electrical/electronic engineering and mechanical engineering pathways. A mapping grid is included showing precisely which topics are required for the learning outcomes of each unit, for ease of reference. The book is supported by a suite of free web downloads: * Introductory-level algebra: To enable students to revise basic algebra needed for engineering courses - available at http://books.elsevier.com/companions/9780750681520 * Instructor's Manual: Featuring full worked solutions and mark scheme for all 19 assignments in the book and the remedial algebra assignment - available on http://www.textbooks.elsevier.com for lecturers only * Extensive Solutions Manual: 640 pages featuring worked solutions for 1,000 of the further problems and exercises in the book - available on http://www.textbooks.elsevier.com for lecturers only * New edition includes new and extended coverage of additional topics for undergraduate study and Foundation Degree courses * Includes over 1,000 worked examples and over 1,750 problems, to enable the student to apply mathematics in real-world engineering contexts * An extensive Solutions Manual provides solutions to over 1,000 of the 1,750 further problems and is available as a free download for lecturers Book Description: Provides all the mathematical knowledge and techniques pre-degree and undergraduate students of Engineering need

2018-03-14

Engineering Mathematics fifth edition

John Bird's approach to mathematics, based on numerous worked examples supported by problems, is ideal for students of a wide range of abilities. Theory is kept to a minimum, with the emphasis firmly placed on problem-solving skills, making this a thoroughly practical introduction to the mathematics engineering students need to master. The book presents a logical topic progression, rather than following the structure of a particular syllabus and is suitable for all Level 3 vocational students and first year undergraduates in Engineering. However, coverage has been carefully matched to the mathematics units within the 2007 BTEC National specifications. In this fifth edition, new material on inequalities and differentiation of parametric equations, implicit and logarithmic functions as well as an introduction to differential equations has been added. The book now also includes two new revision tests and even more problems for students to work through. Additional chapters on linear correlation, linear regression and sampling and estimation theories can be downloaded for free from http://books.elsevier.com/companions/9780750685559

2018-03-14

Advanced Engineering Mathematics 9th Edition by Kreyszig

Bibliographic Details Title: Advanced Engineering Mathematics Publisher: John Wiley & Sons Publication Date: 2006 Binding: Paperback Book Condition:good Edition: 9th International edition. About this title Synopsis: This market leading text is known for its comprehensive coverage, careful and correct mathematics, outstanding exercises and self contained subject matter parts for maximum flexibility. Thoroughly updated and streamlined to reflect new developments in the field, the ninth edition of this bestselling text features modern engineering applications and the uses of technology. Kreyszig introduces engineers and computer scientists to advanced math topics as they relate to practical problems. The material is arranged into seven independent parts: ODE; Linear Algebra, Vector Calculus; Fourier Analysis and Partial Differential Equations; Complex Analysis; Numerical methods; Optimization, graphs; and Probability and Statistics. From the Back Cover: Erwin Kreyszig’s Advanced Engineering Mathematics, 9th Edition introduces engineers and computer scientists to advanced math topics as they relate to practical problems. In today’s world of increasingly complex engineering problems, powerful new mathematical and computational methods, and enormous computer capacities, you can get overwhelmed by little things you will only occasionally use. Instead, you need to learn how to think mathematically and gain a firm grasp of the interrelationship among theory, computing, and experiment. That’s why Kreyszig’s text helps you develop a solid understanding of the basic principles and methods of advanced engineering mathematics in all three phases of problem solving: Modeling, Solving, and Interpreting. This best-selling text is known for its comprehensive coverage, careful and correct mathematics, outstanding exercises, and self-contained chapters. Key Features New problem sets. New Computer Experiments, using the computer as an instrument of “experimental mathematics” for exploration and research. More on modeling and selection methods. Accurate and solid theoretical foundation. Clear examples and exposition of material. Modern and standard notations.

2018-03-14

HTML5 Pocket Reference, 5th Edition

Publisher: O'Reilly Media Release Date: August 2013 Pages: 184 Need help finding the right HTML5 element or attribute for your web page or application? HTML5 Pocket Reference is the classic reference that web designers and developers have been keeping close at hand for more than thirteen years. This fifth edition has been updated to reflect the current state of HTML5, including the HTML5 Candidate Recommendation, the emerging HTML5.1 Working Draft, and the living WHATWG standard. Features include: An alphabetical listing of every element and attribute in HTML5, HTML5.1, and the WHATWG living standard Descriptions, markup examples, content categories, content models, and start- and end-tag requirements for every element At-a-glance notes indicating the differences between the HTML5 specifications and HTML 4.01 Useful charts of special characters An overview of HTML5 APIs If you’re an experienced web designer or developer who needs a quick resource for working with established web standards, this handy book is indispensable.

2018-03-14

E-Commerce 2014 (10th Edition)

Bibliographic Details Title: E-Commerce 2014 (10th Edition) Publisher: Prentice Hall Publication Date: 2013 Binding: Hardcover Book Condition:Good Edition: Teacher's Edition About this title Synopsis: This comprehensive, market-leading text emphasizes the three major driving forces behind e-commerce—technology change, business development, and social issues—to provide a coherent conceptual framework for understanding the field.

2018-03-14

Advanced Modern Engineering Mathematics (4th Edition)

Bibliographic Details Title: Advanced Modern Engineering Mathematics (4th... Publisher: Pearson Education Canada Binding: PAPERBACK Book Condition:New Edition: International Edition About this title Synopsis: An update of this advanced engineering mathematics book, with new sections including singular value decomposition and direct design of digital filters, from the authors of the popular companion text Modern Engineering Mathematics.

2018-03-14

计算广告 互联网商业变现的市场与技术

内容简介 · · · · · · 计算广告是一项新兴的研究课题,它涉及大规模搜索和文本分析、信息获取、统计模型、机器学习、分类、优化以及微观经济学等诸多领域的知识。本书从实践出发,系统地介绍计算广告的产品、问题、系统和算法,并且从工业界的视角对这一领域具体技术的深入剖析。 本书立足于广告市场的根本问题,从计算广告各个阶段所遇到的市场挑战出发,以广告系统业务形态的需求和变化为主线,依次介绍合约广告系统、竞价广告系统、程序化交易市场等重要课题,并对计算广告涉及的关键技术和算法做深入的探讨。 无论是互联网公司商业化部门的产品技术人员,还是对个性化系统、大数据变现或交易有兴趣的产品技术人员,传统企业互联网化进程的决策者,传统广告业务的从业者,互联网创业者,计算机相关专业研究生,都会从阅读本书中受益匪浅。 目录 · · · · · · (1)第一部分介绍在线广告领域的一些基本问题和背景知识。虽然内容比较容易理解,但这部分是全书的基础,特别是对很多相关概念和术语的集中介绍,请不要略过。 (2)第二部分主要面向产品、运营、销售等人员,以及互联网产品的宏观决策者,其内容重点在于介绍计算广告的市场结构、交易模式和主要产品。这部分内容将依在线广告产品发展的顺序展开,希望能帮助大家理解各种复杂的广告产品和交易机制产生的内在规律。 (3)第三部分主要面向系统工程师、算法工程师和架构师。与前一部分的广告产品相对应,这部分也以在线广告产品发展的顺序,重点阐释实现各种广告产品的关键技术挑战,并提供基础的解决方案。 内容提要 对本书的点评 序一 序二 序三 前言 第一部分 在线广告市场与背景 第 1 章 在线广告综述 第 2 章 计算广告基础 第二部分 在线广告产品逻辑 第 3 章 在线广告产品概览 第 4 章 合约广告 第 5 章 搜索与竞价广告 第 6 章 程序化交易广告 第 7 章 移动互联与原生广告 第 8 章 在线广告产品实践 第三部分 计算广告关键技术 第 9 章 计算广告技术概览 第 10 章 基础知识准备 第 11 章 合约广告核心技术 第 12 章 受众定向核心技术 第 13 章 竞价广告核心技术 第 14 章 程序化交易核心技术 第 15 章 其他广告相关技术 第四部分 附录 附录 A 主要术语及缩写索引

2018-03-14

Docker技术入门与实战 杨保华,戴王剑,曹亚仑编著

内容简介 · · · · · · 【编辑推荐】 《Docker技术入门与实战》是中国首部Docker著作,一线Docker先驱实战经验结晶,来自IBM和新浪等多位技术专家联袂推荐! 《Docker技术入门与实战》结合企业生产环境,深入浅出地剖析 Docker 的核心概念、应用技巧、实现原理以及生态环境,为解决各类问题提供了有价值的参考。 【内容简介】 在云计算时代,开发者将应用转移到云上已经解决了硬件管理的问题,然而软件配置和管理相关的问题依然存在。Docker的出现正好能帮助软件开发者开阔思路,尝试新的软件管理方法来解决这个问题。通过掌握Docker,开发人员便可享受先进的自动化运维理念和工具,无需运维人员介入即可顺利运行于各种运行环境。 《Docker技术入门与实战》分为三大部分:Docker入门、实战案例和高级话题。第一部分(第1~8章)介绍Docker与虚拟化技术的基本概念,... (展开全部) 作者简介 · · · · · · 杨保华 博士,清华大学毕业,现为 IBM 中国研究院研究员。主要从事数据中心网络解决方案的研发与部署,技术方向包括云计算、软件定义网络(SDN)、网络安全等,是国内较早从事 SDN 和网络虚拟化相关技术的推广者,同时也是 DockerPool 开源社区的发起人之一。 戴王剑 资深架构师,多年来一直从事计算机网络、服务器架构设计,负责过多个省级项目的架构设计。热衷开源事业,是 DockerPool 开源社区的发起人之一。 曹亚仑 85后,全栈 Web 开发者,擅长并专注于 SaaS 系统架构设计与研发, 兴趣为 PaaS 和智能可穿戴设备。出版有译著《Arduino 无线传感器网络实践指南》以及开源图书《程序员禅修指南》。 目录 · · · · · · 序一 序二 前言 作者简介 第一部分 Docker入门 第1章 初识Docker 3 1.1 什么是Docker 3 1.2 为什么要使用Docker 5 1.3 虚拟化与Docker 7 1.4 本章小结 8 第2章 Docker的核心概念和安装 9 2.1 核心概念 9 2.2 安装Docker 11 2.3 本书环境介绍 14 2.4 本章小结 15 第3章 镜像 16 3.1 获取镜像 16 3.2 查看镜像信息 17 3.3 搜寻镜像 20 3.4 删除镜像 21 3.5 创建镜像 23 3.6 存出和载入镜像 24 3.7 上传镜像 25 3.8 本章小结 25 第4章 容器 26 4.1 创建容器 26 4.2 终止容器 28 4.3 进入容器 29 4.4 删除容器 31 4.5 导入和导出容器 31 4.6 本章小结 32 第5章 仓库 33 5.1 Docker Hub 33 5.2 Docker Pool简介 35 5.3 创建和使用私有仓库 36 5.4 本章小结 38 第6章 数据管理 39 6.1 数据卷 39 6.2 数据卷容器 40 6.3 利用数据卷容器迁移数据 42 6.4 本章小结 42 第7章 网络基础配置 43 7.1 端口映射实现访问容器 43 7.2 容器互联实现容器间通信 45 7.3 本章小结 47 第8章 使用Dockerfile创建镜像 48 8.1 基本结构 48 8.2 指令 49 8.3 创建镜像 53 8.4 本章小结 53 第二部分 实战案例 第9章 操作系统 57 9.1 Busybox 57 9.2 Debian/Ubuntu 60 9.3 CentOS/Fedora 62 9.4 CoreOS 64 9.5 本章小结 69 第10章 创建支持SSH服务的镜像 70 10.1 基于commit命令创建 70 10.2 使用Dockerfile创建 74 10.3 本章小结 79 第11章 Web服务器与应用 80 11.1 Apache 80 11.2 Nginx 86 11.3 Tomcat 95 11.4 Weblogic 102 11.5 LAMP 119 11.5.1 下载LAMP镜像 119 11.5.2 使用默认方式启动LAMP容器 119 11.5.3 部署自己的PHP应用 120 11.5.4 在PHP程序中连接数据库 120 11.6 CMS 121 11.7 本章小结 123 第12章 数据库应用 124 12.1 MySQL 124 12.2 Oracle XE 129 12.3 MongoDB 130 12.4 本章小结 134 第13章 编程语言 136 13.1 PHP 136 13.1.1 PHP技术栈 136 13.1.2 PHP常用框架 142 13.1.3 相关资源 147 13.2 C/C++ 147 13.2.1 GCC 147 13.2.2 LLVM 150 13.2.3 Clang 150 13.3 Java 151 13.4 Python 153 13.4.1 Python技术栈 153 13.4.2 Flask 155 13.4.3 Django 157 13.4.4 相关资源 159 13.5 Perl 160 13.5.1 Perl技术栈 160 13.5.2 Catalyst 161 13.5.3 相关资源 161 13.6 Ruby 162 13.6.1 Ruby技术栈 162 13.6.2 JRuby 163 13.6.3 Ruby on Rails 164 13.6.4 Sinatra 165 13.6.5 相关资源 166 13.7 JavaScript 166 13.7.1 JavaScript技术栈 166 13.7.2 Node.js 167 13.7.3 Express 168 13.7.4 AngularJS 170 13.7.5 相关资源 171 13.8 Go 172 13.8.1 Go技术栈 172 13.8.2 Beego 174 13.8.3 Revel 175 13.8.4 Martini 177 13.8.5 相关资源 179 13.9 本章小结 180 第14章 使用私有仓库 181 14.1 使用docker-registry 181 14.2 用户认证 183 14.3 使用私有仓库批量上传镜像 186 14.4 仓库配置文件 189 14.5 本章小结 196 第15章 构建Docker容器集群 197 15.1 使用自定义网桥连接跨主机容器 197 15.2 使用Ambassador容器 199 15.3 本章小结 200 第16章 在公有云上使用Docker 202 16.1 公有云上安装Docker 202 16.1.1 CentOS 6.5系统 202 16.1.2 Ubuntu 14.04系统 207 16.2 阿里云Docker的特色服务 207 16.3 本章小结 213 第17章 Docker实践之道 214 17.1 个人学习之道 214 17.1.1 温故而知新 215 17.1.2 众人拾柴火焰高 216 17.2 技术创业之道 217 17.3 中小型企业实践之道 218 17.3.1 开发、测试和发布中应用Docker 218 17.3.2 应用Docker到生产环境 220 17.4 本章小结 220 第三部分 高级话题 第18章 Docker核心技术 223 18.1 基本架构 223 18.2 命名空间 225 18.3 控制组 227 18.4 联合文件系统 229 18.5 Docker网络实现 230 18.6 本章小结 232 第19章 Docker安全 233 19.1 命名空间隔离的安全 233 19.2 控制组资源控制的安全 234 19.3 内核能力机制 234 19.4 Docker服务端的防护 235 19.5 其他安全特性 236 19.6 本章小结 237 第20章 高级网络配置 238 20.1 网络启动与配置参数 238 20.2 配置容器DNS和主机名 240 20.3 容器访问控制 241 20.4 映射容器端口到宿主主机的实现 243 20.5 配置docker0网桥 244 20.6 自定义网桥 245 20.7 创建一个点到点连接 246 20.8 工具和项目 247 20.9 本章小结 251 第21章 Docker相关项目 252 21.1 平台即服务方案 252 21.2 持续集成 253 21.3 管理工具 256 21.4 编程开发 261 21.5 其他项目 262 21.6 本章小结 267 附  录 附录A 常见问题汇总 270 附录B 常见仓库 276 附录C Docker命令查询 294 附录D Docker资源链接 299

2018-03-14

C现代编程 集成开发环境、设计模式、极限编程、测试驱动开发、重构、持续集成

内容简介 · · · · · · 本书主要讲解如何将集成开发环境、设计模式、极限编程、测试驱动开发、重构、持续集成这些现代编程方法应用到C语言的嵌入式开发中去。即将服务器站点中的通用设计方法、工具的使用方法、开发方式等逐一“翻译”成为可以在C语言嵌入式开发过程中使用的方法。 作者简介 · · · · · · 作者简介: 花井志生(Hanai Shisei) 入职时使用C/C++开发嵌入式设备(POS)应用程序。大约10年前开始接触服务器站点开发。现在主要使用Java开发Web应用程序,从故障检修到系统设计、开发均有涉猎。 译者简介: 杨文轩 华中科技大学硕士。2007年入职方正国际软件。先后参与过京瓷MFP、丸善MBIS系统开发,并且主导过讲谈社拼版系统、讲谈社广告系统的开发。擅长Web 2.0开发,有丰富的对日开发经验。 目录 · · · · · · 第1章 概要  1 1.1 现在C依然很热门  1 1.2 使用C进行嵌入式开发的特点  3 1.3 本书的目标  5 1.3.1 C与集成开发环境  5 1.3.2 C与设计模式  6 1.3.3 C与极限编程  7 1.3.4 C与现代开发方式  9 1.4 总结  11 第2章 搭建开发环境  13 2.1 概要  13 2.2 获取Linux  13 2.3 在Windows PC上搭建环境  14 2.4 安装Linux  20 2.4.1 准备工作  20 2.4.2 制作安装介质  21 2.4.3 安装Xubuntu  24 2.5 安装Eclipse  29 2.5.1 安装Java  29 2.5.2 安装Eclipse  30 2.5.3 安装其他工具  33 2.6 Eclipse的基本操作  34 2.6.1 Hello, World  34 2.6.2 视图  38 2.6.3 工程、工作区和透视图  38 2.7 Eclipse的功能  41 2.7.1 可视化调试  41 2.7.2 导航器  48 2.7.3 代码补全  51 2.7.4 宏展开  53 2.7.5 本地代码历史  54 2.7.6 TODO注释  55 2.7.7 与外部编辑器协作  56 2.8 总结  58 第3章 C语言与面向对象  59 3.1 概要  59 3.2 C的模块化与面向对象  59 3.2.1 C与模块化  60 3.2.2 使用结构体将数据结构与代码块分离  62 3.2.3 使用C进行面向对象编程  66 3.2.4 面向对象与多态性  75 3.2.5 继承  76 3.2.6 封装  79 3.2.7 虚函数表  80 3.2.8 非虚函数  82 3.3 总结  84 第4章 C语言与设计模式  85 4.1 状态模式  85 4.1.1 状态迁移图  85 4.1.2 状态迁移表  89 4.1.3 面向对象的状态模式  90 4.1.4 多个状态集合相互关联的情况  93 4.1.5 状态模式与内存管理  94 4.2 模板方法模式  95 4.2.1 返回非int值  99 4.2.2 处理其他资源  100 4.2.3 上下文  107 4.3 观察者模式  114 4.4 职责链模式  125 4.5 访问者模式  128 4.6 总结  134 第5章 C语言与重构  135 5.1 概要  135 5.2 测试驱动开发  136 5.3 TDD入门  137 5.3.1 设置Eclipse  137 5.3.2 初次测试驱动开发  142 5.3.3 测试静态函数  147 5.4 重构  150 5.4.1 对外接口  150 5.4.2 重构与投资  150 5.5 TDD实践篇  151 5.5.1 怪兽方法  152 5.5.2 C语言的Mock测试  162 5.5.3 完成重构  182 5.5.4 获取代码覆盖率  186 5.6 总结  188 第6章 持续集成与部署  191 6.1 概要  191 6.2 持续集成的前提  192 6.2.1 软件配置管理工具  192 6.2.2 构建工具  192 6.2.3 Bug跟踪系统(BTS)  193 6.3 引入CI服务器  193 6.4 CI入门  196 6.4.1 本次CI的自动化目标  196 6.4.2 Scons构建脚本  197 6.4.3 gcovr的安装  199 6.4.4 构建  200 6.4.5 提交至SCM  202 6.4.6 创建Jenkins任务  203 6.5 内存Bug大作战  214 6.5.1 安装  214 6.5.2 运行Valgrind  214 6.5.3 Valgrind可以检测出的错误  215 6.5.4 Valgrind中检测出的内存错误的特点与对策  220 6.5.5 在Jenkins中使用Valgrind  221 6.6 CI实践篇  228 6.6.1 Microchip工具  229 6.6.2 构建内容  230 6.6.3 分割构建文件  234 6.6.4 独立构建服务器  240 6.6.5 设置自动构建计划  247 6.7 总结  249 附录A 示例代码  251 A.1 注意事项  251 A.2 添加C99标准  251 A.3 在Eclipse中导入示例代码  252 A.3.1 解压示例代码压缩文件  252 A.3.2 Eclipse中新建空白工程  252

2018-03-14

Getting Started with LLVM Core Libraries

Publisher: Packt Publishing Release Date: August 2014 Pages: 314 LLVM is a bleeding edge compiler technology framework. Easily extendable and designed as a multitude of libraries, LLVM provides a smooth experience for compiler newcomers and reduces the steep learning curve often associated with compiler development. To start, this book will show you how to configure, build, and install LLVM libraries, tools, and external projects. Next, you will be introduced to LLVM design and how it works in practice throughout each LLVM compiler stage: frontend, IR, backend, the JIT engine, cross-compilation capabilities, and the plugin interface. With multiple hands-on examples and source code snippets, Getting Started with LLVM Core Libraries ensures a solid and smooth first step into the LLVM compiler development environment.

2018-03-14

移动应用UI设计模式(完整版)

《移动应用ui设计模式》是一本移动应用ui设计模式参考书,分10大类介绍了70个移动应用设计模式(包括反模式),用400多个屏幕截图和图解帮助读者理解和利用ui设计模式,以解决常见的设计难题,同时提供了“即学即用”式的技巧和经验。

2018-03-14

Go并发编程实战(第2版)

本书首先介绍了Go语言的优势特性、安装设置方法、工程结构、标准命令和工具、语法基础、数据类型以及流程控制方法,接着阐述了与多进程编程和多线程编程有关的知识,然后重点介绍了goroutine、channel以及Go提供的传统同步方法,之后通过一个完整实例——网络爬虫框架进一步阐述Go语言的哲学和理念,同时分享作者在多年编程生涯中的一些见解和感悟。与上一版相比,本书不仅基于Go1.8对上一版进行了全面更新,而且更深入地描绘了Go运行时系统的内部机理,并且大幅改进了示例代码。本书适用于有一定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,**适合作为Go语言编程进阶教程。

2018-03-11

错误文档怎么删

本书首先介绍了Go语言的优势特性、安装设置方法、工程结构、标准命令和工具、语法基础、数据类型以及流程控制方法,接着阐述了与多进程编程和多线程编程有关的知识,然后重点介绍了goroutine、channel以及Go提供的传统同步方法,之后通过一个完整实例——网络爬虫框架进一步阐述Go语言的哲学和理念,同时分享作者在多年编程生涯中的一些见解和感悟。与上一版相比,本书不仅基于Go1.8对上一版进行了全面更新,而且更深入地描绘了Go运行时系统的内部机理,并且大幅改进了示例代码。本书适用于有一定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,**适合作为Go语言编程进阶教程。

2018-03-11

Fast Buffers

Fast Buffers

2018-02-24

Developing and Shipping LLVM and Clang with CMake.pdf

http://www.LLVM.org/devmtg/2016-11/ — Developing and Shipping LLVM and Clang with CMake - Chris Bieneman, Apple Inc. Slides: http://www.llvm.org/devmtg/2016-11/Sl... — In LLVM 3.8 the autoconf build system was deprecated and it was removed in favor of the newer CMake system starting in 3.9. This talk provides a brief introduction to the CMake programming language to ensure everyone basic familiarity. It will include a post-mortem on the LLVM autoconf to CMake transition, and discuss some of the useful features of the LLVM CMake build system which can improve developer productivity. We will explore a case study on packaging and shipping an LLVM toolchain with CMake including an in-depth explanation of many of the new features of the LLVM CMake build system. Lastly it will provide a status report of the current state of the build system as well as presenting some of the future improvements on the horizon.

2019-10-21

Hosek-Compiling cross-toolchains with CMake and runtimes build.pdf

Hosek-Compiling cross-toolchains with CMake and runtimes build.pdf

2019-10-21

MoreModernCMake.pdf

More Modern CMake More Modern CMake More Modern CMake

2019-10-20

deep_cmake_for_library_authors__craig_scott__cppcon_2019.pdf

deep_cmake_for_library_authors__craig_scott__cppcon_2019.pdf

2019-10-19

C17 Standard Library Quick Reference, 2nd Edition.zip

eBook Details: Paperback: 293 pages Publisher: WOW! eBook; 2nd edition (August 13, 2019) Language: English ISBN-10: 1484249224 ISBN-13: 978-1484249222 eBook Description: C++17 Standard Library Quick Reference: A Pocket Guide to Data Structures, Algorithms, and Functions, 2nd Edition This quick reference is a condensed guide to the essential data structures, algorithms, and functions provided by the C++17 Standard Library. It does not explain the C++ language or syntax, but is accessible to anyone with basic C++ knowledge or programming experience. Even the most experienced C++ programmer will learn a thing or two from it and find it a useful memory-aid. It is hard to remember all the possibilities, details, and intricacies of the vast and growing Standard Library. This handy reference guide is therefore indispensable to any C++ programmer. It offers a condensed, well-structured summary of all essential aspects of the C++ Standard Library. No page-long, repetitive examples or obscure, rarely used features. Instead, everything you need to know and watch out for in practice is outlined in a compact, to-the-point style, interspersed with practical tips and well-chosen, clarifying examples. This C++17 Standard Library Quick Reference, 2nd Edition is updated to include all Standard Library changes in C++17, including the new vocabulary types std::string_view, any, optional, and variant; parallel algorithms; the file system library; specialized mathematical functions; and more

2019-09-21

Beginning C++17, 5th Edition.zip

eBook Details: Paperback: 771 pages Publisher: WOW! eBook; 5th edition (March 24, 2018) Language: English ISBN-10: 1484233654 ISBN-13: 978-1484233658 eBook Description: Beginning C++17: From Novice to Professional, 5th Edition

2019-09-21

HTML5触摸界面设计与开发

作 者 :(美)Stephen Woods著 出版发行 : 北京:人民邮电出版社 , 2016.09 ISBN号 :978-7-115-34352-9 页 数 : 195 原书定价 : 59.00 开本 : 16开 内容提要: 《HTML5触摸界面设计与开发》专注于触摸界面的开发,内容的结构和优化网站的思路大概一致。上半部分涵盖了能使各类网站,特别是移动网站变快的基本概念。第2章和第3章告诉你如何创建一个简单的网站,并能快速加载。第4章可以帮助你使用缓存来提高用户再次访问时的速度。第5章是关于要摒弃一次性的页面加载方式和重构应用程序以使实际上和感觉到的性能都达到**优的。书的后半部分是专门讲触摸界面的,特别是尽可能地让它们更平稳和快速。《HTML5触摸界面设计与开发》适合具有一定经验的Web开发者阅读参考。 参考文献格式 : (美)Stephen Woods著. HTML5触摸界面设计与开发[M]. 北京:人民邮电出版社, 2016.09.

2019-03-11

On Web Typography

Typography is your design’s voice and the most powerful tool you have to communicate with your readers. Learn how to wield type with care and wit: how to evaluate typefaces, consider technical constraints, create flexible typographic systems, and put together your own collection of favorite faces. Jason Santa Maria wants you to see type beyond code or flourishes. You’ll discover how typography shapes the way we read and how you can adapt the craft’s practices for the screen. So go ahead. Choose, combine, and set typefaces with ease-and invite readers in.

2018-12-21

Linux Shell脚本攻略 第3版.zip

Linux Shell脚本攻略 第3版 作 者 :(美)克里夫·弗林特(Clif Flynt)著;门佳译 出版发行 : 北京:人民邮电出版社 , 2018.03 ISBN号 :978-7-115-47738-5 页 数 : 386 丛书名 : 图灵程序设计丛书 原书定价 : 89.00 开本 : 16开 主题词 : Linux操作系统-程序设计 中图法分类号 : TP316.85 ( 工业技术->自动化技术、计算机技术->计算技术、计算机技术->计算机软件 ) 内容提要: 本书结合丰富的实际案例介绍了如何利用shell命令实现与Linux操作系统的高效沟通,具体内容包括:各类日常任务以及如何利用shell命令更快速地解决问题;编写脚本从Web中挖掘数据并进行处理;在脚本中与简单的WebAPI进行交互;任务的执行及自动化;创建及维护文件和文件夹归档,利用shell进行压缩和加密。第3版讲解了*新的Linux发行版中加入的令人激动的新特性,帮助你完成从未想到过的功能。本书适合Linux系统管理员和程序员阅读,是编写shell脚本的参考资料。 参考文献格式 : (美)克里夫·弗林特(Clif Flynt)著;门佳译. Linux Shell脚本攻略 第3版[M]. 北京:人民邮电出版社, 2018.03.

2018-12-17

react快速上手开发.zip

React快速上手开发 作 者 :(保)斯托扬·斯特凡诺夫(Stoyan Stefanov) 出版发行 : 北京:人民邮电出版社 , 2017.02 ISBN号 :978-7-115-44773-9 页 数 : 188 丛书名 : 图灵程序设计丛书 原书定价 : 49.00 主题词 : 移动终端-应用程序-程序设计 中图法分类号 : TN929.53 ( 工业技术->无线电电子学、电信技术->无线通信->移动通信 ) 内容提要: 由保加利亚斯托扬·斯特凡诺夫所著、张俊达翻译的《React快速上手开发/图灵程序设计丛书》一书是React入门书。前3章介绍如何从空白的HTML页面开始构建应用。第4章介绍JSX语法。从第5章开始,你会学习到在实际开发中可能用到的一些附加工具。介绍的例子包括JavaScript打包工具、单元测试、语法检查、类型、在应用中组织数据流以及不可变数据。本书适合有JavaScript基础的前端开发人员。 参考文献格式 : (保)斯托扬·斯特凡诺夫(Stoyan Stefanov). React快速上手开发[M]. 北京:人民邮电出版社, 2017.02.

2018-12-17

React设计模式与最佳实践.zip

React设计模式与最佳实践 作 者 :(意)米凯莱 贝尔托利(Michele Bertoli) 出版发行 : 北京:人民邮电出版社 , 2018.08 ISBN号 :978-7-115-48875-6 丛书名 : 图灵程序设计丛书 原书定价 : 59.00 中图法分类号 : TN929.53 ( 工业技术->无线电电子学、电信技术->无线通信->移动通信 ) 内容提要: 本书共分为12章,通过介绍React中有价值的设计模式,展示如何将设计模式和zui佳实践应用于现实的新项目和已有项目中。主要内容包括帮助读者理解React的基本概念,学习编写整洁、可维护的代码;优化React组件,使应用拥有更快的速度和响应性;介绍如何有效地编写测试,避免反模式,开源组件并对React生态系统做贡献。 参考文献格式 : (意)米凯莱 贝尔托利(Michele Bertoli). React设计模式与最佳实践[M]. 北京:人民邮电出版社, 2018.08.

2018-12-17

SQL基础教程 第2版.zip

作 者 :(日)MICK 出版发行 : 北京:人民邮电出版社 , 2017.05 ISBN号 :7-115-45502-4 页 数 : 320 丛书名 : 图灵程序设计丛书 原书定价 : 79.00 开本 : 16开 中图法分类号 : TP311.138 ( 工业技术->自动化技术、计算机技术->计算技术、计算机技术->计算机软件 ) 内容提要: 本书是畅销书《SQL基础教程》第2版,介绍了关系数据库以及用来操作关系数据库的SQL语言的使用方法。书中通过丰富的图示、大量示例程序和详实的操作步骤说明,让读者循序渐进地掌握SQL的基础知识和使用技巧,切实提高编程能力。每章结尾设置有练习题,帮助读者检验对各章内容的理解程度。另外,本书还将重要知识点总结为“法则”,方便读者随时查阅。第2版除了将示例程序更新为对应*的DB的SQL之外,还新增了一章,介绍如何从应用程序执行SQL。 参考文献格式 : (日)MICK. 图灵程序设计丛书 SQL基础教程 第2版[M]. 北京:人民邮电出版社, 2017.05.

2018-12-17

亲爱的界面 让用户乐于使用、爱不释手.zip

作 者 :(瑞士)LukasMathis著;王军锋,杨蕾,曾小进译 出版发行 : 北京:人民邮电出版社 , 2012.11 ISBN号 :978-7-115-29639-9 页 数 : 218 丛书名 : 图灵交互设计丛书 原书定价 : 49.00 开本 : 16开 主题词 : 程序界面-程序设计 中图法分类号 : TP311.1 ( 工业技术->自动化技术、计算机技术->计算技术、计算机技术->计算机软件 ) 内容提要: 这本书对软件用户体验设计全过程进行了百科全书式的描述,有最新最好的实践案例、内容翔实的设计方法。相见恨晚啊!——凯斯?朗,Skitch公司COO和交互设计师写可用性话题很难摆脱过分学院派的缺点,但卢卡斯做到了。如果你熟悉基本的可用性概念,又想了解更多的内容,这本书是必读佳作!——乔恩·贝尔,WindowsPhone的交互设计师卢卡斯深刻分析了可用性、用户体验、UI设计等方面许多为人忽视的问题,这是一本必不可少的、权威且极具启发性的著作。——保罗?尼夫,Neave交互设计公司交互设计师本书读来如瑞士巧克力般 参考文献格式 : (瑞士)LukasMathis著;王军锋,杨蕾,曾小进译. 亲爱的界面 让用户乐于使用、爱不释手[M]. 北京:人民邮电出版社, 2012.11.

2018-12-17

深入REACT技术栈.zip

深入REACT技术栈 作 者 :陈屹著 出版发行 : 北京:人民邮电出版社 , 2016.11 ISBN号 :7-115-43730-3 页 数 : 351 丛书名 : 图灵原创 原书定价 : 79.00 主题词 : 移动终端-应用程序-程序设计 中图法分类号 : TN929.53 ( 工业技术->无线电电子学、电信技术->无线通信->移动通信 ) 内容提要: 本书适合一定经验的前端开发人员阅读。 参考文献格式 : 陈屹著. 深入REACT技术栈[M]. 北京:人民邮电出版社, 2016.11.

2018-12-17

Accounting Information Systems, Global Edition, 14th Edition.pdf.zip

Accounting Information Systems, Global Edition, 14th Edition by Marshall B. Romney and Paul J. Steinbart English | 2018 | ISBN: 1292220139 | 769 Pages | PDF | 36 MB For undergraduate and graduate courses in Accounting Information Systems (AIS). A market-leading text with the most comprehensive, flexible coverage of AIS available Accounting Information Systems delivers the most comprehensive and flexible coverage of each major approach to teaching AIS, giving instructors the opportunity to reorder chapters and focus the material to suit their individual course needs. The 14th Edition covers all of the most recent updates in AIS, including how developments in IT affect business processes and controls, the effect of recent regulatory developments on the design and operation of accounting systems, and how accountants can use the AIS to add value to an organization. Not only will students see how AIS has changed the role of an accountant, but they'll also be prepared for a successful accounting career in public practice, industry, or government.

2018-03-23

信息架构 超越Web设计(第4版).pdf

内容简介 · · · · · · 本书的前三个版本都是信息架构领域的开山著作。其中描述了信息组织的普遍和永恒原则,这一原则也适用于不断增长的移动世界。在第4版中,作者运用大量最新的插图和例子为这些原则提供了当前实践中的情境,验证了那些与技术和供应商无关的工具,以及那些经受住时间考验的技术。 作者简介 · · · · · · 路易斯·罗森菲尔德 Louis Rosenfeld 是 Rosenfeld Media 的创始人,这是一家出版用户体验书籍、开办用户体验会议、提供用户体验培训和咨询的公司。 彼得·莫尔维莱 Peter Morville 是Semantic Studios的总裁。这家公司的客户包括AT&T、思科、哈佛、IBM、 梅西百货、美国国会图书馆和美国国家癌症研究所。 豪尔赫·阿朗戈 Jorge Arango 拥有20年的信息架构环境设计经验,并且担任IA协会的总裁兼董事长。 目录 · · · · · · 前言 xvii 第1部分信息架构简介 第1章信息架构要解决的问题 3 你好,iTunes 5 信息架构要解决的问题 8 信息过载 9 访问信息的更多方式 10 加入信息架构 12 由信息构成的场所 13 渠道之间的一致性 13 系统化思维 15 本章回顾 16 第2章信息架构的定义 19 定义 19 看不到不代表不存在 21 走向优秀的信息架构 26 情景 28 内容 29 用户 30 本章回顾 31 第3章为查找而设计 33 “太过于简单的”信息模型 34 信息需求 35 信息搜寻行为 38 了解信息需求和信息搜寻行为 41 本章回顾 42 第4章为理解而设计 43 场所感 43 (现实世界) 场所的结构 44 由信息组成的场所 45 组织原则 47 结构和秩序 48 类型系统 50 模块化和可扩展性 54 世界上最快乐的场所 56 本章回顾 61 第2部分信息架构的基本原理 第5章信息架构详解 65 信息架构的可视化 65 自顶向下的信息架构 68 自底向上的信息架构 70 不可见的信息架构 73 信息架构组件 74 浏览帮手 75 搜索帮手 76 内容和任务 77 “不可见的” 组件 78 本章回顾 78 第6章组织系统 79 组织信息的挑战 80 模糊性 81 异质性 81 不同观点的差异性 82 公司内部的政治文化 83 组织信息环境 83 组织方案 84 精确的组织方案 84 组织结构 93 层级结构:一种自顶向下的方法 94 数据库模式:一种自底向上的方法 98 社会化分类 102 创建凝聚性组织系统 103 本章回顾 104 第7章标签系统 105 为什么要关心标签命名 106 各种各样的标签 111 作为情景式链接的标签 111 作为标题的标签 114 导航系统内的标签 116 标签作为索引词 118 标签的设计 121 通用原则 121 标签系统的来源 124 创建新的标签系统 129 优化和调整 137 本章回顾 137 第8章导航系统 139 导航系统的种类 140 灰色区域很重要 141 浏览器导航功能 142 场所营造 142 提高灵活性 144 嵌入式导航系统 145 全局导航系统 局部导航系统 148 情景式导航 150 嵌入式导航的实现 152 辅助导航系统 154 站点地图 155 索引 156 指南 159 搜索 162 高级导航方法 162 个性化和自定义 163 可视化 164 社会化导航 165 本章回顾 168 第9章搜索系统 169 你的产品需要搜索吗 169 搜索引擎详解 173 选择要索引什么 174 确定搜索区域 174 选择要建立索引的内容组件 179 搜索算法 182 模式匹配算法 182 其他方法 183 查询生成器 185 显示结果 186 要显示哪些内容组件 187 要显示多少文档 190 列出结果 192 将结果分组 199 对结果采取行动 200 设计搜索界面 201 搜索框 203 自动完成和自动建议 206 高级搜索 207 支持修改 208 当用户被卡住时 212 到哪里学习更多 213 本章回顾 214 第10章叙词表、受控词表和元数据 215 元数据 216 受控词表 216 同义词环 217 规范文档 220 分类方案 223 叙词表 225 技术术语 226 叙词表实例 228 叙词表类型 233 经典叙词表 234 索引叙词表 234 搜索叙词表 234 叙词表标准 235 语义关系 237 等价 237 层级 238 关联 239 首选术语 240 术语形式 240 术语选择 240 术语定义 241 术语特异性 241 多元层级结构 242 分面分类法 243 本章回顾 248 第3部分完成信息架构 第11章研究 2

2018-03-22

大规模Web服务开发技术.pdf

内容简介 · · · · · · Hatena是日本最大的Web服务提供商之一,它提供的服务包括关键字(类似于维基百科)、博客、相册等。《大规模Web服务开发技术》由伊藤直也、田中慎司所著,内容主要来自Hatena为学生们举行的暑期实习的课程,内容涵盖广泛,介绍了性能优化、分布式、算法、系统架构等各个方面,甚至还介绍了硬件的经济成本,是运维工程师们必不可少的参考书。书中还包括几个算法实习课题,介绍了压缩算法、全文搜索等算法的实现方法,对于打算靠Web创业的人不失为一本很不错的参考书。 举报 作者简介 · · · · · · 伊藤直也(Naoya Ito) Hatena株式会社董事兼CTO。合著作有《BlogHacks(0‘Reilly Japan)、《“24小时365天”服务器/基础设施的支撑技术》(技术评论社)。曾获情报处理学会主办的“Software Japan 2009”的Software JapanAward奖,以及“乐天Technical Conference 2008”的Technology Award银奖。 田中慎司(Shinji Tanaka) Hatena株式会社董事,信息学博士。合著有《“24小时365天”服务器/基础设施的支撑技术》(技术评论社)一书,还主持过多本著作的翻译。支撑着Hatena服务器的是由600多台服务器构成的系统,现在这一系统的性能及设备运维由他全权负责。 目录 · · · · · · 目 录 第1章 大规模Web服务的开发定位——掌握整体 2 第0课 本书的起源——本书讲述的范围 3 从事大规模Web服务开发——面向大学生的Hatena实习 3 本书讲述的内容 3 本书不讲述的内容 5 致今后从事大规模Web服务的人 5 第1课 大规模服务和小规模服务 6 Hatena的服务规模 6 Hatena是大规模,Google、Facebook是超大规模 8 小规模服务和大规模服务的区别 9 应对大规模数据量 11 第2课 持续增长的服务和大规模化的障碍 13 Web服务的困难 13 Hatena的成长经历 13 系统增长战略——最小化开端、预见变化的管理和设计 17 第3课 服务开发现场 18 Hatena的技术团队体制 18 Hatena的沟通方式 19 服务开发的实际状况 19 开发所用的工具 21 总结 23 第2章 大规模数据处理入门 ——内存和磁盘、Web应用程序和负载 24 第4课 Hatena Bookmark的数据规模 25 以Hatena Bookmark为例介绍大规模数据 25 Hatena Bookmark的数据规模 25 针对大规模数据的查询——处理大规模数据的感觉 26 第5课 大规模数据处理的难点——内存和磁盘 28 为何处理大规模数据如此困难——因为无法在内存中 计算 28 内存和磁盘的速度差异——内存要快105~106倍 28 为何磁盘这么慢?——内存和磁盘 29 操作系统层的加速处理 31 传输速度和总线的速度差异 31 第6课 可扩展性的要点 37 扩展和可扩展性 37 可扩展性的要点——CPU负载和I/O负载 38 Web应用程序和负载的关系 38 数据库的可扩展性很难保证 39 第7课 处理大规模数据的基础知识 44 面向程序员的大规模数据的基础 44 处理大规模数据的三个重点——写程序的技巧 44 处理大规模数据之前的三大前提知识——程序开发的 底层基础 45 第3章 操作系统的缓存和分布式 ——高效处理大规模数据的原理 50 第8课 操作系统的缓存机制 51 在理解操作系统缓存的基础上编写应用程序——页面 缓存 51 虚拟内存机制 52 Linux页面缓存原理 54 VFS 56 Linux以页面为单位缓存磁盘 57 内存空闲时就缓存——通过sar确认 59 增加内存降低I/O负载 60 页面缓存是透明的 61 第9课 降低I/O负载的策略 67 以缓存为前提的降低I/O负载的策略 67 扩展到多台服务器——无法全部缓存的情况 68 单纯增加数量无法保证可扩展性 69 第10课 利用局部性的分布式 74 什么是利用局部性的分布式? 74 Partitioning——考虑局部性的分布式 75 根据访问模式分割成“岛”——考虑局部性的分布式 78 以页面缓存为前提的基本应用规则 79 第4章 数据库的横向扩展策略 ——以分布式为基础的MySQL应用 82 第11课 正确应用索引 ——分布式MySQL应用的大前提 83 分布式MySQL应用的三大要点 83 灵活应用操作系统缓存 83 索引的重点——B树 86 索引的效果 89 确认索引是否有效的方法——explain命令 92 第12课 MySQL的分布式 ——以扩展为前提的系统设计 95 MySQL的replication功能 95 master/slave的特征——对参照系进行扩展,更新类 不扩展 96 第13课 MySQL的横向扩展和Partitioning 99 MySQL的横向扩展策略 99 关于Partitioning(表分割)的补充 99 以Partitioning为前提的设计 99 避免JOIN——利用where…in… 102 Partitioning的代价 103 第2~4章的小结 107 第5章 大规模数据处理“实践”入门 ——应用程序开发的重点 108 第14课 特殊用途索引——处理大规模数据 109 索引和系统架构——超过RDBMS的处理能力时 109 特殊用途索引——使用调优后的数据结构 111 第15课 理论联系实践 115 探寻必须的技术条件 115 第2~5章小结 117 第6章 压缩编程 ——考虑数据大小和I/O加速之间的关系 118 第16课 [课题]以紧凑、简洁方式保存整数数据 119 以紧凑方式保存整数数据 119 出题意图——解决该课题有什么好处? 119 课题所用文件的内容 121 第17课 可变字节码和速度的感觉 122 可变字节码——用紧凑格式保存整数数据 122 可变字节码的伪代码 123 用“差”存储已排序整数 126 (补充)压缩的基础 126 (补充)压缩对象是整数的情形——背景理论 127 第18课 课题详解及解答范例 129 课题详解 129 (参考)pack()函数——将Perl内部数据结构以 二进制形式输出 131 (参考)二进制数据的read/write 133 (参考)性能分析 135 解答范例和思路 136 第7章 算法实用化 ——从身边的例子来看理论、研究的实践投入 142 第19课 算法和算法评测 143 数据规模和复杂度的差异 143 何谓算法? 144 学习算法的意义——计算机资源有限,工程师的通用 语言 145 算法评测——复杂度记法 146 纸巾能折叠几次?——O(logn)和O(n)的差距 148 算法和数据结构——千丝万缕的联系 149 复杂度和常数项——评测很重要 150 应用算法的实际情况——简单就是美 151 灵活应用第三方实现——CPAN等 153 通过实例加深感受 155 第20课 Hatena Diary的关键字链接 156 什么是关键字链接? 156 最初的实现 156 出问题了!——关键字字典越来越大 157 用模式匹配实现关键字链接的问题 158 从正则表达式到Trie——改变匹配的实现方式 158 Aho-Corasick算法 160 换成Regexp::List 162 关键字链接的实现、变迁和考察 163 第21课 Hatena Bookmark的文章分类 164 什么是文章分类? 164 机器学习和大规模数据 165 大规模数据和Web服务——The Google Way of Science 166 贝叶斯过滤器的原理 167 算法实用化之路——Hatena Bookmark的实例 170 防守姿态和进攻姿态——从文档分类功能说开去 171 第8章 Hatena关键字链接的实现 ——理解通向应用之路 176 第22课 [课题]创建Hatena关键字链接 177 使用Aho-Corasick算法创建Hatena关键字链接 177 编写测试 180 第23课 解答范例和思路 182 解答范例 182 第9章 挑战全文搜索技术 ——各种各样的大规模数据处理经验技巧 184 第24课 全文搜索技术的应用范围 185 用Hatena的数据创建搜索引擎 185 Hatena Diray的全文搜索——搜索服务之外的搜索 系统 185 Hatena Bookmark的全文搜索——满足细节要求的系统 187 第25课 搜索系统的架构 190 搜索系统所需的步骤 190 各种各样的搜索引擎 191 全文搜索的种类 193 第26课 搜索引擎的内部结构 198 逆向索引的结构——Dictionary+Postings 198 Dictionary的创建方法——逆向索引的创建方法 200 小结 210 Postings的创建方法——逆向索引的创建方法 211 关于评分的补充 213 参考文献 214 第10章 创建全文搜索引擎 ——基本部分、改进、速度和准确度的要求 216 第27课 [课题]创建Hatena Bookmark全文搜索 217 开发全文搜索引擎 217 课题内容 217 示例数据格式和数据大小 218 字典的组成——Dictionary、Postings 219 界面 220 基础部分+改进 220 以速度和准确度一决胜负 221 第28课 答案范例和思路 223 解答范例 223 indexer.pl的实现 223 searcher.pl的实现 225 可以改善的地方 227 第11章 支持大规模数据处理的服务器/基础设施入门 —— Web服务的后台 230 第29课 企业软件vs. Web服务 231 企业软件vs. Web服务——应用范围上的差异 231 Web服务的基础设施——三个重点 233 第30课 云vs.自行构建基础设施 235 云计算 235 云的优缺点 235 Hatena应用的云服务 236 自行构筑基础设施的优点 237 自行构建基础设施和垂直结合模型 239 Hatena的服务规模 240 Hatena Bookmark的系统架构图 240 第12章 保证可扩展性的必要思路 ——规模扩大和系统扩展 242 第31课 层和可扩展性 243 对可扩展性的要求——一台服务器能处理的流量极限 243 各层的可扩展性 244 第32课 掌握负载进行调优 245 掌握负载——可视化的管理界面 245 测量负载的指标——平均负载、内存和CPU相关信息 247 根据用途进行调优——面向用户的服务器和面向爬虫 的服务器 247 应用程序服务器、数据库服务器的调优策略和服务器 数量 249 服务规模和调优 250 保证可扩展性 251 第13章 保证冗余性和系统的稳定化 ——实现100%在线率的原理 252 第33课 保证冗余性 253 保证冗余性——应用程序服务器 253 保证冗余性——数据库服务器 254 保证冗余性——存储服务器 257 第34课 系统稳定化 261 保持系统稳定的权衡 261 系统的不稳定因素 262 第35课 系统稳定对策 267 实际的系统稳定对策——维持适当余量,消灭不稳定 因素 267 第14章 提高效率 ——提高硬件资源的使用率 270 第36课 虚拟化技术 271 引入虚拟化技术 271 虚拟化技术的效果 272 虚拟服务器的构建策略 273 总结虚拟化的优势 275 虚拟化和运营——通过服务器管理工具在运营上发挥 虚拟化的优势 276 虚拟化的注意点 277 第37课 硬件和提高效率 ——实现低成本的关键技术 280 提高处理器性能 280 内存和硬盘成本下降 281 有效利用廉价硬件——以虚拟化为前提的硬件应用 282 SSD 284 第15章 Web服务和网络 ——通过网络看服务增长 288 第38课 网络的分界点 289 服务增长和网络的分界点 289 1Gbps的极限——PC路由器的极限 289 500台主机的极限——子网、ARP表的极限 290 网络架构的层次化 291 全球化 292 第39课 挑战更高的极限 295 超越10Gbps的世界 295 Hatena的基础设施——第11~15章的总结 296 第16章 特别篇 当前构建Web服务需要的实践技术 ——应对大规模Web服务须知 298 特别篇第1课 作业队列系统TheSchwartz、Gearman 299 Web服务和请求 299 作业队列系统入门 299 Hatena的作业队列系统 300 通过日志进行分析 302 特别篇第2课 存储方式的选择RDBMS还是 key-value存储 303 如何保存不断增加的数据 303 选择存储系统的前提条件 304 存储系统的种类 305 RDBMS 305 分布式key-value存储 308 分布式文件系统 310 其他存储 312 存储系统的选择策略 314 特别篇第3课 缓存系统——Squid、Varnish 315 Web应用程序负载与代理/缓存系统 315 Squid——基本结构 317 Varnish 321 特别篇第4课 计算集群——Hadoop 323 大量日志数据的并行处理 323 MapReduce计算模型 323 Hadoop 325 索引 327

2018-03-22

SVG开发实践

内容简介 · · · · · · 本书从指导程序员实际开发应用程序的角度,全面系统地介绍了SVG的核心技术。全书分为3篇。第1篇是SVG开发准备篇,介绍SVG的基本知识以及进行SVG开发所需掌握的准备技术,如XML、CSS、JavaScript等。第2篇是SVG基础规范篇,介绍W3C组织为SVG定义的标准,涵盖了SVG规范的大部分内容。第3篇是SVG应用篇,介绍SVG开发的经验和技巧,并且通过几个实例来介绍如何进行SVG的开发。本书内容系统,结构清晰,具有较强的指导性和实用性,适合SVG开发人员学习,也适合作为SVG程序设计参考手册。

2018-03-22

React Native开发指南

React Native开发指南 作 者 :(美)艾森曼(Bonnie Eisenman) 出版发行 : 北京:人民邮电出版社 , 2016.06 ISBN号 :978-7-115-42526-3 页 数 : 223 丛书名 : 图灵程序设计丛书 原书定价 : 59.00 主题词 : 移动终端-应用程序-程序设计-指南 中图法分类号 : TN929.53-62 内容提要: 本书适合前端工程师或WEB开发者,以及希望开发跨平台移动应用的其他开发人员。 参考文献格式 : (美)艾森曼(Bonnie Eisenman). React Native开发指南[M]. 北京:人民邮电出版社, 2016.06.

2018-03-20

React Native移动开发实战(袁林编著)

React Native移动开发实战 作 者 :袁林编著 出版发行 : 北京:机械工业出版社 , 2017.07 ISBN号 :978-7-111-57179-7 页 数 : 306 原书定价 : 69.00 主题词 : 移动终端-应用程序-程序设计 中图法分类号 : TN929.53 内容提要: 本书以实战开发为主旨,以ReactNative应用开发为主线,以iOS和Android双平台开发为副线,通过完整的电商类App项目案例,详细地介绍了ReactNative应用开发所涉及的知识。 参考文献格式 : 袁林编著. React Native移动开发实战[M]. 北京:机械工业出版社, 2017.07.

2018-03-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除