hbv病毒是什么意思| 阴虚火旺有什么症状| 荔枝补什么| 五月初十是什么星座| 月经有黑色血块是什么原因| 井是什么生肖| 冥王星是什么星| 口五行属什么| 叶酸什么牌子好| 垢是什么意思| 胃下面是什么器官| 仔细的什么| 牙槽骨吸收是什么意思| 箬叶和粽叶有什么区别| 04年出生属什么| 稼穑是什么意思| 维生素c的作用是什么| 农历六月初七是什么星座| 什么言什么语| 叶酸有什么作用| 经常胸闷是什么原因| 金银花泡水喝有什么好处| 孩子睡觉磨牙是什么原因| 市人大副主任什么级别| 为什么老是想睡觉| 潘多拉魔盒是什么意思| 吃饭出汗多是什么原因| 炖羊肉都放什么调料| 全身大面积湿疹暗示着什么| 玄机是什么意思| 脾湿吃什么中成药| 尿很臭是什么原因| 大什么什么针| 手脚肿胀是什么原因引起的| 逐是什么意思| 睡眠不好用什么泡脚助于睡眠| 查微量元素挂什么科| 导语是什么意思| 润肠通便吃什么药| 海兔是什么| 骑士是什么意思| 月经黑红色是什么原因| 消化性溃疡吃什么药好| 心脏不好最忌讳吃什么| 心脏大是什么原因| 五指毛桃长什么样子| 宫外孕有什么症状| 前列腺是什么原因引起的| 腺体肠化是什么意思| 师参谋长是什么军衔| 麻酱是什么做的| Continental什么牌子| 精子像果冻是什么原因| 胃痉挛是什么症状| 白细胞计数偏低是什么意思| 门对门有什么说法| 夫妻合葬有什么讲究| 舅舅的儿子叫什么| 夏天晚饭吃什么比较好| 忌作灶是什么意思| 梗米是什么| 白蛋白低是什么原因| 背道而驰什么意思| 近亲是什么意思| 布加综合征是什么病| mcm中文叫什么牌子| 睾丸痛吃什么消炎药| 突然想吃辣是什么原因| 墓志铭什么意思| 钢琴十级什么水平| 戒指戴在食指什么意思| 鸭吃什么食物| 10月9日什么星座| 什么羽毛球拍最好| hpv阳性有什么症状| 腊月是什么星座| 丝瓜不可以和什么一起吃| 胸膜牵拉是什么意思| 检查乙肝五项挂什么科| 308什么意思| ufc什么意思| 梦见发大水是什么预兆| 太监是什么| 非营运车辆是什么意思| 脸上爱出汗是什么原因| 咳嗽发烧吃什么药| nb是什么意思| oid是什么意思| 黑色是什么颜色组成的| 肾功能检查挂什么科| 玄学是什么| 胎脂是什么原因造成的| x58主板配什么cpu| 天性使然什么意思| 火乐念什么| 皮肤爱出油是什么原因| 世界上有什么| 胃病四联疗法是什么药| 三叉神经吃什么药好| 脚气缺什么维生素| 鸡眼去医院挂什么科| 男人下面胀痛什么原因造成呢| 异位性皮炎是什么意思| 十年粤语版叫什么名字| ab什么意思| 党员有什么好处| 3s是什么意思| 工体是什么意思| 什么什么的荷叶| 教学相长是什么意思| 牵牛花什么时候开| 普洱茶什么季节喝好| 天蝎座有什么特点| 希特勒为什么要杀犹太人| 老鼠吃什么| 什么鱼最好吃| 丝瓜什么人不能吃| 什么是av| 维生素ad和维生素d有什么区别| 中药不能和什么一起吃| 老实忠厚是什么生肖| ais是什么意思| 什么麻料最好| 女士内裤用什么洗最好| 梦见房子倒塌是什么意思| 什么食物防辐射| 胸闷吃什么药| 蛋白质变性的本质是什么| 眼睛长黄斑是什么原因| 吃什么可以解决便秘| 无花果有什么功效| 世界上有什么| 汗蒸有什么好处和功效| 水瓶女和什么座最配| 立秋什么时候| 膝盖不好的人适合什么运动| 什么叫脑白质病| 颠鸾倒凤什么意思| 下焦不通吃什么中成药| 吐血拉血是什么病的症状| 奥沙利文为什么叫火箭| 冬虫夏草有什么功效与作用| 全麦是什么意思| 蒲公英叶和根的功效有什么不同| 拔智齿第二天可以吃什么| 血热吃什么药可以凉血| 文竹的寓意是什么| 肌酐测定低是什么意思| 肝火旺盛吃什么食物好| 什么叫释怀| 什么的问题| 艾滋病通过什么传染| 胡萝卜什么时候成熟| 佛法无边是什么生肖| 新疆在古代叫什么| 胸前有痣代表什么意思| 牡丹花是什么颜色的| 休克是什么意思| 蟑螂喜欢吃什么东西| 1月22日什么星座| 全身疼是什么病| a型血和b型血生的孩子是什么血型| 芈怎么读什么意思| 胃囊肿是什么病严重吗| 包皮手术后吃什么伤口愈合快| 绝世是什么意思| 牙齿痛吃什么消炎药| 拉尿有泡沫是什么原因| 指骨属于什么骨| 查凝血酶能查出什么病| 乙基麦芽酚是什么| 流苏是什么东西| 右附件区囊肿是什么意思| 苗侨伟为什么叫三哥| yp什么意思| 小孩尿酸高是什么原因| 人情是什么意思| 小松鼠吃什么食物| 撸管是什么意思| 来源朋友验证消息是什么意思| 什么是荷尔蒙| 手上长汗疱疹用什么药| 什么是血虚| 鸡蛋过敏什么症状| 早上起来有痰是什么原因| 例假提前是什么原因| 人造海蜇丝是什么做的| 肾阳虚的表现是什么| 热休克蛋白90a检查高是什么原因| 什么看果园越看越少| 钱丢了预示着什么| 荷花是什么生肖| 云州是现在的什么地方| 11楼五行属什么| 青鱼吃什么| 试管什么降调| 中医内科主要看什么| 肺部肿瘤吃什么药| ctp是什么意思| 正财透干是什么意思| 细菌感染吃什么消炎药| 男生第一次什么感觉| 什么是兼职| tax是什么意思| 23年属什么生肖| 3.1号是什么星座| 腰酸胀是什么原因男性| 贱痣是什么意思| 老人嘴唇发紫是什么原因| 令堂什么意思| 蒲公英长什么样子| 经常吃南瓜有什么好处和坏处| 15年什么婚| hsv病毒是什么意思| 一什么玉米| 红五行属性是什么| 心焦是什么意思| 慢性胰腺炎有什么症状| 弯的是什么意思| 梦见被猪咬是什么意思| 什么水果对胃好更养胃| 8岁属什么| 心脏疼痛吃什么药| 黄芪主治什么病| 吃什么可以增强抵抗力和免疫力| trace什么意思| 咖喱块什么牌子的好| 胆囊腺肌症是什么病| 大便是黑色是什么原因| 送镜子代表什么意思| 骨折后吃什么好的快| 什么炖鸡好吃| 尚公主是什么意思| 什么是处女| hpv56阳性是什么意思| 眼睛疼滴什么眼药水| 冬虫夏草是什么| 999是什么电话| hopeshow是什么牌子| 头热是什么原因| 白带有点黄是什么原因| 白头发吃什么能变黑| 无头鱼是什么鱼| 92是什么| 人为什么会得阑尾炎| 长期吸烟容易引起什么疾病| 补牙挂什么科| 背影杀是什么意思| 中期唐氏筛查查什么| 免疫组化是什么| 跳蚤是什么| 肚子胀气吃什么药好| 7月10号什么星座| 煞星是什么意思| 吃什么东西补脑| 石楠花是什么| prbpm是什么意思| 扁平疣挂什么科| 8月26是什么星座| 听什么歌写作业快| 牙齿最多的动物是什么| 乙醇是什么东西| 眉毛尾部有痣代表什么| 月经安全期是什么时候| 百度P?esko?it na obsah

