![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
HellStranger |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 1.9.2009 Репутация: -2 Всего: -1 |
Абсолютно согласен! Я уже приводил минимум 5 проектов, написанных на чистейшем C (в некоторых применяется ООП, но реализация всех классов на том же старом добром C), широко и не очень применяемых под разными осями. То есть, люди хорошо знающие C, прекрасно обходятся без всех довольно спорных прелестей C++, а главное в практически такие же сроки, как, если бы задача решалась на cpp. Плюс, многие здесь говорят, что программа не должна быть очень быстрой, а должна быть довольно быстрой... Знаете, товарищи, воообще-то для серверного ПО скорость очень критична, как и затраты ресурсов. И здесь cpp до C как до Киева в одной позе... Приведу простой пример: компания контент-провайдер, в которой я работаю, разработала и использует 2 плоатформы: 3G_Video_IVR (работал в Германии) и платформа для sms. Первая- вся начинка сишная, вторая- cpp. Так вот 3G_Video_IVR держал 10 видео абонентов на Pentium 4 3.4 GHz с гигом оперативки под XP и грузил проц на 25-30% максимум, вторая по 5 раз на дню вылетает при более-менее нормальной нагрузке: 100-1000 sms. Я думаю, не нужно здесь доказывать, что обработка online-видео c перекодированием на лету и работа со строками длиной до 150 символов- разной сложности задачи. Возьмём ту же асму. Если человек хорошо знает архитектуру процессора, систему команд и операционку, под которую пишет, то серверное приложение будет разработано в те же сроки, что и приложение на cpp (всё-равно использовать API системы и там и там). Только вот кому будет нужен cppшный сервак, когда есть асмовский... А мораль сей басни такова: нужно быть профессионалом в том, чем ты занимаешься, и тогда границы между asm, C, C++, C# и т.д. и т.п. становятся очень размытыми... В идеале, современный программист должен знать всё, и выбирать язык и технологии в зависимости от задачи. А меряться: писька у cpp длиннее всех, а C и asm- прошлый век, это очень не умно. |
|||
|
||||
Modul |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 17.2.2006 Репутация: нет Всего: нет |
Вот. И теперь мы решаем сложные и еще более сложные задачи. Мы же говорим про настоящий момент и немного на перспективу ! ![]() Кроме того есть теоретики и практики. Есть и определенные критерии (показатели) оценки эффективности. Например скорость разработки, спрос, зарплата. А смысл изучать что-то хорошее, но мало востребованное. Нонсенс ! Да еще важна специализация работника - к чему он тяготеет.
Все хорошее уже изобретено. ...и человек займется наконец своей работой ! ![]()
Тоже верно. Смысл писать 1 функцию и для нее класс, потом еще создать объект и его удалить. Написал DLL, загрузил сишным методом и дело сделано. Отсюда вывод: Зачем из пушки по воробьям стрелять. Незачем ! Другое дело - большой класс, например парсер с 10 функциями. Здесь без ООП просто не обойтись. Можно здание строить из кирпичиков и из глины, долго месить и построить через 3 года. А можно из блоков (классов-объектов) или из панелей (готовые классы). Результат - полгода. Зарплата та же. p.s. Философия ООП --------------------
I'll be back ! |
||||||
|
|||||||
Abyx |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
||||
|
||||
Modul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 17.2.2006 Репутация: нет Всего: нет |
и потом еще можно свое творение (класс) снабдить описанием и толкнуть на рынке. Чем не повторное использование, только на рынке. ![]() Еще на этой основе встречаются библиотеки - довел до ума - покупай ! --------------------
I'll be back ! |
|||
|
||||
HellStranger |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 1.9.2009 Репутация: -2 Всего: -1 |
Загнал в тупик... Как тогда тысячи программеров с FFMPEG разбираются?.. Как новые программеры сего проекта продолжают его дальнейшую разработку?.. У меня на освоение принципов работы с FFMPEG ушла неделя наряду с текущей загруженностью. Ещё через месяц у меня уже был готов простенький видео-редактор, абсолютно с нуля. Live555 меня поверг в уныние через 10 минут просмотра исходного кода... Так что, как говорил Альберт наш Эйнштейн, всё относительно. ![]() |
|||
|
||||
kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 2 Всего: 160 |
Это доказывает лишь то, что С++ - плохой язык программирования. Плохой во всех смыслах.
Ты очень остроумный. Но, тут разговор о десктопе. Так что уж слишком толсто получилось. Незачёт. Я что-то ничего из этого примера не подчерпнул. Часть про asm совсем не к месту. Поток сознания. -------------------- |
|||
|
||||
Abyx |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
чушь это. если надо только вызывать апи, то код асма 1в1 совпадает с Си. это факт. если нужна арифметика, в т.ч. обычная арифметика указателей, то асм сливает. количество строк кода отличается на порядки. но было асм vs Си. теперь асм vs C++. на асме вы пишете набор функций. на С++ вы пишете шаблоны функций. т.е. не одну функцию, а сразу семейство функций. используя шаблоны можно настраивать программу, меняя код только в необходимых местах, а не весь сразу. алсо да. и на С++ и на асме надо еще уметь программировать. |
|||
|
||||
HellStranger |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 1.9.2009 Репутация: -2 Всего: -1 |
Что-то я в названии темы не увидел, что речь идёт ИСКЛЮЧИТЕЛЬНО о desctop, примеры были приведены десктопные, имхо, только потому что автор пока ими и занимался. Так что расписываться в моей зачётке не надо, без вас профессура уже давным-давно справилась.
А у меня нет самоцели, чтобы лично вы что-то поняли. Между делом, в теме упоминались ещё и C#, и Java и ещё много других языков... Тоже не в тему, а в качестве примеров. Добавлено через 4 минуты и 16 секунд Знаете, в кривых руках и машинный код чистому C сливает. Я не говорю сейчас о горе-хаккерах, которые изучили систему команд x86 на уровне младших курсов МФТИ и мнят себя мегамозгами в asm. Их код может и cpp слить, что дальше?.. cpp всех круче?.. ![]() |
||||
|
|||||
ncr |
|
||||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 10.5.2010 Репутация: нет Всего: нет |
У вас в корне неправильный подход. Код должен быть максимально понятным, прозрачным и компактным. Вам же с ним ещё работать, и все эти "легко запутаться" в итоге выльются в бессоные ночи, нервные срывы, красноглазие и прочие страшные слова. А какого размера получится скомпилированный модуль - 10 Кб или 3 Мб, сколько он памяти будет потреблять - 1 Мб или 50 Мб, и за сколько он у вас выполнит требуемое действие - за 10 микросекунд или за тысячу - НИКОГО не волнует.
Все такими были когда-то ![]() Со временем приходит понимание, что настоящий кайф программирования - это свободное от программирования время, которое можно посвятить куда более приятным вещам. А готовые общепринятые решения весьма ускоряют разработку и, что важно, позволяют сконцентрироваться непосредственно на сути программы, а не тратить время на стопицотое изобретение одних и тех же вспомогательных велосипедов. |
||||
|
|||||
HellStranger |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 1.9.2009 Репутация: -2 Всего: -1 |
Правда компилятор превращает ваше семейство в такой же набор функций. ![]() Добавлено через 3 минуты и 30 секунд Специально для вас был создан .NET Framework. Сколько клиентов за эти 10 микросекунд: 10 или 10000 сможет обслужить сервер тоже никого не волнует?.. Вы перегрелись на солнышке, уважаемый... ![]() |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
и сколько можно эту гадость пиарить ? к тому же еще только виндоус ориентированную.. ![]() HellStranger, приведите обоснование тому факту, который Вы не раз озвучивали, о том, что С++ сливает Си.. |
|||
|
||||
ncr |
|
|||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 10.5.2010 Репутация: нет Всего: нет |
Объясню для непонятливых. Топикстартер хочет писать интерфейс на "чистом С". Написанное мной следует понимать в этом контексте. "Интерфейс" не обслуживает 10000 клиентов за 10 микросекунд. Поэтому за сколько именно микросекунд обновится, например, надпись на кнопке - никого не волнует. То, что при циклических интенсивных операциях скорость важна - и коню понятно. |
|||
|
||||
HellStranger |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 1.9.2009 Репутация: -2 Всего: -1 |
А кто её пиарит-то?.. По-моему, вы определённо перегрелись... )))))))))))) Я вовсе никого не склоняю к её использованию, а просто привожу пример хрени, в которой есть всё на все случаи жизни: для построение клиентских приложений да ещё и для тех, кого производительность ни в каком виде не трогает- просто находка! ![]()
На эту тему можно нагуглить тонны статей как в пользу C, так и в обратную... Сторонников cpp не убедит ничего из доводов сишников, как и наоборот. А переливать из пустого в порожнее мне уже порядком надоело... Вам станет намного легче, если я выложу пару тройку ссылок на статьи, где говорится как и в чём cpp сливает?.. Уверен на стопятьсот процентов, что подтянутся местные воротилы cpp, и продолжится война C-cpp. Данахононадо. |
||||
|
|||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Я прекрасно знаю Си (очень на это надеюсь). Но при этом я не готов утверждать, что на Си напишу программу сложнее hello world за время, незначительно уступающее оному на C++. Все-таки, есть вещи, которые удобней и, я уверен, быстрей работают на С++, чем на Си. Например, строки. когда тебе надо сравнить две строки, strcmp будет перебирать все символы, пока не встретятся различия, а std::string может (при желании его разработчиков, конечно) для начала просто сравнить размеры строк - это операция с константной сложностью, в отличие, от strlen. Сортировка с помощью std::sort работает быстрей, чем через qsort. Думаю, список можно продолжать. Конечно, это все достигается за счет увеличения размера программы. Но кому надо, тот добавит ключик -O1 компилятору... И вообще, ты хоть сам С++ знаешь? Или критикуешь его по типу: "не читал, но осуждаю"? |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Почему приводить то крайности ? тем более что требует она специфических языков.. почему бы не привести пример хорошей библиотеки ? хотя бы той самой Qt..
тогда и не надо постоянно употреблять, что С++ сливает С.. и объективный факт, в общем случае, машина оптимизирует средне-лучше чем человек.. Т.е. если даже на паре десятков строчек программист и выйграет, то при увеличении объема сливает.. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |