Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

u_course

.pdf
Скачиваний:
38
Добавлен:
04.06.2017
Размер:
1 Mб
Скачать

51

re-introduced proper names to the installation floppies of AmigaDOS, Workbench, Extras, etc.).

Early versions of AmigaOS did treat the Workbench as just another window on top of a blank screen, but this is due to the ability of AmigaOS to have invisible screens with a chromakey or a genlock - one of the most 8) ________

features of Amiga platform - even without 9) ________ the visibility of Workbench itself. In later AmigaOS versions Workbench could be set as a borderless desktop.

Amiga users were able to boot their computer into a command line interface (aka. CLI/shell). This was a keyboard-based environment without the Workbench GUI. Later they could invoke it with the CLI/SHELL command LoadWB which performs the task to load Workbench GUI.

4.3.Complete the gaps using the appropriate form of the Participle (See Grammar Reference 4).

1.(buy) a computer, you should be very careful.

2.Data (compress) by this technique won’t be recovered.

3.Data (compress) is of great importance to us.

4.When (compile) the program? I got some errors.

5.When (test) the new model, the group used the most modern methods of control.

6.Only one (work) copy can be made.

7.Having (execute) the instruction, the program failed.

8.When (test), the model broke down.

4.4.Read the text and fill in the gaps with appropriate form of the Participle.

Interfaces in practice

A piece of 'software' is 1) (provide) access to computer resources by its 2) (underlie) computer system; the availability of these resources to other software can have major ramifications -- sometimes disastrous ones -- for its functionality and stability. A key principle of design is to prohibit access to all resources by default, allowing access only through well-defined entry points, i.e. interfaces.

52

The interface of a software module A is deliberately kept separate from the implementation of that module. The latter contains the actual code of the procedures and methods 3) (describe) in the interface, as well as other "private" variables, procedures, etc.. Any other software module B which can be 4) (refer) to as a client to A that interacts with A is forced to do so only through the interface. One practical advantage of this arrangement is that 5) (replace) the implementation of A by another one that meets the same specifications of the interface should not cause B to fail - as long as its use of A complies with the specifications of the interface

Most modern 6) (operate) systems provide both a GUI and some level of a CLI, although the GUIs usually receive more attention. The GUI is usually WIMP- 7) (base), although occasionally other metaphors surface, such as those used in Microsoft Bob, 3dwm or File System Visualizer (FSV). This is especially common with applications 8) (design) for Unix-like operating systems. The latter used to be 9) (implement) first because it allowed the developers to focus exclusively on their product's functionality without bothering about interface details such as designing icons and placing buttons. 10) (Design) programs this way also allows users to run the program non-interactively, such as in a shell script.

5. WRITING

Read the basics of making up a summary (See Appendix). Write a summary to the text “Multiple Documents Interface” using key words and sentences from Post reading task)

6. LISTENING

6.1 Listen to the text and name it.

In the area of graphical user interfaces, a tabbed document interface (TDI) is one that allows multiple documents to be contained within a single window, using tabs to navigate between them. It is an interface style most commonly associated with web browsers, web applications, text editors and preference panes.

One important advantage of the tabbed document interface is that it holds many different documents logically under the one window, instead of holding a large number of small child windows. Another is that sets of related documents can be grouped within each of several windows. Using tabs instead of new windows to

53

display content creates a smaller memory footprint and therefore reduces the strain on the operating system. Tabbed web browsers often allow users to save their browsing session and return to it later.

Although the tabbed document interface does allow for multiple views under one window, there are problems with this interface. One such problem is dealing with many tabs at once. When a window is tabbed to a certain number that exceeds the available resolution of the monitor, the tabs clutter up (this is the same problem as with SDI but moved to another place in the user interface).

6.2.Listen to the text again and work in two groups. GroupA lists the advantages of TDI and GroupB disadvantages of TDI.

6.3.Post-listening

Work in pairs A-B discussing advantages and disadvantages of TDI. Compare TDI with SDI.

7. SPEAKING

Press conference with a team from IBM company.

Work in two groups. The group of reporters should express misunderstanding on some terminology and the group of IBM experts help them out.

 

Notes:

 

 

 

 

 

Reporters

 

Team members

 

What exactly do you mean by.....

 

I mean.........

 

Can you be more specific.....

 

Not quite.....

 

Clear

 

You know what .....

 

Oh, I see

 

I can put it in this way.....

The only thing that I still can't

 

If I can put it this way.....

make out is .......

 

Sure.....because of.....

 

As far as I understand .....

 

