Пятница, 29 Марта 2024, 14:55

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Форум игроделов » Программирование » Общие обсуждения программистов » Лужу, паяю, ЭВМ починяю...
Лужу, паяю, ЭВМ починяю...
1nt3g3rДата: Четверг, 07 Июля 2016, 19:55 | Сообщение # 21
почетный гость
Сейчас нет на сайте
Gudleifr, не называйте ваши выдумки мантрами. Это всего лишь ваши выдумки, вы не можете обосновать их правильность.

Нужно писать такие игры, чтобы в них было интересно играть самому
GudleifrДата: Четверг, 07 Июля 2016, 19:57 | Сообщение # 22
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
вы не можете обосновать их правильность.
Могу. Более того, я их не только обосновал, но и примеры привел. Только не в коня корм.
А "мантры", мне кажется очень удачным словом, ведь на Вашем уровне технологии мои технологии должны казаться магией.
Как в том анекдоте: "Шаман, однако..."


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.

Сообщение отредактировал Gudleifr - Четверг, 07 Июля 2016, 19:59
1nt3g3rДата: Четверг, 07 Июля 2016, 20:06 | Сообщение # 23
почетный гость
Сейчас нет на сайте
Gudleifr, нет, вы их не обосновали. Еще раз - если вы что-то назвали аксиомой - докажите это. Вы можете понять такую простую мысль? Это не слишком сложно для вас? Вы понимаете, о чем вас просят?

Нужно писать такие игры, чтобы в них было интересно играть самому
GudleifrДата: Четверг, 07 Июля 2016, 20:16 | Сообщение # 24
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Вы понимаете, о чем вас просят?
На все Ваши первоначальные вопросы дал ответы, с примерами, пояснениями и ссылкой на литературу. Найдите хоть один Ваш вопрос без ответа. Только не десять сразу, а то они, видимо у Вас в голове путаются, и Вы их пропускаете. Один, самый безответный.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
1nt3g3rДата: Четверг, 07 Июля 2016, 20:24 | Сообщение # 25
почетный гость
Сейчас нет на сайте
Gudleifr, самый первый вопрос, на который я до сих пор не получил ответа:

Цитата
Цитата 1nt3g3r ()
Нет - если использовать TDD (Unit-тесты), время на отладку сильно сокращается.


Вы написали:
Цитата
Забудьте. Это очередная байка для умственно отсталых. Единственное, что нужно знать о тестах: они ничего не доказывают. Это просто удобная кормушка для около-программистов.


Так поясните же мне, почему это байка для умственно отсталых? Поясните, приведите пример, доказывающий вашу мысль, и если есть литература (конкретно книга, автор, и желательно глава) - дайте литературу.


Нужно писать такие игры, чтобы в них было интересно играть самому
GudleifrДата: Четверг, 07 Июля 2016, 20:35 | Сообщение # 26
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Так поясните же мне, почему это байка для умственно отсталых? Поясните, приведите пример, доказывающий вашу мысль, и если есть литература (конкретно книга, автор, и желательно глава) - дайте литературу.

Цитирую сообщение #7:
Цитата Gudleifr ()
Да, кто вам такое сказал?! Для доказательства того, что ф-ия "работает в пределах", Вам нужен мат.анализ, а никак не тесты.

Байка:
Моего преподавателя по "тряпкам", в те времена, когда он был еще молодым специалистом, напрягли проблемой: транзистор в многократно протестированной схеме вылетал. Тот, как умная Маша, честно выписал полный дифур транзистора (занимающий примерно тетрадную страницу), подставил числа и честно начал считать, ставя точки на миллиметровке. И, действительно, обнаружился пик, лежащий далеко за пределами ТТХ. Заводские посмотрели на студента как на бога и преклонили колена. Но тот сам испортил впечатление: спросил, а почему тесты-то проходили? Тут-то его и чморнули: мол, только чайник не знает, что тестовые схемы паяются на прибалтийских транзисторах, а серийные - на ташкентских.

Опыт:
В любой протестированной программе есть ошибки четырех типов:
1. дыры, оставленные программистами для будущего исправления.
2. ошибки и бессмысленности, исправляемые компилятором или ОС или просто избыточные.
3. ошибки, которые могут вылезти при неудачном стечении обстоятельств.
4. явные несоответствия ТЗ.
Пример

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

