|
Заблокирован
|
|||||||
| 30.06.2011, 13:10 [ТС] | |||||||
|
реализовать. Разницу чувствуете? А теперь представьте себе человека, который в первый раз в жизни видит этот код, и он НЕ ЗНАЕТ заранее, что этот код должен делать.
Собственно, для этого и существуют говорящие имена функций/переменных, комментарии, и тп. Угадайте, что делает ниже приведенный код? if( containerPointers.IsEmpty==1) { ... } А вы сильно напрягались, что бы понять смысл условия?
0
|
|||||||
| 30.06.2011, 13:10 | |
|
Ответы с готовыми решениями:
200
Что означает ptr в строке byte ptr[si],al Ошибка на стадии выполнения ptr = ptr; bad ptr |
|
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
||
| 30.06.2011, 13:40 | ||
|
0
|
||
|
Заблокирован
|
|||
| 30.06.2011, 13:53 [ТС] | |||
|
И пишите простенькие примерчики для студентов, пренебрегая читабельностью, ибо вам пофиг, и банально лень. А вот я, допустим, студентик, который на вас смотрит, и с вас, как с авторитетного гуру, пример берёт. И с деццтва привыкает говнокодить, вместо того, что бы с деццтва привыкать писать красивый, читабельный код, я привыкаю писать 3х-этажную рекурсию без единого комментария, и с односложными именами переменных. И думаю, что так и надо. Что это правильно. Раз так и делают эксперты. А потом, вот из таких студентиков вырастают специалисты, которым уже не получится никак объяснить, что знание языка не всегда делает код очевидным. Знать язык не всегда достаточно, для того, что бы СРАЗУ понимать что делает код. То есть, пренебрегая красотой кода в учебных материалах, вы по сути саботируете новобранцев, прививая им вредные привычки. Добавлено через 8 минут ![]() Тут же ничего не написано о том, что произойдёт, если условие окажется истинным)) Просто проверяет, пуст ли контейнер. Если пуст, что-то делает
0
|
|||
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
||||
| 30.06.2011, 14:10 | ||||
|
0
|
||||
|
1360 / 988 / 119
Регистрация: 30.07.2010
Сообщений: 5,297
|
||
| 30.06.2011, 14:27 | ||
|
Bers, прямо аж смешно. Давайте еще раз - вы считаете тот фрагмент кода нечитабельным - приведите аргументы или ссылки, для меня, как и для многих программистом тот код очевиден, и мы не выполняем по 3 преобразования в мозгу.
Вы многократно плохо отзываетесь о рекурсии, вы вообще приемлете её?
0
|
||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
|||
| 30.06.2011, 14:41 | |||
|
Что же собственно до витиеватых конструкций в програмном коде... Я вот не профессиональный программист, я админ. И со своей админской колоколенки ситуацию себе так представляю: собственно осмысленно учить язык С я начал с попытки читать исходные коды FreeBSD. Время от времени приходилось вносить в них какие-то исправления, выложенные на сайте производителя. Ну и как-то интересно стало... Так вот. Уж чего-чего, а весьма непростых на первый взгляд и требующих осмысления конструкций там не меряно. За то, когда таки поймёшь, что это автор написал, очень часто заодно понимаешь, что более простой и очевидной конструкции сам бы не придумал... Да и встреченное в другой раз "хитрое" выражение времени на осмысление займёт гораздо меньше. При этом "абсолютно нечитабельный для новичков" код каким-то чудом работает. Мало того - я например не знаю сколь-нибудь здоровой альтернативы серверной ОС (ну разве, что при бюджете, как у пентагона). Да и пишет её явно не один человек. Отсюда сам собой напрашивается вывод - может залог успеха не в том, чтобы все писали код, понятный любому чайнику (со свистком или без), а в том, чтоб вкладывать мозг и душу в то, что делаешь? А если кто-то в команде разработчиков не всегда представляет себе работу операторов языка, а при виде простенькой рекурсии впадает в ступор - может лучше избавиться от него, как от ненужного баласта, пусть пока на курсы походит, книжки почитает?..
0
|
|||
|
|
||||
| 30.06.2011, 14:52 | ||||
|
0
|
||||
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
|
| 30.06.2011, 15:14 | |
|
0
|
|
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||||||||||||
| 30.06.2011, 16:16 | ||||||||||||
![]() А у меня как-то всё описание работы в 4 строчки уместилось...
Да и вообще, программа должна быть прежде всего логичной, вот тогда при желании её понять и знании языка, никаких сложностей не вызовет. Если и есть пример говнокода, так это в посте 29... Bers, кстати, интересно, как бы Вы сами свою програмку прокомментировали (постаравшись представить, что в первый раз её видите)?
0
|
||||||||||||
|
|
|||||
| 30.06.2011, 17:04 | |||||
|
Добавлено через 2 минуты И вообще можно по русски писать без запятых и точек. И сказать: если знаешь язык - напряги мозги и вникай
0
|
|||||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||
| 30.06.2011, 17:19 | ||
|
0
|
||
|
Программист
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
|
||
| 30.06.2011, 18:18 | ||
|
Добавлено через 17 минут Толстой не писал "Мама мыла раму" в надежде что его труды будут читать какие-нибудь эфиопы (в нашем контексте - чайники). Он писал для русского народа русским языком, используя всю его красоту и многогранность. Если средства языка позволяют сделать определенное действие красиво и лаконично, то эти средства нужно использовать. (раз пошли по аналогии с русским - вы ведь не пишите каждый раз "и так далее и тому подобное" (чтобы первоклассник понял вас) - вы пишите и т.д. и т.п. - и все вас прекрасно понимают)
0
|
||
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||
| 30.06.2011, 18:24 | ||
|
Программа - по большому счёту мысль автора, нацеленная на решение определённой задачи, описанная на некотором языке программирования. Язык С действительно очень гибкий и красивый язык. Хорошо (не "понятно любому студентику", а продуманно и логично) написанная программа на языке С - это по-настоящему красивая вещь. И всевозможные "хитрые" конструкции, так пугающие новичков, осмысливать совсем не так сложно, было бы желание. А Вы предлагаете на этом мощном и вместе с тем невероятно гибком языке писать те самые "предложения по два-три слова", лишь бы мозг никому не напрягать. Да что же Вы так думать-то не любите? ![]() Добавлено через 51 секунду Пока писал, опередили... И с тем же примером...
0
|
||
|
Программист
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
|
|
| 30.06.2011, 18:31 | |
|
0
|
|
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
|
| 30.06.2011, 18:36 | |
|
0
|
|
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
||||
| 30.06.2011, 18:37 | ||||
|
0
|
||||
|
Программист
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
|
|
| 30.06.2011, 18:42 | |
|
Vourhey, БК-шный Бейсик вам в помощь - там всё просто и понятно. А брать вертолет, чтобы гонять до гастронома - по меньшей мере невежество...
0
|
|
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
|||
| 30.06.2011, 18:46 | |||
|
0
|
|||
| 30.06.2011, 18:46 | |
|
Что такое qword ptr gs Что делает операция PTR Что означает конструкция *(*ptr + j) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|