LINUX.ORG.RU

2CyberCoder+ALL: Методологии программирования


0

0

2 CyberCoder >гораздо интереснее обсуждать методологии разработки ПО

Я именно этого и хотел - неправильно выразился :), прошу прощния.

Ладно, до этого момента я считал C++ c его ОПП самым крутым, а тут высказались, что это "говно"??? Тогда что не говно???

Если проги большие, то помоему он очень хорошо помогает всё упорядочить??? очень большие проги не посал, но кажется это правда??

тогда какие методологии разработка есть, какие для чего, какие эффективнее??

anonymous

типа если есть main(), то всё - говно, а не ОПП. хорошо, что есть альтернатива main?

main можна рассматривать как метод объекта OS, который позволяет нам запускать наш ОО код. вот и отабстрагировались!

anonymous
()

Совет: не слушай в этой ветке никого. На лоре профессионалов мало, и они не вступают в такие дискуссии. И, вообще, запомни: программисты, а еще более и админы, такой народ, который всегда всё лажает, даже когда полный ноль в теме разговора. В общем лезут во все дыры. Вот, буквально вчера, приятельница жаловалась, что её друг-прогаммер залажал её железо. Называл его некрасивыми словами. И зачем? Только себе навредил и девочку обидел. Железо с красивыми коробочками, работает как ожидается и со своими задачами справляется. Демонстрация своей "крутости" обернулась ему одиночеством. И с другой стороны, после моего рассказа о нравах программеров-админов, целое их племя больше не будет иметь счастья пообщаться с этой девушкой (ну, кроме меня, конечно :-) ).

sergio_nsk
()

C++ - вообще как язык - говно полное. А уж если его рассматривать как ОО-язык, то он и в этом позорном плане стоит да-алеко от таких товарищей, как Eiffel, Python, Smalltalk, CLOS. Если ты так сильно думаешь, что говняное ООП тебе таки нужно - то изволь уж ознакомиться (хотя бы поверхностно) со всеми перечисленными языками. Ну и дурачка Буча почитай для общего развития...

Да, то, что ООД/ООП позволяет систематизировать и упростить разработку "больших" систем - сволочной миф, распространяемый фанатичными адептами этой ОО-религии. Не верь засранцам!

Правильная система модулей - гораздо кошернее всех этих ваших ОО - e.g., модули и классы типов в Haskell, модули и функторы в SML/OCaml...

Antichrist
()
Ответ на: комментарий от sergio_nsk

Хочется тебе профессионального уровня - пожалуйста. Начинай со статьи Joyner-а:

Ian Joyner (1996) "A Critique of C++ and Programming and Programming Language Trends in the 1990s".

Antichrist
()

Джойнер на case-sensitivity нападки корчит. Во мудак.

anonymous
()

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

AVI
()

А можна фактов, а не "говно". какие факты шо это плохо, а то хорошо - пусть все знают - може в ком-то что-то проснётся или кто-то что-то поймёт???

Ато на фанатизм уж больно похоже :(

anonymous
()

2sergio_nsk> программисты, а еще более и админы, такой народ, который всегда всё лажает

Ну не скажи. Настоящие программисты (кого ты называешь профессиналами) такого не делают.

А в этой ветке действительно писАть ничего не буду. Лениво как-то что-то доказывать, объяснять :)) Пущай народ сам разбирается. Пользы от этого только больше будет.

ayl

anonymous
()
Ответ на: комментарий от AVI

Ха ха. Ещё раз - говно - это понятие ОБЪЕКТИВНОЕ. Мат.модель, лежащая в основе языка C++ - говно, а следовательно и сам язык говно. Говняность C++ доказывается формально. Вы же тут только на словоблудие гуманитарское и способны все.

Тоже мне, дурачьё, обозвать этот банальный "портабельный макроассемблер с классами" - "специфической концепцией" - это просто верх лицемерия. Наказывать за такое надо.

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

Antichrist
()
Ответ на: комментарий от sole_survivor

ОРыльскую книгу, ну и спецификацию системы модулей.

Antichrist
()
Ответ на: комментарий от anonymous

С какой радости профессионалы будут выказывать уважение к говняным технологиям? Профессионал на то и является профессионалом, чтоб презирать профанацию и ремесленничество. C++ - откровенная профанация.

Да, а "лениво доказывать" следует читать как "не умею доказывать". У тебя ведь нет знаний соответствующих, чтоб формальное доказательство привести.

Antichrist
()

да ОРыльская книга классная ) благодарю

sole_survivor
()

>Совет: не слушай в этой ветке никого. На лоре профессионалов мало, и >они не вступают в такие дискуссии.

100% правда.

CyberCoder
()
Ответ на: комментарий от Antichrist

Хотелось бы глянуть на выкладки, "формально доказывающие говяность С++, точнее говяность математической модели". Ты сам то понимаешь, чего пишешь? Если вы не математический гений, то мания величия у вас, батенька.

filolog
()

Да не слушайте вы Antichrist'а. Обычный демагог-теоретик. Проф. Выбегалло. С++ дает отличную скорость кода при минимуме накладных расходов. Лишний

sub esp,8

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

Посему вывод: С хорош для (сравнительно) мелких (особенно системных) программ, и лучше него ничего не придумано для этого. С++ хорош для больших проектов. Все остальное (IMHO) -- тормоза лишние. Всякие теоретические красивости придуманы исходя из того, что вычислительные мощности у заказчика бесконечны. А поскольку в реальной жизни это не так, то этот самый заказчик, полюбовавшись на ваши тормоза и непомерные системные требования, уйдет к тем, кто сделает софт шустрым и минимально требовательным к вычислительным ресурсам.

nobody ★★
()
Ответ на: комментарий от filolog

Выкладки? Да запросто. Только сначала попробуй сам проделать то же самое - всё очень просто, достаточно записать формально (на языке правил) систему типов для C++. Сравнить с Карриевской - и ужаснуться.

А вообще - я ещё не видел ни одного недебила, который защищал бы C++. ;)

Antichrist
()
Ответ на: комментарий от nobody

Лгать не надо. Накладных расходов у C++ - далеко не минимум. Причина весьма проста - система типов, ручной memory management, низкий уровень (что не допускает сложных проблемно-ориентированных оптимизаций).

Так что - обломись.

Про Цэ ты тоже солгал грязно. Для мелких (особенно системных) программ этот портабельный ассемблер не пригоден. Особенно в свете того, что "системным" мелким программам числодробильная мощща на хрен не впилась.

В общем, дурачина-простофиля, иди ка ты, учись. Может поумнеешь, и перестанешь вонять про якобы высокую производительность и якобы не богатые системные требования говнища, писанного на C++ (ха! KDE тут все видели!).

Antichrist
()

>С какой радости профессионалы будут выказывать уважение к говняным технологиям?

Зачем уважение? Внимания на бяку не обращать - и все :))

>Да, а "лениво доказывать" следует читать как "не умею доказывать". У
>тебя ведь нет знаний соответствующих, чтоб формальное доказательство
>привести.

Ну естественно, до тебя мне еще далеко :) Я не программер, я только учусь, так сказать :)

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

Ну да. Заказчик уйдет к тем, кто сделает софт за минимально возможное время при приемлимой производительности этого софта. А если софт будет работать на 0.00...1% быстрее и вы затратите на разработку в n раз больше времени, кому вы нужны как разработчик?

P.S.
Antichrist, в прошлой ветке ты что-то писал про Черча и Карри - ссылку не дашь, где про это почитать?

ayl

anonymous
()
Ответ на: комментарий от anonymous

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

Да, программер, чтоб уметь доказывать, должен быть математиком. А иначе - лабух он, кодеришко...

Про заказчика - вот уж в чём наибольшая говняность C++ проявляется, так это в скорости разработки. Этот ублюдочный недоязычок слишком уж требовательный, ошибок не прощает, код на нём получается дико громоздким и нечитабельным (e.g., вполне стандартное соотношение кода на OCaml и C++ - в 5-15 раз меньше число строк). Так что по этому показателю C++ - самый паршивый ублюдок из всех возможных... Ну, разве что на каком либо ВижуалВасике ещё дольше писать придётся.

P.S. Про теории типов - в лекциях Харрисона было неплохое введение, и далее почти полная библиография по этой теме (включая работы Миллнера). Ссылки на Харрисона я тут столько раз давал, что уже надоело... ;)

Antichrist
()

дай ещё раз, ни в падло да! я чайник! да я думал о С++ много хорошего! дай где почитать можна о языках, методологиях, ... ты ,Antichrist, так всё ругаешь! дай другим ума поднабраться - помоги ссылкой полезной - доброе дело сделаешь!!!

anonymous
()

Зелковиц помоему один из авторов хорошей книги - "Языки программирования" - дано описание методологий и различных языков так же описаны некоторые аспекты проектирования языков - книга как вводный материал вполне пригодна ..

думаю сейчас можно купить в любом нормальном книжном магазине

потом посмотришь что тебе интересно изучить более подробно и пойдешь по списку литературы

lg ★★
()
Ответ на: комментарий от Antichrist

Слушай, Антихрист, тебе RООТ еб..ло начистил таки или нет? Просто интересно.

anonymous
()

Харрисон

Системы типов, зачем они нужны, библиография в тему: http://www.cl.cam.ac.uk/Teaching/Lectures/funprog-jrh-1996/index.html

Книга, о которой говорит lg - так же полезное дело. Чуть позжее нарою ссылочку на CMU-шные лекции по дизайну ЯВУ - там много чего доброго было.

Antichrist
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.