Последняя "аксиома" - это один из Законов Мэрфи.

Про литературу (сообщение #13):
Цитата Gudleifr ()
См. например Дейкстру <...> "Дисциплину программирования" (про тесты).


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
1nt3g3rДата: Четверг, 07 Июля 2016, 21:01 | Сообщение # 27
почетный гость
Сейчас нет на сайте
Gudleifr, есть моменты:

Цитата
Тут-то его и чморнули: мол, только чайник не знает, что тестовые схемы паяются на прибалтийских транзисторах, а серийные - на ташкентских.

Я скажу вам по секрету, что в компьютере байты в разных программах одинаковые. Если вы возьмете протестированный класс, и вставите его в другую программу, он будет работать точно так же - байты они одинаковые везде, что в Прибалтике, что в Ташкенте. Другое дело, что тестирование не может покрыть ВСЕ ситуации - тестирование покрывает только то, что вы протестировали. Если вы напишете функцию для решения квадратных уравнений, и протестируете ее в определенном диапазоне - она точно будет работать в этом диапазоне. Ваш пример с транзисторами показывает лишь то, что на заводе занимались херней - финальные платы собирали из других деталей, из тех, которые не тестировались. То есть, ваш пример - это эталонный образец, как НЕ НАДО делать.

Одна из фишек TDD - тесты пишутся на реальные случаи. Конкретно с вашим заводом - тестовые платы собирались бы с теми транзисторами, что пойдут в релиз, а не с левыми какими-то. Если у вас сломалась функция на каких-то данных - значит, пишем тест на эти данные, и правим функцию, чтобы она этот тест прошла. Это гарантирует, что в будущем такая ошибка уже не случится. К сожалению, я не могу вам детально расписать все преимущества TDD. Если вы заинтересуетесь, рекомендую вам книгу Кент Бек, Разработка через TDD - маленькая книга, которая немного приоткроет вам прелести TDD.

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


Вас не смущает, что это Законы Мэрфи - это не более, чем шутка? Если вы и пишете такие шутки, выдавая их за аксиомы, не поленитесь указать в скобках (Закон Мэрфи). Иначе много кто (я, например) воспринимаю это серьезно - хотя это не более чем шутка.
Цитата

Даже в случае полностью детерминированных машин полезность тестирования программ оказывается сомнительной. Тестирование программы может вполне эффективно служить для демонстрации наличия в ней ошибок, но, к сожалению, непригодно для доказательства их остуствия

Это слова Дейкстры из книги. Можно сделать два выводы. 1) Как минимум, не будет тех ошибок, на которые укажут тесты. 2) В реальной жизни вам не нужно 100% доказательство отсутствия ошибок (экономически нецелесобразно заниматься таким доказательством), а достаточно 95%(цифра взята с потолка). Тестирование и дает вам эти 95% - остальные 5% будут дописываться по мере поступления баг-репортов от юзеров.


Нужно писать такие игры, чтобы в них было интересно играть самому
GudleifrДата: Четверг, 07 Июля 2016, 21:21 | Сообщение # 28
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Я скажу вам по секрету, что в компьютере байты в разных программах одинаковые. Если вы возьмете протестированный класс, и вставите его в другую программу, он будет работать точно так же
Совершенно не обязательно. Как Вы сами писали, 5 маленьких программ, это не одна большая. Разные программы могут использовать этот класс по-разному. Другие классы могут на него влиять. Даже настройки компилятора могут быть разными. Я однажды имел дело с программой, которая ровно на 15-й секунде душила сама себя сообщениями между вполне себе отлаженными компонентами.

Цитата 1nt3g3r ()
Вас не смущает, что это Законы Мэрфи - это не более, чем шутка?
Т.к. я не видел еще ни одной неэлементарной программы без критических ошибок, то склонен этому правилу верить. Законы Мэрфи - это не шутка, это напоминание о "трении войны".