新疆:“微信转发消息日赚30元”骗了100多人

Z Wikipedie, otev?ené encyklopedie
Programovací paradigmata
百度 但是,我省人口多、底子薄、基础弱、发展不平衡的基本省情没有根本改变。

Imperativní programování (té? procedurální programování) je jedno z programovacích paradigmat, neboli zp?sob?, jak jsou v programovacím jazyku formulována ?e?ení problém?. Imperativní programování popisuje vypo?et pomocí posloupnosti p?íkaz? a ur?uje p?esny postup (algoritmus), jak danou úlohu ?e?it. Program je sadou proměnnych, je? v závislosti na vyhodnocení podmínek mění pomocí p?íkaz? sv?j stav. Základní metodou imperativního programování je procedurální programování, tyto termíny byvají proto ?asto zaměňovány.

Imperativní p?ístup je blízky i oby?ejnému ?lověku. Nap?íklad kucha?ské recepty ?i návody k montá?i zakoupenych vyrobk? jsou také p?íkazy krok za krokem a ka?dy p?íkaz je v závislosti na podmínkách svázán s ur?itym stavem jídla ?i kompletnosti vyrobku. Tento pro lidi p?irozeny zp?sob p?esně odpovídá paradigmatu imperativního programování, a nikoho tudí? asi nep?ekvapí, ?e vět?ina programovacích jazyk? i hardwarová implementace vět?iny po?íta?? jsou imperativní. Hardware pak stejně jako va?ící/montující ?lověk vykonává p?íkaz za p?íkazem, p?esně jak to odpovídá imperativnímu p?ístupu. Pouze jednotlivé p?íkazy jsou instrukce strojového kódu, k jeho? vykonávání je hardware navr?en, a aktuální stav vyjad?uje obsah paměti. Vy??í imperativní jazyky pak pou?ívají proměnné a komplexněj?í p?íkazy (tedy vyrazy a funkce), ov?em stále vyznávají to samé, imperativní paradigma.

