metaclass: (Default)
[personal profile] metaclass
http://jakobz.livejournal.com/249050.html

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

А то напихают sleep(1000) в качестве средства синхронизации, а потом запускается это все на каком-нибудь убер-быстром или убер-медленном железе и оно все дохнет в необъяснимых мучениях.

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

Date: 2015-03-11 08:24 am (UTC)
From: [identity profile] raydac.livejournal.com
>>"говнокод" - это код без ООП и паттернов

такой код в баллистических ракетах советских ващето

Date: 2015-03-11 08:26 am (UTC)
From: [identity profile] metaclass.livejournal.com
А кулачковых токораспределителей и электрохимических интеграторов там не осталось?:)

Date: 2015-03-11 08:28 am (UTC)
From: [identity profile] raydac.livejournal.com
не знаю, но если так глянуть, то в говнокод попадут и системы "аполлона" что на луну сажали и система управления воздушным движением в штатах.. как все блин жили до ооп и паттернов? человечество было на волоске ))

(no subject)

From: [personal profile] alll - Date: 2015-03-11 08:32 am (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 08:35 am (UTC) - Expand

(no subject)

From: [personal profile] alll - Date: 2015-03-11 09:03 am (UTC) - Expand

(no subject)

From: [identity profile] ext_1684112 - Date: 2015-03-11 12:06 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 12:11 pm (UTC) - Expand

(no subject)

From: [identity profile] ext_1684112 - Date: 2015-03-11 12:15 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 12:24 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2015-03-11 01:35 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 01:41 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2015-03-11 01:46 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 01:55 pm (UTC) - Expand

(no subject)

From: [identity profile] falcrum.livejournal.com - Date: 2015-03-11 06:24 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 06:45 pm (UTC) - Expand

(no subject)

From: [identity profile] rdia.livejournal.com - Date: 2015-03-11 06:44 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 07:06 pm (UTC) - Expand

(no subject)

From: [identity profile] rdia.livejournal.com - Date: 2015-03-11 07:13 pm (UTC) - Expand

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2015-03-11 07:22 pm (UTC) - Expand

(no subject)

From: [identity profile] rdia.livejournal.com - Date: 2015-03-11 08:02 pm (UTC) - Expand

(no subject)

From: [identity profile] bambr77.livejournal.com - Date: 2015-03-11 04:59 pm (UTC) - Expand

Date: 2015-03-11 08:32 am (UTC)
From: [identity profile] vit-r.livejournal.com
Там механические механические гироскопы.

Date: 2015-03-11 10:43 am (UTC)
From: [personal profile] fortness90 (from livejournal.com)
Ребе не псите. ООП в ЧМ не нужно. А паттернов там и так полно . Взгляните на код MITgcm например

Date: 2015-03-11 08:56 am (UTC)
From: [identity profile] dimaby1.livejournal.com
Я не видел код баллистических ракет, но имею на этот счет 2 мысли:
1) на военщину никогда денег не жалели, так что на гражданке такой метод может быть просто не оправдан.
2) ООП и в особенности паттерны появились не на пустом месте. То что хипстеры читают в учебнике банды четырех более старшее поколение усвоило на своих ошибках. Соответственно и книжка банды четырех для них не такое уж и откровение. Так что вполне вероятно что и свои паттерны были в балистических ракетах и свое наколенное ООП

Date: 2015-03-11 09:10 am (UTC)
From: [identity profile] binf.livejournal.com
нахуй ооп. Нет ни одного нормального аргумента в пользу ооп за исключением "нам так проще смоделировать объекты реального мира" или "нам нужно делать ИНКАПСУЛЯЦИЮ а в с++ нет замыканий", сплошная ёбаная гуманитарщина. рфму

(no subject)

From: [identity profile] dimaby1.livejournal.com - Date: 2015-03-11 09:38 am (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 09:54 am (UTC) - Expand

(no subject)

From: [identity profile] tonsky.livejournal.com - Date: 2015-03-11 12:28 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 12:54 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2015-03-11 02:25 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 05:08 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 05:17 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2015-03-11 02:22 pm (UTC) - Expand

(no subject)

From: [identity profile] crastinus.livejournal.com - Date: 2015-03-23 04:58 am (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-23 06:01 am (UTC) - Expand

Date: 2015-03-11 09:17 am (UTC)
From: [identity profile] eternal-leave.livejournal.com
я видел куски кода, которые отвечали за навигацию в Р36. Вернее сказать, перфокарты видел :)

(no subject)

From: [identity profile] dimaby1.livejournal.com - Date: 2015-03-11 09:37 am (UTC) - Expand

(no subject)

From: [identity profile] eternal-leave.livejournal.com - Date: 2015-03-11 10:15 am (UTC) - Expand

(no subject)

From: [identity profile] fhjs9.livejournal.com - Date: 2015-03-11 11:17 am (UTC) - Expand

Date: 2015-03-11 09:04 am (UTC)
From: [identity profile] lekard.livejournal.com
http://mi3ch.livejournal.com/2773220.html

Date: 2015-03-11 08:31 am (UTC)
From: [identity profile] vit-r.livejournal.com
Говнокод - это код одноразовый. Он хорош, пока с ним не надо что-то делать или его для чего-то не используют. Сбацал и забыл.

Date: 2015-03-11 08:45 am (UTC)
From: [identity profile] raydac.livejournal.com
стоимость изменений вобщем показатель

Date: 2015-03-11 09:00 am (UTC)
From: [identity profile] plumqqz.livejournal.com
его проще выкинуть и сделать заново, чем исправлять.
Говнокод - это не код, имманентно говенный, но результат алхимического брака платоновских идей разработчика и заказчика. Ну то есть второй что-то там нарассказывал первому, первый преломил в своем кристалле сознания это понимание как-то по-своему, накалякал, показал второму, второй посмотрел, ужаснусся, внес уточнения, описал их как мог первому, который снова понял в силу своего разумения, что-то написал, показал - и так асимптотически они и приближались.
Так что выкинуть и сделать заново может и можно, кто бы спорил - только вот а)без говнокода это все равно не получится б)при изменении требований см. абзац выше.

PS ООП и паттерны действительно обычно нахер не впились.
PPS Вырожденные случаи с неправильным использованием апи и т.п. рассматривать не будем.

Date: 2015-03-11 09:35 am (UTC)
From: [identity profile] binf.livejournal.com
Вот правильно. Говнокод - это прототип в некоторой степени приближенный к желаемому результату. Работающий синхронно прототип можно рефакторить под многопоточность. В слуае сабжа - ачинхронные монады, Async.Sleep вместо sleep, ReadFileAsync вместо ReadFile. Чтобы рефакторить неработающий (не)говнокод , надо сначала сделать чтобы он работал

Date: 2015-03-11 09:38 am (UTC)
From: [identity profile] metaclass.livejournal.com
Async.Sleep это какое-то феерическое безумие :)

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 09:43 am (UTC) - Expand

Date: 2015-03-11 09:24 am (UTC)
From: [identity profile] binf.livejournal.com
Изначальная идея ООП, как его понимал Алан Кей - динамическая маршрутизация вызовов на основе окружения средствами рантайма. Она не плоха. Проблема в дуракахб задроченных на классы, которые интерпретируют ООП в духе java/c++

Date: 2015-03-11 11:16 am (UTC)
From: [identity profile] fhjs9.livejournal.com
сразу видно что ты задроченный чувак.

Date: 2015-03-11 12:07 pm (UTC)
From: [identity profile] binf.livejournal.com
ебанись мудило. Я не задорчен, это просто ты тупой, не понимаешь простейших терминов

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2015-03-11 01:33 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 01:43 pm (UTC) - Expand

(no subject)

From: [identity profile] 6w5c.livejournal.com - Date: 2015-03-12 10:50 am (UTC) - Expand

(no subject)

From: [identity profile] 6w5c.livejournal.com - Date: 2015-03-12 10:47 am (UTC) - Expand

(no subject)

From: [identity profile] 6w5c.livejournal.com - Date: 2015-03-12 10:49 am (UTC) - Expand

Date: 2015-03-11 12:11 pm (UTC)
From: [identity profile] vinslivins.livejournal.com
просто бля уже надоело объяснять жавистам и шарперам что их обделили,
и теперь нам остаётся только вяло отмахиваться и относится со снисходительностью к братьям нашим меньшим

которые в упор не подозревают, какие вредители делали их платформу

Date: 2015-03-11 12:19 pm (UTC)
From: [identity profile] cross-join.livejournal.com
Изначальная идея ООП - симуляция процессов средствами процедурного и модульного программирования тяжела.
http://arbinada.com/main/node/1376

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 01:11 pm (UTC) - Expand

(no subject)

From: [identity profile] cross-join.livejournal.com - Date: 2015-03-11 01:15 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 01:45 pm (UTC) - Expand

(no subject)

