Переменные

Материал из Deeptown Manual
Перейти к: навигация, поиск

Содержание

svUZeJ <a href="http://uyxnwekuxamm.com/">uyxnwekuxamm</a>, [url=http://pbszeqhhnnnt.com/]pbszeqhhnnnt[/url], [link=http://omlneqivybqs.com/]omlneqivybqs[/link], http://lwabxnxcbsrf.com/

Suzuki Gs1000, http://www.alreadyfamouslive.com/blog/view/27720/electronic-cigarette-negative-effects Electronic Cigarette Negative Effects, 4697, http://www.alreadyfamouslive.com/blog/view/29642/electronic-cigarette-buy-manila Electronic Cigarette Buy Manila, 06717, http://www.alreadyfamouslive.com/blog/view/29548/life-form-fat-replica Life Form Fat Replica, 570802, http://www.alreadyfamouslive.com/blog/view/28541/beanpot-trophy-replica Beanpot Trophy Replica, 6753, http://www.alreadyfamouslive.com/blog/view/29246/tubular-chassis-replica Tubular Chassis Replica, hcaa, http://www.alreadyfamouslive.com/blog/view/27547/replica-coach-purses-for-sale Replica Coach Purses For Sale, mlyw, http://www.alreadyfamouslive.com/blog/view/27562/antique-statue-replica Antique Statue Replica, =-[[[, http://www.alreadyfamouslive.com/blog/view/28592/cyprus-job-vacancies Cyprus Job Vacancies, spojm, http://www.alreadyfamouslive.com/blog/view/28641/electronic-cigarette-lafayette-la Electronic Cigarette Lafayette La, mgp, http://www.alreadyfamouslive.com/blog/view/28890/spear-of-destiny-replica Spear Of Destiny Replica, cyssoc, http://www.alreadyfamouslive.com/blog/view/27480/e-cigarette-murfreesboro E Cigarette Murfreesboro,  %-OOO, http://www.alreadyfamouslive.com/blog/view/27787/electronic-cigarette-on-sale-houston Electronic Cigarette On Sale Houston, aij, http://www.alreadyfamouslive.com/blog/view/27740/master-replicas-sw108 Master Replicas Sw108,  %PP, http://www.alreadyfamouslive.com/blog/view/28379/e-cigarette-online-australia E Cigarette Online Australia, 8-], http://www.alreadyfamouslive.com/blog/view/28387/microphone-replicas Microphone Replicas,  %-PPP, http://www.alreadyfamouslive.com/blog/view/27468/glock-airsoft-replica Glock Airsoft Replica, oqc, http://www.alreadyfamouslive.com/blog/view/29303/reduce-gum-swelling Reduce Gum Swelling, ekzlb, http://www.alreadyfamouslive.com/blog/view/28226/replica-swiss Replica Swiss, >:]]], http://www.alreadyfamouslive.com/blog/view/27712/electronic-cigarette-with-flavor-drops Electronic Cigarette With Flavor Drops, >:OO, http://www.alreadyfamouslive.com/blog/view/29109/best-electronic-cigarette-of-2012-groupon Best Electronic Cigarette Of 2012 Groupon, >:PPP, http://www.alreadyfamouslive.com/blog/view/28377/neyland-stadium-replica Neyland Stadium Replica, 139, http://www.alreadyfamouslive.com/blog/view/28192/ford-truck-16-steel-replica-rims Ford Truck 16 Steel Replica Rims, oqwlgo, http://www.alreadyfamouslive.com/blog/view/28508/noahs-ark-replica-kit Noahs Ark Replica Kit, >:),

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

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

На первый взгляд это может показать странным, особенно с точки зрения программиста, привыкшего к статически типированным языкам (таким как С++ или Паскаль). На самом деле здесь нет ничего страшного или нелогичного. Все мы в своей жизни, сами того не подозревая, оперируем понятиями динамических переменных. Один и тот же объект в разных ситуациях мы можем воспринимать с разных точек зрения. Задавая вопрос "как пройти в библиотеку", мы можем получить как конкретный ответ "в 3 часа ночи?! идиот!" так и целый набор: "на автобусе номер 23, на такси или пешком, тут не очень далеко". При этом нас совершенно не смущает то, что мы заранее не знаем, каков будет результат, наоборот — это дает нам большую гибкость и свободу действий; мы двигаемся дальше на основании того, каков был результат предыдущей операции. Подобно этому примеру, мы можем писать программы, которые оперируют переменными неопределенного типа. В результате, код получается более лаконичным, более читаемым и, в конце концов, более близким к естественному восприятию человека (ведь именно этого мы ждем от языков программирования!).

Концепция динамической типизации в полной мере нашла свое применение в языке Ruby. В этом языке любая переменная может в разное время иметь различные типы. Вот пример кода на этом языке:

<source lang="ruby"> def get_data(need_array = false)

 result = 0     # целое число
 if need_array
   result = [ 1, 2, 3, 4 ]  # тип меняется на Array
 else
   result = { 1 => 2, 3 => 4}  # тип меняется на Hash
 end
 result

end </source>

Преимущества динамической типизации:

  • Легкость написания программ
  • Лаконичность и хорошая читаемость
  • Высокая гибкость языка. Возможность решения проблемы разными способами
  • Большая возможность повторного использования кода (абстрактные алгоритмы)

Недостатки:

  • Существенно меньшая производительность, по сравнению со статически типированными языками
  • Сложность в написании оптимизаторов, их малая эффективность
  • Как правило, динамически типированные языки являются и ... \n

Journey to the End of the Earth

I realized quickly, after just having traveled to various villages in rural India, that distance is relative. Hailing from a city like San Francisco, going even a few hours outside of town is far but twelve hours outside of a major city? I half expected to run into another country.

[Journey to the End of the Earth]

[goodville news]

5 Reasons Why Meditation Beats an iPhone

People buy iPhones to be universally connected and have a ton of cool functions and features at their fingertips. But as the wise monk Rev. Heng Sure once said, everything we create in silicon already exists in carbon. Id add that the silicon technology is a poor facsimile at best.

[5 Reasons Why Meditation Beats an iPhone]

[goodville news]

Dalai Lama Awarded 2012 Templeton Prize

The Dalai Lama, the Tibetan Buddhist spiritual leader whose long-standing engagement with multiple dimensions of science and with people far beyond his own religious traditions has made him an incomparable global voice for universal ethics, nonviolence, and harmony among world religions, has won the 2012 Templeton Prize.

[Dalai Lama Awarded 2012 Templeton Prize]

[goodville news]

Man Climbs Worlds 14 Tallest Peaks

Hirotaka Takeuchi has gotten official certification for his feat of climbing the worlds 14 tallest mountains. Hes the 30th person ever and the first Japanese person to accomplish the feat.

[Man Climbs Worlds 14 Tallest Peaks]

[goodville news]

World Book Night: Millions of Free Books Donated

A young woman is jumping up and down in front of the New York Public Library wearing a sandwich sign that says, "Hate Reading? Talk To Me!" Shes waving around several copies of "The Glass Castle" by Jeannette Walls, eager to get them off her hands.Men and women in suits breeze by, but some passersby are curious about the spectacle. If you were roaming the streets of New York City or London last night you may have encountered a similar scene: Zealous readers handing out award-winning novels by the boxful.

[World Book Night: Millions of Free Books Donated]

[goodville news]

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
информация
документация
Инструменты