Shared Flashcard Set

Details

IS302 Flash Cards
Definitions
89
Computer Science
Undergraduate 3
01/04/2023

Additional Computer Science Flashcards

 


 

Cards

Term
Term
Definition
Definition
Term
Front-end
Definition
The part of an application or website with which the user interacts directly.
Term
Back-end
Definition
The part of an application or website with which the user cannot see or interact with directly.
Term
Full-stack
Definition
The entirety of an application or website, comprising both the front end and the back end.
Term
DOM
Definition
The Document Object Model (DOM) is a programming interface for web documents. It represents the page so that programs can change the document structure, style, and content.
Term
API
Definition
API stands for: Application Programming Interface. It's purpose is to provide a way for programs to easily access and exchange data.
Term
Encryption
Definition
The process of converting information or data into a code, especially to prevent unauthorized access.
Term
Decryption
Definition
While encryption converts information into a code, the purpose of decryption is to convert the same information's code back to it's original form.
Term
HTTP
Definition
Hypertext Transport (or Transfer) Protocol, the data transfer protocol used on the World Wide Web.
Term
HTTPS
Definition
Basically the same as HTTP, but uses encryption methods to secure the data passed to and from webpages.
Term
CI/CD
Definition
CI/CD stands for: Continuous Integration, Continuous Delivery,
and the purpose of CI/CD systems is to deliver code changes to an application or website more frequently and reliably.
Term
UI
Definition
UI stands for: User Interface. UI developers try to make a website's interface easy to use and navigate.
Term
UX
Definition
UX stands for: User Experience. UX developers focus on making a website's design more appealing to it's visitors.
Term
Serverless
Definition
As written on the cloudflare blog: Serverless computing is a method of providing backend services on an as-used basis. A serverless provider allows users to write and deploy code without the hassle of worrying about the underlying infrastructure. A company that gets backend services from a serverless vendor is charged based on their computation and do not have to reserve and pay for a fixed amount of bandwidth or number of servers, as the service is auto-scaling. Note that despite the name serverless, physical servers are still used but developers do not need to be aware of them.
Term
Backend operations
Definition
These are operations that are performed in the backend because they're either too time or memory intensive for the front-end, or these operations simply cannot be performed in the frontend because they require libraries or frameworks that only work on the backend.
Term
Request/Response
Definition
The way the frontend and backend communicate with each other is with requests and responses. A frontend script can request data from the backend, and a script in the backend can then send that data as a response.
Term
Cache
Definition
The cache is where data can be temporarily stored on a browser or computer in order to save time loading the same data over and over again every time it is required.
Term
Command-line
Definition
The command-line is an interface for typing commands directly to a computer's operating system. This is the most direct and fastest way to perform operations on a computer's operating system like launching a PHP server, creating directory, executing scripts, changing file permissions and much more...
Term
Virtual machine
Definition
A virtual machine is a computer system that emulates a physical, remote machine in order to perform operations on that machine like hosting a website, or storing data.
Term
AWS
Definition
AWS, which stands for: Amazon Web Services, is currently the biggest provider of these virtual machines, plus many other services like file storage.
Term
Database
Definition
A database is a structured collection of data, most of the time databases are needed for storing high volumes of user data.
Term
XML
Definition
XML stands for eXtensible Markup Language. XML plays an important role in many different IT systems and is often used for distributing data over the Internet. Read This article to get a better understanding of XML.
Term
JSX
Definition
JSX stands for JavaScript XML. JSX allows you to write HTML in ReactJS.
Term
JSON
Definition
JSON is an acronym for JavaScript Object Notation. It is an open standard format, which is lightweight and text-based, designed explicitly for human-readable data interchange. It is a language-independent data format. It supports almost every kind of language, framework, and library.
Term
Firewall
Definition
A network security system that monitors and controls incoming and outgoing network traffic based on predetermined security rules.
Term
IP Address
Definition
An IP address is a unique string of characters that identifies each computer using the Internet Protocol to communicate over a network. IP addresses come in 2 types: IPv4 and IPv6.
Term
IPv4
Definition
IPv4(IP version 4) addresses are 32-bit integers which will be expressed in decimal notation. Example- 192.0.2.126 could be an IPv4 address. IPv4 addresses are most common.
Term
IPv6
Definition
IPv6(IP version 6) is the improved version of IPv4. IPv6 addresses are more unique than IPv4 addresses and therefor offer more address variations. In addition to offering more addresses, IPv6 also implements features not present in IPv4. It simplifies aspects of address configuration, network renumbering, and router announcements when changing network connectivity providers.
Term
Proxy Server
Definition
This is a server that acts as an intermediate between a client and its destination server. A proxy server can let you make web requests through a different IP address. Proxies are most popularly used in VPNs and are useful if you want to hide your location, personal data or your overall identity on the web.
Term
VPN
Definition
VPN stands for “virtual private network”. VPNs protect your internet connection and privacy online. They create an encrypted tunnel for your data, protect your online identity by hiding your IP address using proxy servers, and allow you to use public Wi-Fi hotspots safely.
Term
Nginx
Definition
Nginx, pronounced like “engine-ex”, is an open-source web server used for processing web requests.
Term
Apache
Definition
Apache is the most widely used web server software similar to Nginx.
Term
Jamstack
Definition
Jamstack is an architecture designed to make the web faster, more secure, and easier to scale. It builds on many of the tools and workflows which developers love such as ReactJS. The core principles of pre-rendering and decoupling enable sites and applications to be delivered with greater confidence and resilience than ever before.
Term
Sudo
Definition
Sudo, standing for "SuperUser DO" is used to access restricted files and operations. By default, Linux systems restrict access to certain parts of the system preventing sensitive files from being compromised. The sudo command temporarily elevates privileges allowing users to complete sensitive tasks without logging in as the root user.
Term
Web Scraping
Definition
Web Scraping is the process of extracting data from external websites. Some of the most popular Web Scraping libraries include: Puppeteer, Selenium and BeautifulSoup.
Term
Git
Definition
Git is used for tracking changes in files and directories. Git is usually used for coordinating work among developers collaboratively developing source code during software development.
Term
Cron jobs
Definition
Cron jobs are jobs scheduled by the backend to run at set intervals. Cron jobs are mostly used for managing back-end jobs created by users through the front-end.
Term
Responsive Web Design
Definition
Responsive web design, also referenced as RWD design, is a modern web design approach that allows websites to render (or display) on all devices and screen sizes by automatically adapting to the screen, whether it’s a desktop, laptop, tablet, or smartphone.
Term
MySQL
Definition
MySQL is a relational database management system (RDBMS) developed by Oracle that is based on structured query language (SQL). A database is a structured collection of data. It may be anything from a simple shopping list to a picture gallery or a place to hold the vast amounts of information in a corporate network.
Term
NoSQL
Definition
NoSQL is famous for its high functionality and ease of development with a performance at scale. NoSQL is called a non-relational database. It does not follow the rules of relational database management systems (RDBMS), and hence does not use traditional SQL statements to query data. 2 famous examples of NoSQL systems are MongoDB and Neo4J.
Term
Environment variables
Definition
An environment variable is a variable whose value is set outside a program, typically through the operating system. Environment variables eliminate the need to define and redefine variables through programs.
Term
ReactJS
Definition
You've probably heard a ton about React on dev.to, but what exactly is ReactJS? React is currently the most popular javascript front-end framework. Developed by Facebook in 2013, React is used to build interactive user interfaces.
Term
Angular
Definition
Angular is a development platform, built on TypeScript. As a platform, Angular includes:

A component-based framework for building scalable web applications
A collection of well-integrated libraries that cover a wide variety of features, including routing, forms management, client-server communication, and more
A suite of developer tools to help you develop, build, test, and update your code
With Angular, you're taking advantage of a platform that can scale from single-developer projects to enterprise-level applications. Angular is designed to make updating as straightforward as possible, so take advantage of the latest developments with a minimum of effort.
Term
Docker
Definition
Docker is a software platform that allows you to build, test, and deploy applications quickly. Docker packages software into standardized units called containers that have everything the software needs to run including libraries, system tools, code, and runtime. Using Docker, you can quickly deploy and scale applications into any environment and know your code will run.
Term
Kubernetes
Definition
Kubernetes is a portable, extensible, open-source platform for managing containerized workloads and services.

The name Kubernetes originates from Greek, meaning helmsman or pilot. K8s as an abbreviation results from counting the eight letters between the "K" and the "s". Google open-sourced the Kubernetes project in 2014. Kubernetes combines over 15 years of Google's experience running production workloads at scale with best-of-breed ideas and practices from the community.
Term
Rust
Definition
Rust is a statically-typed programming language designed for performance and safety, especially safe concurrency and memory management.
Term
TensorFlow
Definition
TensorFlow is an end-to-end open source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries and community resources that lets researchers push the state-of-the-art in ML and developers easily build and deploy ML powered applications.
Term
Solidity
Definition
Solidity is a statically-typed curly-braces programming language designed for developing smart contracts that run on Ethereum.
Term
Laravel
Definition
Laravel is a PHP framework with expressive, elegant syntax. It is the most popular PHP framework.
Term
Go
Definition
Go language is a programming language initially developed at Google in the year 2007 by Robert Griesemer, Rob Pike, and Ken Thompson. It is a statically-typed language having syntax similar to that of C. It provides garbage collection, type safety, dynamic-typing capability, many advanced built-in types such as variable length arrays and key-value maps. It also provides a rich standard library. The Go programming language was launched in November 2009 and is used in some of Google's production systems
Term
jQuery
Definition
jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and AJAX much simpler with an easy-to-use API that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript.
Term
AJAX
Definition
Ajax stands for Asynchronous Javascript And XML. Ajax is just a means of loading data from the server and selectively updating parts of a web page without reloading the whole page.

