Суббота, 16 Ноября 2024, 01:26

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
GudleifrДата: Четверг, 07 Июля 2016, 19:21 | Сообщение # 561 | Тема: Лужу, паяю, ЭВМ починяю...
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
тоже хочется ликбез от этого пациента
Хотите? Для начала выучите наизусть мантры из первого поста. Когда выучите, выберите одну самую непонятную и приходите.

Впрочем, я, ведь, давал Вам ссылки на "что почитать", но Вы не осилили.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Четверг, 07 Июля 2016, 19:17 | Сообщение # 562 | Тема: Книга: Как написать компьютерную игру
почти ветеран
Сейчас нет на сайте
Цитата fastos ()
Неужели на этом древнем языке еще кто-то собирается программировать ? Или так, чисто для себя ?
Есть очень хороший учебник ISZELION'S WIN32 ASM TUTORIAL. Вроде, даже переводы на русский есть. В комплект входят полные проекты программ (впрочем, их нетрудно собрать самому по книжке). Простенький MASM32 прилагается.

Учебник содержит 35 уроков по построению программ для Win32 с честным использованием WIN-API. От MessageBox до MDI и RichEdit.

Тут, два нюанса. Начав с языка ассемблера, очень легко реализовать свой FORTH (или еще какой LISP, SmallTalk или еще что) и дальше писать уже на нем.

Второй: современная программа обычно выглядит практически одинаково, независимо от языка - сплошные вызовы какого-либо API.
Вот, например, кусок работы с OpenGL (из примеров MASM32):

Конечно есть и более крутые ассемблеры, например, 64-разрядные. А есть и один особо извращенный - ilasm - ассемблер для .NET. Этакое ОО псевдомашинное виртуальное страхолюдие, на которое переводятся программы VISUAL STUDIO: C#, VISUAL BASIC, кастрированный C++...


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Четверг, 07 Июля 2016, 18:37 | Сообщение # 563 | Тема: Лужу, паяю, ЭВМ починяю...
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Каждый комментарий про херню я обосновал.
Это Вам так кажется. По дурости.
Тема закрыта. Вы не хотите учиться, я - учить.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Четверг, 07 Июля 2016, 18:12 | Сообщение # 564 | Тема: Лужу, паяю, ЭВМ починяю...
почти ветеран
Сейчас нет на сайте
Думаю из всего,что Вы тут понаписали можно оставить только:
Цитата 1nt3g3r ()
То, что вы написали выше, свидетельствует о вашем непрофесионализме и самоуверенности. Скорей всего, вы не участвовали в разработке сколь-либо большой системы, и именно поэтому пишете херню - в силу непонимания того, о чем рассуждаете.
Это не так. Мой опыт программирования примерно в полтора раза больше вашего возраста. Соответственно увеличьте на порядок сложность задач, с которыми Вы работали, размер проектов, серьезность организаций... В общем, как говорят все старые пердуны: "Я уже забыл больше, чем ты когда-либо узнаешь".

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

Слушать в ответ: "Я считаю это херней, поэтому это херня", это, пардон, называется "сыпать бисер перед свиньями".


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Четверг, 07 Июля 2016, 10:44 | Сообщение # 565 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
вы ни разу её [задачу] не озвучили
Задачу мы, пардон, рассматривали Вашу - про HTML.

Цитата dalikivug ()
какие рогатки? что? зачем?
А зачем Вы мне доказываете свою профпригодность? Шли бы мимо, дальше учить. Так нет же, хочется поскандалить. Значит, чувствуете свою слабость.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Четверг, 07 Июля 2016, 10:41 | Сообщение # 566 | Тема: Лужу, паяю, ЭВМ починяю...
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
дайте четкое определение "настоящего программиста"
Уже давал: "Программистов не бывает. Есть только системщики и пользователи. Системщики бывают математикам или электронщиками, а пользователи - физиками или лириками".

Цитата 1nt3g3r ()
За ваши два правила - откуда вы их взяли?
Из свойств программиста и программы - я же писал выше. См. например Дейкстру "Заметки о структурном программировании" (про размер) и "Дисциплину программирования" (про тесты). Конечно, это достаточно внушительные книги, но судя по общему непониманию, вопрос того заслуживает.

