Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Регистрация Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.12.2012, 19:26
Dip52 вне форума Посмотреть профиль Отправить личное сообщение для Dip52 Найти все сообщения от Dip52
  № 1  
Ответить с цитированием
Dip52

Регистрация: Aug 2012
Сообщений: 297
По умолчанию Больше количество аргументов и циклов

Здравствуйте. Подскажите, пожалуйста.
Есть класс в котором существует один метод (или функция, конструктор), который имеет почти 100 аргументов (public function nameFun(1,2,3...100). Кроме этого в нём есть ещё и очень много циклов, которые обрабатывают массивы, но по своему (то есть: один цикл делает одно, другой другое (например: изменяет свойства одного элемента, первый цикл, а второй удаляет какие-либо свойства элемента)).
К каким проблемам может привести подобное отношение с моей стороны?


Последний раз редактировалось Dip52; 30.12.2012 в 22:38.
Старый 30.12.2012, 19:58
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 2  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
К большим проблемам.
Попробуйте перефразировать вопрос.
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 30.12.2012, 20:57
Condorcet вне форума Посмотреть профиль Отправить личное сообщение для Condorcet Найти все сообщения от Condorcet
  № 3  
Ответить с цитированием
Condorcet

Регистрация: Mar 2012
Сообщений: 9
Неудобство использования такой функции в программе Может быть имеет смысл использовать для этих целей массив, в который добавлять эти аргументы и передавать этот массив функции?

Старый 30.12.2012, 21:26
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,643
Записей в блоге: 4
Ужас.. 100+ аргументов.
Однозначно код надо менять. Не должно быть такого количества аргументов.
Программе, в принципе, по барабану сколько их там, но для человека этот код очень "трудночитаем"

Старый 30.12.2012, 22:15
Dip52 вне форума Посмотреть профиль Отправить личное сообщение для Dip52 Найти все сообщения от Dip52
  № 5  
Ответить с цитированием
Dip52

Регистрация: Aug 2012
Сообщений: 297
Цитата:
Сообщение от Condorcet Посмотреть сообщение
Неудобство использования такой функции в программе Может быть имеет смысл использовать для этих целей массив, в который добавлять эти аргументы и передавать этот массив функции?
Можно и так. Кроме того, что я написал выше у меня ещё и в том классе стоит около 100 вызовов одной функции, которая обрабатывает полученный аргумент (один из ста) и добавляет его в массив. По виду выглядит всё удобным.
Сначала пробовал с помощью массива реализовать, но программа выдавала неизвестную ошибку. Думал, что из-за массива. Оказалось, что в конце конструктора стояла точка с запятой.
Спасибо, что напомнили про массив. Сейчас придумал как сделать то же самое, но уже с помощью цикла и массива. То есть: отправляется массив в качестве аргумента функции (одного подкласса), далее цикл вызывает другую функцию и в качестве аргумента содержит элемент массива, функция его обрабатывает и добавляет уже в новый массив. Теперь не нужно писать вызов функции так много раз.

Добавлено через 56 секунд
Цитата:
Сообщение от alatar Посмотреть сообщение
К большим проблемам.
Попробуйте перефразировать вопрос.
Идёт ли какая-нибудь нагрузка на процессор (или на что-то другое), если да, то как её можно избежать (если можно).

Добавлено через 1 минуту
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Ужас.. 100+ аргументов.
Однозначно код надо менять. Не должно быть такого количества аргументов.
Программе, в принципе, по барабану сколько их там, но для человека этот код очень "трудночитаем"
Точно по барабану? Ничего не нагружает?

Старый 31.12.2012, 00:05
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 6  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Из вашего описания нельзя сделать вывод о нагрузке. Воспользуйтесь профайлером.
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 31.12.2012, 01:17
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 7  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Извините, что влезаю в тему. Подскажите, где взять бесплатный профайлер.

Старый 31.12.2012, 01:45
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 8  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Для коммерческой разработки?
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 31.12.2012, 09:00
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 9  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Да. "Шахтера" использовать тоже совесть не позволяет. Наверное, надо будет все-таки на что-нибудь раскошелиться.

Старый 31.12.2012, 13:04
TWETTI вне форума Посмотреть профиль Отправить личное сообщение для TWETTI Найти все сообщения от TWETTI
  № 10  
Ответить с цитированием
TWETTI
 
Аватар для TWETTI

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Цитата:
Сообщение от zuxul Посмотреть сообщение
Извините, что влезаю в тему. Подскажите, где взять бесплатный профайлер.
Отличный профайлер от Adobe - Scout

Создать новую тему Ответ Часовой пояс GMT +4, время: 13:38.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:38.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2021, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.