转自Udacity
Concept List
Network — the system of interconnected computer networks from which we can access data.
Data — images, text, video, or any media that can be used by our apps.
Protocol — a way of communicating; standard operating procedure; the rules for communication
HTTP (Hypertext Transfer Protocol) — a protocol or “handshake” that defines how messages (and data) are sent and received by computers; the underlying protocol for the World Wide Web
Client — a computer that requests data (or services) from a server
Server — a computer that provides data (or services) to a client upon request
HTTP request — a request for data (or a resource) that a client makes to a server; there are various types of HTTP requests called “HTTP methods”
URL (Uniform Resource Locator) — specifies the location for retrieving data over the web; can be thought of as the name of a file on the World Wide Web, because it usually refers to a file on some machine on the network
HTTP method — specifies the type of HTTP request that is being made; in this course, we will also called these (HTTP) request types
HTTP status code — a number returned in response to an HTTP request which indicates the result of the request; you may also hear these referred to as “response codes” or “status messages”; here is a nice listing of different HTTP status codes
HTTP GET request — a type of HTTP request where a client requests a specified resource from a server
Completion handler — a block of code that is executed after something completes like a network task
HTTPS — a protocol built on top of HTTP that ensures data sent over the network is encrypted, or concealed, from unauthorized access
ATS (App Transport Security) — Apple’s set of security standards for ensuring our apps keep users’ data safe
Singleton — a special kind of object that can only be instantiated once
NSURL — represents a URL
NSURLSession — manages network requests for our app
NSURLSessionConfiguration — specify settings (ex. timeout interval) for a NSURLSession
NSURLSessionTask — a network task that can be executed
NSURLSessionDataTask — subclass of NSURLSessionTask; downloads data directly into memory
NSURLSessionDownloadTask — subclass of NSURLSessionTask; downloads data to a temporary file
NSURLSessionUploadTask — subclass of NSURLSessionTask; specialized for uploading data
NSData — represents data as raw bytes
NSURLResponse — a container for information about the response to a network request such its status code
NSError — a container for information about an error condition
Web service — a software application that enables the communication of data over a network
API (Application Program Interface) — a set of methods that are specialized for a purpose; many web services are also referred to as APIs or “network” APIs
JSON (JavaScript Object Notation) — a data format used frequently to communicate data over a network
Parameters (in a URL) — a value specified in a URL usually in the format of “parameter=value”
ASCII (American Standard Code for Information Interchange) — a simple way of representing characters in a computer
URL escaping/encoding — a mechanism for ensuring that all characters in a URL are valid ASCII characters
API key — a value distributed by an API provider that uniquely identifies applications using it service
NSURLRequest — represents a configurable URL that can specify properties such as the HTTP method type
Serialization — converting an object into a stream of bytes; this is often done to send an object over the network so that it can be recreated somewhere else
Deserialization — converting a stream of bytes into an object; the opposite of serialization
NSJSONSerialization — a class used to convert bytes of JSON data into objects or vice versa
NSDictionary — Objective-C’s version of a Dictionary; sometimes we must use it in Swift when working with certain APIs like NSJSONSerialization
NSArray — Objective-C’s version of an Array; sometimes we must use it in Swift when working with certain APIs like NSJSONSerialization