Цитата 1nt3g3r ()
Можно сделать два выводы. 1) Как минимум, не будет тех ошибок, на которые укажут тесты. 2) В реальной жизни вам не нужно 100% доказательство отсутствия ошибок (экономически нецелесобразно заниматься таким доказательством), а достаточно 95%(цифра взята с потолка).
Если Вы подставите реальные цифры, то они будут далеко не такими радужными (меньше 1 ошибки на 1000 строк - это только рекламный трюк *). Но, не суть. Я написал: "Тестирование программы не может доказать отсутствия в ней ошибок". Дейкстра: "Тестирование программы ... к сожалению, непригодно для доказательства их остуствия". В чем Вы меня уличили?

*) История этой байки восходит к давней "утечке из Пентагона" - мол, в программах управления пуском МБР не более 5-и ошибок на 1000 строк. С тех пор рекламщики упражняются - 3 ошибки, 1 ошибка. Но независимые оценки дают 30-35. Мой опыт говорит о том же. См. например, пример по ссылке.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
1nt3g3rДата: Четверг, 07 Июля 2016, 21:42 | Сообщение # 29
почетный гость
Сейчас нет на сайте
Цитата
Совершенно не обязательно. Как Вы сами писали, 5 маленьких программ, это не одна большая. Разные программы могут использовать этот класс по-разному. Другие классы могут на него влиять. Даже настройки компилятора могут быть разными. Я однажды имел дело с программой, которая ровно на 15-й секунде душила сама себя сообщениями между вполне себе отлаженными компонентами.


Разные программы могут использовать по разному - так для этого и тестируют, чтобы как не используй, а получался правильный результат.

Другие классы могут на него влиять - идея TDD, что тестируются маленькие блоки - функции, классы - чтобы другие классы не могли влияють и оставлять в неопределенном состоянии. Впрочем, я вас понимаю в этом моменте - на стыке взаимодействия оттестированых блоков могут возникать проблемы. Я согласен, это так - но это уже проблемы более высокого, интеграционного уровня. Для этого есть другой вид тестов - интеграционные. Снова-таки, 100% без ошибок не будет, но большинство ерунды отловится. И легче отлаживать взаимодействие между отлаженными блоками, чем взаимодействие между неотлаженными блоками, вы так не находите?

Я однажды имел дело с программой, которая ровно на 15-й секунде душила сама себя сообщениями между вполне себе отлаженными компонентами. - как минимум, отдельные компоненты работают правильно - значит, искать ошибку было бы проще - на этих же стыках.

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

Цитата
Т.к. я не видел еще ни одной неэлементарной программы без критических ошибок, то склонен этому правилу верить. Законы Мэрфи - это не шутка, это напоминание о "трении войны".

Есть закон Мэрфи, что бутерброд падает маслом вниз. А статистические исследования показывают, что падает он 50\50 маслом вниз. Законы Мэрфи - это не более, чем шутка - люди склонны подмечать плохое, а хорошее принимать за само собой разумеющееся.

Цитата
Тестирование программы не может доказать отсутствия в ней ошибок

Я уже писал - все ошибки вы не выловите. Но бОльшую часть - вполне. Я ни в чем вас не уличаю - я лишь уточняю, что тесты дают возможность отловить большинство критичных ошибок еще на старте.


Нужно писать такие игры, чтобы в них было интересно играть самому

Сообщение отредактировал 1nt3g3r - Четверг, 07 Июля 2016, 21:43
GudleifrДата: Четверг, 07 Июля 2016, 22:12 | Сообщение # 30
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
...
Я написал, что "Тестирование программы не может доказать отсутствия в ней ошибок"? Я привел обоснование? Я привел пример? Я привел ссылку на литературу? Так где Ваше: "Простите, дяденька, засранца!"?

А то, что Ваше: "Но бОльшую часть - вполне",- это обычная присказка быдлокодера, это уже совсем другой вопрос. Если хотите, заведите под это отдельную тему. Или возьмите любую свою протестированную программу и пройдитесь по полному циклу РД НДВ (легко гуглится). Но к данной теме это не относится.

Добавлено (07 июля 2016, 22:12)
---------------------------------------------

Цитата 1nt3g3r ()
Еще раз - если вы что-то назвали аксиомой - докажите это.
Кстати, это тоже дурость. Аксиомы - общепринятые истины, не нуждающиеся в доказательстве.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
1nt3g3rДата: Четверг, 07 Июля 2016, 22:14 | Сообщение # 31
почетный гость
Сейчас нет на сайте
Gudleifr,

