Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Professional_English_for_information_systems.pdf
Скачиваний:
55
Добавлен:
14.05.2015
Размер:
3.81 Mб
Скачать

Федеральное агентство по образованию Российской Федерации Томский политехнический университет

И.Л. Пичугова

ПРОФЕССИОНАЛЬНЫЙ АНГЛИЙСКИЙ ЯЗЫК ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ

Учебное пособие

Издательство ТПУ Томск 2006

 

ББК Ш 143.21-923.81

 

УДК 802.0:681.324 (07)

 

П-364

 

Пичугова И.Л.

П-364

Проектирование информационных систем. Учебное пособие по

 

профессиональному английскому языку. – Томск: Изд-во ТПУ, 2006.

 

– 144 с.

 

ISBN

 

Учебное пособие «Проектирование информационных систем»

 

состоит из 12 разделов. В каждый раздел включены аутентичные тексты,

 

содержащие интересную и познавательную информацию о

 

программировании, языках программирования, базах данных, системах

 

управления базами данных, интерфейсах и т.д. Каждый раздел содержит

 

ряд упражнений, нацеленных на усвоение научно-технической лексики.

 

Также в пособии использованы материалы для аудирования. Пособие

 

ориентированно как на занятия в аудитории, так и на самостоятельную

 

работу.

 

Учебное пособие подготовлено на кафедре английского языка №1

 

совместно с кафедрой вычислительной техники ТПУ и предназначено

 

для студентов старших курсов факультета автоматики и вычислительной

 

техники.

 

Учебное пособие рассмотрено и одобрено на заседании Научно-

 

методического Совета кафедры АЯ №1, протокол №7 от 15.11.2006г.

 

УДК 802.0:681.324 (07)

 

Рекомендовано к печати Редакционно-издательским советом

 

Томского политехнического университета

 

Рецензенты

 

Кандидат филологических наук,

 

доцент кафедры английской филологии ТГУ

 

И.А. Галкина

 

Кандидат педагогических наук,

 

старший преподаватель кафедры английской филологии ТГУ

 

С.В. Кузнецова

 

Кандидат технических наук,

 

доцент кафедры вычислительной техники ТПУ

 

Е.А. Мирошниченко

ISBN

© Томский политехнический университет, 2006

 

© Оформление. Изд-во ТПУ, 2006

 

1

Contents

 

Map of the book

3

Unit 1.

Computer Programming

5

Unit 2.

Program Design

12

Unit 3.

Programming Languages

19

Unit 4.

Comparing Programming Languages

26

Unit 5.

Structured Programming

34

Unit 6.

Object Oriented Programming

41

Unit 7.

Databases

50

Unit 8.

Database Management Systems

57

Unit 9.

Graphical User Interface

65

Unit 10.

User Interface Guidelines

73

Unit 11.

Web Page Design

83

Unit 12.

Extensible Markup Language

93

Pairwork Student A

101

Pairwork Student B

103

Visuals for Speaking

105

Progress Check 1 (Units 1 - 6)

111

Progress Check 2 (Units 7 - 12)

116

Listening Script

121

Glossary

 

132

Bibliography

143

2

Map of the Book

Unit

Title

Vocabulary

Grammar

1.

Computer programming

Program, algorithm, process,

 

 

 

operation, connector, input,

 

 

 

output, decision, flowchart,

 

 

 

system/syntax/logic errors

General and special questions

2.

Program design

Flowchart, documentation,

 

 

testing, debugging, program,

 

 

 

machine code, programming

 

 

 

tools, compilation, coding

Modal verbs

3.

Programming languages

Source code, object module,

 

 

compiler, instructions,

 

 

 

machine code, load module,

 

 

 

linkage editor, algorithm

Compound nouns

4.

Comparing programming

Library, compilation speed,

 

languages

portability, development

 

 

 

time, implementation,

 

 

 

popularity, safety, runtime

Relative clauses with a

5.

Structured programming

Sequential execution, loop,

 

 

spaghetti code, control

participle

 

 

structure, sequence, selection,

 

 

 

iteration, function

The Infinitive of purpose

6.

Object oriented programming

Inheritance, class, entity,

 

 

procedure, property, value,

 

 

 

intelligence encapsulation,

 

 

 

library, property, attribute

 

7.

Databases

Database, file, record, field,

 

 

 

data model, hierarchical,

 

 

 

network and relational

 

 

 

approaches, sort, update

 

8.

Database management

Logical record, field,

 

 

systems

physical record, internal

 

 

 

schema, external schema,

 

 

 

conceptual schema, query

Constructions:

9.

Graphical user interface

Pointer, desktop, windows,

 

 

icon, menus, system tray,

verb + object + infinitive,

 

 

buttons, commands, tooltips,

verb + object + to-infinitive

 

 

GUI, multimodal interface,

with such verbs as allow,

 

 

recognition, hover, select

permit, let, enable, help

10.

User interface guidelines

Appearance, density of

Phrasal verbs

 

 

controls, capabilities, error-

 

 

 

free navigation, intuitive,

 

 

 

application, feedback

The Passive

11.

Web page design

Metalanguage, character,

 

 

markup, XML processor,

 

 

 

parse, customized, authoring

 

 

 

environment, entity, HTML

The Gerund

12.

Extensible Markup Language

Algorithm, technology,

 

 

standard, designer, syntax,

 

 

 

procedure, namespace

 

 

 

mechanism, tool, support

 

 

 

3

 

 

 

 

Map of the Book

 

 

 

 

Listening

Reading

Speaking

Writing

Matching flowchart

Scanning; reading

Talking about computer

Drawing a flowchart

symbols and spoken

and note-taking

programming, different

 

output; listening for

 

types of errors

 

detail

 

 

 

Writing a dictation

Scanning

Talking about computer

Describing a process;

 

 

program design, its main

Translating sentences

 

 

steps

 

 

 

 

 

Listening for specific

Reading for main

Exchanging options and

 

information; noting

ideas

information about

 

specific information

 

programming languages

 

 

 

 

 

 

Reading for specific

Talking about the main

Writing an essay

 

information

criteria for comparing

comparing programming

 

 

programming languages

and natural languages

 

 

 

 

 

Reading for specific

Talking about the main

Translating the text about

 

information

rules of structured

algorithm development

 

 

programming

and pseudocode

 

 

 

 

Listening for specific

Reading for specific

Talking about basic

Translating the text about

information; noting

information

features of object oriented

object oriented

specific information

 

programming; developing

programming

 

 

a software package

 

Noting specific

Reading for main

Talking about databases,

Writing an argumentative

information

ideas and for specific

structuring data model

essay

 

information

 

 

 

 

 

 

Listening for specific

Reading for main

Talking about database

Writing an argumentative

information

ideas and for specific

management systems;

essay; translating the text

 

information

describing a process

about database

 

 

 

management systems

Listening for specific

Reading diagrams;

Talking about common

Writing instructions

information, noting

reading for main

features of graphical user

 

specific information

ideas and for specific

interface; providing

 

 

information

explanation of different

 

 

 

actions

 

 

Reading for specific

Talking about the basic

Completing a table with

 

information

principles to design a user

relevant information;

 

 

interface

preparing a leaflet; writing

 

 

 

a summary

Listening for specific

Reading for main

Talking about top 10 web

 

information, noting

ideas and for specific

page annoyances;

 

specific information

information

basic concepts of XML

 

 

 

 

 

 

Reading for main

Exchanging information

Translating the text about

 

ideas

 

XML

 

 

 

 

 

 

4

 

Unit 1. Computer Programming

Warm-up

Task 1. What do you know about programming? Answer the Internet Quiz.

1.

Programmers use algorithms when writing programs.

T / F

2.

Programmers write programs using the numbers 1 and 0.

T / F

3.

We can only find computer programs in computers.

T / F

4.

Any given program, if running, is obsolete.

T / F

5.

Any given program costs more, and takes longer.

T / F

6.

The most harmful error of any program will not be

T / F

 

discovered until the program has been in production for at

 

 

least six months.

 

7.

Profanity is the one language that all programmers know

T / F

 

the syntax of.

 

8.

There is always one more bug.

T / F

9.

Real programmers never work from 9 to 5. If any real

T / F

 

programmer is around at 9 a.m., it’s because they were up

 

 

all night.

 

10.

It is easier to change the specification to fit the program

T / F

 

than vice versa.

 

 

5

 

11.