První imperativní programovací jazyky byly strojové jazyky jednotlivych po?íta??. V těchto jazycích byly pouze velmi jednoduché instrukce, co? sice umo?ňovalo velmi snadnou hardwarovou implementaci, ale komplikovalo to mo?nost vytvá?et komplexní programy. První jazyk, ktery odstranil p?eká?ky strojového kódu pro vytvá?ení komplexních program?, byl FORTRAN, vytvo?eny Johnem Backusem ve spole?nosti IBM v roce 1954. FORTRAN p?inesl mo?nosti (nap?íklad pojmenovávání proměnnych, slo?ené vyrazy, podprogramy a mnohé dal?í), je? jsou sou?ástí imperativních jazyk? dodnes.

Následující dvě dekády p?inesly dal?í vyznamné vy??í programovací jazyky. Ke konci padesátych let a v letech ?edesátych se objevil jazyk ALGOL, pomocí kterého ?lo snáze programovat matematické algoritmy. Jazyky COBOL (1960) a BASIC (1964) pak byly pokusem p?izp?sobit syntaxi programování syntaxi p?irozeného jazyka – angli?tině. V sedmdesátych letech byl Niklausem Wirthem navr?en jazyk Pascal a Dennisem Ritchiem (pracujícím v Bellovych laborato?ích) jazyk C. Wirth se pak dále zabyval jazyky Modula-2 a Oberon. Koncem 60. let vznikl první objektovy jazyk, Simula. Pro pot?eby amerického ministerstva obrany za?ali v roce 1978, po ?ty?ech letech sumarizování po?adavk?, Jean Ichbiah a tym z Honeywellu vyvíjet jazyk Ada. Specifikace byla poprvé publikována v roce 1983, oprav se pak do?kala v letech 1995 a 2005/6.

V osmdesátych letech vzrostl zájem o objektově orientované programování. Vznikající jazyky pak vyznávaly imperativní styl, ale p?idávaly podporu objekt?. Během posledních dvou dekád dvacátého století jich vzniklo zna?né mno?ství. V roce 1980 vydalo Xerox Palo Alto Research Center jazyk Smalltalk-80, p?vodně koncipovany Alanem Kayem v roce 1969. P?evzetím koncept? z jiného objektově orientovaného jazyka – Simuly. Bjarne Stroustrup vyvinul jazyk C++, objektově orientovanou verzi známého jazyka C. C++ byl poprvé implementován v roce 1985. Na konci osmdesátych let a v letech devadesátych pak vzniklo velké mno?ství imperativních jazyk? zalo?enych na konceptech objektově orientovaného programování. Z vyznamnych jmenujme Perl (Larry Wall, 1987), Python (Guido van Rossum, 1990), Java (Sun Microsystems, 1994) a C# (Microsoft, 2000).

