Software Reflection

Activities

  1. video clips—Interpreters & Compilers

   I have learnt the use of interpreters & compilers and also the difference between them. 

   Interpreter is the translator between programs. It solves problems one by one, which takes a lot of time generally, but give chance for users to correct the mistakes. 

   Complier translates information slowly. It packs all the things together, translate whole thing at once, which is quite fast, but users would not have any chance to correct the mistakes. 

   I think interpreter can be related with the decomposition of the computational thinking which separates a big task into small parts and solves them one by one. It’s much better than general solving since it makes changes possible. 

2.  Flowchart poster picture

   We create a flowchart to help the people who really like a stray cat and want to turn that cat into their own pet. Our flowchart divides that whole purpose into step by step directions and conquer it, like give the cat food. 

dav

3. How It’s Made – Video Games 

I also saw the process of how a games is made, which involving thousands movements of a character to come up with a motion. All the actions are dived and conquer step by step to ensure the connections are smooth and natural. 

What I learnt 

  1. Hierarchy of Software

It basically has 2 category— system software and application software. System software includes operating system, library programs, utility programs and programming language translator which contains assembler, complier and interpreter. Application software contains general purpose application software, special purpose application software and bespoke application software. 

2. System Software

It operates the computer hardware and to provides a platform for running application software. Operating system software, Utility programs,Library programs and Translator software are all examples of system software.  

a. Operating systems 

It is the collection of programs that makes hardware conveniently available to the user. It provides a general form that hides the complexity and is an Interface between application software and computer.  It is designed to interpret commands and communication between program and computer.

b. Library program 

A library program is a collection of compiled functions that other programs can use, providing services by containing code and data for programs such as interface, printing, network code. NET framework, NET core and Xamarin are all examples of library program. graphical libraries that could speed up development This will allow a good looking game that runs on the desired hardware. It is related to the programs that has more comprehensive functions in our daily life. 

c. Utility software

They perform very specific tasks related to working with computers like maintaining a smooth running of a computer system. They have limited capability and are very small, but have really powerful function, like 360 cleaner —cleaning the trash in the computer, Virus scanner – to protect your system from trojans and viruses, Disk defragmenter – to speed up your hard disk, System monitor – to look at your current system resources and File managers – to add, delete, rename and move files and folders.  

  d. Translator Software
Different programs have different language, but how do we make them be recognized by the computer? That’s translators’ job—converting source code into machine code that allows new programs to be written and run on computers. Thus, guarantee the “communication” between computer and programs. Assembler, compiler and interpreter are three types of translator. 

(1) Assembler translates an assembly language program into machine code. 

(2) Compiler  takes a program in a high-level language, the source code, and translates it into object code all at once.  The whole information is translated at once, there is no chance to change anything. 

(3) Interpreter analyses and executes each line of a high-level language program one line at a time. 

2. Application Software

Allows to perform specific non-computer tasks. There are 3 categories: General purpose application software,  Special purpose application software and Bespoke application software. 

  1. General purpose application software 

Can be used for many different tasks, not limited tasks, like  Word processors Spreadsheet and Presentation software 

  1. Special purpose application software

Execute one specific task, like only allow you to play chess or share pictures, such as Web Browsers Calculators, Media Players and Calendar programs. 

  1. Bespoke application software

It is tailor made for a specific user and purpose, like Software for the military, Missile/UAV operations and Software for hospitals and medical equipment.

From this week’s learning, I basically learned the categories of software and how applicable they are, relating with real life instances, like the translator of computer is just similar with what we need in a foreign country, it ’s not abstract at all. Also, the categories application software and system software are corresponding with our wants and needs in business. Something in out life is not necessary and we don’t really need them, but here it is—application software,  there are something in out life that is irreplaceable for our living like oxygen and food—system software. I think some of software has really deep meaning of life like utility software— they are so small while also powerful, we couldn’t look down to it. 

Leave a comment