Википедия

Динамическая типизация

Динами́ческая типиза́ция — приём, используемый в языках программирования и языках спецификации, при котором переменная связывается с типом в момент присваивания значения, а не в момент объявления переменной. Таким образом, в различных участках программы одна и та же переменная может принимать значения разных типов. Примеры языков с динамической типизацией — Smalltalk, Python, Objective-C, Ruby, PHP, Perl, JavaScript, Лисп.

Динамическая типизация упрощает написание программ для работы с меняющимся окружением, при работе с данными переменных типов; при этом отсутствие информации о типе на этапе компиляции повышает вероятность ошибок в исполняемых модулях.

Также, динамическая типизация вредит производительности программ, так как отсутствие информации о типе не позволяет компилятору эффективно оптимизировать код. То же самое относится и к средам разработки, им становится сложнее анализировать то, как код будет исполняться, заранее предупреждать о возможных ошибках, производить автодополнение.

Производительность снижается и из-за необходимости проверять тип переменных во время операций, даже при обычном математическом сложении требуется проверить, что обе переменные хранят значение подходящего типа, затем получить само значение переменной через указатель на неё и только потом производить необходимую операцию.

В некоторых языках со слабой динамической типизацией стоит проблема сравнения величин. Так, например, PHP имеет операции сравнения «==», «!=» и «===», «!==», где вторая пара операций сравнивает и значения, и типы переменных. Операция «===» даёт результат true только при полном совпадении, в отличие от «==», который считает верным такое выражение: (1=="1"). Однако эта проблема не динамической типизации в целом, а конкретных языков программирования.

Является ключевым средством для реализации динамических языков программирования. Противоположный приём — статическая типизация.

Примечания

  1. Хотя сам метод получения значения переменной может отличаться в разных языках программирования

Ссылки

  • Sitepoint: Introduction to Static and Dynamic Typing (англ.)
  • Лекция: Типизация

Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер, Информация о Динамическая типизация, Что такое Динамическая типизация? Что означает Динамическая типизация?

Dinami cheskaya tipiza ciya priyom ispolzuemyj v yazykah programmirovaniya i yazykah specifikacii pri kotorom peremennaya svyazyvaetsya s tipom v moment prisvaivaniya znacheniya a ne v moment obyavleniya peremennoj Takim obrazom v razlichnyh uchastkah programmy odna i ta zhe peremennaya mozhet prinimat znacheniya raznyh tipov Primery yazykov s dinamicheskoj tipizaciej Smalltalk Python Objective C Ruby PHP Perl JavaScript Lisp Dinamicheskaya tipizaciya uproshaet napisanie programm dlya raboty s menyayushimsya okruzheniem pri rabote s dannymi peremennyh tipov pri etom otsutstvie informacii o tipe na etape kompilyacii povyshaet veroyatnost oshibok v ispolnyaemyh modulyah Takzhe dinamicheskaya tipizaciya vredit proizvoditelnosti programm tak kak otsutstvie informacii o tipe ne pozvolyaet kompilyatoru effektivno optimizirovat kod To zhe samoe otnositsya i k sredam razrabotki im stanovitsya slozhnee analizirovat to kak kod budet ispolnyatsya zaranee preduprezhdat o vozmozhnyh oshibkah proizvodit avtodopolnenie Proizvoditelnost snizhaetsya i iz za neobhodimosti proveryat tip peremennyh vo vremya operacij dazhe pri obychnom matematicheskom slozhenii trebuetsya proverit chto obe peremennye hranyat znachenie podhodyashego tipa zatem poluchit samo znachenie peremennoj cherez ukazatel na neyo i tolko potom proizvodit neobhodimuyu operaciyu V nekotoryh yazykah so slaboj dinamicheskoj tipizaciej stoit problema sravneniya velichin Tak naprimer PHP imeet operacii sravneniya i gde vtoraya para operacij sravnivaet i znacheniya i tipy peremennyh Operaciya dayot rezultat true tolko pri polnom sovpadenii v otlichie ot kotoryj schitaet vernym takoe vyrazhenie 1 1 Odnako eta problema ne dinamicheskoj tipizacii v celom a konkretnyh yazykov programmirovaniya Yavlyaetsya klyuchevym sredstvom dlya realizacii dinamicheskih yazykov programmirovaniya Protivopolozhnyj priyom staticheskaya tipizaciya PrimechaniyaHotya sam metod polucheniya znacheniya peremennoj mozhet otlichatsya v raznyh yazykah programmirovaniyaSsylkiSitepoint Introduction to Static and Dynamic Typing angl Lekciya TipizaciyaU etoj stati est neskolko problem pomogite ih ispravit V state est spisok istochnikov no ne hvataet snosok Bez snosok slozhno opredelit iz kakogo istochnika vzyato kazhdoe otdelnoe utverzhdenie Vy mozhete uluchshit statyu prostaviv snoski na istochniki podtverzhdayushie informaciyu Svedeniya bez snosok mogut byt udaleny 10 marta 2010 V state ne hvataet ssylok na istochniki sm rekomendacii po poisku Informaciya dolzhna byt proveryaema inache ona mozhet byt udalena Vy mozhete otredaktirovat statyu dobaviv ssylki na avtoritetnye istochniki v vide snosok 17 avgusta 2012 Eta statya slishkom korotkaya Pozhalujsta dopolnite eyo eshyo hotya by neskolkimi predlozheniyami i uberite eto soobshenie Esli statya ostanetsya nedopisannoj ona mozhet byt vystavlena k udaleniyu Dlya ukazaniya na prodolzhayushuyusya rabotu nad statyoj ispolzujte shablon subst Redaktiruyu Administratoram i podvodyashim itogi eta pometka ostavlena 2020 03 23 Prosba ochen korotkie zagotovki statej ranee chem cherez dva dnya posle sozdaniya ne udalyat 23 marta 2020 Pozhalujsta posle ispravleniya problemy isklyuchite eyo iz spiska parametrov Posle ustraneniya vseh nedostatkov etot shablon mozhet byt udalyon lyubym uchastnikom

NiNa.Az

NiNa.Az - Абсолютно бесплатная система, которая делится для вас информацией и контентом 24 часа в сутки.
Взгляните
Закрыто