На ваш взгляд, стоит ли использовать массивы ( многомерные ) для внутри-структурной передачи данных между компонентами в довольно приличном количестве? Этично ли в данном случае использовать объекты и классы (являющимися уже упакованными в них пакетами данных). У меня есть своя точка зрения и представленные варианты решений удобно использовать, но с точки зрения философии - что этичнее и правильнее будет в таком случае с вашей точки зрения?
Программирование не про философию и этику. Оно про логику. Что логичнее использовать в конкретно взятом случае, то и нужно использовать. Логичность определяется тем, насколько удобно потом оперировать передаваемыми данными, насколько нас удовлетворяет скорость работы. Порой, например, выгоднее использовать не многомерные массивы, а большой одномерный, где навигация осуществляется не через натуральные индексы, а через синтетические. К примеру, такая структура: [0][0]=a [1][0]=b [1][1]=c [2][0]=d Удобнее для понимания и использования. Но такая: [0*0]=a [1*0]=b [1*1]=c [2*0]=d Будет расходовать в 2 с небольшим(из-за особенностей массивов конкретно в пыхе) раза меньше памяти. И работать, точно не скажу на сколько, но быстрее. Когда-то замеры проводил, сейчас не нарою, а заново делать лень. Но по такой структуре сложнее бегать. Ей не так удобно оперировать. Использование объектов-коллекций (которых, по умолчанию, в пыхе нет, как и структур, если не брать в рассчет spl-костылики лалала), тоже вариант. Что использовать? Что хотите. И как хотите. Это инженерия. Отталкиваться нужно от задачи, а не от мировоззрения и философии.
Да, внутри одного процесса. --- Я не зря упомянул этику подхода. При разработке языка, еще в самом начале, человек подходил к этому как к инструменту который будет удобен и будет решать свои проблемы, а значит с самого начала имел свою точку зрения, свою философию, религия тут совершенно не причем вообще. Я заметил что с возрастом разработчики более четко определяют концепцию и следуют стандартам, в отличии от новичков. Сидел общался с профессором технических наук, посмотрел код, так для него там каждая скобка важна и то где она должна стоять, т.е очень граммотный подход, в данном случае экономия ресурсов и удобство важны, я услышал вашу точку зрения. Дело в том, что когда разработчик доходит до определенного уровня, он понимает что не хочет писать абы что, для него важна максимальная эффективность, граммотный подход, следование стандартам хотя бы по минимуму, из чего в дальнейшем вытекает возможность поддержки кода, рефакторинга и понимание его другими разработчиками.
тогда вообще плевать как и что. не, либо экономия ресурсов и массивы гонять, либо удобство и объекты гонять. В массивы лучше не пихать код, хотя это тоже возможно, к сожалению. Вобщем, если это просто данные, то удобнее массивы.
Как со всем вышесказанным связано слово "этика"? Причем тут вообще это? Программирование - это точный предмет. А не эзотерико-абстрактный, где можно растекаться мыслью по древу. Что этичнее, использовать крестовую отвертку или плоскую? С точки зрения философии, разумеется.
Этика )) Круто, мне нравится. Этично ли писать такой код, который другие программисты будут разбирать с матами? А что, очень в тему.