Right

 

I say.....

 

You know why ......

, don't you?

Not quite.....

 

It's simple

 

In general ,yes

 

Say .......

 

Can I take it right now?

 

I say....

 

 

 

 

 

54

I don't get the idea....

Follow the pattern:

Reporter A: What exactly are you working on at the moment? Team member 1: I'm looking into the MDI.

Reporter B: Can you be more specific? I don't understand what you mean by MDI.

Team member 2: Oh, I see. Well, MDI stands for Multiple Document Interface.

Unit 2

1. PRE-READING

1.1Answer the questions.

Why is interface important in object-oriented programming?

What programming languages do you know?

What interface is commonly used now?

2. READING

2.1. Read the text, paying attention to all the details.

Interface in Programming

The concept of interface is the cornerstone of modular programming, a forerunner and a standard ingredient of object-oriented programming. In objectoriented programming, an object's interface consists of a set of methods that the object must respond to. Note that the object does not make its instance variables a part of its interface - these are typically accessed by means of accessor methods.

Some object-oriented programming languages mandate that the interface to the object be specified to the compiler separately from the implementation of that object, whilst others relax the requirement. For example, a class in a programming language such as Objective-C consists of its interface, specified in a header file, and the implementation in the source file. Because of the dynamically typed nature

55

of Objective-C, one can send messages to any object, and the interface to the class becomes important as it specifies the methods the class responds to.

Interfaces were historically derived from the header files of the C programming language by restricting their syntactic context and contents, and making them a part of the language semantics (as opposed to a mere preprocessor feature).

The Java programming language takes a different approach to the concept of the interface normally existing in other object-oriented programming languages (i.e. that the interface specified is the interface to the class), in that an interface specifies a set of methods which implement some specific functionality, common to a set of classes.

Some programming languages (e.g. D, Java, Logtalk) allows the definition of interface hierarchies. This allows easy definition of e.g. both minimal and extended versions of an interface.

Some programming languages (e.g. Logtalk) support private and protected implementation of an interface. Thus, the (public) methods declared in an interface can easily become private or protected methods of a class implementing the interface.

The Eiffel language includes in the interface of a class its invariants and the preand postconditions of the methods of the class. This is essential to the methodology of design by contract, and may be regarded as an extension of the conditions imposed by the types of the arguments. These rules may be specified in the implementation of a class or in an ancestor which may leave the methods unimplemented. They are extracted by language processors to provide an interface view in the development environment and to generate run-time assertions (checks) in debug versions. The language also ensures that derived classes obey the contracts of their ancestors.

3. POST-READING

Complete the sentences.

1)The concept of interface …

2)The Java programming language ….

3)The programming languages D, Java, Logtalk …..

4)The Logtalk language …

5)The Eiffel language …

56

4. LANGUAGE IN USE

Translate the following statements into Russian paying attention to the forms of the Participles.

1)The concept of interface is the cornerstone of modular programming, a forerunner and a standard ingredient of object-oriented programming.

2)Note that the object does not make its instance variables a part of its interface - these are typically accessed by means of accessory methods.

3)Some object-oriented programming languages mandate that the interface to the object be specified to the compiler separately from the implementation of that object, whilst others relax the requirement.

4)For example, a class in a programming language such as Objective-C consists of its interface.

5)Interfaces were historically derived from the header files of the C programming language by restricting their syntactic context and contents, and making them a part of the language semantics (as opposed to a mere preprocessor feature).

6)The Java programming language takes a different approach to the concept of the interface normally existing in other object-oriented programming languages.

7)Thus, the (public) methods declared in an interface can easily become private or protected methods of a class implementing the interface.

5. WRITING

Write an abstract to the text “Interface in Programming” (See Supplement 3)

6. LISTENING

6.1Pre-listening task: Review “Gerund” (See Grammar Reference 5)

6.2Listen to the following sentences to understand them.

1.Programming is the process of preparing, testing, correcting instructions for a computer.

2.Logical operations consist of comparing, selecting, sorting, matching and determining.

3.After performing calculations a computer displays some result.

4.His being a bright programmer is a well known fact.

57

5.He saw the operator having made the machine operate.

6.Debugging a program is a hard work.

7.One of the benefits of buying a system is that it has detailed documentation with it.

8.By performing different kinds of operation s on a computer, people solve a lot of different problems.

6.3Listen to the sentences again and say in the pause where the gerund is located and what function it performs.

7. SPEAKING

7.1 Read the following words and phrases which are common during the reasking and interruption in the talk.

Notes:

Interruption and Re - asking

 

Sorry for interrupting. I don't get the idea....

formal

What exactly do you mean by.....

formal

Pardon? Can you be more specific.....

formal

Pardon, but the only thing that I still can't make out is .......

formal

Well, as far as I understand .....

formal

Sorry/ Well you know why ......, don't you?

formal

Come again please?!

informal

I hate to be a Buttinsky, but do you know that….

informal

Let me get it straight. Do you mean…

informal

 

 

7.2 Discussion “Interface in programming”

Work in pairs. You should express misunderstanding and interrupt your partner. Re-ask on some terminology, characteristics, advantages and disadvantages, details, etc. Use gerunds if possible.

For ideas:

1.Choosing Multiple Document Interface

2.Making changes to interface

58

3.Defining the types of interface

4.Choosing reliability

Follow the pattern:

Student A: What exactly are you working on at the moment? Student B: I'm looking into the MDI.

Student A: Sorry. Can you be more specific? I don't understand what you mean by MDI.

Student B2: Oh, I see. Well, MDI stands for Multiple Document Interface.

Unit 3

1. PRE-READING ASSIGNMENT

1.1Discuss the following questions with your group mates.

What interfaces are called a user interface and a physical interface?

What access do interfaces provide?

What is the key principle of design?

2. READING

Read the text and check if you were right.

Types of Interface

An interface defines the communication boundary between two entities, such as a piece of software, a hardware device, or a user. It generally refers to an abstraction that an entity provides of itself to the outside. This separates the methods of external communication from internal operation, and allows it to be internally modified without affecting the way outside entities interact with it, as well as provide multiple abstractions of itself. It may also provide a means of translation between entities which do not speak the same language, such as between a human and a computer. Because interfaces are a form of indirection, some additional overhead is incurred versus direct communication.

59

The interface between a human and a computer is called a user interface. Interfaces between hardware components are physical interfaces. This article deals with software interfaces which exist between separate software components and provide a programmatic mechanism by which these components can communicate.

A piece of 'software' is provided access to computer resources (such as memory, CPU, storage, etc.) by its underlying computer system; the availability of these resources to other software can have major ramifications -- sometimes disastrous ones -- for its functionality and stability. A key principle of design is to prohibit access to all resources by default, allowing access only through welldefined entry points, i.e. interfaces.

The types of access that interfaces provide between software components can include: constants, data types, types of procedures, exception specifications and method signatures. In some instances, it may be useful to define variables as part of the interface. It often also specifies the functionality of those procedures and methods, either by comments or (in some experimental languages) by formal logical assertions.

The interface of a software module A is deliberately kept separate from the implementation of that module. The latter contains the actual code of the procedures and methods described in the interface, as well as other "private" variables, procedures, etc. Any other software module B (which can be referred to as a client to A) that interacts with A is forced to do so only through the interface. One practical advantage of this arrangement is that replacing the implementation of A by another one that meets the same specifications of the interface should not cause B to fail - as long as its use of A complies with the specifications of the interface.

3. POST-READING ASSIGNMENT

3.1.Mark the following statements as True or False:

A.The interface between a human and a computer is called a physical interface.

B.A key principle of design is to prohibit access to all resources by default.

C.A key principle of design allows access only through well-defined entry points, i.e. interfaces.

D.Interfaces between hardware components are user interfaces.

60

4. LANGUAGE IN USE

4.1. Put in the words in the following statements.

specifies

access

instances

interacts

implementation

A key principle of design is to prohibit access to all resources by default, allowing access only through well-defined entry points, i.e. interfaces.

The types of 1) _______ that interfaces provide between software components can include: constants, data types, types of procedures, exception specifications and method signatures. In some 2) _______, it may be useful to define variables as part of the interface. It often also 3) _______ the functionality of those procedures and methods, either by comments or (in some experimental languages) by formal logical assertions.

The interface of a software module A is deliberately kept separate from the 4) __________ of that module. The latter contains the actual code of the procedures and methods described in the interface, as well as other "private" variables, procedures, etc. Any other software module B (which can be referred to as a client to A) that 50 __________ with A is forced to do so only through the interface.

5.WRITING

5.1 Creative task. You work for a computer company. The company has got an invitation to the Computer Workshop where you are going to participate. Write the report on “Advanced Interface in Computer Science”. The following example can help you.

RECOMMENDATIONS FOR SCIENTIFIC REPORT WRITING

1. Basic Framework for a Research Report

Preliminaries:

1. The title

The fewest words possible that adequately describe

 

the paper.