Цитата
Я написал, что "Тестирование программы не может доказать отсутствия в ней ошибок"? Я привел обоснование? Я привел пример? Я привел ссылку на литературу?

Да - здесь вы сделали именно так, как нужно - обоснование, пример, литература. Здесь вопросов нет.

Цитата
Так где Ваше: "Простите, дяденька, засранца!"?

Вы со скрипом обосновали лишь один пункт ваших многочисленных раздумий. Если мы пройдемся по всему, что вы писали, боюсь, что вы будете вынуждены просить прощения у всего форума.

Цитата
А то, что Ваше: "Но бОльшую часть - вполне",- это обычная присказка быдлокодера, это уже совсем другой вопрос.

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


Нужно писать такие игры, чтобы в них было интересно играть самому
GudleifrДата: Четверг, 07 Июля 2016, 22:24 | Сообщение # 32
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Вы со скрипом обосновали лишь один пункт ваших многочисленных раздумий.
Заметьте ДО того, как Вы облыжно обвинили меня в обратном. Я же специально дал Вам право "свободного выстрела".

Цитата 1nt3g3r ()
Если мы пройдемся по всему, что вы писали...
Хотите еще попробовать?

Цитата 1nt3g3r ()
Вы не понимаете сути коммерческой разработки...
А разве в названии темы есть что-то про коммерческую разработку? Мы говорим о программировании, а не о быдлокодинге. Заранее повтряю цитату Дейкстры:
Цитата
Наконец, эта задача позволяет нам рассеять некоторые сомнения, вызванные тем, что коммерческие программы являются чем-то особенным. (Если уж говорить о чем-то особом, то, скорее, о характере коммерческих программистов...).


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
1nt3g3rДата: Четверг, 07 Июля 2016, 22:48 | Сообщение # 33
почетный гость
Сейчас нет на сайте
Цитата
Цитата 1nt3g3r ()
Вы со скрипом обосновали лишь один пункт ваших многочисленных раздумий.
Заметьте ДО того, как Вы облыжно обвинили меня в обратном. Я же специально дал Вам право "свободного выстрела".

Я вас ни в чем не обвиняю - я прошу, чтобы вы обосновывали то, что вы пишете. Заметьте, ПОСЛЕ того, как вы привели аргументы, вопросы к вам отпали.

Цитата
Цитата 1nt3g3r ()
Если мы пройдемся по всему, что вы писали...
Хотите еще попробовать?

Возможно. Пока дам вам время отдохнуть.

Цитата
А разве в названии темы есть что-то про коммерческую разработку? Мы говорим о программировании, а не о быдлокодинге. Заранее повтряю цитату Дейкстры:
Цитата
Наконец, эта задача позволяет нам рассеять некоторые сомнения, вызванные тем, что коммерческие программы являются чем-то особенным. (Если уж говорить о чем-то особом, то, скорее, о характере коммерческих программистов...).

Есть и коммерческие программы высочайшего класса. Так что нельзя говорить про коммерческую разработку, как о чем-то плохом. Называть людей, которые пишут коммерческие продукты, быдлокодерами, а их занятие - быдлокодингом - это немного высокомерно, не находите?


Нужно писать такие игры, чтобы в них было интересно играть самому
SaiteiДата: Четверг, 07 Июля 2016, 22:49 | Сообщение # 34
старожил
Сейчас нет на сайте
Gudleifr, убедительная просьба проявлять больше уважения в сторону своих собеседников.
Такое количество непрямых оскорблений я могу воспринять как и прямое, а это грозит ментальным банхаммером.
GudleifrДата: Четверг, 07 Июля 2016, 22:57 | Сообщение # 35
почти ветеран
Сейчас нет на сайте
Saitei, а Вы лучше посчитайте их прямые оскорбления...

Добавлено (07 июля 2016, 22:57)
---------------------------------------------

Цитата 1nt3g3r ()
Заметьте, ПОСЛЕ того, как вы привели аргументы, вопросы к вам отпали.
Брехня. Ответы были даны в постах #7 и #13, а обвинения в неаргументированности - вплоть до #23.