Цитата 1nt3g3r ()
Переписать операционную систему, базу данных, другую большую программу, на которую ушли годы разработки - дешевле, чем починить ее? Почему же бизнес , который считает деньги, так не делает?
Потому, что бизнесу не нужны хорошо работающие программы. Ему нужны рабочие места для быдлокодеров и операционистов. И большой размер означенных программ в большинстве сам является следствием такой починки/разработки. Про выбрасывание программы на середине см. первый том Кнута.

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

Цитата 1nt3g3r ()
Вы можете писать какие угодно тестовые программы, но не отменяет того факта, что в реальных проектах возникают совсем другие сложности.
Это, разумеется, так. И я с самого начала так написал: "Знания/умения программиста никак не могут иметь ценности за пределами конкретной задачи".

Цитата 1nt3g3r ()
Я привел практические примеры в защиту своих аргументов
Извините, не заметил. Более того, у Вас какая-то путаница: то требуете логическое обоснование, то практические примеры. Почему рефакторинг это плохо? Потому, что исправление ошибки занимает больше времени, чем написание заново. Конечно, размеры бедствия могут быть ограничены "одной машиной" (так Дейкстра называл то, что потом стало "модулем"), но, для этого ваша "операционная система" (в широком смысле) должна такие модули поддерживать. Почему кажется, что исправить проще? По двум причинам, во-первых "программистский оптимизм" о котором писал Брукс, во-вторых, искусственность современной сложности программ. 40 тысяч строк на обсчет поведения студента? (весь Unix изначально, если не ошибаюсь, 25 тысяч). А сколько строк у Достоевского ушло на описание Раскольникова? А, ведь,изначально языки программирования разрабатывались для предельно компактной записи вычислений, казалось бы плотность смысла должна быть больше, чем в обычном языке. Ан нет. У меня были случаи, когда размер программ уменьшался после переписывания в 100 и более раз.
Голая математика: 40 тысяч строк. По современным коммерческим нормам после тестирования останется по 30 ошибок на тысячу строк. Из них 2 (по аксиоме) критических. Сколько времени Вы будете их исправлять? По Бруксу - в 6 раз дольше, чем Вы только что ответили. Проще переписать. При этом, гарантирую, Вы не вылезете за 5-10 тысяч. И число ошибок уменьшится пропорционально.
Впрочем, я не понимаю, в чем изначальные претензии. Я написал: "Единственный способ написания хорошей программы - полное выбрасывание исходников, как только они перестают нравиться". Если, Вам ваши 40 тысяч строк нравятся, то зачем их выбрасывать?

Цитата 1nt3g3r ()
Сложность написания большой программы размером в 5 маленьких - совсем не сумма сложности (время + ресурсы) написания 5 маленьких.
Это, как раз, и подтверждает тезис о размере, как единственном критерии сложности. И, заметьте, Вы сами напрямую увязывали сложность Вашей "студенческой" программы с ее размером - 40 тысяч строк.


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

Сообщение отредактировал Gudleifr - Четверг, 07 Июля 2016, 14:02
GudleifrДата: Четверг, 07 Июля 2016, 00:28 | Сообщение # 567 | Тема: Лужу, паяю, ЭВМ починяю...
почти ветеран
Сейчас нет на сайте
1nt3g3r, это все хорошо, но это не имеет отношения к программированию. Это специальные трудности, специально придуманные специальными людьми для обоснования сметы.

Например:
Цитата 1nt3g3r ()
почему починка и адаптация программы (рефакторинг) - это плохо.
Потому что переписать - дешевле. Всякое "улучшение" увеличивает размер следующих "улучшений". "Универсальная" программа (по Бруксу) весит в три раза больше "просто работающей". Следовательно, проще переписать "одну программу", чем проверить и исправить программу "тройного размера".

И, повторю, всегда помните два правила:
1. Сложность программы определяется только ее размером
2. Тесты ничего не доказывают
Это не обсуждается. Первое следует из единственного доступного нам способа анализа - "прорешать в голове", а второе - из свойств Машины Тьюринга.

Виноват, я не ответил подробно на все Ваши вопросы, но их слишком много. Давайте уж по одному.

Добавлено (06 июля 2016, 23:51)
---------------------------------------------
Итак, первое:
Цитата 1nt3g3r ()
Маленький пример - вы написали функцию, которая считает сложную формулу - десятки строк кода, без знания формулы вообще непонятно, что она делает. Написав юнит-тесты для пограничных случаев, и пару тестов в середине интервала, вы знаете - в таких-то пределах функция работает.
Да, кто вам такое сказал?! Для доказательства того, что ф-ия "работает в пределах", Вам нужен мат.анализ, а никак не тесты.

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

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

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

