IOS开发之——网络-网络基础(01)

一 概述

  • 为什么要学习网络编程
  • 网络编程示例
  • 客户端、服务器、请求、响应
  • 服务器

二 为什么要学习网络编程

2.1 在移动互联网时代,移动应用的特征有:

  • 几乎所有应用都需要用到网络,比如QQ、微博、网易新闻、百度地图
  • 只有通过网络跟外界进行数据交互数据更新,应用才能保持新鲜、活力
  • 如果没有了网络,也就缺少了数据变化,无论外观多么华丽,终将变成一潭死水

2.2 移动网络应用=良好的UI+良好的用户体验+实时更新的数据

  • 新闻:网易新闻、新浪新闻、搜狐新闻、腾讯新闻
  • 视频:优酷、百度视频、搜狐视频、爱奇艺视频
  • 音乐:QQ音乐、百度音乐、搜狗音乐、酷我音乐
  • LBS:百度地图、高德地图、大众点评、墨迹天气、滴滴打车
  • 电商:淘宝、京东商城、天猫、蘑菇街、凡客诚品、美丽说
  • 社交:QQ、微信、微博、陌陌、比邻

2.3 为什么要学习网络编程

  • 网络编程是一种实时更新应用数据的常用手段
  • 网络编程是开发优秀网络应用的前提和基础

三 网络编程示例

四 客户端、服务器、请求、响应

4.1 在网络编程中,有几个必须掌握的基本该概念

  • 客户端(Client):移动应用(iOS、android等应用)
  • 服务器(Servver):为客户端提供服务、提供数据、提供资源的机器
  • 请求(Request):客户端向服务器索取数据的一种行为
  • 响应(Response):服务器对客户端的请求作出的反应,一般指返回数据给客户端

4.2 客户端、服务器、请求、响应的关系

五 服务器

按照软件开发阶段来分,服务器可以大致分为2种:

5.1 远程服务器

  • 别名:外网服务器、正式服务器
  • 使用阶段:应用上线后使用的服务器
  • 使用人群:供全体用户使用
  • 速度:取决于服务器的性能、用户的网速

5.2 本地服务器

  • 别名:内网服务器、测试服务器
  • 使用阶段:应用处于开发、测试阶段使用的服务器
  • 使用人群:仅供公司内部的开发人员、测试人员使用
  • 速度:由于是局域网,所以速度飞快,有助于提高开发测试效率