Module 1: Intro to Core Programming Concepts Flashcards
What are the computer data storage and processing concepts.
Numbering Systems and Binary, Hexadecimal, ASCII Table, Computer Memory, Memory Size, Memory Addressing, CPUs and Registers.
What are the application types.
Command Line Applications, Describe Windows and Other GUI Applications, Web- Based Applications.
What are the components of the lifecycle of an application.
Envisioning and Planning, Developing and Testing,
Release and Maintenance.
What are the two code compilations?
Native Code Compiling, Intermediate Code Compiling.
Describe computer number systems.
Numbering Systems and Binary- numbering system based on 10 values and therefore the term base 10 (0-9) binary system number is base 2(only two possible values 0 or 1).
Hexadecimal- numbering system that is known as base 16—uses 16 values to represent values(0-9 then A-F after)
ASCII Chart- decimal and hexadecimal values that are used to represent the characters allow us to see how they are represented as codes in the computer, 256 values.
Describe computer memory concepts.
Computer memory is an area that is used to store and retrieve information (data). Computer memory is a hardware component that is in the form of electronic circuits that store voltage.
Categorize computer memory as volatile (requires electricity to store memory) and non-volatile(does not).
To store data into computer memory, the operating system, along with the CPU and the computer hardware, work with a memory address system. This address system permits the operating system and the CPU to access the data stored in a memory chip.
Computer memory is known as Random Access Memory or RAM. This term indicates that you can access the contents of the memory randomly.
Memory Size- Bytes. One byte is equal to 8 bits, which is enough to store one letter, number, or symbol, megabytes Mega is short for million and is equal to 1,048,576 bytes, Gigabytes (GB). A thousand megabytes, or more precisely, 1,073,741,824 bytes, Terabytes (TB). A thousand gigabytes, or a really large number, 1,099,511,627,776 bytes,
Memory addressing- Computer memory is addressable in hexadecimal. Computer memory addresses start at zero and go all the way up to the maximum size of memory in the computer. Using hexadecimal addressing, your program requests the data stored at address 0x3FD. The computer knows how to gain access to that memory location and it will return the data that is found there.
Describe how a CPU operates.
CPU is the heart of the computer. The CPU determines the architecture of the computer system. CPU determines the instruction set that a computer recognizes. The CPU contains many components, most importantly are the actual processor, the math co-processing components, control components, and some internal memory known as registers. When a program executes, instructions are evaluated by the CPU and an action is taken based on the instruction. When the comparison is done, the result is stored in another CPU register. When the instruction completes, the code moves to the next instruction and the data is either discarded or saved, based on what the program is doing.
Describe the most common types of applications.
Command-Line Applications, Windows and Other GUI Applications, Web-Based Applications.
Describe native code compilation.
Native code compiling refers to the process of compiling code to execute on a specific CPU. The code is converted into the native instructions that the CPU understands. This is the fastest code execution model because no translation is necessary. Native code doesn’t always mean that the code is compiled for a specific CPU.
Describe Command Line Applications.
Command-Line Applications- A command-line application does not use graphical elements that are mouse or touch-enabled. Command-line applications are sometime called MS-DOS applications or MS-DOS prompt applications. Command-line applications require a user to type commands by using the keyboard and to read output on the screen in the textual format. EX Command Prompt Window.
Describe Windows and Other GUI Applications.
Windows and Other GUI Applications- GUI-based applications have well-designed graphics and user interface elements that users interact with as the application executes. These elements include window elements that provide a frame for the application along with buttons, images, and other controls such as sliders and lists. To interact with GUI-based applications, you require a mouse although they also accept input from keyboards for entering text and touch input by using a finger or a stylus.
Describe Web-Based Applications.
Web-Based Applications- Web-based refers to the World Wide Web and the applications that run on the Internet as a whole but more commonly within Web browsers on the user’s computer. You can classify Web-based applications as client-side or server-side.
Describe Client-side applications.
Client-side applications are webpages that load in the browser and have functionality that is incorporated through the use of a client-side scripting language, such as JavaScript or Visual Basic Scripting Edition (VBScript). These scripting languages are interpreted by the browser and all the functionality happens within the browser and on the local computer, with certain restrictions such as local file system access.
Describe Server-side applications.
Server-side applications are webpages that rely on a Web server to provide the functionality. Typical Web servers are Microsoft’s Internet Information Server (IIS) and Apache. These Web servers host the pages that make up the Web-based application and send the HTML down to the user’s computer for display by the browser. The user interacts with the application by filling out fields on a form or interacting with the page in some other way. The difference between client and server is that the user’s actions and supplied data are sent to the server where the server processes the data and returns results or other pages based on the code.
Describe the Envisioning and Planning step of the application life-cycle.
Envisioning and Planning- concept created with high- level ideas, vision documents created, purpose application is intended to solve, planning begins and creating functional specifications begin, involves identifying request for proposals, project cost estimates.