Basically, what AJAX does is it makes use of the browser's built-in XMLHttpRequest(XHR) object to send and receive information to and from a web server asynchronously, in the background, without blocking the page or interfering with the user's experience.

Ajax has become so popular that you hardly find an application that doesn't use Ajax to some extent. The example of some large-scale Ajax-driven online applications are: Gmail, Google Maps, Google Docs, YouTube, Facebook, Flickr, and many more.
Term
NodeJS
Definition
Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripts to produce dynamic web page content before the page is sent to the user's web browser. Consequently, Node.js represents a "JavaScript everywhere" paradigm, unifying web-application development around a single programming language, rather than different languages for server-side and client-side scripts.
Term
NPM
Definition
NPM is two things: first and foremost, it is an online repository for the publishing of open-source Node.js projects; second, it is a command-line utility for interacting with said repository that aids in package installation, version management, and dependency management. A plethora of Node.js libraries and applications are published on npm, and many more are added every day. These applications can be searched for on their website. Once you have a package you want to install, it can be installed with a single command.
Term
CSS
Definition
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript.

CSS is designed to enable the separation of presentation and content, including layout, colors, and fonts. This separation can improve content accessibility; provide more flexibility and control in the specification of presentation characteristics; enable multiple web pages to share formatting by specifying the relevant CSS in a separate .css file, which reduces complexity and repetition in the structural content; and enable the .css file to be cached to improve the page load speed between the pages that share the file and its formatting.
Term
Git
Definition
Git is a software used for tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data integrity, and support for distributed, non-linear workflows (thousands of parallel branches running on different systems).
Term
AWS
Definition
Amazon Web Services, Inc. (AWS) is a subsidiary of Amazon providing on-demand cloud computing platforms and APIs to individuals, companies, and governments, on a metered pay-as-you-go basis. These cloud computing web services provide a variety of basic abstract technical infrastructure and distributed computing building blocks and tools. One of these services is Amazon Elastic Compute Cloud (EC2), which allows users to have at their disposal a virtual cluster of computers, available all the time, through the Internet. AWS's virtual computers emulate most of the attributes of a real computer, including hardware central processing units (CPUs) and graphics processing units (GPUs) for processing; local/RAM memory; hard-disk/SSD storage; a choice of operating systems; networking; and pre-loaded application software such as web servers, databases, and customer relationship management (CRM).
Term
Google Cloud
Definition
Google Cloud Platform (GCP), offered by Google, is a suite of cloud computing services that runs on the same infrastructure that Google uses internally for its end-user products, such as Google Search, Gmail, Google Drive, and YouTube. Alongside a set of management tools, it provides a series of modular cloud services including computing, data storage, data analytics and machine learning.
Term
Microsoft Azure
Definition
Microsoft Azure, often referred to as Azure, is a cloud computing service operated by Microsoft for application management via Microsoft-managed data centers. It provides software as a service (SaaS), platform as a service (PaaS) and infrastructure as a service (IaaS) and supports many different programming languages, tools, and frameworks, including both Microsoft-specific and third-party software and systems.
Term
Selenium
Definition
The selenium package is used to automate web browser interaction from Python. It is often used to make bots and web scrapers.
Term
Django
Definition
Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.
Term
Refractor
Definition
the process of restructuring code, while not changing its original functionality
Term
Deploy to the cloud
Definition
Cloud deployment is the process of deploying an application through one or more hosting models—software as a service (SaaS), platform as a service (PaaS) and/or infrastructure as a service (IaaS)—that leverage the cloud. This includes architecting, planning, implementing and operating workloads on cloud
Term
Web Sever
Definition
On the hardware side, a web server is a computer that stores web server software and a website's component files (for example, HTML documents, images, CSS stylesheets, and JavaScript files). A web server connects to the Internet and supports physical data interchange with other devices connected to the web.
On the software side, a web server includes several parts that control how web users access hosted files. At a minimum, this is an HTTP server. An HTTP server is software that understands URLs (web addresses) and HTTP (the protocol your browser uses to view webpages). An HTTP server can be accessed through the domain names of the websites it stores, and it delivers the content of these hosted websites to the end user's device.
Term
Loccal dev environment
Definition
A local development environment (LDE) is a way of configuring services on our laptop/desktop to run a website or a web application. This entails installing a web server, a database, and some sort of a language as Node. js, Python, PHP, and others.
Term
Node.js
Definition
an open source, cross-platform runtime environment for executing JavaScript code. Node is used extensively for server-side programming, making it possible for developers to use JavaScript for client-side and server-side code without needing to learn an additional language.
Term
EC2
Definition
Amazon Elastic Compute Cloud (Amazon EC2) provides scalable computing capacity in the Amazon Web Services (AWS) Cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster. You can use Amazon EC2 to launch as many or as few virtual servers as you need, configure security and networking, and manage storage. Amazon EC2 enables you to scale up or down to handle changes in requirements or spikes in popularity, reducing your need to forecast traffic.
Term
Linux Box
Definition
a machine that runs linux
Term
Spin up a server
Definition
“Spinning up” a server refers to the discs in the hard-drive of a server physically spinning up to speed to serve their contents. When developing a new web application, it can be useful to test how your website is served via HTTP before hosting publicly. This is where localhost comes in.
Term
HTTP Request
Definition
An HTTP request is made by a client, to a named host, which is located on a server. The aim of the request is to access a resource on the server. To make the request, the client uses components of a URL (Uniform Resource Locator), which includes the information needed to access the resource.
Term
GET Request
Definition
A GET request, in simple terms, is a way for you to grab data from a data source with the help of the internet. It's done using the GET request method, which is a very common HTTP request method (like POST, PUT, or DELETE).
Term
POST Request
Definition
POST is a request method supported by HTTP used by the World Wide Web. By design, the POST request method requests that a web server accept the data enclosed in the body of the request message, most likely for storing it. It is often used when uploading a file or when submitting a completed web form
Term
PUT Request
Definition
The HTTP PUT request method creates a new resource or replaces a representation of the target resource with the request payload
Term
DELETE Request
Definition
DELETE requests are made for deleting the specified resource (file, record etc).
Term
JSON payload
Definition
The request payload is important information in a data block that clients send to the server in the body of an HTTP POST, PUT or PATCH message that contains important information about the request. The Payload can be sent or received in various formats, including JSON
Term
Web server endpoint
Definition
A web address (URL) at which customers of a specific service can gain access to it. By referencing that URL, customers can get to operations provided by that service. The endpoint is a connection point where HTML files or active server pages are exposed
Term
URL / path / query string
Definition
A URL, or Uniform Resource Locator, is effectively a unique web address. It represents the “location” of a specific resource on the internet. The term URL refers to a subset of Uniform Resource Indicators (URIs) that, in addition to identifying the web resource—also provides the means of locating it. A querystring is a set of characters input to a computer or Web browser and sent to a query program to recover specific information from a database.
Term
Front-end
Definition
The part of an application or website with which the user interacts directly.
Term
Frontend Install
Definition
install react – React is part of the JavaScript ecosystem. So, you must first install JavaScript. Then, use JavaScript to install React.
Term
Frontend Install Node.js
Definition
• first install JavaScript. Install nodejs for Windows.
• Follow the steps.
• Check all the boxes.
• Start the command line.
Term
Frontend checking node is installed
Definition
• Type “node” on the command line.
• Type; console.log(“Hello, World!”) – Hit enter
• Type console.log(x+x) this will produce 10
• Ctrl-D brings you back to the control prompt.
Node interprets everything as JavaScript.
Term
Create a “Hello, World!!” React App (1)
Definition
• Command line @ command prompt
• type npx create-react-app hello world.
• Accept all the defaults.
• Look in the drive file: C or Z
• Open hello-world file
• Open “src”
• Go to the command line
• Type npm start
• Press enter.
Term
Create a “Hello, World!!” React App (2)
Definition
• Open “visual studio”
• Go to open file.
• Go to the drive (C or Z) find Hello-world
• Select “Hello World”
• Select “src” select “App.js”
• Select open
• Jsx code will appear
• Find the file in the jsx code.
• Highlight and type “Hello, World!!”
• Type ctrl-s to save.
Term
Library
Definition
• extends the base language.
Term
Framework
Definition
• set of standard folder structures that define the meat of the operation.
Term
Create a “Hello, World!!!” non-react site with HTML and CSS
Definition
• open Visual Studio • select new file • create an html file

Hello, World!!

• save file • save on the desktop • ctrl o • open the file
Term
Convert to React app
Definition
• open the Power Shell (command-line) • open the project folder: cd .\hello-world\ (press enter) • type npm start • open visual studio • select open recent • select Hello-world file • type: localhost:3000 in the chrome browser • copy html file body

Hello, World!!

• replace (jsx) file with the html • ctrl-s to save.
Term
Version Control Create a new React app and push it to a new Github repository.
Definition
• Make a new GitHub repository
• GitHub account (anthonywilsonBas-IS)
• Make a new repository
• Select (plus) in the upper right corner
• Give it a name
• Description – how to push a new react project to GitHub repository
• Select create repository
• Create new repository on the command line
• Select double squares in the upper (R) corner.
• Paste to the command line
• Refresh
• Type, git add. (dot at the end) adds everything from the current directory.
• Type, git commit -m “type whatever works with the file”
• Git push origin main
Term
To get bash
Definition
• Go to the dive your file is located in
• R-click
• Select “git bash here”
• Command line will open
• Type – ls
• Type npx create-react-app new-app
• Go into the folder were new-app was created
• Type ls
• Run the command by selecting the double square in the upper right corner.
Supporting users have an ad free experience!