Войти
ФлеймФорумОбщее

Стыдно ли брать чужие идеи, исходники... (3 стр)

Страницы: 1 2 3 4 Следующая »
#30
0:13, 18 июня 2004

Eliace
Ты что, да я просто утрирую - ШУЧУ. Или вы все тут... всерьйоз? Да и тема, мне кажется, глуповатая.


#31
0:14, 18 июня 2004

То то и оно что пишете для СВОЕГО удовольствия. Значит вам нравится ПИСАТЬ а не копировать. Но вот если НАДО что-то написать (не для удовольсвия - для зарплаты) то тут уже подумаешь - сидеть самому по 18 часов пару недель или найти что-то аналогичное и подрихтовать под свою задачу. Можно много рассуждать, мол "мой код будет лучше" особенно если пока его написал всего-ничего. Но как правило публикуются далеко не худшие программы и написанны они далеко не худшими программистами. Лучше учиться на чужом опыте чем пытаться все повторить самому.

#32
0:23, 18 июня 2004

san
Я что, спорю? ГОМОсапиенс - умное и очень хитрое существо. Просто нужно доверять своим инкстинтам. Я чужие исходники пересматриваю не потому, что там БАГ какой-нибудь страшный. Я просто смотрю, может че лишнее там - вдруг можно сделать полегче?..

#33
0:33, 18 июня 2004

Sergei
И никогда не бывало, что смотришь и видишь, что написано лучше чем у тебя? (это не переход на личности - просто у меня так было).

#34
0:35, 18 июня 2004

Sergei
Это правильный подход. Сначала заставь программу работать а потом убери все лишнее. Кстати слово hack в английском языке имеет значение "резать", "нарубать". Первое значение слова хакер было как раз в том, что это программист который составляет свою программу из кусков других программ т.е. "нарезает" . Так что ты просто хакер, ничего плохого я в этом не вижу. Сам такой же...

#35
0:37, 18 июня 2004

Eliace
>И никогда не бывало, что смотришь и видишь, что написано лучше чем у тебя?
Дык, почти всегда так (лучше, чем у меня). Просто, может так быть, что стиль другой - не вписывается.

P.S. А ты что, не смотришь даже, а сразу бросаешь в проэкт?

#36
0:40, 18 июня 2004

Если лицензия подходит, то лучше брать уже написанное. Code Reuse, типа.
На перле вообще ничего сами не пишут, всё тащут из CPAN.

#37
1:43, 18 июня 2004

San
>>а потом решил, что неплохо было бы и нормали с макса грузить, и написал ASE-loader
т.е. в .3ds нет нормалей ??? (тоже написал ASE-loader,собираюсь занятся .3ds , но если без нормалей то не уверен)
По теме - в принципе согласен с постом 22 . Элементарно - глубокие познания сразу во многих областях - это миф . Есть вещи , для написания которох самостоятельно нужно слишком много времени и специфических знаний ( свои 3D Api , Sound Api ... ) но stl к ним не относится ))) .

P.S. имхо самое нудное на свете - разбираться в чужом коде.

#38
1:46, 18 июня 2004

Есть еще такая проблема. C++ - нетривиальный язык, и я часто вижу в чужом коде кучу проблем, типа утечек памяти, чтение мусорного указателя, выход за пределы массива, применение delete к тому, что было выделено с помощью new(или есть пока еще перцы, что используют malloc, бррррррр), невызывание деструктора, использование неинициализированных объктов, buffer overflow, format string, применение delete к const char *= "blabla", забыть закрыть файл, и тп, что может обрушить мою программу. Еще в чужом коде часто используют O(N^2) алгоритмы, вместо того, что бы использовать O(NlogN) или O(N)
Типичный пример - прибавление по одному символу в самодельный неправильный контейнер.

Так что я стараюсь использовать только качественный, проверенный код :)

#39
2:01, 18 июня 2004

_Winnie
И где же ты такой страшный "чужой код" береш? Неужто кто то публикует в Интенете такие страсти?
Тогда опубликуй свой "правильный" код а мы все на него будем смотреть и учиться. А может даже в свой проект вставим...

P.S.
А чем тебе не нравится "применение delete к тому, что было выделено с помощью new"?
И как же ты такой объект удаляешь, поделись опытом!

#40
2:35, 18 июня 2004

>>или есть пока еще перцы, что используют malloc, бррррррр)
чем так страшен malloc , оператор new случаем не один из этих перцев.

#41
6:35, 18 июня 2004

San
>например юзаю STL, WinApi, но квадратный корень, синус, и т.п. я считаю своими процедурами.
М-да, чел. Немного не в ту сторону тебя занесло, однако. У меня уже время фанатизма по асму уже прошло (хотя тоже остались ф-ии все математичеких функций: возвед. в степень логарифмы, триг. ф-ии и т.д.) И тебе не жалко потраченного времени?? Лично мне жалко и я, почти уверен, что смогу убедить тебя в том же.
Ну как, напр., выглядит твоя ф-я вычисления синуса. Думаю примерно так:
float mySin(float a) {_asm fld a    _asm fsin}
А вот пример кода на C++ и то, что генерит компилятор:

double t;
.....
	double r=.23;
	t=sin(r)+cos(r);
.....
;;; 	double r=.23;
;;; 	t=sin(r)+cos(r);

        fld       QWORD PTR _2il0floatpacket.5                  ;254.8
        fsincos                                                 ;254.8
        faddp     st(1), st                                     ;254.15
        fstp      QWORD PTR ?t@@3NA                             ;254.2
(t здесь глобальная переменная, иначе IntelC память под неё в стеке резервировать не будет - работает исключительно с регистрами, по возможности, конечно)
В таком свете, я, думаю понятно, что писать все эти ф-ии на асме - пустая трата времени (как своего, так и процессорного - тот же IntelC, конечно, ф-ию mySin() проинлайнит, но получится все-равно хуже, медленнее, то бишь)
А вот STL, как раз, наоборот, можно и "переписать". Ну не все, конечно, а пару-тройку классов: дин. массив, список и т.д.
#42
10:20, 18 июня 2004

_Winnie
Уж очень СТРАШШШНЫЕ ты нам вещи поведал. А по поводу new/delete - как иначе? Если тебе не нравится стандартный delete, то переопредели его.

#43
20:36, 18 июня 2004

Sergei
я имел ввиду, new[] / delete.

Eliace
>И никогда не бывало, что смотришь и видишь, что написано лучше чем у тебя?
Конечно, бывало. И довольно часто. Но часто бывает и наооборот. Недавно нашел не-exception safe кусочек в WTL :) Хотя в целом билиотека классная.

#44
21:05, 18 июня 2004

slSolo
Может в 3ds нормали есть, но я их не нашел.
tav
В моих прогах я вычисляю синус по своему в основном в критичных циклах, а они у меня упрощены до безумия... :)
Т.е. конструкция типа t=sin(r)+cos(r); там не встречается, а если и встретится, то я свою ошибку увижу в дизасме.
Вообще, я пишу на асме в тех случаях, когда меня не устраивает результат работы компилятора, то есть сначала пишу на C++, компилю, смотрю дизасм, и соображаю - могу ли сделать быстрее/короче...

Страницы: 1 2 3 4 Следующая »
ФлеймФорумОбщее

Тема в архиве.