1/30
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
|---|
No study sessions yet.
Server-Client Model
Communication between client (browser) and server (web server); typically request-response loop.
IP Protocol
Responsible for addressing, routing, and delivering packets across networks.
Application Layer Protocol
Protocols used by applications, e.g., HTTP, FTP, DNS.
Top Level Domain (TLD)
The most general level of a domain name.
Second/Third Level Domain
More specific hierarchy in domain names.
Recursive DNS Server
Works like 'yellow pages' to find IP addresses from domain names.
URL Fragment
#fragment allows navigation to a specific section of a webpage.
Connectionless
Client disconnects after each request.
Stateless
Each request is independent; server does not store state between requests.
GET Request
Retrieves resource content.
HEAD Request
Retrieves headers only, without content.
Project Attributes
Temporary, requires resources, unique purpose.
Uncertainty in Projects
Highest at project start, decreases over time.
Waterfall Model
Best when technology is well-understood and project is short.
Logic Errors
Incorrect reasoning that produces wrong results; not detected by compiler.
Run-Time Errors
Can be caused by logic errors.
Unit Testing
Tests individual functions/classes/modules.
Integration Testing
Tests interactions/interfaces between modules. Incremental integration possible.
System Testing
Tests full system; includes functional and non-functional requirements (performance, reliability).
Acceptance Testing
Alpha/beta testing by users for approval.
Black-Box Testing
Tests functionality without internal code knowledge; focuses on input/output.
White-Box Testing
Tests internal logic, every line of code, structure, and paths.
Version Control
Managing multiple versions of code/documents.
Centralized Systems
CVS, Subversion; single main repository.
Distributed Systems
Git, Mercurial; every repository is full.
Git Advantages
Efficient, industry standard, supports collaboration, allows 'time machine' functionality.
Typical Git Workflow
1. git pull → update local repo from remote 2. Edit files 3. git add → stage changes 4. git commit -m 'message' → commit changes locally 5. git push → send changes to remote repository.
Requirement Analysis
Understand what users and stakeholders need.
Functional Design
Decide what functions/features the system must have.
High-Level Design
Break system into modules or components.
Detailed Design
Define code architecture, skeleton, and documentation.