Jemněji lze imperativní programování rozdělit na t?i skupiny.

Naivní paradigma byvá někdy chápáno jako samostatné paradigma a je?tě ?astěji se mezi paradigmaty programování ani neuvádí. Naivní jazyky se vyzna?ují jakousi v?udyp?ítomnou chaoti?ností, mají obvykle nesystematickou syntaxi i sémantiku. V některych rysech mají podobné vlastnosti jako nestrukturované jazyky. Typickym zástupcem je nap?íklad jazyk BASIC.

Nestrukturované paradigma je velmi blízké assembler?m. Programy jsou lineárními sekvencemi p?íkaz? a skoky jsou v nich realizovány p?íkazem typu ?go to“ – tedy ?jdi na (?ádek)“. V ranych jazycích tohoto stylu byly navíc v?echny ?ádky programu ?íslované a skoky ?lo realizovat pouze uvedením konkrétního ?ísla ?ádku, co? bylo velmi nepraktické. Později se objevily jazyky vyu?ívající tzv. návě?tí, tedy textová ozna?ení míst, kam má program sko?it. Typickymi zástupci byly nap?íklad rané verze jazyk? FORTRAN a COBOL.

Strukturované paradigma. Kv?li neprakti?nosti p?íkazu skoku ?go to“ (ta vězí zejména v tom, ?e struktura programu nedává prakticky ?ádnou informaci o jeho vykonávání, co? velmi komplikuje jeho ladění) vzniklo strukturované paradigma. Jeho hlavním p?ínosem je fakt, ?e nahrazuje p?íkazy skoku pomocí podmíněnych cykl? (?opakuj, dokud platí podmínka“) a jinych strukturovanych instrukcí, které se do sebe vno?ují. Typickymi zástupci jsou jazyky C, Pascal a Ada.

Základní typy p?íkaz?

[editovat | editovat zdroj]

Imperativní programování vyu?ívá t?i základní skupiny p?íkaz?.

P?i?azení obecně provádí operaci s informací ulo?enou v paměti a ukládá vysledek do paměti pro pozděj?í pou?ití. Vy??í programovací jazyky navíc dovolují provádění komplexněj?ích vyraz?, je? mohou sestávat z kombinace aritmetickych operací, programovych funkcí a p?i?azování vyslednych hodnot do paměti.

Cykly dovolují opakovat sekvenci p?íkaz? několikrát za sebou. Po?et opakování pak m??e byt p?esně ur?en nebo se sekvence m??e opakovat do té doby, dokud se nezmění ur?ená podmínka.

P?íkazy pro větvení dovolují provést ur?itou ?ást p?íkaz? jen tehdy, byla-li splněna p?íslu?ná podmínka. V opa?ném p?ípadě je tato ?ást p?esko?ena a pokra?uje se v provádění p?íkaz? bezprost?edně následujících. P?íkazy pro větvení také umo?ňují p?ejít do jiné ?ásti programu, zpravidla voláním podprogramu (funkce, procedury).

Odli?nosti opa?ného p?ístupu

[editovat | editovat zdroj]

V p?ímém kontrastu s imperativním programováním je deklarativní programování, je? je zalo?eno na popisu cíle – p?esny algoritmus provedení specifikuje a? interpret p?íslu?ného jazyka a programátor se jím nezabyvá. Díky tomu lze u?et?it mnoho chyb vznikajících zejména tím, ?e do jedné globální proměnné zapisuje najednou mnoho funkcí a metod. V deklarativním programování se toti? vět?inou místo proměnnych pou?ívají k p?edání hodnot návratové hodnoty funkcí.

Na druhou stranu programátorovi p?i imperativním p?ístupu z?stává mo?nost program ?iroce a p?esně optimalizovat takovym zp?sobem, jaky právě pot?ebuje. P?i p?ístupu deklarativním musí spoléhat na p?eklada?, je? nemusí zvolit algoritmus, ktery by byl v dané chvíli vyhodněj?í. Navíc p?i deklarativním p?ístupu je velmi ?asto vyu?íváno rekurze, co? klade vy??í nároky na programátora. Ten si toti? musí p?edstavit, jak cely program bude fungovat, místo toho, aby viděl, jako u p?ístupu imperativního, p?esně zapsany algoritmus p?ed sebou.

