Chapter 1 Network Programmability Flashcards

Network Programmability Foundation

1
Q

What does Software Version Control (SVC) imply?

A

The use of a master database/controller to store current and past versions of the source code to allow multiple people to work on the code.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Who developed Git and why?

A

Git was developed by Linux Torvalds as the alternative SVC (BitKeeper) wasn’t allowed anymore on Linux systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the three main structures tracked by Git?

A
  • Local workspace -> where you store files
  • Staging area -> intermediate storage area for items to be synced
  • Head/Local repository -> where all committed items are stored
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the statuses a file can have in Git?

A
  • Untracked -> just created, never committed or ignored files
  • Unmodified -> files not changed
  • Modified -> file changed with git add
  • Staged -> committed files
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What does the command ‘git clone’ do?

A

Copies the files to your local workspace to work on them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How do you initiate a repository locally with Git?

A
  • git clone <url to repository> <directory to clone into>
  • git init <repository name>
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What command is used to add all files in the directory to the staging area?

A

git add .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does ‘git commit -a -m <message>' do?</message>

A

Commits changes with a message and automatically stages any modified files.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is a detached head in Git?

A

The state where you checked out a specific past commit.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the two situations possible when merging branches in Git?

A
  • Fast-Forward merge -> branch pushed as no updates on the master
  • 3-Way merge -> combine changes of master and branch into master
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What command shows the log of all commits in a Git repository?

A

git log

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the primary purpose of RPC (Remote Procedure Calls)?

A

To identify a remote procedure to execute on the remote system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the HTTP methods primarily used in RPC APIs?

A
  • HTTP GET
  • HTTP POST
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What does REST stand for?

A

Representational State Transfer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What HTTP methods are commonly used in REST APIs?

A
  • GET
  • POST
  • PUT
  • PATCH
  • DELETE
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the two types of API calls in REST?

A
  • Synchronous
  • Asynchronous
17
Q

What is a challenge of synchronous APIs?

A

Blocking Operations that require the client to wait for a response.

18
Q

What is a challenge of asynchronous APIs?

A

Complexity in Implementation.

19
Q

What are the two categories of Python data types?

A
  • Mutable
  • Immutable
20
Q

What does the term ‘mutable’ mean in the context of Python data types?

A

Data types that can be changed after initialization.

21
Q

What does the command ‘git push <-remotename> <-branchname>’ do?

A

Pushes changes to the remote repository.

22
Q

True or False: REST APIs are only limited to JSON as a data transfer format.

23
Q

What is the purpose of the ‘git merge <destination>' command?</destination>

A

Merges two branches.

24
Q

What does ‘git diff’ do?

A

Shows the difference between the working directory and index (staging area).

25
Q

Benefits of Python virtual environments

A

Isolation
Portability
Easy management
Security
Cross-platform compatibility

26
Q

Disadvantages of Python virtual environments

A

Additional overhead
Storage
Time Consuming

27
Q

Terraform 3 phases

A

Write -> write configuration of resources to be created and it’s attributes
Plan -> Analyze the written configuration and the active one to define a plan to create, update or destroy resources
Apply -> Apply the planned changes