Any program will expand and fill all of available memory

T / F

 

– plus one byte.

 

12.

Disk errors occur only after you've done several hours of

T / F

 

work without making a backup.

 

Listening

Task 2. Programmers sometimes use flowcharts when planning a program. Listen to the recording and identify these symbols used in flowcharts. One symbol is not mentioned.

a) ____________

b) ____________

c) ____________

d) ____________

e) ____________

f) ____________

Task 3. Listen again to the recording and write below a typical example of an instruction often found there in flowcharts. One symbol has no words.

a)_________________________________________________________

b)_________________________________________________________

c)_________________________________________________________

d)_________________________________________________________

e)_________________________________________________________

Reading

Task 4. Look at the algorithmic flowchart on the next page and answer the questions.

1.Which computer commands does it show?

2.How many decisions does the computer make?

3.After the user clicks Save, how many times does the user input data?

4.How many ways of developing the events are possible here?

Now describe this algorithmic flowchart.

6

User clicks Save.

The program reads the file name, format and location.

YES

Is there an existing file

 

 

 

with the same file

 

Save file.

END

name, format and

 

 

 

location?

 

 

 

 

 

 

 

 

 

 

NO

 

 

 

 

 

 

 

 

 

 

 

 

Program shows the

 

 

 

Save As dialog box.

 

 

 

User enters the file

 

 

 

name, format and

 

 

 

location.

 

 

 

User clicks on Save in

 

 

 

the Save As dialog box.

 

 

 

 

 

 

 

 

 

 

 

Program reads the file name,

 

 

 

 

 

format and location.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Is there an existing file

YES

 

A dialog box appears

 

 

with the message,

 

 

with the same file

 

‘The file already

name, format and

exists. Do you want

location?

to replace it?’

 

 

 

 

 

 

NO

 

 

 

 

Save file.

 

 

 

 

END

 

 

 

7

Task 5. Read the text about computer programming. Write the number of the paragraph that gives you the information.

a.

why high-level languages are easy to learn

_____

b.

a description of machine language

_____

c.

the greatest problem for computer programmers

_____

d.

the names of three high-level computer languages

_____

e.

a description of an algorithm

_____

f.

different uses of computers in our lives

_____

g.

a description of a computer program

_____

h.

what computers do with code

_____

i.

a description of the binary system

_____

1.The diagram on the right shows part of a simple algorithmic flow chart for the Save command in a computer program. An algorithm is a set of logical rules that we use to solve a problem. Computer programmers often use algorithms to plan their programs, but the only language a computer understands without translation is machine language. This uses the binary system of 1 and 0, which matches the electrical positions ‘on’ and ‘off’. We can also show these numbers in English by

Yes/No or True/False.

2.Machine language is a low-level language and is very difficult to write. Over the years, computer scientists have developed many high-level languages, such as BASIC, C++ and Java. These languages use a computer code that is similar to English, which makes them easier to learn. A computer program is just a set of coded instructions. A computer translates the code into machine language to complete a specific task. A computer receives input, processes data and produces results, or output, according to the program code.

3.We use computers in many parts of our lives, and not just in schools or for the Internet. There are computers in all kinds of electrical devices, from mobile phones to washing machines. We can find them in banks, supermarkets and cars. When programmers write programs, they have to plan carefully for every possible kind of error a computer user can input into the computer. It is planning for the random behaviour of humans that makes programming so much fun.

8

Speaking

Task. 6. Work in groups and discuss the following questions.

1.Have you ever had any problems with the computer?

2.What kind of errors do you make with computers?

3.How do you behave when things go wrong with a computer?

Listening

Task 7. Listen to the interview with Colin who is a programmer and answer these questions.

1.Is programming stressful?

2.What does Colin do as a break from programming?

3.Where do the team do much of the design work?

4.How many people are there in the team?

5.What do they do?

6.How long did Dante take to write?

7.Why was it easy to split?

8.What languages does he mention?

9.How does he keep up with developments in his field?

10.Why does he hate to go home sometimes?

9

Reading

Task 8. Work in groups of three: A, B and C. Read your text below and complete this table.

Text A

Text B

Text C

Type of error

Definition

Example

Ways to avoid or deal with this kind of error

