Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вызов функции с большим числом аргументов, огптимальное форматирование кода 
:(
    Опции темы
GAM
Дата 7.6.2008, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 3.3.2005

Репутация: нет
Всего: 2



В коде присутствует вызов функции с 15-20 аргументами.
Можно ли это оптимизировать, да и надо ли?
PM MAIL   Вверх
Feldmarschall
Дата 7.6.2008, 08:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



можно.
врядли.
PM   Вверх
skyboy
Дата 7.6.2008, 08:31 (ссылка) |  (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



оптимизировать можно много чего. вообще. но в данном случае, видимо, возможно "оптимизировать" только синтаксис вызова.
возможно, было бы лучше сгруппировать аргументы в один/нескольлко ассоциативных массивов. сгруппировать по смыслу; по тому, как соотносятся аргументы в рамках твоей модели. в конечном итоге, подобный подход("somefunc(array('name'=> 'haha', 'count'=> 5)/*1*/, array('name'=> 'hoho', 'count'=> 15)/*2*/)" нагяднее "somefunc('haha',5,'hoho',15)") не оптимизирует что либо, но, в общем случае, повышает читаемость и понимаемость программы, что ускорит разработку(кто из вас обращается к справке, чтоб узнать, в каком порядке в strstr передаются аргументы? я вот - почти каждый рах :() и ускорит отладку(если в подпрограмме встречается $first_account['name'], проще понять, с чем работаем в противовес "$first_account_name" или безликому "$name_41"). В любом случае, тут совет такой же, как и с наименованием переменных: структурируй параметры так, чтоб упростить понимание работы функции себе и другим.
PM MAIL   Вверх
GAM
Дата 7.6.2008, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 3.3.2005

Репутация: нет
Всего: 2



Да, надо будет группировать, а то такая путанница происходит, что сложно визуально понять.
Спасибо.
PM MAIL   Вверх
skyboy
Дата 7.6.2008, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(GAM @  7.6.2008,  07:45 Найти цитируемый пост)
Спасибо

т.е. вопрос все-таки был о форматировании кода, а не об оптимизации?

PM MAIL   Вверх
GAM
Дата 7.6.2008, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 3.3.2005

Репутация: нет
Всего: 2



Ну так если собрать кучу аргументов и разбить их по массивам, то это тоже оптимизация, в своём роде.
smile
Просто другого пути именно оптимизации вызова функции не вижу.
Буду пробовать через массив. И, скорее всего, многомерный, чтобы в 1 массиве все перематры передать.
Я только начинаю вникать, поэтому могу некоторые термины не верно истолковывать, извините, если запутал 8)



Это сообщение отредактировал(а) GAM - 7.6.2008, 11:58
PM MAIL   Вверх
Feldmarschall
Дата 7.6.2008, 12:06 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



можно ещё совсем все переделать. чтобы таких функций и вовсе не требовалось.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0534 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.