Property Value
dbo:abstract
  • A tárátadó stílus egy programozási módszer, amit változó állapot nélkül változó állapot modellezésére használnak. Példaként tekintsük ezt a JavaScript programot, ami nem tárátadó stílusban készült: var lastWasA = false// a treebin represents a binary tree of strings.// a treebin is either// - a string, or// - {l : <treebin>, r: <treebin>}// does an in-order traversal of this tree's// leaves contain an 'a' followed by a 'b'?function aThenB(treebin) { if (typeof(treebin) === "string") { if (treebin === "a") { lastWasA = true; return false; } else if (treebin === "b") { if (lastWasA) { return true; } } else { return false; } } else { // not a string, must be an internal node: return ((aThenB(treebin.l))||(aThenB(treebin.r))); }} Ez hivatkozást tartalmaz egy globális változóra. Tárátadó stílusban a globális változó értéke minden hívásban átadódik, amit a következő hívás átvesz. Ez úgy nézhet ki, mint: function aThenB(treebin, lastWasA) { if (typeof(treebin) === "string") { if (treebin === "a") { return {result: false, lastWasA: true}; } else if (treebin === "b") { if (lastWasA) { return {result: true, lastWasA: false}; } } else { return {result: false, lastWasA: false}; } } else { // not a string, must be an internal node: var leftCall = aThenB(treebin.l, lastWasA); if (leftCall.result) { return {result: true, lastWasA: false} } else { return aThenB(treebin.r, leftCall.lastWasA); } }} Jegyezzük meg, hogy minden hívás átvesz egy extra argumentumot, és két értéket ad vissza: a valódi visszatérési értéket, és a korábbi változó új állapotát. Tárátadó stílusban írni nehézkes lehet, de segíthet kiküszöbölni versenyhelyzeteket azzal, hogy az állapot csak két függvényhívás között létezik, így a kód potenciálisan jobban párhuzamosítható. (hu)
  • A tárátadó stílus egy programozási módszer, amit változó állapot nélkül változó állapot modellezésére használnak. Példaként tekintsük ezt a JavaScript programot, ami nem tárátadó stílusban készült: var lastWasA = false// a treebin represents a binary tree of strings.// a treebin is either// - a string, or// - {l : <treebin>, r: <treebin>}// does an in-order traversal of this tree's// leaves contain an 'a' followed by a 'b'?function aThenB(treebin) { if (typeof(treebin) === "string") { if (treebin === "a") { lastWasA = true; return false; } else if (treebin === "b") { if (lastWasA) { return true; } } else { return false; } } else { // not a string, must be an internal node: return ((aThenB(treebin.l))||(aThenB(treebin.r))); }} Ez hivatkozást tartalmaz egy globális változóra. Tárátadó stílusban a globális változó értéke minden hívásban átadódik, amit a következő hívás átvesz. Ez úgy nézhet ki, mint: function aThenB(treebin, lastWasA) { if (typeof(treebin) === "string") { if (treebin === "a") { return {result: false, lastWasA: true}; } else if (treebin === "b") { if (lastWasA) { return {result: true, lastWasA: false}; } } else { return {result: false, lastWasA: false}; } } else { // not a string, must be an internal node: var leftCall = aThenB(treebin.l, lastWasA); if (leftCall.result) { return {result: true, lastWasA: false} } else { return aThenB(treebin.r, leftCall.lastWasA); } }} Jegyezzük meg, hogy minden hívás átvesz egy extra argumentumot, és két értéket ad vissza: a valódi visszatérési értéket, és a korábbi változó új állapotát. Tárátadó stílusban írni nehézkes lehet, de segíthet kiküszöbölni versenyhelyzeteket azzal, hogy az állapot csak két függvényhívás között létezik, így a kód potenciálisan jobban párhuzamosítható. (hu)
dbo:wikiPageID
  • 1521784 (xsd:integer)
dbo:wikiPageLength
  • 2635 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 19431409 (xsd:integer)
prop-hu:wikiPageUsesTemplate
dct:subject
rdfs:label
  • Tárátadó stílus (hu)
  • Tárátadó stílus (hu)
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is foaf:primaryTopic of