A.System errors affect the computer or its peripherals. For example, you might have written a program which needs access to a printer. If there is no printer present when you run the program the computer will produce a system error message. Sometimes a system error makes the computer stop working altogether and you will have to restart the computer. A sensible way of avoiding system errors is to write code to check that peripherals are present before any data is sent to it. Then the computer would warn you by a simple message on the screen, like ‘printer is not ready or available’.

B.Syntax errors are mistakes in the programming language (like typing PRNIT instead of PRINT). Syntax errors cause the program to fail. Some translator programs won’t accept any line that has syntax errors. Some only report a syntax error when they run the program. Some languages also contain special commands such as debug, which will report structural errors in a program. The programming manual for the particular language you’re using will give details of what each error message means.

C.Logic errors are much more difficult to detect than syntax errors. This is because a program containing logic errors will run, but it won’t work

10

properly. For example, you might write a program to clear the screen and then print ‘hello’. Here is a code for this:

10//

Message

20

PRINT ‘Hello’

30

CLS

40

END

The code has a logic error in it, but the syntax is right so it will run. You can get rid of logic errors from simple programs by ‘hand-testing’ them or doing a ‘dry run’ which means working through each line of the program on paper to make sure it does what you want it to do. You should do this long before you type in the code.

Task 9. Now share information orally about your text with others in your group to complete the table for each of the errors described.

Writing

Task 10. Draw a flowchart like one in Task 4 for one of these activities. Follow these steps:

Choose a simple procedure from the ones in the box below (or a simple one of your own).

Break the procedure down into all the steps that you have to follow. Think about where the process starts and ends, and the input from you and from the outside. When you make a decision, think of when you say ‘yes’ and when you say ‘no’, and what happens next.

Write exactly what happens at each stage.

Draw the flowchart, putting your text into the different shapes in Task 2.

Show your flowchart to another student. Does he/she agree with your steps?

Making a cup of tea or coffee Making a telephone call Sending a text message Answering the door

Planning a holiday Choosing a new computer

Preparing for an important exam Playing a cassette or a CD

11

Unit 2. Program Design

Warm-up

Task 1. In pairs, try to think of an answer for the question:

What is programming?

Decide which of the definitions below is the most appropriate? Give a reason for your choice.

1.The process of writing and testing programs for computers.

2.The process by which a set of instructions is produced for a computer to make it perform a specified task. The task can be anything from the solution to a mathematical problem to the production of a graphics package.

3.The act of writing a computer program.

4.It is the craft of implementing one or more interrelated abstract algorithms using a particular programming language to produce a concrete computer program. Programming has elements of art, science, mathematics, and engineering.

Reading

Task 2. Put these five stages of programming in the correct sequence.

a)

Design a solution

1. _____

b)

Code the program

2. _____

c)

Document and maintain the program

3. _____

d)

Clarify the problem

4. _____

e)

Test the program

5. _____

Task 3. To which stage does each of these steps belong?

1.

Clarify objectives and users

_____

2.

Debug the program

_____

3.

Write programmer documentation

_____

4.

Do a structured walkthrough

_____

5.

Select the appropriate programming language

_____

 

12

 

Task 4. Read the text and compare your answers for Tasks 2 and 3.

Steps in Computer Program Development

The steps in the development of each of the computer programs that make up the computer program component of a system are:

1.define the function of the program;

2.plan the logic of the program;

3.code the program;

4.test and debug the program;

5.complete the documentation.

Although the programmer is

responsible for writing the computer program, the system analyst must communicate the computer program requirements to the programmer. The function of each program was defined for the programmer when functions were allocated during system design. Detailed data flow diagrams (DFD) are prepared for each program from the decomposed DFDs created during the design phase. These DFDs define the function of each program.

In program planning, the logic to be used to solve the problem is developed. Algorithms, computer program logic flowcharts, and structure charts are useful tools for program planning. Algorithms are sets of rules or instructions used to accomplish tasks. They may be stated as formulas, decision tables, or narratives.

The next step, writing, or coding, a program, is the actual writing of computer instructions. These instructions will be translated to machine code and followed by the computer; they should follow the steps of the program logic plan.

