Programming methodology part 2 annabelle mclver, carroll morgan
➤ Gửi thông báo lỗi ⚠️ Báo cáo tài liệu vi phạmNội dung chi tiết: Programming methodology part 2 annabelle mclver, carroll morgan
Programming methodology part 2 annabelle mclver, carroll morgan
Part IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan The object-oriented paradigm of programming heralded a radical change in language design in the 1960's. Its authors recognised that programming languages did not need to reflect the concrete structure of primitive machine operations, and instead they took the revolutionary view that languages should Programming methodology part 2 annabelle mclver, carroll morgan be based on ‘high level' structuring constructs, the better to facilitate the rapid design of large software systems and reuse of code.Whilst its proProgramming methodology part 2 annabelle mclver, carroll morgan
gressive features have established object orientation as one of the most popular programming tools for large-scale systems, it is also true that the ePart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan ency and interoperability which form a large part of modem applications. For example the inherent sequential nature of the object-oriented paradigm reveals very compelling!}' how its use can place an unnecessary impediment on the development process of concurrent applications.Program developers reco Programming methodology part 2 annabelle mclver, carroll morgan gnise that software must above all be adaptable over its lifetime to evolving interactive environments yet, as this paper points out. it is unfortunatProgramming methodology part 2 annabelle mclver, carroll morgan
e that the object-oriented style (as it is currently implemented) is unable to respond to this (and other) issues. So whilst object orientation represPart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan w generation object-oriented language to meet them.11A trace model for pointers and objects223C.A.R. Hoare and He JifengObject-oriented programming is a synthesis of at least three ideas, each with its own separate history: modularity (including extensibility and information hiding); independent (co Programming methodology part 2 annabelle mclver, carroll morgan ncurrent) execution; and pointer-based data structuring. The last of those is the subject of this paper.208 Section E. Object orientationLike many othProgramming methodology part 2 annabelle mclver, carroll morgan
er ideas in computing, the pointer can be traced back to a feature of computing hardware, in this case the memory address. Just as the ‘GOTO’ (itself Part IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan its po-tentialy unbridled use (resembling spaghetti) and the otherwise well designed data structures of the language containing it. Both the GOTO and pointers were tamed in the 1970’s, however: the former by E.w. Dijkstra’s article “GOTO statement considered harmful” [CACM 11(3) 1968]; and the latte Programming methodology part 2 annabelle mclver, carroll morgan r in the article “Recursive Data Structures” by Hoare [Int. J. Comp. Inf. Sci. 4(2) 1975], that captured and hid the use of pointers within the more aProgramming methodology part 2 annabelle mclver, carroll morgan
bstract concept of an abstract syntax tree. That approach lives on in modem functional languages.Unlike GOTO'S however, still more-or-less banned twenPart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan well understood as it should be. In this article, Hoare and He once more attempt to tame pointers’ complexity by abstraction, but this time using a more general trace model, rather than one based on trees. The result has the usual powerful simplicity that is characteristic of these authors. Because Programming methodology part 2 annabelle mclver, carroll morgan of that, it reveals quite starkly how complicated the reasoning about pointers will be in the general case.12Object models as heap invariants247DanielProgramming methodology part 2 annabelle mclver, carroll morgan
JacksonSome specification techniques are interesting because of their mathematical structures alone; some are remarkable for their generality; and soPart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan plicity and the fact that it is so well matched to the ‘state-modelling’ approach of specification and design; and its being based on elementary set theory allows it a widespread use. But because it makes no attempt to deal systematically with — for example — higher-order structures, it is limited i Programming methodology part 2 annabelle mclver, carroll morgan n other areas; the corresponding advantage is that it is not necessary to carry that baggage around when dealing with common every-day problems.The teProgramming methodology part 2 annabelle mclver, carroll morgan
chnique proposed here resembles z in that (and other) respects. It is a specification and design technique very carefully aimed at one target, object-Part IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan age which allows just enough expressivity — and not too much.The contribution can be read not only for its specific proposals on object-model specification, but more generally as an example of designing the right tool for the job.Section E. Object orientation 20913Abstraction dependenciesK. Rustan M Programming methodology part 2 annabelle mclver, carroll morgan . Leino and Greg Nelson269This paper presents abstraction dependencies as a key construct in specifying modular programs.In data abstraction, one distProgramming methodology part 2 annabelle mclver, carroll morgan
inguishes two secrets: the abstraction function that defines the representation; and the identity of the (generally concrete but possibly abstract) vaPart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan ess closely guarded (that is, visible in more modules) than the abstraction function itself. The abstraction dependency makes it possible to achieve that.10Object-oriented programming and software development — a critical assessmentManfred BroyAbstractIn software engineering, object-oriented develop Programming methodology part 2 annabelle mclver, carroll morgan ment is today the most popular programming, design and analysis approach. However, object orientation does not manage to address the needs of today’sProgramming methodology part 2 annabelle mclver, carroll morgan
software construction in as radical and fundamental a way as is needed in highly distributed interoperating software applications. In the following, wPart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan f large distributed software systems. This shows that object-oriented techniques of today are not in accordance with the state of the art in scientific, well understood, programming methodology and software engineering.10.1 IntroductionObject orientation was originally invented by Ole-Johan Dahl and Programming methodology part 2 annabelle mclver, carroll morgan Kristen Nygaard in their design of the programming language Simula 67 (see [18]). Before that, most programming languages were mainly influenced eithProgramming methodology part 2 annabelle mclver, carroll morgan
er by the commands of machine languages such as assembler languages or by the logical foundations of computability, such as the A-calculus. Only graduPart IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyT Programming methodology part 2 annabelle mclver, carroll morgan evoted to concepts of programming in the small and sequential, noninteractive programs. Typically, I/O was considered a minor issue and therefore not part of the programming language definition, for instance in ALGOL. Programming methodology part 2 annabelle mclver, carroll morgan Part IIProgramming techniquesSection EObject orientation10Object-oriented programming and software development — a critical assessment211Manfred BroyTGọi ngay
Chat zalo
Facebook