Цитата 1nt3g3r ()
Называть людей, которые пишут коммерческие продукты, быдлокодерами, а их занятие - быдлокодингом - это немного высокомерно, не находите?
Это немного неуместно в этой теме. Тем более, что обвиняли их в быдлокодинге Вы: "лучше программа с ошибками сегодня, чем программа без ошибок через год".


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
SaiteiДата: Четверг, 07 Июля 2016, 23:03 | Сообщение # 36
старожил
Сейчас нет на сайте
Gudleifr, полагаю, это цепная реакция.
Впрочем, предупреждение
Цитата Saitei ()
Такое количество непрямых оскорблений я могу воспринять как и прямое, а это грозит ментальным банхаммером.

касается всех.
1nt3g3rДата: Четверг, 07 Июля 2016, 23:33 | Сообщение # 37
почетный гость
Сейчас нет на сайте
Gudleifr,

Цитата
Цитата 1nt3g3r ()
Заметьте, ПОСЛЕ того, как вы привели аргументы, вопросы к вам отпали.
Брехня. Ответы были даны в постах #7 и #13, а обвинения в неаргументированности - вплоть до #23.

Нет - после того, как вы аргументировали свою мысль, я написал, что вопросов по данному пункту больше не имею.
Цитата

Цитата 1nt3g3r ()
Называть людей, которые пишут коммерческие продукты, быдлокодерами, а их занятие - быдлокодингом - это немного высокомерно, не находите?
Это немного неуместно в этой теме. Тем более, что обвиняли их в быдлокодинге Вы: "лучше программа с ошибками сегодня, чем программа без ошибок через год".

Про быдлокодинг начали вы. Я не обвиняю никого в быдлокодинге (но и не поощряю его). Моя мысль проста - программ нужно много, а идеальных программистов мало. Поэтому приходится мириться с этой ситуацией, и допускать существование неидеальных программ. Но поскольку слишком много ошибок это недопустимо - придумали инструменты, чтобы улучшить ситуацию - в том числе и TDD.


Нужно писать такие игры, чтобы в них было интересно играть самому
GudleifrДата: Четверг, 07 Июля 2016, 23:45 | Сообщение # 38
почти ветеран
Сейчас нет на сайте
Цитата Gudleifr ()
Ответы были даны в постах #7 и #13, а обвинения в неаргументированности - вплоть до #23.

Цитата 1nt3g3r ()
Нет
Что "Нет"? Посты в наличии.

Цитата 1nt3g3r ()
Я не обвиняю никого в быдлокодинге
Да обвиняйте на здоровье! Только не надо их проблемы путать с программированием.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
ShortKedrДата: Пятница, 08 Июля 2016, 00:28 | Сообщение # 39
Renword Studio
Сейчас нет на сайте
Хе-хе, катаюсь под столом от этих споров :D

Впрочем как я и говорил выше, человеку бесполезно что-то доказывать, лучше пойти заняться чем-нибудь, как сделал я когда-то. Я просто остановил спор, потому что мне плевать, что там и кто называет мантрами. Я знаю то, как это на практике есть и было, а фигню нести про то что нет программистов и прочий бред нефиг, тс.

1nt3g3r, берите пример с людей что выше писали (Ordan, dalikivug), народ просто улыбнулся и пошёл дальше своими делами заниматься =)


Сообщение отредактировал ShortKedr - Пятница, 08 Июля 2016, 00:28
GudleifrДата: Пятница, 08 Июля 2016, 00:31 | Сообщение # 40
почти ветеран
Сейчас нет на сайте
Цитата ShortKedr ()
1nt3g3r, берите пример с людей что выше писали (Ordan, dalikivug), народ просто улыбнулся и пошёл дальше своими делами заниматься =)

Он теперь на каждой странице будет отмечаться:
Цитата к/ф "Небесный тихоход"
- Ну теперь-то все?
- Ты, между прочим, ей скажи, что я... не обратил никакого внимания. Никакого! Понял?


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Форум игроделов » Программирование » Общие обсуждения программистов » Лужу, паяю, ЭВМ починяю...
  • Страница 2 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг