| dbpedia-owl:abstract
|
- Strukturierte Programmierung ist ein programmiersprachenübergreifendes Programmierparadigma, das Anfang der 1970er Jahre auch aufgrund der Softwarekrise populär wurde. Es beinhaltet zum einen die baumartige Zerlegung eines Programms in Teilprogramme und enthält somit das Paradigma der prozeduralen Programmierung. Zudem verlangt die strukturierte Programmierung auf der untersten Ebene die Beschränkung auf lediglich drei Kontrollstrukturen: Sequenz (hintereinander auszuführende Programmanweisungen) Auswahl Wiederholung Die bekannteste Konsequenz dieses Prinzips ist die Vermeidung oder – abhängig von der Programmiersprache – der eingeschränkte und standardisierte Einsatz der Sprunganweisung, des GOTO. Das Ergebnis der häufigen Verwendung dieser Anweisungen wird häufig abfällig als Spaghetticode bezeichnet.
- To many people, Edsger W. Dijkstra's letter to the Editor of Communications of the ACM, published in March 1968, marks the true beginning of structured programming. Structured programming can be seen as a subset or subdiscipline of imperative programming, one of the major programming paradigms. It is most famous for removing or reducing reliance on the GOTO statement. Edsger Dijkstra's subsequent article, "Go To Statement Considered Harmful" was instrumental in the trend towards structured programming. Description of the inverse relationship between a programmer's ability and the density of goto statements in his program is repeated. Historically, several different structuring techniques or methodologies have been developed for writing structured programs. The most common are as follows: Edsger Dijkstra's structured programming, where the logic of a program is a structure composed of similar sub-structures in a limited number of ways. This reduces understanding a program to understanding each structure on its own, and in relation to that containing it, a useful separation of concerns. A view derived from Dijkstra's which also advocates splitting programs into sub-sections with a single point of entry, but is strongly opposed to the concept of a single point of exit. Data Structured Programming or Jackson Structured Programming, which is based on aligning data structures with program structures. This approach applied the fundamental structures proposed by Dijkstra, but as constructs that used the high-level structure of a program to be modeled on the underlying data structures being processed. There are at least 3 major approaches to data structured program design proposed by Jean-Dominique Warnier, Michael A. Jackson, and Ken Orr. The two latter meanings for the term "structured programming" are more common, and that is what this article will discuss. Years after Dijkstra (1969), object-oriented programming (OOP) was developed to handle very large or complex programs.
- La programación estructurada es una técnica para escribir programas de manera clara. Para ello se utilizan únicamente tres estructuras: secuencia, selección e iteración; siendo innecesario el uso de la instrucción o instrucciones de transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o múltiples RETURN). Hoy en día las aplicaciones informáticas son mucho más ambiciosas que las necesidades de programación existentes en los años 1960, principalmente debido a las aplicaciones gráficas, por lo que las técnicas de programación estructurada no son suficientes. Ello ha llevado al desarrollo de nuevas técnicas, tales como la programación orientada a objetos y el desarrollo de entornos de programación que facilitan la programación de grandes aplicaciones.
- La programmazione strutturata è un paradigma di programmazione emerso fra gli anni sessanta e gli anni settanta nel contesto della programmazione procedurale. I concetti introdotti dalla programmazione strutturata sono alla base di numerosi altri paradigmi procedurali successivi, non ultimo quello orientato agli oggetti.
- 構造化プログラミング(こうぞうか-)は、コンピュータのプログラム上の手続きをいくつかの単位に分け、メインとなる処理では大まかな処理を記述し、サブルーチンによって細部を記述していく方法。1967年、エドガー・ダイクストラらによって提唱された。 全体的な機能から詳細機能へと順に開発するトップダウン式と小さな機能をまとめて大きな機能単位をつくるボトムアップ式の開発方法がある。 サブルーチン分割や構造化制御をサポートするプログラミング言語を構造化言語と呼ぶ場合があるが、現在の言語水準では特に明示されない場合でも、ほとんどの言語は構造化されているといえる。典型的な構造化言語はCやPascalといったいわゆるALGOL系の言語であろう。 オブジェクト指向でも、基本的な処理の流れは構造化から変わりない。
- Gestructureerd programmeren kan worden gezien als een subdiscipline van procedureel programmeren, een van de belangrijke programmeerparadigma's (en waarschijnlijk de populairste) voor het programmeren van computers. In de jaren '60 werd het langzaamaan duidelijk dat de complexiteit van computerprogramma's uit de hand begon te lopen. Programmeurs zagen door de bomen het bos niet meer. Goede programmeurs wisten door structureel te werken echter code te produceren die veel makkelijker te doorzien was. Het viel op dat bekwame programmeurs met name veel minder GOTO-statements gebruikten. Wetenschappers in de informatica, waaronder met name Edsger Dijkstra, Jean-Dominique Warnier en Michael A. Jackson, zagen de oplossing in het gestructureerd programmeren, waarbij het door nieuwe constructies in programmeertalen onnodig zou worden constructies als het goto-statement te gebruiken, waardoor de leesbaarheid van code veel beter werd. De drie basisconstructies in gestructureerd programmeren zijn: sequentie = opeenvolging (S1 S2) iteratie = herhaling selectie = keuzestructuur (if B then S1 else S2) S staat voor een opdracht, B voor logische expressie. Belangrijk is hierbij dat zowel een opdracht als een logische expressie willekeurig complex mogen zijn. In programmeertalen is dat voor opdrachten gerealiseerd door begin ... end-constructies: begin en end in Pascal de accolades { en } in Java, C en PHP Men hoopte dat een en ander het bewijzen van de (wiskundige) correctheid van een programma mogelijk zou maken. (Dit is in de praktijk anders uitgevallen. ) Dit gestructureerde programmeren leidde tot een nieuwe generatie programmeertalen, waarvan met name de programmeertaal Pascal het ver geschopt heeft. Al deze talen kennen nog wel het goto-statement en het label, maar het gebruik ervan wordt sterk afgeraden.
- Programowanie strukturalne to paradygmat programowania zalecający hierarchiczne dzielenie kodu na bloki, z jednym punktem wejścia i jednym lub wieloma punktami wyjścia. Chodzi przede wszystkim o nieużywanie (lub ograniczenie) instrukcji skoku (goto). Dobrymi strukturami są np. instrukcja warunkowe (if, if... else), pętle (while, repeat), wyboru (case, ale nie switch z C i potomnych). Strukturalność zakłócają instrukcje typu: break, continue, switch (w C itp. ), które jednak w niektórych przypadkach znacząco podnoszą czytelność kodu.
- Programação estruturada é uma forma de programação de computadores que preconiza que todos os programas possíveis podem ser reduzidos a apenas três estruturas: sequência, decisão e interação, desenvolvida por Michael A. Jackson no seu livro "Principles of Program Design" de 1975. Tendo, na prática, sido transformada na Programação modular, a Programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando as subrotinas e as funções. Foi a forma dominante na criação de software anterior à programação orientada por objetos. Apesar de ter sido sucedida pela programação orientada por objetos, pode-se dizer que a programação estruturada ainda é muito influente, uma vez que grande parte das pessoas ainda aprendem programação através dela. Para a resolução de problemas relativamente mais simples e diretos a programação estruturada é muito eficiente. Além disso, por exigir formas de pensar relativamente complexas, a programação orientada a objetos até hoje ainda não é bem compreendida ou usada pela maioria. Há de se acrescentar também que inúmeras linguagens ainda extremamente relevantes nos dias de hoje, como Cobol, PHP e Perl ainda utilizam o paradigma estruturado (muito embora possuam suporte para a orientação à objetos).
- Структу́рное программи́рование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом. В соответствии с данной методологией Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций: последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы; ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия; цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла). В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается. Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде т. н. подпрограмм. В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы. Разработка программы ведётся пошагово, методом «сверху вниз». Сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент. Вместо настоящих, работающих подпрограмм, в программу вставляются «заглушки», которые ничего не делают. Полученная программа проверяется и отлаживается. После того, как программист убедится, что подпрограммы вызываются в правильной последовательности (то есть общая структура программы верна), подпрограммы-заглушки последовательно заменяются на реально работающие, причём разработка каждой подпрограммы ведётся тем же методом, что и основной программы. Разработка заканчивается тогда, когда не останется ни одной «затычки», которая не была бы удалена. Такая последовательность гарантирует, что на каждом этапе разработки программист одновременно имеет дело с обозримым и понятным ему множеством фрагментов, и может быть уверен, что общая структура всех более высоких уровней программы верна. При сопровождении и внесении изменений в программу выясняется, в какие именно процедуры нужно внести изменения, и они вносятся, не затрагивая части программы, непосредственно не связанные с ними. Это позволяет гарантировать, что при внесении изменений и исправлении ошибок не выйдет из строя какая-то часть программы, находящаяся в данный момент вне зоны внимания программиста. Теорема о структурном программировании: Основная статья: Теорема Бома-Якопини Любую схему алгоритма можно представить в виде композиции вложенных блоков begin и end, условных операторов if, then, else, циклов с предусловием (while) и может быть дополнительных логических переменных (флагов). Эта теорема была сформулирована итальянскими математиками К. Бомом и Дж. Якопини в 1966 году и говорит нам о том, как можно избежать использование оператора перехода goto.
- Strukturerad programmering är programmering utan att använda explicita GOTO-satser. Istället använder man endast de strukturerade kontrollflödes-mekanismerna som det använda programspråket erbjuder. Därmed undviks de problem som ostrukturerad spagettikod leder till. Många moderna programspråk omöjliggör ostrukturerad programmering genom att helt enkelt inte erbjuda någon explict GOTO-sats.
- La programmation structurée constitue un sous-ensemble de la programmation impérative. C'est un paradigme important de la programmation, apparu vers 1970. Elle dérive de travaux de Nicklaus Wirth pour son Algol W et reçut son coup d'envoi avec l'article fondateur de Dijkstra dans Communications of the ACM nommé GO TO statement considered harmful. Elle est en effet célèbre pour son essai de suppression de l'instruction goto ou du moins pour la limitation de son usage à des cas inhabituels et graves (que l'on nommerait aujourd'hui des exceptions).
|
| rdfs:comment
|
- La programmazione strutturata è un paradigma di programmazione emerso fra gli anni sessanta e gli anni settanta nel contesto della programmazione procedurale. I concetti introdotti dalla programmazione strutturata sono alla base di numerosi altri paradigmi procedurali successivi, non ultimo quello orientato agli oggetti.
- 構造化プログラミング(こうぞうか-)は、コンピュータのプログラム上の手続きをいくつかの単位に分け、メインとなる処理では大まかな処理を記述し、サブルーチンによって細部を記述していく方法。1967年、エドガー・ダイクストラらによって提唱された。 全体的な機能から詳細機能へと順に開発するトップダウン式と小さな機能をまとめて大きな機能単位をつくるボトムアップ式の開発方法がある。 サブルーチン分割や構造化制御をサポートするプログラミング言語を構造化言語と呼ぶ場合があるが、現在の言語水準では特に明示されない場合でも、ほとんどの言語は構造化されているといえる。典型的な構造化言語はCやPascalといったいわゆるALGOL系の言語であろう。 オブジェクト指向でも、基本的な処理の流れは構造化から変わりない。
- Strukturerad programmering är programmering utan att använda explicita GOTO-satser. Istället använder man endast de strukturerade kontrollflödes-mekanismerna som det använda programspråket erbjuder. Därmed undviks de problem som ostrukturerad spagettikod leder till. Många moderna programspråk omöjliggör ostrukturerad programmering genom att helt enkelt inte erbjuda någon explict GOTO-sats.
- Strukturierte Programmierung ist ein programmiersprachenübergreifendes Programmierparadigma, das Anfang der 1970er Jahre auch aufgrund der Softwarekrise populär wurde. Es beinhaltet zum einen die baumartige Zerlegung eines Programms in Teilprogramme und enthält somit das Paradigma der prozeduralen Programmierung.
- To many people, Edsger W. Dijkstra's letter to the Editor of Communications of the ACM, published in March 1968, marks the true beginning of structured programming. Structured programming can be seen as a subset or subdiscipline of imperative programming, one of the major programming paradigms. It is most famous for removing or reducing reliance on the GOTO statement.
- La programación estructurada es una técnica para escribir programas de manera clara. Para ello se utilizan únicamente tres estructuras: secuencia, selección e iteración; siendo innecesario el uso de la instrucción o instrucciones de transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o múltiples RETURN).
- Gestructureerd programmeren kan worden gezien als een subdiscipline van procedureel programmeren, een van de belangrijke programmeerparadigma's (en waarschijnlijk de populairste) voor het programmeren van computers. In de jaren '60 werd het langzaamaan duidelijk dat de complexiteit van computerprogramma's uit de hand begon te lopen. Programmeurs zagen door de bomen het bos niet meer.
- Programowanie strukturalne to paradygmat programowania zalecający hierarchiczne dzielenie kodu na bloki, z jednym punktem wejścia i jednym lub wieloma punktami wyjścia. Chodzi przede wszystkim o nieużywanie (lub ograniczenie) instrukcji skoku (goto). Dobrymi strukturami są np. instrukcja warunkowe (if, if... else), pętle (while, repeat), wyboru (case, ale nie switch z C i potomnych). Strukturalność zakłócają instrukcje typu: break, continue, switch (w C itp.
- Programação estruturada é uma forma de programação de computadores que preconiza que todos os programas possíveis podem ser reduzidos a apenas três estruturas: sequência, decisão e interação, desenvolvida por Michael A. Jackson no seu livro "Principles of Program Design" de 1975. Tendo, na prática, sido transformada na Programação modular, a Programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando as subrotinas e as funções.
- Структу́рное программи́рование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом.
- La programmation structurée constitue un sous-ensemble de la programmation impérative. C'est un paradigme important de la programmation, apparu vers 1970. Elle dérive de travaux de Nicklaus Wirth pour son Algol W et reçut son coup d'envoi avec l'article fondateur de Dijkstra dans Communications of the ACM nommé GO TO statement considered harmful.
|