[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Процедурный стиль vs Объектно ориентированное прог
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
Игорь_Vasinsky
делайте чекбокс чтобы темы игнорные скрывать. задолбало это чудо в топе.

чё сложно 1 таблицу добавить и чекбокс в цикле зафигачить чтоли.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
chee
Цитата (twin @ 26.01.2016 - 14:38)
не более чем твоя субъективная оценка

твоя оценка тоже субъективная

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

_____________
Ex3m.com.ua — Активный образ жизни
bestxp
Цитата
не более чем твоя субъективная оценка. Потому что если копнуть глубже, ты может сам кушаешь обезьяньи какашки, воротя нос от пельменей. Я про ролик выше



скорее наоборот)) ибо от изысков ООП никому еще плохо не стало, а вот от устаревшей процедурки уже у людей начинаются позывы рвотные =)

в языке который развивается в сторону объектной модели пытаться заниматься некрофилией)) слава богу попрощались с механизмом ошибок старым)
twin
Цитата (chee @ 26.01.2016 - 10:49)
твоя оценка тоже субъективная

Да, я не спорю. Но я не писал, что ООП - говнокодинг и нужно в ванне помыться. smile.gif
Вопрос не в том, что лучше, а что хуже. Тут нет конкретного ответа. Кому как. Вопрос в том, как люди относятся к парадигмам.

ООПэшники зачастую к процедурке относятся весьма агрессивно, часто даже не понимая, что это такое на самом деле. И объявляют её говнокодингом, так как сами попали в ООП из говнокода, не поняв, что можно и подругому. Они писали все в одну строку, в одной области видимости. И тут узнали, что есть классы, что можно объекты создавать и что даже паттерны придуманы для них. И всё. biggrin.gif Считают, что поймали Бога за бороду.

Хотя сами зачастую не соблюдают канонов, но в опросе гордо ставят галочку "только ООП". Мода...

bestxp
Цитата
скорее наоборот)) ибо от изысков ООП никому еще плохо не стало, а вот от устаревшей процедурки уже у людей начинаются позывы рвотные =)
Вот опять) Устаревшая процедурка. С чего она устаревшая стала, с того, что большинство стараются юзать ООП? Так это наоборот получилось. Её искуственно обозвали устаревшей, потому что разрекламировали ООП. Причем смешно, это извне в PHP пришло. Оттуда, где оно действительно оправдано, из десктопа. Вот C++ поддерживает мульипарадигму, а C# уже объектный язык. Тут пнятно, на шарпе писать проще, но там другое отношение и к памяти и к быстродействию.

А делать из PHP сугубо объектный язык - это нонсенс. Дань моде, бег впереди паровоза. Не думаю, что разрабы PHP похоронят возможность процедурного использования языка, ибо это путь вникуда. Веб на 99% состоит из простых программ, те самые эфимерные "большие проекты", которых никто не видел, ни что иное, как ошибка архитектуры (визитка на symfony допустим), либо использование не того инструмента. Писать реально сложные программы, требующие больших ресурсов и больших объемов разнородных данных на PHP, это забивать гвозди микроскопом.

Но если нравится - да ради Бога. Даже интересно это, я знаю. Когда фреймворк писал, чуть сам не скатился в любители ООП biggrin.gif . Увлекательно это, но непродуктивно.

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

А на язву желудка и холестирин плевать. Ведь все так кушают в Макдональдсе! smile.gif

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
chee
Santehnick, зачем ты рушишь его мировоззрение, построенное из ярлыков и неправильных интерпретаций? Весело же наблюдать как он себя считает правым, генерирует тонны однотипных текстов, в которых якобы доказывает свою точку зрения, объявляя всех фанатиками, а себя прагматиком.

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
twin
Цитата (Santehnick @ 26.01.2016 - 11:59)
Извини, но вики и другие ресурсы в интернет, с тобой не согласны.

Не вижу несогласия. Из твоей же цитаты:
Цитата
The focus of procedural programming is to break down a programming task into a collection of variables, data structures, and subroutines
И что, класс не может быть подпрограммой?

Посмотрим вообще в само определение:
Цитата
Procedural programming is a programming paradigm, derived from structured programming, based upon the concept of the procedure call. Procedures, also known as routines, subroutines, or functions (not to be confused with mathematical functions, but similar to those used in functional programming), simply contain a series of computational steps to be carried out. Any given procedure might be called at any point during a program's execution, including by other procedures or itself.

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

Я не зря привел такой пример, с оговоркой внизу, что это не совсем показательно. Корректнее было бы использовать статическй класс. Но я сделал это осознанно, так как использование в коде объекта не делает код объектно-ориентированным. Это просто контейнер для набора функционала. Если развивать его, то можно допустим написать
class Voice
{
public function getCatVoice()
{
return 'Meow!';
}

public function getCockVoice()
{
return 'Cock-a-doodle-doo!';
}

public function getWaterfallVoice()
{
return 'F-f-f-f!!!';
}
}
Теперь можно услышать шум водопада, хотя к живым существам он не относится. Разумеется в таком случае использовать другое название класса, не "голос", а скажем "звуки", но сути это не меняет. Нет в миру такого объекта - звук. Есть описание, которое невозможно определить материально.

В такой класс можно засунуть метод "тишина" со своими свойствами. Вообще тишина, это отсутствие звука. А значит нет, и не может быть такого метода у физического объекта. А у набора методов - запросто.

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

В этом и различие подходов. Хорошо или плохо это - другой вопрос, тут нет и быть не может конкретного ответа.
Цитата (Santehnick @ 26.01.2016 - 11:59)
Это не процедурное программирование поощряет использовать классы, это вам так захотелось и вы просто смешиваете процедурное с ооп, просто потому, что php вам это позволяет делать.


Нет, как раз наоборот. PHP язык мультипарадигмальный. И он изначально был процедурным. Только сейчас (да и то не в полной мере) он стал позволять использовать классы для более-менее каноничного ООП.

А использование классов и объектов вовсе не признак ООП программы.
Цитата (Santehnick @ 26.01.2016 - 11:59)
Не поощряет она использвание классов. Хотя бы потому, что взяв другой язык, который поддерживает процедурное программирование, но не поддерживает ооп
Вот именно. Если не подерживает. А вот C++ поддерживает и то и другое, но нигде, никто и никогда не запрещал использовать классы при процедурном построении программ.

Тебя наверное сбило с толку это:
Цитата
Procedural programming languages include C, Go, Fortran, Pascal, and BASIC
, но эо перечень чисто процедурных языков, а не описание параигмы. В них действительно нет возможности юзать классы, но это не значит, что их нельзя юзать в мультипарадигмальных языках, оставаясь в поле процедурной парадигмы. Важно не какие инструменты используются, а как.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.