Больше количество аргументов и циклов
Здравствуйте. Подскажите, пожалуйста.
Есть класс в котором существует один метод (или функция, конструктор), который имеет почти 100 аргументов (public function nameFun(1,2,3...100). Кроме этого в нём есть ещё и очень много циклов, которые обрабатывают массивы, но по своему (то есть: один цикл делает одно, другой другое (например: изменяет свойства одного элемента, первый цикл, а второй удаляет какие-либо свойства элемента)). К каким проблемам может привести подобное отношение с моей стороны? |
К большим проблемам.
Попробуйте перефразировать вопрос. |
Неудобство использования такой функции в программе :) Может быть имеет смысл использовать для этих целей массив, в который добавлять эти аргументы и передавать этот массив функции?
|
Ужас.. 100+ аргументов.
Однозначно код надо менять. Не должно быть такого количества аргументов. Программе, в принципе, по барабану сколько их там, но для человека этот код очень "трудночитаем" |
Цитата:
Сначала пробовал с помощью массива реализовать, но программа выдавала неизвестную ошибку. Думал, что из-за массива. Оказалось, что в конце конструктора стояла точка с запятой. Спасибо, что напомнили про массив. Сейчас придумал как сделать то же самое, но уже с помощью цикла и массива. То есть: отправляется массив в качестве аргумента функции (одного подкласса), далее цикл вызывает другую функцию и в качестве аргумента содержит элемент массива, функция его обрабатывает и добавляет уже в новый массив. Теперь не нужно писать вызов функции так много раз. Добавлено через 56 секунд Цитата:
Добавлено через 1 минуту Цитата:
|
Из вашего описания нельзя сделать вывод о нагрузке. Воспользуйтесь профайлером.
|
Извините, что влезаю в тему. Подскажите, где взять бесплатный профайлер.
|
Для коммерческой разработки?
|
Да. "Шахтера" использовать тоже совесть не позволяет. Наверное, надо будет все-таки на что-нибудь раскошелиться.
|
Цитата:
|
Часовой пояс GMT +4, время: 00:14. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.