Several programming languages, particularly COBOL, PL/I, and RPG, are commonly used to solve business problems. In addition to these traditional languages, organizations using database management systems may choose to generate programs using the query language of the DBMS. These query languages are part of a package of programming tools known as fourth-generation languages. Each language has its advantages and disadvantages. Most computer installations have a standard language used by their programmers. Programmers usually are not given a choice of language unless some special circumstances exist.

Testing and debugging a program involve:

1.translating the coded program into machine language, a process called

13

compilation;

2. testing the translated program with sample data and checking the result. If the results of testing are not correct, the program is said to have "bugs". Debugging is the process of correcting computer programs to obtain

correct results.

The last step is to complete the documentation for the program. The documentation must include a statement of the purpose of the program, a description of the solution logic, a listing of the program instructions, and sample outputs from the completed programs. Information provided to the programmer by the analyst, such as descriptions of program inputs, outputs, and files, should be included. Instructions to operators explaining how the program is to be used must be written before the program documentation is completed.

Language work

General and Special Questions

Word order in general questions: auxiliary verb + subject + verb e.g. Have you ever used a computer?

Word order in special questions is as following: question word + auxiliary verb + subject + verb e.g. How long have you been restoring the data?

If there is more than one auxiliary verb, we put only the first auxiliary in front of the subject: e.g. How long has this program been used?

Task 5. There are answers to questions about the text. Write the questions.

1.There are five main steps in the computer program development.

2.For writing the computer program.

3.It is developed in program planning.

4.As formulas, decision tables, or narratives.

5.Yes, it is the actual writing of computer instructions.

6.No, programmers usually are not given a choice of languages.

7.It is called compilation.

8.When the results of testing are not correct.

9.To obtain correct results.

10.They must be written before the program documentation is complete.

14

Task 6. Choose the correct word to complete each sentence. You may have to change some words slightly.

1.compilation, compiler, compile, compiled

a)It took weeks __________ the new customer database.

b)A source program cannot be directly processed by the computer until it has been __________.

c)If the errors are removed and the program re-run, the process of __________ starts all over again, but this time the __________ program will be executed.

d)A computer needs its own __________ for the various high-level languages if it is expected to accept programs written in those languages.

2.program, programmer, programming, programmable

a)The __________ CD-player allows the user to change the order tracks are played in.

b)She __________ the VCR to come on at eight.

c)Most computer __________ make a plan of the program before they write it. This plan is called a flowchart.

d)It is unusual for a __________ to work correctly the first time it is tested.

3.bug, debug, debugger debugging

a)The best compilers usually include an integrated

__________ which detects syntax errors.

b)New programs need __________ to make them work properly.

c)Once you have written your program you have to test it with sample data to see if there are any __________ or errors.

4.instruction, instruct, instructed, instructor

a)The next step is to design an algorithm, which is a step- by-step plan of __________ used to solve the problem.

b)We have been __________ that a decision will not be made before the end of the week.

c)Our maths __________ explained to us the principles of binary arithmetic.

15

Speaking

Task 7. Say what has happened in the cartoon. What do you think this cartoon is about? Write a caption for the last picture. Translate each caption into English.

Как было предложено

 

Как было описано в

организатором разработки

 

техническом задании

 

 

 

Как было спроектировано

 

Как было реализовано

ведущим системным

 

программистами

специалистом

 

 

 

 

 

Как было внедрено

 

____________________

 

 

 

 

16

Task 8. Work in pairs and discuss the following:

Many would argue that computer’s actions are merely consequences of how it was programmed, and thus a computer cannot possess free will. In turn, a computer shouldn’t be held responsible for its actions. Is human’s mind a computer? Are humans programmed at birth? Are humans responsible for their actions?

Writing

Task 9. Look at the scheme below and describe activities and connections of the evolutionary development.

Evolutionary development concurrent activities

 

 

Initial

 

 

version

 

Specification

 

Outline

Development

Intermediate

description

versions

 

 

Validation

 

 

 

Final

 

 

version

Discuss whether it is possible for engineers to test their own programs in an objective ways.

Listening

Task 10. You will hear Lucy Boyd, a software developer, explaining how a program is produced. Listen and write down what you hear.

17

Translation

Task 11. Translate the following sentences into English.

1.Если вам удалось написать программу, в которой транслятор не обнаружил ошибок, обратитесь к системному программисту – он исправит ошибки в трансляторе.

2.В природе программирования лежит то, что нет соотношения между "размерами" самой ошибки и проблем, которые она влечет.

3.Я пишу все свои критические программы на ассемблере, а комедийные – на фортране.

4.Если отладка – процесс удаления ошибок, то программирование должно быть процессом их внесения.

5.Машинная программа выполняет то, что вы приказали ей делать, а не то, что бы вы хотели, чтобы она делала.

6.Законы машинного программирования.

a)Любая действующая программа устарела.

b)Любая программа обходиться дороже и требует больше затрат времени, чем предполагалось.

c)Если программа полностью отлажена, ее нужно будет скорректировать.

d)Любая программа стремится занять всю доступную память.

e)Ценность программы прямо пропорциональна весу ее "выдачи".

f)Сложность программы растет до тех пор, пока не превысит способности программиста.

7.Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший жук разрушил бы цивилизацию.

8.Никогда не выявляйте в программе ошибки, если вы не знаете, что с ними делать дальше.

9.Создайте систему, которой сможет пользоваться даже глупец,

итолько глупец захочет ею пользоваться.

10.Большинство существующих программ создается исключительно для нужд компьютера – для того, чтобы работало нужное человеку меньшинство.

18

Unit 3. Programming Languages

Warm-up

Task 1. Read the saying below and mull it over in pairs.

Alan Perlis once said: “A language that does not affect the way you think about programming is not worth knowing”.

Task 2. Can you identify these programming languages?

A.

10 REM Program to compute integer sum

20 MAXINT% = 32767

30 TOTAL# = 0#

40 PRINT This program calculates the sum of all integers50 PRINT from 1 to whatever integer you specify.

60 PRINT Enter any positive integer up to MAXINT%”:”; 70 INPUT NUMBER

80 IF (NUMBER > 0) AND (NUMBER <= MAXINT) THEN GOTO 90 ELSE GOTO 150 90 FOR COUNT% = 1 TO NUMBER

100 TOTAL# = TOTAL# + COUNT%

110 NEXT COUNT%

120 PRINT “The sum of all integers from 1 to ”NUMBER

130 PRINT is TOTAL#

140 GOTO 160

150 PRINT This number is out of bounds!160 END

B.

/*numbercount.c*/ #include <stdio.h> #define MAXINT 32767

main ()

{

int count, number; long int total;

total = 0;

printf(“This program calculates the sum of all integers\n”); printf(“from 1 to whatever integer you specify.\n”); printf(“Enter any positive integer up to %d:”,MAXINT); scanf(“%d”,&number);

if (number > 0 && number <= MAXINT)

for (count = 1; count <=number; count++) total = total + count;

printf(“The sum of all integers from 1 to %d\n”,number);

printf(“is % d\n”,total);

else printf(This number is out of bounds! \n”);

}

C.

Program Number Count (input, output);

var count,

number: integer; total: real;

begin

total :=0.0;

write|n (‘This program calculates the sum of all integers’);

write|n (‘from 1 to whatever integer you specify.’); write (‘Enter any positive integer up to ’,maxint,’:’); read|n (number);

if (number > 0) and (number <=maxint) then begin

for count = 1 to number do total := total + count;

write|n (‘The sum of all integers from 1 to

‘,number);

write|n (‘is ‘,total) end

else writein (‘This number is out of bounds!’)

end.

19

Reading

Task 3. Read the text and fill in the gaps using the list of words below.

Programming languages

Computers can deal with different kinds of problems if they are given the right 1) …… for what to do. Instructions are first written in one of the 2) ……, e.g. FORTRAN, COBOL, PASCAL, C++, Visual Basic, etc., depending on the type of problem to be solved. A program written in one of these languages is often called a 3) ……, and it cannot be directly processed by the computer until it has been compiled, which means interpreted into 4) …….

In some languages, an interpretable p-code binary is generated, rather than machine language. It is also possible for the 5) …… to write directly in machine code, but this is hardly ever done anymore: instead, when complete low-level control of the target computer is required, programmers resort to 6) ……, whose instructions are mnemonic one-to-one transriptions of the corresponding machine language instructions.

Different programming languages support different styles of programming (called 7) ……), some of which are better suited for a particular task than others. They also require different levels of detail to be handled by the programmer when implementing algorithms, often resulting in a compromise between ease of use and performance.

The program produced after the source program has been converted into machine code is referred to as an 8) …… or object module. This is done by a computer program called the 9) ……, which is unique for each computer.

The compiler is a system program which may be written in any language, but the computer’s operating system is a true systems program which controls the central processing unit, the input, the output, and the secondary memory devices. Another systems program is the 10) ……, which fetches required systems routine and links them to the object module (the source program in machine code). The resulting program is then called the 11) ……, which is the program directly executable by the computer. Although systems programs are part of the software, they are usually provided by the 12) …… of the machine.

1.

programming paradigms

3.

high-level languages

2.

assembly language

4.

source program

 

 

20

 

5.

linkage editor

9.

programmer

6.

machine code

10.

manufacturer

7.

object program

11.

instructions

8.

load module

12.

compiler

Listening

Task 4. You are going to hear a lecture about programming languages. Listen carefully and decide whether the following statements are true (T) or false (F) in relation to the information in the recording.

1.All languages discussed are high level languages.

2.A computer program is a sequence of instructions which are executed simultaneously.

3.One can hardly understand a machine code.

4.Assembly languages are very useful when one requires a high speed of command execution.

5.FORTRAN 77 was designed to write highly structured programs.

6.FORTRAN is quite suitable to be used in business environment.

7.Only the originator can make changes in a program written in COBOL.

8.COBOL instructions are of the same size as FORTRAN ones.

9.Originally the major application of BASIC was in education.

10.Manufacturers started using BASIC after the introduction of microcomputers.

Task 5. Now listen again to the recording and complete the table below.

Language

Date of

Type

Advantages

Disadvantages

 

introduction

 

 

 

FORTRAN

 

 

1.

1.

 

 

 

2.

2.

 

 

 

3.

 

COBOL

 

 

1.

1.

 

 

 

2.

2.

BASIC

 

 

1.

1.

 

 

 

2.

 

 

 

 

3.

 

 

 

 

4.

 

 

 

21

 

 

Speaking

Task 6. Work in pairs, A and B. You each have information about some programming languages. Together decide what would be the most appropriate language to use for each of these situations.

1.A schoolteacher wants his young pupils to learn some basic mathematics by controlling a simple robot.

2.The owner of a small business wants to create a simple database program to keep track of his stock.

3.A professional programmer wants his software to run on any type of computer system.

4.An engineer wants to develop a program for calculating the stresses in a mechanical device.

5.A student wants to create webpages for a personal website.

6.A systems programmer wants to add some new modules to an operating system.

7.A website designer wants to include simple animation in a site.

8.A programmer working for the US army wants to create a program for controlling a new type of weapon.

9.A finance company needs to process data from its branch offices on its mainframe computer.

10.A website designer wants to enable the data on his website to be easily processed by a number of different programs.

11.A student studying artificial intelligence wants to write some programs for a course project.

12.A college lecturer wants his students to learn the principles of programming.

13.A professional programmer wants to create and sell a program for use in language learning.

14.A website designer wants to password-protect a section of a website.

15.A computing student wants to write a general purpose program as a college project.

Student A: Your languages are on page 101.

Student B: Your languages are on page 103.

22

Language work

Modal Verbs

Modal verbs are followed by the

 

CPUs might go down next time.

infinitive without particle to. They

 

Must

add extra meaning to the main verb.

 

Obligation: The system analyst must

The modal verbs are: can (could),

 

communicate the computer program

may (might), must, should, ought to,

 

requirements to the programmer.

need. The modal expressions to

 

Prohibition: You must not open

be+Infinitive and to have+Infinitive

 

e-mail attachments from strangers.

also belong here.

 

Logical necessity: This look wrong

Can

 

 

– there must be a mistake.

Theoretical

possibility: Programs

 

We use cannot to express a negative

written in

any programming

 

conclusion.

language can be translated into

 

Should/ ought to

machine language.

 

There is hardly any difference

Permission: Can I use your

 

between them but we say ought to

computer for a while?

 

do (with to).

Ability: Swarming robots can work

 

Advice: You should update your

together to perform searches.

 

web site. Or: You ought to update

Could

 

 

your web site.

Possibility or ability in hypothetical

 

Need

situations: We could buy a DVD, if

 

Necessity: New programs need

you had more money.

 

debugging to make them work

Geneal ability in the past: Early

 

properly.

computers could not operate at high

 

To be + Infinitive

speeds.

 

 

Arrangement, agreement or part of

Permission: Could I just interrupt a

 

a plan: Instructions to operators

minute?

 

 

explaining how the program is to be

May

 

 

used must be written before the

Factual possibility: Algorithms may

 

program documentation is complete.

be stated as formulas, decision

 

To have + Infinitive

tables, or narratives.

 

Obligation or necessity arising out

Permission: May I use the fax now?

 

of circumstances: Once you have

In this case may is more formal than

 

written your program you have to

can.

 

 

test it with sample data to see if

Might

 

 

there are any bugs or errors.

Weak possibility: The prices of

 

 

 

 

23

Task 7. Tick the modal verbs that complete each of the sentences in this passage. One, two or all of them may be possible.

There shouldn’t / might not / ought not (1) be a comma before the ‘who’ in this sentence, Kostas. Oh yes, you may well / might well / will well (2) say that writing English is not important for you. But you could / may / might

(3) have to write a dissertation in English one day. Punctuation and spelling should / could / may (4) be quite a serious problem for you. But it can / should / could (5) always be possible for you to get full stops in the right place. And it can’t / shouldn’t / mustn’t (6) be that difficult to spell most short words more or less correctly. You may / must / might (7) not have realised how flexible English is. For example, you may / should / can (8) find ‘organisation’ spelt with an ‘s’ or ‘z’. It makes life easier, doesn’t it?

Task 8. Complete the sentences using modal verbs.

1.Before you start to make a web site, you ….. decide how to organize the content.

2.A source program …… be directly processed by the computer until it has been compiled.

3.The documentation …… include a statement of the purpose of the program, a description of the solution logic, a listing of the program instructions, and sample outputs from the completed programs.

4.…… I use your laptop? I need to print out this report.

5.With a web page editor you …… create a web document easily.

6.If I knew the Java language, I …… include some attractive banners on my web page.

7.I …… to make a back-up copy.

8.The logical structure of the data …… be different from the way it is physically represented on backing store media.

9.No goto statements …… to be used in writing code.

10.A graphical user interface saves a lot of time: you don't need to memorize commands in order to execute an application; you only …… to point and click so that its content appears on the screen.

11.The instructions …… follow the steps of the program logic plan.

12.Organizations using data base management systems …… choose to generate programs using the query language of the DBMS.

13.Computer consultants …… specialize in too narrow a field.

14.Programmers …… to know a range of up-to-date languages.

24

15.Before IBM set the standard for PCs, software houses …… write different versions of their programs for every make of computer.

16.When he was a schoolboy, Bill Gates …… write programs in BASIC.

17.Most website designers …… use HTML and XML.

18.You …… learn COBOL unless you want to work with business software.

Speaking

Task 9. Work in pairs and both look at the pictures on pages 105 and 106.

1.In this activity, Student A and Student B will each talk about different pictures showing a process of creating a computer program.

Describe the scene in the picture fairly briefly, suggesting what problem might occur.

Comment on the steps in computer program development, different types of errors and ways to avoid or deal with these kinds of errors.

Student A should talk about picture A on page 105.

Student B should talk about picture B on page 106.

2.When you have both finished speaking, you should comment on what your partner has said, saying if you agree or disagree.

25

Unit 4. Comparing Programming Languages

Warm-up

Task 1. Answer the following questions:

1.What types of programming languages do you know?

2.How does one compare programming languages?

3.What are the main criteria? Make a list.

Reading

Task 2. Before reading the text, match the terms with the correct definition or explanation.

a.

Debugging

1.

the ability to use hardware in different places or

b.

Compilation

 

software on different types of computer

2.

a type of computer or program used as a standard

c.

Portability

 

for a particular computer system

3.

the rate of translating a high-level language into

d.

Platform

 

machine code

4.

a collection of subroutines and functions stored in

 

 

 

one or more files, usually in compiled form, for

e.

Support

 

linking with other programs.

5.

the process of correcting errors in a program or

f.

Library

 

system

6.

the help offered to the user by a company who

 

 

 

makes or sells a computer

 

 

 

26

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]