Добавлено (07 июля 2016, 00:10)
---------------------------------------------
Второе:
Цитата 1nt3g3r ()
Определение сложности по размеру текста некорректно. Один и тот же алгоритм можно написать изящно, одной рекурсивной функцией, а можно городить и городить костыли.

Это обычное заблуждение. Количество глюков, порождаемое фрагментом кода пропорционально его размеру. Это как кассирша: "Я ей, дуре молодой, все твержу: не бей "*5", лупи "+ + + +", а зазевается клиент - и еще один плюсик..." Дело в том, что любой замысловатый код можно обвесить предикатами "что было, что стало", и они ничем не хуже предикатов "обычного тупого кода". Но если мы имеем два куска кода, обвешенными предикатами, мы должны эти предикаты честно перемножить. И число этих умножений добавляет гораздо больше сложностей, чем сложность одного из сомножителей.

Более того, в случае разбора чужой программы (особенно в кодах) подобные сложные фрагменты, наоборот, помогают, служа опорными вехами. Так, например, я однажды хакал программу на PASCAL под DOS, а там, каждое действие арифметики было отдельной подпрограммой с использованием сопроцессора. Стоило запомнить, что есть что, и вся механика вычислений стала прозрачной. При разборе чужой BIOS такими вехами служат, например,
вызовы процедур из другого сегмента, реализованные обычно, через хитрые манипуляции со стеком.

Добавлено (07 июля 2016, 00:16)
---------------------------------------------
Третье:
Цитата 1nt3g3r ()
Оправданность столь большого обьем - да потому что у программы много функций. Есть куча абитуриентов, над ними нужно производить разные сложные действия - например, если по какому-то предмету ему поставили 2 балла - он автоматически отчисляется, причиной отчисления пишется - "Двойка за (название предмета)".

Это не аргумент. В подобных случаях проще записывать правила в единообразном виде и просчитывать их единственной процедурой. Работает золотое правило:
1. лучше всего просто вычислить
2. не можешь вычислить - построй таблицу
3. если и таблица не помогает, только тогда пиши if-ы.

Добавлено (07 июля 2016, 00:21)
---------------------------------------------
Четвертое:

Цитата 1nt3g3r ()
.Linux писали не от желания переписать Unix - просто Unix-а не было в открытом доступе, платный он был, Unix.
Это и называется переписать.

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

Добавлено (07 июля 2016, 00:23)
---------------------------------------------
Пятое:

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

Добавлено (07 июля 2016, 00:26)
---------------------------------------------
Шестое:

Цитата 1nt3g3r ()
А если писать лишь тестовые программы, опыта много вы не наберетесь.
Если тесты на одно и то же правило - да. А если это этюды Уэзерелла?

Добавлено (07 июля 2016, 00:28)
---------------------------------------------
Какие-то из этих вопросов явно проходные, но некоторые, видимо, можно обсуждать и далее.


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

Сообщение отредактировал Gudleifr - Четверг, 07 Июля 2016, 00:18
GudleifrДата: Среда, 06 Июля 2016, 23:15 | Сообщение # 568 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата Egoor ()
а вы что из своих разработок можете продемонстрировать?
Только то, что есть на моей страничке.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 20:27 | Сообщение # 569 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
вы просто отобьете желание что-то делать
Если я способен отбить у кого-то желание, значит не желание и было. Вы же нашли у меня "ошибки", значит и желающий найдет способ обойти мои рогатки. Было бы желание...

Цитата 1nt3g3r ()
Я понимаю, почему вы так поступаете - вам не нравится, что он организовывает курсы обучения программистов.
Моя мысль проста и открыта как штопор: языки программирования - лишь инструмент для программирования. Обучать языкам, не обучая программированию - способ производства бездумных рабов.

Цитата 1nt3g3r ()
Не сочтите, что я на вас наезжаю, или хочу как-то уязвить. Моя мысль проста - если человек начал двигаться в правильном направлении, лучше оказать ему поддержку, чем критиковать.
Дык, я не считаю его направление правильным.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 20:20 | Сообщение # 570 | Тема: Лужу, паяю, ЭВМ починяю...
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Нет - если использовать TDD (Unit-тесты), время на отладку сильно сокращается.
Забудьте. Это очередная байка для умственно отсталых. Единственное, что нужно знать о тестах: они ничего не доказывают. Это просто удобная кормушка для около-программистов.

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