From: [identity profile] cross-join.livejournal.com - Date: 2015-03-11 01:55 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 04:45 pm (UTC) - Expand

(no subject)

From: [identity profile] cross-join.livejournal.com - Date: 2015-03-11 04:56 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 06:26 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-11 08:01 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-12 06:46 am (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-12 01:11 pm (UTC) - Expand

Date: 2015-03-11 03:11 pm (UTC)
From: [identity profile] maxdz.livejournal.com
>это код без ООП и паттернов, а они откровенно нахер не нужны в большинстве случаев

ООП и паттерны - это разные вещи. Можно пользоваться многими паттернами, не пользуясь при этом языком с поддержкой ООП.

ООП сам по себе тоже имеет смысл, т.к. разрабатывать крупные проекты с применением декомпозиции на классы проще, чем с декомпоцизией на функции. Потому, даже в языках без классов (типа, С) большие проекты разрабатываются объектно-ориентированно (структуры, указатели на функции в качестве членов-функций, итп).

Но всякая дополнительная ООП мишура, типа виртуальных функций/полиморфизма, перегруженных функций/операторов - это зло, т.к. сильно снижает читаемость/понимание кода, повышает связанность кода, снижает переносимость.
Edited Date: 2015-03-11 03:17 pm (UTC)

Date: 2015-03-11 07:12 pm (UTC)
From: [identity profile] binf.livejournal.com
бгггг)))))))
особенно мне панравилос про виртуальные функции
где вы такой фееричной хуеты насосались? у 15-и летнего манагера на шышке?
впрочем пейшыте исчо, каращо получаица

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-11 07:20 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 07:32 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-11 07:37 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-11 07:43 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-11 07:56 pm (UTC) - Expand

(no subject)

From: [identity profile] binf.livejournal.com - Date: 2015-03-12 06:56 am (UTC) - Expand

Date: 2015-03-11 07:26 pm (UTC)
From: [identity profile] vinslivins.livejournal.com
с декомпозицией на функции имеет смысл сначала ознакомиться.

"процедурное" программирование даже отдалённо не лежит в этой области, ага.

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-11 07:32 pm (UTC) - Expand

Date: 2015-03-12 08:28 am (UTC)
From: [identity profile] m-krokodilov.livejournal.com
> код без ООП и паттернов, а они откровенно нахер не нужны в большинстве случаев

После таких заявлений в профессиональной (не история, не культура, не языкознание, блин), области совет и вам, и всей вашей тусовочке только один.

ВОН ИЗ ПРОФЕССИИ, КРИВОРУКИЙ ЛАМЕР!

Date: 2015-03-12 10:13 am (UTC)
From: [identity profile] metaclass.livejournal.com
О, адепты ООП что ле?
Такие заявления неплохо подкрепить бы доказательствами для разнообразия.

Date: 2015-03-12 10:30 am (UTC)
From: [identity profile] metaclass.livejournal.com
Так, небольшое уточнение - вы хотите обсудить этот тезис ("ооп не всегда нужно") всерьез, или просто желаете поругаться?
Потому что я могу расписать подробнее, что имелось в виду, но если оно все равно сведется к хохлосрачу, смысла нет :)

(no subject)

From: [identity profile] m-krokodilov.livejournal.com - Date: 2015-03-12 11:07 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2015-03-12 01:07 pm (UTC) - Expand

(no subject)

From: [identity profile] m-krokodilov.livejournal.com - Date: 2015-03-12 03:16 pm (UTC) - Expand

(no subject)

From: [identity profile] artureg.livejournal.com - Date: 2015-03-12 01:11 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2015-03-12 01:30 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-12 01:40 pm (UTC) - Expand

(no subject)

From: [identity profile] m-krokodilov.livejournal.com - Date: 2015-03-12 03:13 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2015-03-12 03:22 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-12 01:13 pm (UTC) - Expand

(no subject)

From: [identity profile] m-krokodilov.livejournal.com - Date: 2015-03-12 03:12 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-12 04:03 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-12 01:23 pm (UTC) - Expand

(no subject)

From: [identity profile] m-krokodilov.livejournal.com - Date: 2015-03-12 03:09 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-12 04:04 pm (UTC) - Expand

(no subject)

From: [identity profile] anonim-legion.livejournal.com - Date: 2015-03-12 07:11 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2015-03-13 01:06 pm (UTC) - Expand

(no subject)

From: [identity profile] berezovsky.livejournal.com - Date: 2015-03-12 04:16 pm (UTC) - Expand

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 6th, 2025 06:44 am
Powered by Dreamwidth Studios