|
Модераторы: LSD |
|
||
|
qweqwe |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 55 Регистрация: 31.1.2007 Репутация: нет Всего: 0 |
Православие Головного Мозга? Добавлено через 1 минуту и 57 секунд
зачем? мысль я понял, она не оригинальна, во первых, а во вторых, нестрогими могут быть и статические ЯП, а не только PHP |
|||
|
||||
k0rvin |
|
||||
Опытный Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
так значительно лучше
-----
что это? Добавлено через 1 минуту и 25 секунд
ну так он и написал "обычно, за исключением всяких С" =) -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||
|
|||||
qweqwe |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 55 Регистрация: 31.1.2007 Репутация: нет Всего: 0 |
||||
|
||||
k0rvin |
|
||||
Опытный Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
эээ... а типы тут при чём? или имеется в виду для конструкций вида (хз как в пхп, пишу в С-подобном синтаксисе):
? -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||
|
|||||
nerezus |
|
|||
Вселенский отказник Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
Именно поэтому для PHP есть нормальные IDE, а для python - нету и не будет. |
|||
|
||||
k0rvin |
|
||||
Опытный Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
откуда такая уверенность? может гвидо разрешит питонистам что-то типа того же, что есть в пхп для этого. ну и да, что в пхп, что в пейтоне объектная модель -- уг =) -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||
|
|||||
nerezus |
|
||||||
Вселенский отказник Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
PHP копирует джаву. На вскидку нету видимости пакетов, анонимных классов, перегрузки сравнения. Остальное вполне себе скопировано и переделано в динамику с кучей добавлений. |
||||||
|
|||||||
NLspieler |
|
||||||
Опытный Профиль Группа: Участник Сообщений: 619 Регистрация: 13.10.2008 Где: Берлин Репутация: нет Всего: 19 |
У php не строгая типизация?
В общем то это так, но нельзя забывать, что в php есть несколько операторов сравнения, а именно не только == , != , но и === , !== которые требуют строгое совпадение типа.
Таким образом, при необходимости можно пользоваться любым видом типизации. И при некотором опыте, никаких ошибок от этого больше не возникает. Правда, в php можно производить операции над разными типами данных, например
Возможно это и может привести к ошибках, но в моей практике никогда такого не было. С другой стороны это очень удобно. Можно сразу, без преобразования типов, приступить к вычислениям. Обращаемся к скрипту по get-ссылке test.php?a=10&b=0.5
Не смотря на то, что оба значения представляют собой строки, можно тут же использовать их в математических вычислениях. Удобно. Это сообщение отредактировал(а) NLspieler - 26.4.2010, 08:12 |
||||||
|
|||||||
k0rvin |
|
||||||
Опытный Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
Это факт, лучшие объектные модели в SmallTalk и CLOS Добавлено @ 12:30
ты не прав, это нифига не строгая типизация, при строгой === должно выбрасывать исключение на этапе компиляции при статической или в рантайме при динамической типизации Это сообщение отредактировал(а) k0rvin - 26.4.2010, 12:31 -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||
|
|||||||
neutrino |
|
||||
Gothic soul Профиль Группа: Модератор Сообщений: 3041 Регистрация: 25.3.2002 Где: Верхняя Галилея, Кармиэль Репутация: нет Всего: 62 |
Панацеи нет. Плохо везде использовать нестрогую типизацию. Но иногда она спасает делая код легкочитаемым => легкоподдерживаемым.
-------------------- The truth comes from within ... Покойся с миром, Vit |
||||
|
|||||
qweqwe |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 55 Регистрация: 31.1.2007 Репутация: нет Всего: 0 |
neutrino, вывод типов <> нестрогой типизации
|
|||
|
||||
Sentox |
|
|||
как то так Профиль Группа: Участник Сообщений: 392 Регистрация: 27.1.2009 Где: Зимбабве Репутация: нет Всего: 7 |
k0rvin,
Это один из способов типизации, да же мануал по этому говорит что проверка происходит на тип. Так же в PHP есть is_... int,string,array и instanceof что позволяет вручную делать проверку на типы. |
|||
|
||||
k0rvin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
Конечно спасибо, капитан, но что ты этим хотел сказать? -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
Sentox |
|
||||||||
как то так Профиль Группа: Участник Сообщений: 392 Регистрация: 27.1.2009 Где: Зимбабве Репутация: нет Всего: 7 |
Пожалуйста. Сказать хотел что оператор эквивалента проверяет и типы значений, что само по себе говорит о строгости типизации именно этого оператора, потому что кто то говорил
. И почему в обязательном порядке должно быть именно так
Всё остально привёл просто в информативном поле. Это сообщение отредактировал(а) Sentox - 30.5.2012, 14:19 |
||||||||
|
|||||||||
Logo |
|
|||
Опытный Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
Хороший принцип нестрогой типизации есть в perl/perl6(все еще разрабатываемом)
Там в для базовых типов используется свой тип оператора. Таким образом происходит приведение типов, и программист всегда явно указывает, что он имел ввиду. Так, операции с числами/строками в perl
в perl5 из коробки вообще нет способов определить, является ли переменная строкой, или числом, да и это в подавляющем большинстве случаев и не нужно, т.к. операция определяется оператором. в perl6 пошли еще дальше, теперь многие операторы, допускающие двойное использование, начинаются с соответствующего символа. + числовой контекст ~ строковый контекст (~ теперь оператор конкатенации) ! логический контекст так, +| побитовое или для чисел, а ~| побитовое или для строк В результате операторов в perl 6 довольно много http://glyphic.s3.amazonaws.com/ozone/mark...A4%20300dpi.jpg |
|||
|
||||
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |