|
|
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
socimedПрограмёрsocimed, PHP не ООП?!!!! O_o А как же я последних 3 года то работаю?! Почти всё в моих приложениях - это объекты (почти, потому что всегда-всегда их использовать - это разумеется лишнее). Все за тебя очень рады, но вот парни из fb, vk и т.п. - они почему-то используют PHP строго в процедурном стиле, о чем и говорят на всех конференциях. Наверное ты умнее их, как думаешь? Лень качать свежие joomla/wordpress и прочие, но раньше там не было ООП тоже, хотя учитывая общие мировые тенденции к тотальном оглупению и наворотам оболочек на оболочки, возможно и какой Drupal уже тоже перевели на ООП, невозбранно увеличив response time до типичных 300-600 миллисекунд (супротив 30ms у лучших представителей жанра, при реально достижимом 3ms при переписывании с PHP на C) ООП - это не язык, и не программа и не что Вы ещё там думаете... ООП - это парадигма написания кода!!! Ну и молодцы, что они пишут не в ООП. А я пишу в ООП. И что теперь? В дэлфи тоже можно писать в процедурном стиле. Значит дэлфи не ОО язык? Значит и С++ не ОО язык? python? Вообще-то никого не загоняют в рамки объектной ориентированности. В языках обычно включают поддержку ООП, а не заставляют писать в стиле ООП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 14:42 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
НахлобучsocimedПрактически всегда и везде Java и C# подходы ("решения" со stackoverflow и прочих примеров из интернетов) просасывают минимум в 50-100 раз, в сравнении с Plain C. Не веришь - иди сам и меряй, применительно к этой задаче можешь сразу начинать с закачки libunibreak: libunibreak и твои всеобъемлющие обобщения -- это, конечно, все прекрасно и восхитительно, но вот тебе на подумать: пока ты будешь томно вылизывать свой высокопроизводительный C-код Уже вылизано пару лет назад, потрачено тогда было ровно 15 минут.., из них 5 минут заняло гугление. Нахлобуч и заниматься прочей интеллектуальной мастурбацией, я заведу свой простейший код на регулярных выражениях на кластере из EC2 и Map-Reduce все сделает за меня. Отлично. Т.е. там, где должна справиться одна-две ноды - ты будешь городить целый кластер из минимум 200-300 машин. Отличненько! Затраты на ёлектричество и не только хочешь посчитаем, архитектыр? Нахлобуч Причем заметь: сделает быстрее и, в итоге, дешевле, потому как работодатель будет оплачивать либо два месяца твоего рабочего времени (которое ты будешь тратить на отлов багов в обработки всяких юникодных суррогатов), либо несколько часов работы десятка компьютеров в облаке. Как мне нравятся такие персонажи, которые истово считают, что затраты работодателя заканчиваются выплатой ему, Нахлобучу, его несчастной зарплаты. Хохмы ради пробей стоимость содержания датацентра как нибудь. Хотя... если у тебя весь scope задач упирается в напольный "сервер" класса middle-tower, на котором крутятся все задачи вашей конторы из 100 человек.... ну тогда да, тогда можно наверное считать только твою скорбную зарплату. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 14:46 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Addxsocimedпропущено... Ты почему не в школе? Мамка не заругает? Странно, что в серьезную дискуссию встревают такие люди. Вы хотя бы погуглить попробовали. Можно после этого остальные Ваши посты читать? Ну вот и погугли, дитятко, PL/SQL и T-SQL соотвественно, заодно узнаешь, есть ли там процедуры, чем они отличаются от SQL. Если мамка конечно ремня не всыпет, за то что ты прогуливаешь уроки. Или ты сейчас хочешь сказать что тебе не 10 лет и ты в возрасте сугубо за 20 до сих пор не знаешь, как гуглить с целью узнать - что это такое PL/SQL и T-SQL? В серьезную дискуссию он вступил, ыыыы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 14:50 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
maytonРебята. Топик интересный. Не надо сраться. Если есть желание кого-то оскорбить - подождите 30 минут перед тем как нажать "Submit". Да не особо интересный. Обсасываются очевидные вещи. Увы, не для всех, потому и накал дискуссии такой :) По сути можно бы рассматривать его в разрезе Линус против ООП, или "для чего нужно ООП". Но о втором настолько много написано, что ответ на вопрос "что такое С" менее очевиден :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 14:50 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Предлагаю сраца до первого бана ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 14:53 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
AddxПрограмёрЧто бы никто не заблуждался по поводу моей точки зрения повторюсь, я за ООП, но против утверждения, что без ООП что-то является невозможным, или что ООП как таковое позволяет ускорять работу кода и увеличивает его эффективность. Невозможно чего либо без ООП - это вообще очень интересное утверждение. ) ООП - это не "бустер", включив который можно увеличить скорость и эффективность. Зачастую эффект противоположный, но это не вина ООП. Как и всякая концепция, она имеет область применения, и требует ее глубокого понимания. Тогда ООП дает эффект, сокращающий время разработки, увеличивающий надежность и облегчающий поддержку кода. Для больших проектов - именно это наиболее актуально. Это сложно понять на примерах, которые присутствуют в книжках по ЯВУ с ООП. Ну то есть структурирует код проекта. Не более )). Я о том, что разные термины аля "скорость выполнения", "эффективность", "надёжность" и т.д. не имеют какого-либо отношения напрямую к ООП. Скорее это заслуга программиста, а не подхода к программированию. Если я супер-гений, который умеет держать гигабайты кода в голове в проиндексированном виде , то мне не составит труда написать более эффективный и надёжный код не используя вообще никаких подходов... Да в принципе я смогу это сделать (теоретически... будь я супер-гением с невообразимой памятью) создавая программы даже в машинных кодах :). Так что ООП лишь позволяет структурировать код и сделать его легче для восприятия... А вот уже оптимальная структура приложения ложится на плечи программиста.... И если это человек-дубень, который освоил ООП и считает себя гением, то никакое ООП его не выручит :) Но при одинаковой подготовке и хорошо продуманной заранее структуре, объектно-ориентированный код будет медленнее его процедурного аналога (соответственно менее эффективный), по надёжности оба варианта будут одинаковы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:00 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
ПрограмёрНо при одинаковой подготовке и хорошо продуманной заранее структуре, объектно-ориентированный код будет медленнее его процедурного аналога (соответственно менее эффективный), по надёжности оба варианта будут одинаковы. Ну для каких-то задач именно объекты с методами и свойствами могут быть наиболее удобными. Почему бы в этом случае не использовать готовые механизмы ООП, присущие используемому ЯП, а не писать свою корбу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:06 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
socimedМожно ссылку, что такое BF25? http://en.wikipedia.org/wiki/Okapi_BM25 А, вы описались изначально? F#пропущено... Покажете код? Код: plaintext 1. [/quot] А где реализация ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:12 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
ПрограмёрНу то есть структурирует код проекта. Не более )). Я о том, что разные термины аля "скорость выполнения", "эффективность", "надёжность" и т.д. не имеют какого-либо отношения напрямую к ООП. Скорее это заслуга программиста, а не подхода к программированию. Если я супер-гений, который умеет держать гигабайты кода в голове в проиндексированном виде , то мне не составит труда написать более эффективный и надёжный код не используя вообще никаких подходов... Да в принципе я смогу это сделать (теоретически... будь я супер-гением с невообразимой памятью) создавая программы даже в машинных кодах :). Так что ООП лишь позволяет структурировать код и сделать его легче для восприятия... А вот уже оптимальная структура приложения ложится на плечи программиста.... И если это человек-дубень, который освоил ООП и считает себя гением, то никакое ООП его не выручит :) Но при одинаковой подготовке и хорошо продуманной заранее структуре, объектно-ориентированный код будет медленнее его процедурного аналога (соответственно менее эффективный), по надёжности оба варианта будут одинаковы. В некотором роде структурирует, это безусловно :) Впрочем, структурировать можно по-разному. Успех проекта состоит в 1. Правильной постановке задачи 2. Правильном проектировании 3. Грамотном написании кода Именно в этом порядке. Для сложных проектов каждый пункт - серьезная работа. А так, конечно, чтобы отсортировать массив, ООП не нужно. Примеры, показывающие что для решения специфической задачи эффективно использовать именно приспособленное под эти задачи средство, имеются в огромном количестве. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:12 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Alibek B.ПрограмёрНо при одинаковой подготовке и хорошо продуманной заранее структуре, объектно-ориентированный код будет медленнее его процедурного аналога (соответственно менее эффективный), по надёжности оба варианта будут одинаковы. Ну для каких-то задач именно объекты с методами и свойствами могут быть наиболее удобными. Почему бы в этом случае не использовать готовые механизмы ООП, присущие используемому ЯП, а не писать свою корбу? Я о том и говорю :) Это удобно... но НЕ БОЛЕЕ чем просто удобно :) Но многие тут используют термины "эффективнее", "быстрее", "надёжнее"... А другие (многие) руководители проектов на эти термины ведутся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:12 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
+ПрограмёрНу то есть структурирует код проекта. Не более )). Я о том, что разные термины аля "скорость выполнения", "эффективность", "надёжность" и т.д. не имеют какого-либо отношения напрямую к ООП. Имеют непосредственное. Не существует абстрактного ООП языка в вакууме. С++ идет тесно в связи со стандартной библиотекой STL Java идет тесно в связи со стандартным RTL При этом в чистом виде C++ и Java, если делать тест без использования библиотек - часто вообще не отличаются от такого-же кода на C. Но тормоза решений Java и C++ в 99% случаев объясняются исключительно теми библиотеками, которые использует программист, и, что самое худшее - теми стандартными алгоритмами, которые вынужден использовать программист, оперируя этими библиотеками. Вот и весь ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:15 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Addxsocimedпропущено... Ты почему не в школе? Мамка не заругает? Странно, что в серьезную дискуссию встревают такие люди. Вы хотя бы погуглить попробовали. Можно после этого остальные Ваши посты читать? Ну, Вы уже попробовали погуглить что-нибудь на тему T-SQL или PL/SQL ? Ну, так попробуйте... Будете сильно удивлены процедурным , ака, императивным, расширениям декларативного SQL... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:28 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
AddxКак и всякая концепция, она имеет область применения, и требует ее глубокого понимания. Тогда ООП дает эффект, сокращающий время разработки, увеличивающий надежность и облегчающий поддержку кода . Для больших проектов - именно это наиболее актуально."Оглсите, пжлста весь сп'сок" (с) (орфография и пунктуация "оригинала" сохранены) И настоятельно необходимо, чтобы этот список состоял из пунктов, которых до появления ООП вообще не было... Очень желательно при этом, чтобы надежность и облегчение поддержки кода от использования этих пунктов были реальными. Терзают смутные сомнения (переходящие в стойкое убеждение в невозможности), что такой список может быть вообще кем-нибудь и когда-нибудь предоставлен. Кстати, порадовало про гарантированное "повышение надежности"... Особенно - при наследовании и полиморфизме... Ага... :( AddxЭто сложно понять на примерах, которые присутствуют в книжках по ЯВУ с ООП.Ну, тут Вы попали - если даже простые примеры не способны продемонстировать преимущества от использования ООП... Простая программа "Привет мир" на C# - на-вскидку 5 (пять) разных(!) иерархий классов... Вместо вызова одного "библиотечного" метода... Что говорить о "более сложных" случаях?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:29 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
AddxБД, причем БД именно реляционная - это особая система хранения информации. И чего в ней особого - аналог таблицы - массив структур в ЯП. Addx SQL - это декларативный язык, который позволяет производителю БД тонко подстраивать выполнение запросов в СУБД. Если брать аналог в ООП, то можно привести в пример LINQ to Objects. SQL - это язык обработки таблиц и не обязательно в БД. Вот и не понятно, зачем нужен аналог - может достаточно одного SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:32 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Dima TДумаю для начала надо определиться что понимать под ООП. Методика обработки коллекций разнородных объектов. Dima TИ надо ограничится алгоритмическими ЯП, нет смысла их мешать с узконаправленными T-SQL, PL/SQL, ABAP и т.п. PL/SQL - это и есть алгоритмический ЯП, в который встроен SQL для работы с типом данных Таблица. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:37 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Я не понял, это клоны полезли в таком количестве? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:41 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
AddxЯ не понял, это клоны полезли в таком количестве? Ты уже PL/SQL загуглил? Или до сих пор собираешься нам постать свои смешные юношеские откровения, о том, что это НЕ процедурный язык? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:43 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
maytonЭто вопрос юзабельности. Формально PLSQL тоже содержит определния объектов, есть конструкторы. Но процент использования этих опций в практике чрезвычайно мал. В PL/SQL используется подход "объекты-домены", а не "объекты -- структурные единицы кода", поэтому там объекты используются достаточно редко, потому что нужда в предметно-ориентированных составных доменах в реляционной БД вообще очень странна. Но там ещё есть и записи, и встроенные типы данных с member function хотя бы синтаксически. Но в общем, конечно, PL/SQL назвать ОО языком можно с очень большой натяжкой. maytonИ я не специалист в PHP но как мне кажется ООП-шные плюшки там очень слабо используются или не используются вообще. Беря критерий мат статистики. Если over 97% кода пишется НА ПРАКТИКЕ без ООП то я делаю вывод что ООП в данном языке ПРАКТИЧЕЧКИ не используется. Почему не используется - это отдельный вопрос который надо рассмотреть отдельно. Но формально язык ООП поддерживает. Вообще, в некоторой литературе выделяют два класса языков в смысле объектов -- объектные и объектно-ориентированные. объектные -- грубо говоря, в которых синтаксически и семантически есть объекты, но нет средств создания своих объектов. Долгое время таким языком был VisualBasic, но потом туда добавили средства и создания своих объектов тоже. (VBA вроде так и остался объектным). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:44 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
sphinx_mvAddxЭто сложно понять на примерах, которые присутствуют в книжках по ЯВУ с ООП.Ну, тут Вы попали - если даже простые примеры не способны продемонстировать преимущества от использования ООП... Простая программа "Привет мир" на C# - на-вскидку 5 (пять) разных(!) иерархий классов... Вместо вызова одного "библиотечного" метода... Что говорить о "более сложных" случаях?! Вы вообще поняли, что я написал? Вроде по-русски ... Преимущество ООП проявляется в СЛОЖНЫХ проектах, в ПРОСТЫХ его преимущество не очевидно. У микроскопа нет преимущества перед лупой, если вам нужно рассмотреть пару мелких букв на упаковке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:46 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
AddxПреимущество ООП проявляется в СЛОЖНЫХ проектах Дело не в сложности. ООП применимо, если вы можете сформулировать вашу задачу ТОЛЬКО в терминах объектов. Если нет, то ООП не применимо, т.к происходит смешение парадигм, что плохо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 15:56 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
Addxsphinx_mvпропущено... Ну, тут Вы попали - если даже простые примеры не способны продемонстировать преимущества от использования ООП... Простая программа "Привет мир" на C# - на-вскидку 5 (пять) разных(!) иерархий классов... Вместо вызова одного "библиотечного" метода... Что говорить о "более сложных" случаях?! Вы вообще поняли, что я написал? Вроде по-русски ... Преимущество ООП проявляется в СЛОЖНЫХ проектах, в ПРОСТЫХ его преимущество не очевидно. У микроскопа нет преимущества перед лупой, если вам нужно рассмотреть пару мелких букв на упаковке.Во-первых, критерий "крупный проект" - в студию! Во-вторых, как раз на большом проекте ООП совершенно теряется "как класс" - физически размывается банальным процедурым подходом при реализации функционала приложения... Ну, и, в-третьих, для действительно большого и сложного проекта, включающем в себя еще и интеграцию нескольких приложений и систем, становится понятным, что на границах приложения не являются объектно-ориентированными . ЗЫ. Овер 700 модулей (ака "классов") в одном проекте - это много/мало? Крупно/мелко? C# однако... Всего ООП в нем - декларация классов... Весь функционал (реализация свойств/методов/функций) по сути - чисто вызов "библиотечных" методов, которые "инкапсулированы" в методах классов. ЗЗЫ. Возможность использования в тексте программы ключевого слова "object" совершенно не означает, что программирование автоматически становится "объектно-ориентированным". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 16:26 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
_модAddxПреимущество ООП проявляется в СЛОЖНЫХ проектах Дело не в сложности. ООП применимо, если вы можете сформулировать вашу задачу ТОЛЬКО в терминах объектов. Если нет, то ООП не применимо, т.к происходит смешение парадигм, что плохо.Прикол в том, что в реальном мире не существует задач, которые можно реализовать только с применением ООП. ООП не самодостаточен - и без базы из "процедурного программирования" существовать не может. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 16:30 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
_модAddxПреимущество ООП проявляется в СЛОЖНЫХ проектах Дело не в сложности. ООП применимо, если вы можете сформулировать вашу задачу ТОЛЬКО в терминах объектов. Если нет, то ООП не применимо, т.к происходит смешение парадигм, что плохо. В жизни всегда происходит "смешение парадигм". Ничего плохого тут не вижу. Вот, к примеру, у меня сетевая игра под веб-браузер. Есть тут место ООП? А если не под веб-браузер? Задачи интересны только студентам и теоретикам, практикам интересны проекты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 16:31 |
|
||
|
А давайте-ка обсудим :) Кто считает что ООП даёт прирост скорости программе?
|
|||
|---|---|---|---|
|
#18+
sphinx_mvПрикол в том, что в реальном мире не существует задач, которые можно реализовать только с применением ООП. Была одна, ради котрой ООП и придумали - оконный интерфейс. Одноразовая технология. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2014, 16:35 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38550606&tid=1341468]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
141ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
82ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 480ms |

| 0 / 0 |