Цитата 1nt3g3r ()
Вы можете сказать, что это небольшой проект - но для одного человека 40 тысяч строк кода примерно за полтора года - это не так уж и мало.
Возможно. Но я имел в виду именно самостоятельный сложный проект. В Вашем описании слишком мало информации, чтобы оценить сложность проекта, Вашего участия, оправданности столь большого объема.

Цитата 1nt3g3r ()
Ага, скажите это создателям всех популярных операционных систем(Windows, Linux, etc).
Ага. Например, Linux - это написанный заново, с нуля, Unix. Windows - это, вообще анекдот, его тянут без переписывания от самого DOS, но то и дело заявляют, что "система переписана с нуля", как у порядочных. Хотите поржать - почитайте книги Шульмана (не даром мелкософт столько раз его пытался прижучить).

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

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

Цитата 1nt3g3r ()
Это все хорошо - но кому-то надо писать базы данных, прошивки контроллеров, игры, операционные системы.
И если это будут делать настоящие программисты, жизнь будет лучше.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 19:59 | Сообщение # 571 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата 1nt3g3r ()
Проблема в том, что вы пытаетесь учить человека своим текстом, хотя ваш текст и сам не является правильным.
Вот, когда этот человек до этого дорастет, и будет означать, что он чему-то научился.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 19:46 | Сообщение # 572 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
1nt3g3r, прошу перенести это в соответствующую тему.

Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 19:11 | Сообщение # 573 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
видно?
А словами можно?

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


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 18:50 | Сообщение # 574 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
я написал что не буду читать огромный столб не интересного мне текста
Все не умеющие читать так пишут.

Цитата dalikivug ()
???
Дык, в моих постах классических цитат - выше крыши. Программист бы заметил.

Цитата dalikivug ()
написал, показал
Да, если бы Вы к своему видеоогрызку хоть какой-то текст приложили, я бы Вам первый аплодировал!

Цитата dalikivug ()
не прикрепил портфолио, да это проблема
Путана, что ли? Портфолио прикреплять? Нет, тут мозги нужны.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 18:36 | Сообщение # 575 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата Egoor ()
А ты только желание что-то вообще делать пытаешься отбить.
См. мой первый пост. Где дело-то?


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 18:23 | Сообщение # 576 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Egoor, не... если этих "программистов" поощрять, добром это не кончится. Они плодятся. То что он "готов помогать почти безвозмездно" это не плюс, это приумножение заразы.
Хотите помощи? Откройте томик Уэзерелла и нарисуйте пару этюдов.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 18:13 | Сообщение # 577 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
по какой причине
По причине неумения программировать. Мне, как программисту, с Вами разговаривать не интересно: читать Вы не умеете, основ не знаете, сформулировать мысль (даже объяснить словами сделанное) не способны.

Диагноз выглядит так (цитата из "текстов"): "Человек решает задачу. Человек программирует решение для машины. Человек знает необходимые детали устройства машины. Эти три умения программиста между собой никак не связаны". Вы освоили только третье. Первые два - в жопе.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 17:58 | Сообщение # 578 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
казалось ты адекватный
Ага... Вы тут заявили о готовности брать деньги за обучение. А я намекнул, что обучить Вас обойдется подороже... Какая уж тут адекватность? Голый бизнес.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 17:46 | Сообщение # 579 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
хотелось бы узнать
Да, это приблизило бы Вас к пониманию программирования.


Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
GudleifrДата: Среда, 06 Июля 2016, 17:29 | Сообщение # 580 | Тема: обучение программированию
почти ветеран
Сейчас нет на сайте
Цитата dalikivug ()
при чем тут вообще "Замена машинного труда ручным..."?
Вам предложили язык HTML, позволяющий выдать на экран "что-то". Вы обнаружили, что писать на HTML сложно - много сил уходит на "выравнивание тэгов". Очевидный программистский шаг - пусть кто-то вставляет тэги за Вас - "по смыслу" (уж что-что, а теория форматтеров и макрогенераторов развита чуть более, чем достаточно). Раз есть язык, то на него можно компилировать! Так, нет, Вы обвешиваете вставку тэгов свистелками и перделками, оставляя форматирование HTML все той же ручной операцией.


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

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