![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
NotGonnaGetUs |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 25.2.2005 Где: Москва Репутация: 4 Всего: 12 |
Ты имеешь в виду, что копи-паст это "хорошее" решение?! Т.е. ты просто о чём-то своём решил поговорить и к цитате из моего сообщения реплика не имеет отношения? ) А что мне остаётся делать в ответ на утверждение, что плохой код является хорошим, потому что другого нет?! Согласись, что static'и приводят к плохому коду и всё станет на свои места ![]()
Нутро jvm знает о количестве объктов и классах всё. В Class добавляем native методы "получитьКоличествоОбъектов()/получитьКоличествоВключаяНаследников()", которые из jvm выбирают всю необходимую информацию. Если в каком-то из пользовательских классов потребуется считать подобные величины, нужно будет просто дёрнуть соответсвующий метод у this.getClass(). Никакого мозготраха. Остальные требования легко реализуются на этом базисе. Это сообщение отредактировал(а) NotGonnaGetUs - 8.12.2006, 18:10 |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Я не вижу в этом коде, ничего плохого (ну кроме того, что он тебе не нравиться ![]() Действительно! Что может быть легче для прикладного программиста, чем написать native функцию которая будет лезть в нутро JVM и доставать отуда информацию о количестве объектов (особенно легко это будет делать если надо еще всех наследников считать). Вот тут уж точно не будет никакого мозготраха, потому как кроме парочки маньяков, никто так делать не будет. Кстати, исходники JVM открыты, так что в подтверждение своей теории можешь попробовать реализовать такую функциональность у java.lang.Class ![]() -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
NotGonnaGetUs |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 25.2.2005 Где: Москва Репутация: 4 Всего: 12 |
Я перечислил целую кучу проблем и вопросов возникающих при использовании статик поля. Как решение этих проблем мне было предложенно использовать копи-паст и другие чудесные вещи. Это значит "ничего плохого"? Хорошо, что я работаю не в одной команде с вами 6)
Это шутка юмора такая или ты, действительно, не понимаешь что хорошие и плохие решения существуют не зависимо от того можешь ты их реализовать или нет? Возьми любую прикладную библиотеку. Наверняка, там надётся что-то, что тебе захочется поменять/переделать. Н-р, добавить поле или метод в недостаточно хорошо спроектированный библиотечный класс. То, что никто тебе это не даст этого сделать, не сделает требующий изменений класс автоматически "хорошим". И тем не менее, именно такое заявление ты делаешь сейчас относительно счётчика на статиках. Это сообщение отредактировал(а) NotGonnaGetUs - 11.12.2006, 12:27 |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
|
|||
|
||||
LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Что-то я не припомню среди них, ни одно не решаемой. В основно они сводятся к: "а вот если мне понадобится ...".
В теории да. Но на практике мне нет дела, до хорошего теоретического решения которое нельзя реализовать на практике (а то, что ты предлагаешь на практике не реализуемо). Все таки программирование это не философия ![]() Так что я предпочитаю выбирать среди реализуемых решений, и решение которое работает и не создает кучу проблем я считаю хорошим. Прикладная библиотека вещь заменяемая намного легче, чем основы ЯП. Так что пример не корректен. Насчет счетчика я заявляю что:
Взаимно ![]() -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
NotGonnaGetUs |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 25.2.2005 Где: Москва Репутация: 4 Всего: 12 |
Все проблемы решаемы. Даже если все поля всех классов сделать статическими можно будет решить любую задачу... О копи-пасте, как одном из способов решения всех проблем, я уже услышал... Нельзя написать хороший код, не умея отличать хороший код от плохого (так можно только себя обманывать). Можете называть это умение философией, если угодно. Вся эта философия легко умещается в нескольких шаблонах распределения обязанностей (grasp). Программирование без философии - это просто кодоклепание.
Пример более, чем корректен. Класс Class - это всего лишь часть java api такая же как класс ArrayList.
Ага, и т.к. решение со статиком создаёт кучу проблем, то оно всё-таки не хорошее? ![]() |
||||
|
|||||
Metal_Heart |
|
|||
а почему бы и нет? ![]() ![]() Профиль Группа: Участник Сообщений: 728 Регистрация: 31.3.2005 Где: Москва Репутация: 4 Всего: 12 |
На мой взгляд спор зашел в тупик.
Не тратьте время даром, друзья! Давайте отложим этот вопрос на неопределенный срок, если кому интересно, конечно. -------------------- не стыдно учиться, а стыдно не учиться |
|||
|
||||
LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Ну так чем он плох? Я до сих пор не услышал ни одной конкретной претензии, только обвинения, в том что я не понимаю "что такое хорошо, и что такое плохо".
Ну, да конечно ![]() Как по твоему должен работать ClassLoader без Class? Или ClassLoader тоже опциональная вещь, от которой можно тоже легко отказаться? ![]()
1. Мне оно не создает проблем 2. Логическую цепочку решение со статиком создаёт кучу проблем => оно всё-таки не хорошее ты сам придумал, я такого не писал. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |