Está en la página 1de 23
though object-oriented programming and design are coming into wider nts are still practicing traditional or structured design and programming years. Some types of applications may in fact never convert to object orientation. While object o is very well suited to supporting core business processes such as order fulfillment, manufactus product development, it may in fact be less suited to support management processes such as query reporting, decision support, and management control. These types of systems are mostly data- they are not event-driven but rather depend on classifying, sorting, analyzing and summarizing histori- cal data. Historical data is essentially passive; it has no behavior. Relational data bases may be better Suited to storing this type of data than are object data bases 1S departments spend most of their resources on maintaining and extending existing systems that have been built using traditional technology. These systems will continue to exist until their natural life span is over; they will certainly not be converted to object technology overnight. Finally, even in new development projects, object orientation will often be mixed in with traditional structured design for parts of the system: the interface to a relational data base management system (where an object data base management system is not suitable), the interfaces to legacy systems, and even batch processing at the server. Such hybrid structures were the rule rather than the excéption in the early days of object orientation. e : Learning objectives + Explain the main differences between architectural styles as regards traditional program design. + Identify the proper program-packaging model given a module design. + Enumerate the contents of 2 programming specification. Client/server, on-line and batch programs ‘A major factor in designing structured programs is the architectural style of the program: client, server, mainframe on-line, or batch. To understand the implications of these distinctions, let us explain each of them in the sequence in which tiey emerged. ‘The earliest distinction between systems architectures was between batch and on-line processing in the 1970s. The architectural difference is that in on-line processing, a number of processes go on at the same time, and the sequence of activities is unpredictable. It is generally impossible to reproduce the — exact sequence of events that led to a given result because many operators interact with the system simultaneously and independently. (Consequently, some bugs in on-line systems are extremely hard find if they depend on a coincidence of several independent events happening in a specific seq To each user corresponds a thread of control; the on-line monitor intertwines these threads 10 the use of resources and minimize response time, while ensuring the integrity of shared data. of process is called transaction-driven. ___ In traditional batch processir'g, only one thread is going on. The program reads each e pars file, processes it completely, and goes on to read the next a ‘in seq Escaneado con CamScanner t Pee etiet is called earl bre ig in a specific sequence are called file-driven. cyholders is read, and each policyholder is billed for a premium that depends on the neither on the previous one nor on the next one. The process appears file-driven in the is an input file and a single thread of control; nevertheless, this processing is much more akin to processing than the previous example and is therefore better qualified as transaction-driven. It is formed as a batch process only because it does not require any interaction with a human operator. How does client/server processing differ from these architectures? First, processing on the client hardware is akin to on-line processing in that the sequence of events is under the control of the work station user rather than the system. Moreover, the user usually has a wider latitude in what he or she can legitimately do, because of the graphical user interface that is the rule for client/server. As explained in Chapter 14, User Interface Design, a graphical user interface reacts to individual events at the interface, such as a keystroke or a mouse action, rather than to an entire transaction, as with a block terminal interface. The process is event-driven. In addition, client processing differs from traditional on-line processing, however, in that the pro- cessing reverts to a single thread of control./Each dient workstation works for only one user. Server processing is much more like traditional on-line processing: unpredictable sequence and multiple threads of control (one for each active client). (There may also be batch processing on the server, similar to the batch processing described above. For simplicity’s’sake, we will not consider this processing in what follows.) Thus, for client processing, the design strategy is event-oriented. Each possible action on each wide get of the interface is considered as a separate entity. The result is a number of very small modules, usually termed callbacks. Each callback processes an event at the user interface, the sum of which add up to the business event treated during the interaction. It is fairly easy to trace the processing to the requirements model For server and on-line prog-amming, the design strategy is tansaction-oriented. Each transaction type is considered as a separate entity, and all the functions required to complete the transaction are analyzed within that transaction. Here, too, it is easy to see how transactions at the interface comespond to the requirements. For batch processing, the design strategy is not to group functions by transaction but by type of data transformation they accomplish, Thus, validation functions are grouped together for all transac- tions, as are data base updating, report extraction, and report printing functions. Within each transfor mation type, the processing is then broken down by transaction, This structure makes it more difficult to see how the batch process fulfills the requirements; the transformation from requirements to design is much deeper. Client/server program design Callback processing ‘As mentioned above, client processing is mainly made up of callbacks, modules that process 2 single event at the user interface. A typical callback validates data that has been entered in a data entry box, sets variables as specified by radio butions or check boxes, fills in display widgets such as list boxes ‘with data requested from the server, opens another window or conversation box by clicking on a menu choice, or sets off some end-of-iransaction processing when the user is satisfied that it is correct. and Safe 10 do so. Callbacks are usually set off when the cursor on the interface leaves one anoth (by pressing a TAB or RETURN key, for example) or clicks with the 2905 0059 as a bution or a check box. two difficulties with callback process design. The first is that you " Escaneado con CamScanner reglas, patrones. caracteristicos, 0 eden ser: if, in case, unless, providing that, entre otros ‘Bj: Ifyou add memory to the computer, it runs faster. Ifthe wiring is new, the transmission is more reliable. ‘A network is called WAN (wide area networl), if it is connected over a large area. Do not open the disk drive if the light is on, If the operating system has problems, the computer will not start, Unless coaxial cables are employed initially, connectivity will not be satisfactory. Analyze the following sentences: 1. Ifthe file is not attached, don’t send the message yet. 2. They will not begin the pilot test if the attachment is not sent. 3. If the company supports our projects, the applications will be on the market in September. 4, You will lose data, if you do not save the document. 5. Check this instruction manual, in case the machines have problems. . If you access or take information from other people’s computers without their per re a hacker. Escaneado con CamScanner and servers satisfactorily. 10. We will try to create our own contents if we don't find good ereative team. 11. You can publish anything on the Web if you have your own web page. 12. The drive} can be opened ifthe light is aff. : 13. It is difficult to understand the logic of that system if the basie steps are not clear. 14, If those companies receive the licenses to sell software, prices will drop., 15. If you have a browser, you can connect to the world wide web and read web pages. 16. We will finish the prototypes if she comes to help with the programming schemes. 17. Close some windows if you have memory problems. 18. Some bugs in on-line systems are extremely hard to find if they depend on a coincidencé of several independent events that happen in a specific sequence. Questions © What happens if you add memory to the computer? —_It runs faster / It will run faster. © What happens if you don’t add memory? It runs slower / It will run slower, ; ‘What can you do in case the machines have problems? Check the instructions manual. Escaneado con CamScanner : would/could/ might + verbo infinitivo + if + verbo en pasado simple Ej 1: The new IBM system would give more flexibility, if the company installed it. If the company installed the new IBM system, it would give more flexibility. Ej 2: Programmers could communicate with users, if the firm provided the means. If the means were provided to programmers, they could communicate with users. Ej 3: We might check the instructions manual if we had a copy. Ifwe had a copy of the instructions manual, we might chee! ‘Translate the following sentences: 1. IfNetscape attempted to set new standards, other companies would follow them. . 2. They might apply Robinson’s resolution principle if they needed a proof-finding program. 3. If we wanted to understand a program, we could decompose it into a set of components. If these flowcharts had a single entry at the top, they could have a single exit at the bottom. Escaneado con CamScanner te with the right form of the verb: Ptye.......... (be) in 1975, we would use FORTRAN or BASIC. . Mistakes might be prevented if the programming languages . (be) better. . If you clicked on the toolbar, many operations ......... (can) be used. Melfyou......... (be) working in the development environment, you might resort to the online help. . People today............ (can) understand what the Internet is even if they didn’t read a book about it. . Ifeach mailing user didn’t ....... . (have) a unique ID (e-mail address), communication would be impossible, Bxonwould............ (understand) how the Internet works if you could make note of the similarities with the phone system. : . We could increase the number of file types that can be displayed if we........ (use) plug-ins. (ask) you what equipment you need to conduct business on the | Escaneado con CamScanner Bj 1: They would have interrupted the work, if the server had crashed. If the server had crashed, they would have interrupted the work. Ej 2: The program could have validated the data, if the user had entered the final “OK”. If the user hadn’t entered the final “OK”, the program wouldn’t have validated the data. Ej 3: We might have checked the instructions manual if we had downloaded a copy of it. If we had downloaded a copy of the instructions manual, we might have checked it. Analyze and translate these sentences: 1. The processing would have been smooth, if the server hadn’t crashed. 2. They might have applied Robinson’s resolution principle if they had needed it. 3. If we had understood the program, we could have decomposed it into a set of pieces. 4. Ifthe teacher had given us the result, we might have redrawn the program event sequence. 5, The program decomposition would have been easier to do if it had had a clear structure. 6. The sequence of activities would have been predictable, if we hadn’t used on-line processing. oi 7. Ifyou had analyzed the flowchart, you might have identified the different components. We could have performed many tests to the system, if we'd had enough time, Escaneado con CamScanner Ej: verbo puede cobrar diversos sentidos al combinarse con diferentes preposiciones. Carry out: realizar “The control unit accepts and carries out the instructions” Get back: recuperar “We have to get those records back soon” Set up: configurar, instalar “We needed to set up the system immediately” Turn off: apagar “Please, tum off the computer when you leave” Turn on: encender “Don’t forget to tum on the lights at night” Underline the phrasal verbs and translate the sentences: 1. A computer goes through the boot process when you start or restart it . In traditional batch processing, only one thread is going on. . The problem called for batch processing. All accented characters will fall into a different category. . Users have usually looked for simple and cheap security devices. . Scroll through the list available and select an option from the pop-up menu. ‘As you work through the first four chapters, you will write simple test programs. | Many users hang on to their old printers because they like the print quality they get. wwe nr anawy . In on-line processing, a number of processes goes on at the same time, and the sequence of activities is unpredictable. 10. A method (often called a methodology) is a set of processes and heuristics used to break down the complexity of a programming problem. 11. In this phase you must come up with a design that describes what the classes look like and how they will interact. 12. The C++Builder IDE (which stands for Integrated Development Environment) is divided into three parts. pecaneadal con CamScanner segtin Scion en n conecto ,, propésito y condicidn, entre otros. se ee en estas oraciones la funcién del conector utilizado y traducir: 1, The C+ language is not an easy language to learn. It is, however, the standard programming — language in many corporations as well as in governments around the world. ‘ 2. Learning C++ might not be the easiest task you could attempt to tackle, but it should be very rewarding, both intellectually and monetarily. 3 3. Let me warn you, though, that these programs will probably not be the type of program that you purchased, because they involve a lot of practice. 4, These programs will, however, help to teach you the basics of C++ in order to get into its usage. 5. After that, we will spend a couple of days going over the C++Builder IDE so that you can become familiar with how the entire C++Builder IDE works together to make your programming tasks easier. 6. The Component Palette contains a wide array of components that you can drop onto your forms. (Components are things like text labels, edit controls, list boxes, buttons, and the like). 7. You will use the Object Inspector constantly while you work with C++Builder. 8. The list of available properties varies from component to component, although components usually have several common elements (Width and Height properties, for instance). 9, Ifyou need a variable to start with a particular value, use an explicit initializer (dynamic memory). "10. In addition to knowing which features of the language and library you can rely on when portable programs, you must be able to avoid naming conflicts with support routines used Escaneado con CamScanner ‘tiene en general un sentido distinto al del verbo por separado, Ademis, ar diversos sentidos al combinarse con diferentes preposiciones. Carry out: realizar “The control unit accepts and carries out the instructions” Get back: recuperar “We have to get those records back soon” Set up: configurar, instalar “We needed to set up the system immediately” Turn off: apagar “Please, tum off the computer when you leave” . Turn on: encender “Don’t forget to turn on the lights at night” ‘Underline the phrasal verbs and translate the sentences: 1 2. ‘A computer goes through the boot process when you start or restart it. In waditional batch processing, only one thread is going on, The problem called for batch processing. All accented characters will fall into a different category, : Users have usually looked for simple and cheap security devices. Scroll through the list available and select an option from the pop-up menu. As you work through the first four chapters, you will write simple test programs. ‘Many users hang on to their old printers because they like the print quality they get. . Tuming existing Windows applications into applications running within a Web browser is more Escaneado con CamScanner ‘you must come up with a design that describes what the parts. 14. The Windows Application Programming interface is a collection of functions that programmers to write Windows applications and it contains over 600 functions. But, although you can get by with a small fraction of these, you are never quite sure if you are overlooking some funetion that does exactly what your application needs to carry out. Escaneado con CamScanner . Each password is saved by each user. . These items are chosen from the menu bar. . The logic of that system is thoroughly explained in the manual. . The information has been carefully stored in high-capacity devices. . Several websites are designed to help you find anything you may need. 7. Each possible action in batch processing has been considered and solved as a . That concept is mentioned and explained in the first chapter of the book. . Those platforms are supported by more reliable applications. . Diagrams and sets were shown on screen. . The Internet standards are applied by every software maker. . Those folders were filled with information. . The lessons are usually downloaded on a weekly basis. ). The basic specifications are listed in the user’s manual. All the folders are verified by the operators. . The programming scheme has been downloaded by the manager. Domain names are normally separated by periods. Escaneado con CamScanner 1. Your web master creates these outstanding designs. 2. A server delivers information. 3. The secretary always schedules all the meetings of the IT department. 4. This program interprets all sorts of World Wide Web documents. 5. This option available in most WWW browsers maintains a list of frequently accessed home pages. 6. Many institutions offer interesting courses and live lectures through the web all the time. ‘Complete the blanks with the right form of the verb in brackets: What is Visual Basic? ‘sual Basic is a tool that allows you to develop Windows (Graphic User Interface ~ GUI) applications. The applications have a familiar appearance to the user. css + (call) upon to respond to some event button pressing, menu selection, ete. Visual Basic . (govern) by an (detect), Once events... 6... +5 ++ +6 veces es ss (@xeeute), The: Visual Basic is event-driven, which means that a code remains idle until it... ‘event processor. Nothing happens until an event . such as a window ora text box. The defining characteristic of a widget is to... 1 single interaction point for the direct manipulation of a... ... «. kind of data. Widgets ....... . basic visual building blocks which, . . . in an application, all the data processed by the application and the available interactions on this are packaged is defined include hasevolved are derived use A group of common reusable widgets ....... ... for holding general information based on specific programming needs. Different implementations of these generic widgets......often...... together in widget toolkits, which programmers .... .- to build graphical user interfaces (GUIs). Most operating systems ........ a set of ready-to-tailor widgets that a programmer can incorporate in an application, specifying how it is to behave. Each type of widgets generally - +s... .asa class by object- oriented programming (OOP). Therefore, many widgets... . . - ++... from class inheritance. ave qualified are hosted provides canbe pressed _can be clicked Widgets... sometimes ....... . as virtual to distinguish them from their physical counterparts, e.g, virtual buttons that..... ....... with a mouse cursor, vs. physical buttons that . .. with a finger. A related (but different) concept is the desktop widget, a small specialized GUI application that... . + Some visual information and/or easy access to frequently used functions such as clocks, calendars, news aggregators, calculators and desktop Escaneado con CamScanner tie used: it’s likely to be equally appropriate for many. odio E thod, not the computer program itself, which must be studied to learn how the cked. The term algorithm is universally used in computer science to describe methods suitable for implementation as computer programs. Algorithms are the “stuff? of science: they are central objects of study in many, if not most, areas of the field. = ‘Most algorithms of interest involve complicated methods of organizing the data involved in the computation. Objects created in this way are called data structures, and they are also central objects of study in computer science. Thus algorithms and data structures go hand in hand: in this book we will take the view that data structures exist as the byproducts or endproducts of algorithms, and thus need to be studied in order to understand the algorithms. Simple algorithms can give rise to complicated data structures and, conversely, complicated algorithms can use simple data structures. When a very large computer program is to be developed, a great deal of effort must go into understanding and defining the problem to be solved, managing its complexity, and decomposing it into smaller subtasks which can be easily implemented. It is often true that many of the algorithms required after the decomposition are trivial to implement. However, in most cases there are a few algorithms the choice of which is critical since most of the system resources will be spent running those algorithms. In this book, we will study a variety of fundamental algorithms basic to large programs in many applications areas. The sharing of programs in computer systems is becoming more widespread, so that while it is true that a serious computer user will use a large fraction of the algorithms in this book, he may need to implement only a somewhat smaller fraction of them. However, implementing simple versions of basic algorithms helps us to understand them better and thus use advanced versions more effectively in the future. Also, mechanisms for sharing software on many computer systems often make it difficult to tailor standard programs to perform effectively on specific tasks, so that the opportunity to reimplement basic algorithms frequently arises. Computer programs are often overoptimized. It may be worthwhile to take pains to ensure that ‘an implementation is the most efficient possible only if an algorithm is to be used for a very large task or is to be used many times. In most situations, a careful, relatively simple implementation will suffice: the programmer can have some confidence that it will work, and it is likely to run only five or ten times slower than the best possible version, which means that it may run for perhaps an extra fraction of a second. By contrast, the proper choice of algorithm in the first place can make a difference ofa factor of aiyais of algorithms. Many of the aigedtaas that we will s | performance through analysis, while others are simply known e We will not dwell on comparative performance issues: our goal is to learn some for cee tasks, But we will try to be aware of roughly how well these algorithms m Outline of Topics Below are brief descriptions of the major parts of the book, which give some of the specific topics covered as well as some indication of the general orientation towards the material described. This set of topics is intended to allow us to cover as many fundamental algorithms as possible. Some of the areas covered are “core” computer science areas which we'll study in some depth to learn basic algorithms of wide applicability. We'll also touch on other disciplines and advanced fields of study within computer science (such as numerical analysis, operations research, compiler construction, and the theory of algorithms): in these cases our treatment will serve as an introduction to these fields of study through examination of some basic methods. MATHEMATICAL ALGORITHMS include fundamental methods from arithmetic and numerical analysis. We study methods for addition and multiplication of integers, polynomials, and matrices as well as algorithms for solving a variety of mathematical problems which arise in many contexts: random number generation, solution of simultaneous equations, data fitting, and integration. The emphasis is on algorithmic aspects of the methods, not the mathematical basis. Of course we can’t do justice to advanced topics with this kind of treatment, but the simple methods given here may serve to introduce the reader to some advanced fields of study. A variety of SORTING methods for rearranging files into order are developed, described and compared in some depth, due to their fundamental importance. Algorithms for several related problems are treated, including priority queues, selection, and merging. Some of these algorithms are used as the basis for other algorithms later in the book. ADVANCED TOPICS are discussed for the purpose of relating the material in the book to several other advanced fields of study. Special-purpose hardware, dynamic programming, linear programming, and exhaustive search are surveyed from an elementary viewpoint to give the reader some appreciation for the interesting advanced fields of study that are suggested by the elementary problems confronted in tk ‘Taken from the book “Algorithms: Escaneado con CamScanner approached (v): . ought to (v): 4, assortment (noun): m fe. generate (v): n, sophisticated (adj): £ putting in order (v): 0. together (adv): g. proper (adj): p. needed (v): h. nevertheless (connector): q._ breaking down (v): i. outline (v): 2) True or false (paragraphs 4-6). Underline the right sentence to justify your election: a. Programs in computer systems are more frequently shared nowadays. b. A users likely to implement only a little part of the algorithms in this book. c. Asa result of using advanced versions of algorithms, we can understand the basic ones. d. Itis not difficult to customize standard programs thanks to the mechanisms for sharing software. Overoptimization of computer programs rarely occurs. £. Itis good to make an effort for an efficient implementation if an algorithm will be used several times. g Choosing the right algorithm will make a difference in terms of running time. fi. The same problem can be solved with different algorithms. i. Mathematical analysis is not needed when choosing the very best algorithm for a particular task, j. The objective of this book is to learn appropriate algorithms for important tasks. Escaneado con CamScanner known erve are study as welll as The study of algorithms... .. . . interesting because it is a new field (almost all of the are less than twenty-five years old) with a rich tradition (a few . .. for thousands of years). 2.0.2.2... new discoveries REE constantly being made, only a few algorithms are completely understood. In this book we algorithms we will algorithms have been ol elegant, simple, and easy algorithms. Our challenge is to understand the former and appreciate the latter in the context Escaneado con CamScanner r Beer as iv'v'catoiel VEN n hs in the lessey database will be converted to SQL Server. Ir "anticipates high growth for the system, both because business itself will increase, creating the data-entry personnel, and because users from other departments will begin to use the system as the b operations become more integrated. Marketing, finance, and accounting groups (and possibly well) will access the same data at some point in the future, and their exact needs are unknown at moment. Again, management has not decided at what point in the system’s development that the cutover from the legacy database storage to SQL Server will happen. REQUIREMENTS The major concerns for this scenario seem to be scalability, availability, and extensibility, with perhaps a secondary need for good maintainability. Scalability is an issue, because rapid growth in th number of users and connections could overwhelm a single server before management has a chance t upgrade hardware to keep pace with demand Availability is also an issue, going hand in hand with scalability, because the business tool implemented by this system will need to be available to growing numbers of new users in the future i different locations. The system must be extensible as well, because different groups of users in the futur may have different needs that require different user interfaces and perhaps even enhanced sets of busines rules, A secondary requirement would then be maintainability, because the dynamic nature of th environment implies that there may be numerous far-reaching changes and enhancements to the system i the future. Escaneado con CamScanner | those groups have a clear idea of what their exact needs are at the moment. ert | Availability and extensibility are two important topics as regards requirements. _ £) Asingle server could be overwhelmed by rapid growth in the number of users and connections. Bs g) When users connect with their browsers, the DHTML application would automatically download the updated files. 2) Find a synonym in the text for the following words (paragraph 1): precise: generating: plenty of: requirements: quickest: modern: ‘ 3) Find words in the text for these definitions (paragraphs 2-4): a) A description of a possible course of action or events (n): b) An increase in size, amount or degree (n): ©) To improve in quality or effectiveness (v): d) Tojoin or link one object to another by means of something that comes in between the two (v): e) Having a wide influence and effect (adj): f) Ananswer to a difficulty or problem (n): ‘Accollection of information stored in a computer or other device, under one name (n): something to last, or keep unchanged (v): e Escaneado con CamScanner mpany that produced the best Pascal tools. If you were a Pascal progrerninee’ you | nd’s TurboPascal in some of their versions. Borland more or less “owned” Pascal. didn’t own the Pascal language in a legal sense, they felt that because of their position in the Pascal world, they could take considerable liberties in implementing new language features and enhancements. In addition, there was no Pascal standards committee to deal with. So Borland created Delphi. Before Delphi appeared, Borland had already been modifying the Pascal language in positive ways. For instance, Borland had already extended Pascal by creating a new language called ObjectPascal. It could be said that ObjectPascal is to Pascal what C++ is to C. ObjectPascal added classes to Pascal, thereby hurling Pascal into the world of object-oriented programming languages. When Delphi came along, it was easy enough to add new keywords and new language behavior to deal with the component model. Keywords such as published and property were added, as were others. This allowed Borland to fully impiement the power of the component model. By modifying the Pascal language to suit the component model, Borland was able to do RAD right. In essence, the ObjectPascal language was modified as needed when design issues came up during the development of the then- unknown product called Delphi. The result is a language that works seamlessly with the PME model (the component model). While modifying Pascal could be considered a bold step for Borland, it was not without precedent. Previously Microsoft had taken the BASIC language and modified it to produce a new language called Visual Basic. This new language was nearly unrecognizable when compared to the BASIC language that served as its base. While it could be said that Microsoft took a risk in modifying BASIC (o create Visual Basic, Microsoft is after all Microsoft, and they could afford to take the risk. The BASIC language was not being used to any great degree and so there was little or no fuss when Microsoft came out with Visual Basic (there was some fuss, but it was not of the negative type). Borland took more of a risk in modifying Pascal. After all, they had a loyal base of customers that might not take kindly to enhancements to the language they had come to know and love. Still, Borland ‘was in a solid position in the Pascal market and went ahead with their plans. The result was the smash hit Delphi (the Borland internal code name stuck and became the official product name). But modifying C++ is another matter entirely. The world had been crying for a RAD C++ product for a long time, so it was not a question of whether such a product was needed, but more a question of how to go about it. Simply put, the component model that was so brilliantly implemented in Delphi could not be emulated in C++ given the current structure of the language. Something had to give. The problems associated with modifying the C++ language are many. First, there is a CH standards committee, It is this committee’s job to decide what features should be in the C++ language and how those features should be implemented (there is no such committee for Pascal or BASIC). I could write an entire chapter on whether this system actually works, but I'll spare you the details. Suffice it to say that simply because a C++ standards committee exists means that messing with the - C+ language can be expected to be met with some criticism. On the other hand, compiler extensions to the C++ language in some form or another, The theory is that you One of the other problems with extending the C-+ language is public perception. Since jumored to have a “standard”, modifying it in any way might unnerve some long-time C++ programmers. This is probably a better reason to tread lightly when thinking about C++ language extensions. After all, those people are your customers and you should consider what they think before you start extending their programming language of choice. As I said before, Borland conducted surveys to determine the public’s feelings on this issue, and that they did not arrive at their decision without a great deal of corporate soul searching. The result of the surveys indicated that many programmers would be willing to accept language extensions to have a true RAD product for C++. To them the language debate was not as important as the prospect of increased productivity Exercises 1. Find synonyms for the following words or expressions (paragraphs { and 2): put in practice: completely: for example: central part: furthermore: enlarged: enabled: characteristics: appeared: essential: upgrades: selling in big amounts: launching, introducing: 2. Answer these questions (paragraphs 3 and 4): a. What did Microsoft do with the BASIC language? ‘c. Inorder to allow MFC-program compiling, Borland had to follow a lot of C++ rules. d. Public concern is another problem with extending the C++ language. e. Borland did some research to know the public’s feelings on this issue. £ According to the surveys, a good number of programmers would accept language extensions. aa 4, Complete the following paragraph with the right words: taken has implementing handled want exist decided ‘Another problem with extending C+ is the actual implementation. While such an undertaking was no doubt monumental, there is no question that the engineers at Borland... . . - it with relative ease. Borland . extend the C++ language to take advantage of the component model, the Borland people got right down to business. Surely, Borland. ....... . to extend C++ in order to fully leverage the PME model. It should be some of the best minds in the software industry. Once the decision was .....-.-- to pointed out that the extensions to C++ that........ in C++Builder are just that: extensions. They are there for you to use if you........ . 0 take advantage of rapid application development in C++, In essence, the C++Builder compiler is a standards-compliant C++ compiler, ... 0... « some of the latest features announced by the C-++ standards committee. If you don’t want to use the C++Builder extensions to C++, you certainly don’t have to. If that is the case, however, you probably won't use C++Builder very much. Escaneado con CamScanner

También podría gustarte