Application generation

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/27

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

28 Terms

1
New cards

what is the purpose of applications

programs that allow a user to complete a task. requires systems software to run

  • desktop publishing

  • word processing

  • spreadsheets

  • web browsers

2
New cards

what are the different application software

word processors: used for writing letters, reports and other documents

spreadsheet packages: these allow a user to model complex situations, and are often used for financial calculations

presentation software: used to make on-screen slide shows to accompany presentations

desktop publishing software: used for documents where layout is important, such as newsletters

3
New cards

what is the role of utility software in a computer system?

small programs designed to help with the maintenance of a system.

4
New cards

what are the different types of utility software

  • compression

  • disk defragmentation

  • antivirus

  • automatic updating

  • backup

5
New cards

disk defragmentation

utility rearranges the contents of the hard drive so they can be accessed faster, thus improving performance.

As the hard disk becomes full, read/write times slow down. This is because files become fragmented as they are stored in different parts of memory.

6
New cards

compression

This is used when compressing large files to be transmitted across the Internet and is commonly used to compress scanned files.

7
New cards

antivirus

Antivirus is responsible for detecting potential threats to the computer, alerting the user and removing these threats

8
New cards

automatic updating

This utility ensures the operating system is kept up to date, with any updates being automatically installed when the computer is restarted. ensures the system is less vulnerable to malware and hacking threats

9
New cards

what is open sourced software

Open source code can be used by anyone without a license and is distributed with the source code.

10
New cards

what is closed source software

It is owned by an organisation and has a licence to protect it from copyright. The source code is compiled into machine code. The machine code is then stored as an executable file and this is what is sold as the application.

11
New cards

benefits and drawbacks of open sourced software

  • Can be modified and improved by anyone

  • Technical support from online community

  • Can be modified and sold on

  • Support available online may be insufficient or incorrect. No user manuals.

  • Lower security as may not be developed in a controlled environment

12
New cards

benefits and drawbacks of closed source software to creator and user using each of the licensing models

Thorough, regular and well-tested updates

  • Company owning software provides expert support and user manuals. ]

  • High levels of security as developed professionally.

  • License restricts how many people can use the software at once

  • Users cannot modify and improve software themselves

13
New cards

why do we need translators when writing programs

A translator is a program that converts high-level source code into low-level object code, which is then ready to be executed by a computer

14
New cards

high level code

code that is written and understood by the programmer but not the computer. low-level code can be executed by a computer but cannot be directly understood.

15
New cards

operation of interpreters

translates source code one line at a time. Once translated, the machine code is executed immediately.

16
New cards

operation of compilers

translates high level language source code into machine code which is stored in an object file after carrying out a number of checks and reporting back any errors

17
New cards

benefits and drawbacks of interpreters

  • less prone to computer crashing.

  • some interpreters execute code within a virtual machine which insulates the host computer from defective code.

  • slower to run as every line has to be translated.

  • useful for testing sections of code an pin pointing errors as time is not wasted compiling the entire program.

18
New cards

benefits and drawbacks of compilers

  • faster as all translation is done at once and the compiled code is stored as an executable file

  • executable file runs directly on computer so poor code can crash the computer

  • compiled code is specific to a particular processor type and operating system

  • code can be run without a translator being present

19
New cards

role of an assembler and how it differs from interpreters and compilers

Assembler translates assembly code directly to machine code. It is specific to a particular CPU. Interpreters execute code line by line, while compilers translate entire code to machine code before execution.

20
New cards

stages involved in compilation

Flashcard: Stages in compilation process include lexical analysis, syntax analysis, semantic analysis, code generation, and code optimization.

21
New cards

how does lexical analysis work

Flashcard: Lexical analysis is the first phase of compiling, breaking down the source code into tokens like keywords, identifiers, and literals for further processing. these are stored in a symbol table. unnnecessary elements such as comments and white space are removed

22
New cards

how are syntax errors identified and reported at the end of syntax analysis

analyzing the structure of the code based on the defined grammar rules. Any tokens that break the rules of the programming language are flagged up as syntax errors and added to a list of errors.

23
New cards

how the abstract tree will be fed into the next stage of code generation

Abstract syntax tree (AST) is traversed and converted into an intermediate representation (IR) before being fed into the next stage of code generation.

24
New cards

what is an abstract syntax tree

representation of the source coded in the form of a tree

25
New cards

why is optimisation important

how results of lexical analysis feeds into syntax analysis

Optimization enhances code efficiency. Lexical analysis outputs tokens for syntax analysis. Tokens are validated for correctness during and after code generation.

26
New cards

what are code libraries

Code libraries are collections of pre-written code snippets or functions that can be reused in various programs to perform specific tasks or functions.

27
New cards

how are code libraries used

Flashcard: Code libraries are reusable collections of pre-written code that can be imported into a program to provide specific functionality and save time in development.

28
New cards

benefits and drawbacks of code libraries

Benefits of code libraries: save time by reusing code, improve code quality, provide solutions to common problems. Drawbacks: potential for bloated code, dependency on external sources, compatibility issues.