«phpClub» — архив тем ("тредов"), посвящённых изучению PHP и веб-технологий.
Аноним 2019/01/21 03:24:09  №1331384 1
Как новичок должен относиться к людям, которые пишут, что ООП это антипаттерн и он должен самоискорениться из мира проектирования програмного обеспечения?
Ответы: >>1331389 >>1331397
Аноним 2019/01/21 03:50:06  №1331389 2
>>1331384
Никак. У этого молодца просто работы нет, вот и путается под ногами.
Ответы: >>1331392
Аноним 2019/01/21 04:03:35  №1331392 3
>>1331389
Хочешь сказать, что ООП и паттерны это самое важное в программировании, верх мастерства разработчика?
Ответы: >>1331394
Аноним 2019/01/21 04:05:38  №1331394 4
>>1331392
Тащемта, разговор не про программирование, а про проектирование ПО.
Ответы: >>1331396
Аноним 2019/01/21 04:06:57  №1331396 5
>>1331394
Хорошо, хочешь сказать ООП и паттерны это верх мастерства проектирования ПО?
Ответы: >>1331402
Аноним 2019/01/21 04:14:07  №1331397 6
>>1331384
В том виде, в котором это существует сейчас - да, антипаттерн, дешевый понт, не являющийся чем-то выдающимся, хотя адепты поют об обратном. Современное ООП и паттерны - не более чем лозунги, а кто им следует - не более чем сектанты. Потому что оно ничего выдающегося из себя не представляет, с точки зрения грамотного инженера, но хайп такой огромный, как будто это лучшее изобретение человечества.
Ответы: >>1331400 >>1331402
Аноним 2019/01/21 04:26:21  №1331400 7
>>1331397
Так никто и не говорит про современное оопэ, где пишут процедурный код в классах. Я лично читаю старые книжки 20 века и черпаю идеи оопэ оттуда. Вот это действительно годнота, вот тогда реально умели люди программировать.
Ответы: >>1331410
Аноним 2019/01/21 04:34:59  №1331402 8
>>1331397
>>1331396
КАКАЯ НАХУЙ РАЗНИЦА, КТО КАК ПИШЕТ???

Люди, программисты, составляют договоренности по написанию кода. Так рождаются конвенции. Им нравится так писать, здесь нет правильного или неправильного подхода, как у врачей, здесь царит полная свобода действий.
А всякие сектанты, как вы, навязываете людям, которым удобно писать в стиле ООП, свою маниакальную идею отказа от современного ООП в угоду хуй пойми чему. Что вы забыли в треде языка, который может писать любыми способами? Идите в джаву и сисярп навязывайте свое мнение этим лохам, у которых в основе языка уже ООП-подход.
Ответы: >>1331406 >>1331411
Аноним 2019/01/21 04:54:57  №1331410 9
>>1331400
Идея ООП изначально была глупой. Алан Кей же был биологом, и еще очень любил громкие высказывания, якобы он все понимает лучше других. В математике насколько мне известно он ничего не открыл. Из этого следует, что у него была прочная профессиональная деформация в сторону биологии. Биология имеет мало общего с техническими науками, и инженерией. Но Кей все равно решил скрестить бульдога с носорогом. И насколько мне известно не реализовал свои громкие заявления. Его модель ООП так и осталась никому не известной, но из-за него появились другие модели, которые еще более провальны.

Поэтому книги по ООП, старые или новые, априори содержат в себе чепуху. Так как сама идея чепуха, а реализация еще хуже. И не стоит забывать, что ООП на классах не единственная модель. Есть еще прототипное ООП из языка Self, и якобы тру-модель из языка Smalltalk, которая потом (в Smalltalk-80 и далее, а может чуть раньше) тоже была сильно извращена.
Ответы: >>1331413 >>1331415 >>1337215
Аноним 2019/01/21 04:57:32  №1331411 10
>>1331402
Разница в том, что грамотного инженера сразу видно по темам, которые его интересуют. Если интересуется паттернами и ООП, значит априори кодер без знаний математики, без желания осваивать науки, без способности отличать хорошее от плохого. Человек вроде тебя, громкие истерики с матами, нежелание учиться, и т.д. и т.п.
Ответы: >>1331415 >>1331683
Аноним 2019/01/21 05:08:39  №1331415 11
>>1331410
Обезвоженный вариант твоего поста: "мне не нравится ООП".

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

>>1331411
Я вообще считаю, что программа (любая) должна иметь одну точку входа и одну точку выхода. Программа должна выполняться построково, линейно, без гото и прочей мешанины классов. Программа, которая находится в одном файле и каждая строчка выполяется последовательно - это идеальная программа. А то, как разрабатывают современные разрабы это спагетти ебаное, в котором разбираться придется не один месяц.
Ответы: >>1331416 >>1331431 >>1331432
Аноним 2019/01/21 05:46:47  №1331431 12
>>1331415
>Если бы идея ооп была говном, она бы уже давно провалилась, как ты выразился.
Все наоборот. Глупые идеи всегда выстреливают, потому что умных людей, хорошо понимающих науку и инженерию единицы. Кто отвергнет ООП? Школьники, кодеры без образования? Только тот кто понимает математику, науку, и инженерию. Таких очень мало. Кто использует ООП? Все кому не лень. Но у них у всех есть общая черта, они не знают и не понимают математику. Так как не понимают математику, то не понимают и науку с инженерией в целом.

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

Математики и инженеры начала, середины, и немного конца 20-го века, были последними кто мог создавать шедевры. Делать вещи простые, компактные, функциональные, но без лишнего. Как пример Лямбда-исчисление Чёрча, и комбинаторная логика Шейнфинкеля-Карри. Кто из современных кодеров додумался до подобной идеи? Никто. Все только плодят бездумно лишние абстракции. Да еще и гордятся этим, задирают нос, думая что они умные.
Ответы: >>1331433 >>1331441 >>1337215
Аноним 2019/01/21 05:50:06  №1331432 13
>>1331415
>Я вообще считаю, что программа (любая) должна иметь одну точку входа и одну точку выхода. Программа должна выполняться построково, линейно, без гото и прочей мешанины классов. Программа, которая находится в одном файле и каждая строчка выполяется последовательно - это идеальная программа.
Не идеальная. Как тогда быть с параллельностью, если все линейно и построчно? В математических вычислениях нет течения времени, нет хранимого изменяемого состояния. А ты предлагаешь подход противополжный, где состояние будет постепенно изменяться, моделируя ход времени. Такие программы трудно параллелить, они ограничены по возможностям.
Ответы: >>1331441
Аноним 2019/01/21 06:05:30  №1331441 14
>>1331432
В математике нет параллельности. Соответственно, нет времени, которое бы эту параллельность имитировала.
>нет хранимого изменяемого состояния
Для этого и была придумана динамическая память.

>>1331431
Глупые идеи выстреливают не потому что все люди долбоебы, а потому что эта идея этим долбоебам подходит. Ведь почему сейчас все пользуются ООП? Потому что эти паттерны решают задачи большинства людей. А непонятые гении, как ты, сидят на задворках науки и пытаются что-то кукарекать. Но нуда им до голоса со стороны параши.

>В математике никогда не бывает лишних абстракций.
>Все только плодят бездумно лишние абстракции.

Ну это вообще ПУШКА. Ты похоже не выспался совсем.
Аноним 2019/01/21 06:14:05  №1331447 15
>>1331441
Любое математическое вычисление можно распараллелить. Так как нет течения времени. Время не имитирует параллельность. Время течет едино, как оно может быть параллельным? Наоборот, когда есть течение времени как в императивных и ООП программах, становится сложно выполнять параллельные вычисления. А так как архитектура компьютера без параллельного выполнения не может уже выдать больше мощности, программы приходится параллелить.
Ответы: >>1331457 >>1331460
Аноним 2019/01/21 06:16:07  №1331449 16
>>1331441
>Для этого и была придумана динамическая память.
Что? О какой памяти идет речь? Я говорил о том, что изменяемое состояние не позволяет параллелить, и приносит много других ограничений. Это решается очень просто, декларативными языками программирования, а все манипуляции с состоянием происходят на уровне уже процессора, после трансляции кода из декларативного языка.
Ответы: >>1331457 >>1331460
Аноним 2019/01/21 06:30:42  №1331457 17
>>1331447
Ты понимаешь принцип параллелизма? Это значит, что программа начала выполняться в одной точке, из которой вызвались еще две программы, например, подключение к двум базам данных, а может и не из этой, а из другой программы, и пока эти процессы не завершатся, программа не продолжит выполнение. Это два процесса, которые могут зависеть друг от друга, а могут и не зависеть. И вторая программа может ждать первую, когда она завершится. Вопрос времени налицо.

>>1331449
> говорил о том, что изменяемое состояние не позволяет параллелить
Зачем по-твоему процессору кэш? Он ведь так же распараллеливает задачи и хранит временные данные, которые изменяются.

Ответы: >>1331460 >>1331461
Аноним 2019/01/21 06:59:26  №1331461 18
>>1331457
Ты все запутываешь. Изменяемое состояние на уровне кода программы не позволяет просто и эффективно распараллелить. Потому что данные нужно как то синхронизировать. Если состояния нет, то и синхронизировать ничего не нужно. Поэтому ФП сейчас пошло в мейнстрим. Все ФП языки позволяют легко параллелить программы.

Причем тут кэш процессора? Кэш не параллелит, и не для этого вообще создан и используется.
Ответы: >>1331464 >>1331468
Аноним 2019/01/21 07:08:27  №1331468 19
>>1331461
>Изменяемое состояние на уровне кода программы не позволяет просто и эффективно распараллелить.

Я тебе об этом и пишу. Есть два состояния: до распараллеливания и после него. В первом случае данные рассекаются на потоки и обрабатываются программой, во втором - данные синхронизируются и образуют единое целое. Такой принцип работает в видеокартах, например, и в ЦП.
А кэш нужен для того, чтобы эти переходные значения хранить. Я и не говорил, что кэш параллелил что-то.
Ответы: >>1331470 >>1331474 >>1331478
Аноним 2019/01/21 07:13:41  №1331474 20
>>1331468
Ты говоришь об императивной модели, а я о декларативной. В ней все под другому. Посмотри на математические вычисления. В них в принципе нет состояния, а значит и синхронизации. Можно распараллелить любой кусов вычисления.
Ответы: >>1331476 >>1331484
Аноним 2019/01/21 07:19:22  №1331478 21
>>1331468
Зачем вообще смотреть на процессор? Есть ОС, которая дает абстракции процессов и прочего, есть язык программирования, который дает языковые абстракции. На этих уровнях нужно решать задачи. А на уровне процессора пусть решает ОС и компилятор.
Ответы: >>1331484
Аноним 2019/01/21 07:31:17  №1331484 22
>>1331478
Напрямую ты, конечно, не повлияешь на работу процессора, но сможешь сильно упростить ему жизнь, если оптимизируешь свой код. Компилятор - машинка простая, она все переведет в инструкции для проца, а ебстись с утечками какими-нибудь тебе. Поэтому важно знать работу проца, ящитаю.

>>1331474
Я тебя понял. Мне как раз декларативная и не нравится тем, что там нельзя снаскоку понять, что происходит и сколько памяти затребует программа. При кажущейся краткости кода, куча неоптимизированных рекурсий может запросто засрать всю память. Собственно, как и циклы в импере, поэтому циклы - зло. Но зато более изящно решаются некоторые задачи, матан твой тот же самый.
Ответы: >>1331485 >>1331488
Аноним 2019/01/21 07:41:47  №1331488 23
>>1331484
Вот есть к примеру Haskell. На нем легко писать параллельные программы. И не нужно ни о чем заботиться, потому что всю грязную работу делает компилятор.
Ответы: >>1331490 >>1331503 >>1331510
Аноним 2019/01/21 08:17:51  №1331510 24
>>1331488

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

Не нравится PHP - не пишите. А вы разводите тут флуд на полтреда, что намекает на то, что вы в последнее время ничего не пишете, раз у вас так много свободного времени. Это тред для изучающих веб-программирование, так что выкатывайтесь обратно.

Алсо, https://habr.com/ru/post/315152/
Ответы: >>1331521
Аноним 2019/01/21 08:39:30  №1331521 25
>>1331511
Об этом я и говорил. Что в программную инженерию поналезли все кому не лень, и лепят кривые поделия с умным видом. А потом школьники, и прочие битарды, с не менее умным видом рассуждают об ООП, и пишут что математика не нужна, Лямбда-исчисление говно, и тому подобное. Смешно на это смотреть.

>>1331510
Не нравится не читай. Причем тут Haskell? У некоторых как будто мозг деревянный. Им про фундаментальные основы говоришь, они не понимают без примеров. Приводишь в пример какой то язык, начинают беситься что язык не тот. Ты вообще хоть что нибудь понял из того что прочитал? Haskell пример умного транслятора. Просто пишешь параллельный декларативный код, а транслятор его переводит в императивный.
Ответы: >>1331526 >>1331551
Аноним 2019/01/21 08:42:42  №1331526 26
>>1331521

Прекрасно, пишите декларативный код на любом языке, с или без ооп, только без флуда на 50 постов.
Аноним 2019/01/21 09:02:03  №1331551 27
>>1331521
>Об этом я и говорил. Что в программную инженерию поналезли все кому не лень, и лепят кривые поделия с умным видом.

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

>>1331541
>Как я уже писал в одном из тредов, что подход ООП именно такой, чем хуже тем лучше

Я помню тебя.

> И вы все ему следуете, при этом пишите глупые детские шуточки про математику, Лямбда-исчисление, ФП языки.

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