![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
А знаете что мне не хватает? Переопределение операторов как в С++.
Кто не знает то это возможность призначить метод, который будет вызываться при операциях (-, +, *, /, =) |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
2 года - это перебор, конечно. ДО полного stable ветки 6.1 - да, может быть.
Главное - это полный перевод на utf всего языка и библиотек, множественное наследование с возможностью определения методом вне описания классов и "выкидывание" из языка всего не нужного. Все остальное - второстепенно. Что касается namespace'ов, то мне не понятен такая шумиха вокруг них. PHP это вам не Си, и такой пользый, как в Сишной программе namespace'ы вам не принесут, т.к. в PHP в отличии от Си модули не находятся всегда в, так сказать, открытом состоянии вместе с ядром, как в сях, но все, от мала до велика будут пихать их в свою программу с двумя модулями на 300 строчек чисто из красоты. http://forum.vingrad.ru/forum/topic-130262.html |
|||
|
||||
| WolfON |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 604 Регистрация: 19.7.2004 Репутация: 6 Всего: 8 |
Видимо имелся ввиду Си++. В Си нету пространств имен.
Пространства имен более чем полезны - с их помощью можно делать код более структурированным и как минимум скрывать служебные классы от пользователя, это помогает избавиться от кучи визуального мусора в сложных системах и предотвращает неправильное использование служебных классов. |
|||
|
||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
namespace будут очень полезны. Пристав что не будет больше конфликта через те что твой класс и класс который ты скачал имеют одинаковые имена.
А что касается людей который будут юзать их без причины то это уже их проблема |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
WolfON, да, конечно С++.
WolfON, проекты в PHP не на столько сложно структурированы, чтобы была в этом проблема, естественно при грамотной проектировке. У вас в разработке одновременно НЕТ такого большого числа классов, чтобы была проблема их структуризации...
Поверь, этих кинфликтов будет только больше... Одинаковые имена? У меня все модули имеют одинаковое имя - Modul и в скрипте подключается всегда ОДИН из них. Ну на кой черт мне тут namespace'ы?? Для PHP в реальности, для 99,9% это - излишество... |
|||
|
||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
Хорошо. Вот тебе пример. У меня есть класс MySQL и класс MySQL_Query. Я должен называться таким именем потому что у меня могут быть еще БД и у них будет свой генератор.
А что касается больших проектов то у меня они все + фреймворк + посторонние классы |
|||
|
||||
| Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
Шумиха вокруг них оправдана... иногда не очень удобно когда _всё_ находиться в глобальной области видимости, зачем мне всё многобразие функций РНР если нуждаюсь всего в функциях работы с массива, строками и MySQL? namespaces решат этот вопрос (при условии, что разработчики все встроенные функции распихают по пространствам имён).. По поводу тех кто будет пихать... пусть пихают... |
|||
|
||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
О, если б они зделали виртуальную машіну как у asp.net
|
|||
|
||||
| vasac |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1060 Регистрация: 4.5.2006 Репутация: 8 Всего: 36 |
Опять из области, PHP это недоязык, а web-программирование не программирование. От многих это слышал, но от Mal Hack'а не ожидал
Одновременно в разработке, это как?
Что же, для этого конкретного случая пространства имен ощутимой пользы не принесут ;) Так же в глобальной области не нужны вспомагательные классы (а их, например, при буквальной реализации паттернов бывает очень не мало). А так изолировали их в NS и не путаются под ногами. |
||||
|
|||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
+1 namespace даст очень много прстора. Ранше даже ты (Mal Hack) использовал классы для отделения пространства имен, или я ошибаюсь |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Diesel Draft, для эти вещей множественное наследование используется и PDO;)
Fally, на сколько я понимаю, поправьте со ссылками, если не так, что речь идет о программерских namespace'aх, а не тех, которые зашиты в ядре, как в C# например. vasac, причем тут недоязык, разве я говорил что PHP - недоязык? Нет. Кады язык - для своих задач. Задачи, которые зачастую решает PHP не на столько сложны, чтобы была проблема в их тонко структуризации... Или теперь все для гостевой пишут офигительный модуль на ООП на 2500 строк и я отстал от жизни?
Это как в C#, отчасти так, о чни говорил Fally. Я же имею ввиду несколько другое. Глобальное пространство имен - не панацея... Вообще, глобалку исползовать не является хорошим тоном.. Классы я использовал, чтобы да, сделать некоторое разбиение кода по его функционалу, но это несколько другое. Классы и объекты млужат для упрощения программирования с точки зрения функционала, namespace'ы с точки зрения струкруты. Это сообщение отредактировал(а) Mal Hack - 25.7.2007, 17:11 |
|||
|
||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
1. В РНР6 вроде б хотят отказаться от глобальных переменных
2. namespace это только +, не нравится - не используй |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Да, мне нравится такая фраза (о пункте 2).. Оставю без комментариев. Скажу лишь одно, что на каждый плюс есть свой минус ;) Понявший это, поймет очень многое...
|
|||
|
||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: 1 Всего: 5 |
Все же это namespace , как здорово
Это сообщение отредактировал(а) Diesel Draft - 25.7.2007, 17:32 |
|||
|
||||
| Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
Да Вы правы. Мне конечно хотелось бы, чтобы разработчики разместили функции по различным пространствам, но это уже их дело. Кстати патч закоммитил наш соотечественник, вот ссылка http://news.php.net/php.zend-engine.cvs/5894. А здесь на русском немного рассказано о самих namespace'ах в РНР (для тех кому лень читать исходники на С и в конце на английском про использование NS): http://forum.agiledev.ru/index.php?t=msg&a...mp;start=0& |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |