Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > Общие вопросы Web
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2016, 18:18   #81
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
всплывает тысяча костылей
В моём буквальном понимании это выглядит довольно смешно ...
Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
массив хранит те же данные что и список
Для доступа в массив мне нужен только индекс (число), и я знаю, что по этому индексу там (в массиве) находится; для доступа к элементу списка мне нужна ссылка на этот элемент, в придачу ещё и проверить правильность информации, которую я отковырял.
Единственный недостаток массива - это линейное последовательное хранение в памяти; при больших объемах данных приходится выдумывать те самые костыли, что бы адекватно выделялась память - при использовании динамической ссылочной структуры.

О методах приостановки обработки - это отдельная тема. Всегда при обработке можно вставить проверку чего либо, и по циклическому условию свалить в Sleep. Это наиболее простой и топорный пример паузы потока.
Подпись ? Не, не слышал ...

Последний раз редактировалось OmegaBerkut; 11.09.2016 в 18:20.
OmegaBerkut вне форума Ответить с цитированием
Старый 11.09.2016, 18:24   #82
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Для доступа в массив мне нужен только индекс (число), и я знаю, что по этому индексу там (в массиве) находится; для доступа к элементу списка мне нужна ссылка на этот элемент,
к списку тоже можно обратиться по индексу, я не запрещаю
Цитата:
в придачу ещё и проверить правильность информации, которую я отковырял.
не нужно.
Цитата:
О методах приостановки обработки - это отдельная тема. Всегда при обработке можно вставить проверку чего либо, и по циклическому условию свалить в Sleep. Это наиболее простой и топорный пример паузы потока.
а без потоков никак?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.09.2016, 18:47   #83
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
к списку тоже можно обратиться по индексу
Это к какому такому списку вы обращаетесь по индексу ?
List ? Collection ? Чё там ещё бывает ...

Меня учили следующей конструкции:
Код:
// C#
class List
{
	public List(string newitem) // конструктор может быть любым
	{
		item=newitem;
	}
	public string item;
	public List next,prev; // это как раз таки ссылки на элементы, о которых я говорил
	// тут могут быть любые методы работы с этой структурой
}
Как вы будете обращаться по индексу к такой структуре ?
Если вы верите, что в вашем List<> это не так, как я написал - вы ошибаетесь; там именно такая структура, работа с которой упрощена теми самыми методами, которые я описал в коде (комментарий). Отличие разве что заключается в том, что item в той структуре является типом object, или какой нибудь dynamic - то есть обобщённый тип данных.

Без потоков никак: ибо GUI повесится. (опять же это только пример среды применения). И у нас в любом случае есть главный поток. Если мы будем нагружать его увесистыми вычислениями - он повесится, как и всё остальное приложение.
Подпись ? Не, не слышал ...

Последний раз редактировалось OmegaBerkut; 11.09.2016 в 18:52.
OmegaBerkut вне форума Ответить с цитированием
Старый 11.09.2016, 18:53   #84
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Если вы верите, что в вашем List<> это не так, как я написал - вы ошибаетесь; там именно такая структура, работа с которой упрощена теми самыми методами, которые я описал в коде.
дотнетовский List<> это массив

Цитата:
Это к какому такому списку вы обращаетесь по индексу ?
List ? Collection ? Чё там ещё бывает ...
к первому обращаюсь.
второго класса в дотнете нет.
а вообще я имел в виду переход с подсчетом, небыстро, но ведь работает

в приведенном вами списке (аналог LinkedList<>) как обратиться ко второму элементу? взять первый, и выполнить переход, так же и к третьему и тп.
все просто.
Цитата:
Отличие разве что заключается в том, что item в той структуре является типом object, или какой нибудь dynamic - то есть обобщённый тип данных.
вы не знаете что такое генерики?(я приводил как полный неймспейс, так и запись типа List<> означает открытый генерик)
идите учить тогда основы шарпа, какое ASP.
а то не удивительно что вы о своих коллекциях говорите.
Stack<string> и все
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 11.09.2016 в 18:58.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.09.2016, 19:16   #85
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Пепел Феникса
Второго класса в дотнете нет
https://msdn.microsoft.com/ru-ru/lib...v=vs.110).aspx
Цитата:
Сообщение от Пепел Феникса
небыстро, но ведь работает
Я делаю так, что бы не просто работало, а работало быстро, и при этом память выделяется не последовательно (как в массиве), а динамически (как получится). Отсюда собственные "коллекции" - этому меня учили на предмете, который назывался "Структуры данных и алгоритмы".
Подпись ? Не, не слышал ...

Последний раз редактировалось OmegaBerkut; 11.09.2016 в 19:20.
OmegaBerkut вне форума Ответить с цитированием
Старый 11.09.2016, 19:21   #86
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
, и при этом память выделяется не последовательно (как в массиве), а динамически (как получится).
вы описали связанный список.
и он как раз таки медленнен для случайного доступа.
Цитата:
Я делаю так, что бы не просто работало, но работало быстро
именно поэтому вы предлагали два прохода...

насчет Collection<>, хм, не приходилось на него натыкаться, да и редко он применяется напрямую.
Цитата:
Отсюда собственные "коллекции" - этому меня учили на предмете, который назывался "Структуры данных и алгоритмы".
на вашем предмете лучше бы не забыли рассказать о встроенных классах.
как я уже сказал, тогда не удивительно, почему вам все с нуля реализовывать приходится.
генериков не знаете, встроенных классов тоже не знаете.

как я говорил, вернитесь к основам лучше.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.09.2016, 19:22   #87
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А не заниматься преждевременной оптимизацией (да еще и не оценивая помогла ли она) не учили?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 11.09.2016, 19:33   #88
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Пепел Феникса
Я знаю о существовании этих встроенных коллекций, и мой выбор в пользу собственных - узкая направленность этих собственных коллекций: минимум приведений типов, и прочая кухня. И при этом я не занимаюсь реализацией с нуля: один раз написал, при необходимости применить - подключил файл исходного кода. Узкую направленность решаю расширяя типы данных: грубо говоря, тупо заменяю в блокноте тот же string на тот же double, и сохраняю до следующей необходимости применения. Моё время тратится по минимуму, работа компьютера уменьшается по максимуму.
Alex11223, вопрос оптимизации затрат времени я описал в этом же посте выше.
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 11.09.2016, 19:37   #89
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
Пепел Феникса
Я знаю о существовании этих встроенных коллекций, и мой выбор в пользу собственных - узкая направленность этих собственных коллекций: минимум приведений типов, и прочая кухня. И при этом я не занимаюсь реализацией с нуля: один раз написал, при необходимости применить - подключил файл исходного кода. Узкую направленность решаю расширяя типы данных: грубо говоря, тупо заменяю в блокноте тот же string на тот же double, и сохраняю до следующей необходимости применения. Моё время тратится по минимуму, работа компьютера уменьшается по максимуму.
Alex11223, вопрос оптимизации затрат времени я описал в этом же посте выше.
идите читайте про генерики.
вы просто повторяете никому не нужную работу.

для List<string> нет лишних приведений типов, как и для List<int> и тп.
для обычного ArrayList они есть.

ваши собственные коллекции просто повторяют код, да еще и порою не самые эффективные.
и это вечное..."хм, а тут Insert'а нету, пойду как допишу", ну а прочая кухня отлично будет работать и со стандартными.(если правильно сделать).

конечно, если вам не жалко своего времени абсолютно, то вперед.
для домашних поделок, такое сойдет.(и для кода написал и выкинул тоже)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 11.09.2016 в 19:44.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.09.2016, 19:44   #90
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
идите читайте про генерики.
вы просто повторяете никому не нужную работу.
Да знаю я про их существование, и даже применять умею, но оно мне не интересно; а работу я не повторяю; как уже сказал - один раз сделал и забыл.
А что касается дополнительных методов обработки - они нужны редко, и потратить пять минут времени на их написание в конкретном примере мне не жалко.
За основные методы берутся следующие: добавить (в начало, в середину, в конец), изменить, удалить. Остальное - уже дополнительные методы.
Подпись ? Не, не слышал ...

Последний раз редактировалось OmegaBerkut; 11.09.2016 в 19:47.
OmegaBerkut вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Небольшое веб-приложение на ASP.NET aly-lucenko Фриланс 10 10.01.2014 23:31
Веб-приложение asp.net MVC и с чем его едят nec117 ASP.NET 0 18.04.2011 17:04