Porovnejme nyní známou matematickou funkci – faktoriál ?ísla n – zapsanou v jazyce imperativním a dvou jazycích deklarativních.

Typickym jazykem imperativního programování je nap?íklad jazyk C:

unsigned int n;
unsigned int i;
unsigned int faktorial = 1;

for (i = 2; i <= n; i++) faktorial *= i;

Protikladem m??e byt deklarativní jazyk pro funkcionální programování Scheme:

(define (faktorial n)
(cond
  [(> 1 n) 1]
  [else (*n (faktorial (- n 1)))]
  )
)

Dal?ím p?ístupem deklarativního programování m??e byt nap?íklad programování logické, jeho? typickym zástupcem je jazyk Prolog:

faktorial(0,1).
faktorial(1,1).
faktorial(N,F):- M is N-1, faktorial(M,F2), F is N*F2.

Imperativní programovací jazyky

[editovat | editovat zdroj]
Podrobněj?í informace naleznete v ?lánku Seznam imperativních programovacích jazyk?.

Imperativní programovací jazyky k vypo?tu vyu?ívají posloupnosti p?íkaz? a ur?ují p?esny postup (algoritmus), jak danou úlohu ?e?it, mohou v?ak pou?ívat i dal?í programovací paradigmata a byt tak za?azeny do více klasifika?ních skupin.

Literatura

[editovat | editovat zdroj]
  • Skoupil, D.; úvod do paradigmat programování. Katedra matematické informatiky, Olomouc, 1994. TR-CS-94-01.
  • Abelson, H. – Sussman, G.J.; Structure and Interpretation of Computer Programs. The MIT Press, Cambridge, Massachusetts, 1985. ISBN 0-262-01153-0.
  • Dybvig, R. K.; The Scheme Programming Language. Prentice Hall, A Simon and Schuster Company, Upper Saddle River, New Jersey, 1996.
  • Felleisen, M. – Findler, R.B. – Flatt, M. – Krishnamurthi, S.; How to Design Programs: An Introduction to Computing and Programming. The MIT Press, Cambridge, Massachusetts, 2001.
  • Manis, V.S. – Little, J.J.; The Schematics of Computation. Prentice Hall, Englewood Cliffs, New Jersey, 1995. ISBN 0-13-834284-9.
  • Springer, G. – Friedman, D.P.; Scheme and the Art of Programming. The MIT Press, Cambridge, Massachusetts, 1994. ISBN 0-262-19288-8.

Související ?lánky

[editovat | editovat zdroj]
二级教授是什么意思 肛门痒痒的是什么原因 什么解酒 为什么不娶养猫的女人 什么花好养
颈椎病有些什么症状 sku是什么意思 湖蓝色配什么颜色好看 高玩是什么意思 喝山楂水有什么好处和坏处
什么食物利尿 今年22岁属什么生肖 晚上适合喝什么茶 什么花是紫色的 奶粉二段和三段有什么区别
积劳成疾的疾是什么意思 三个又读什么 乌鸡放什么炖补气补血 固精缩尿是什么意思 正太是什么意思
2007年属猪五行属什么hcv8jop7ns8r.cn 法克油是什么意思hcv9jop1ns3r.cn 消化不好吃什么药hcv9jop4ns0r.cn 动漫ova是什么意思hcv8jop0ns1r.cn 什么的荷花hcv9jop0ns1r.cn
防空警报是什么hcv8jop2ns5r.cn 白话文是什么意思imcecn.com 肾阴虚吃什么食物补hcv8jop8ns9r.cn 脑梗需要注意什么hcv7jop5ns0r.cn 7月15是什么星座hcv9jop5ns4r.cn
梦见冬瓜是什么意思hcv9jop2ns1r.cn 止血敏又叫什么名beikeqingting.com 胃糜烂吃什么药最好hcv9jop1ns8r.cn 心慌是什么病liaochangning.com 重磅是什么意思hcv8jop1ns7r.cn
洗银首饰用什么清洗hcv8jop4ns9r.cn 为什么会尿频hcv8jop9ns3r.cn 9月3号是什么星座onlinewuye.com 抗体高是什么意思hcv9jop4ns8r.cn 佛口蛇心是什么生肖hcv8jop3ns3r.cn
百度