![]() |
|
Модераторы: LSD Страницы: (9) Все « Первая ... 2 3 [4] 5 6 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]()
|
|
| Леопольд |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 943 Регистрация: 17.6.2009 Репутация: нет Всего: 13 |
Если это действительно так, а Лисп ты знаешь ещё хуже то "недорос" ты ещё до того что-бы сравнивать эти языки. А ведь чуть было не сбил человека с пути, возможно, истинного. -------------------- вопросов больше чем ответов |
|||
|
||||
| NightmareZ |
|
||||
![]() [хакер] ![]() ![]() Профиль Группа: Участник Сообщений: 699 Регистрация: 10.8.2006 Репутация: -1 Всего: 13 |
Нет абсолютно никакого значения, на чём написан код. Что угодно можно запихнуть в нулевое кольцо. C, ассемблер. Например, возможностями метапрограммирования.
Это нецелесообразно. Зачем писать гуй на C++, когда на C#/Delphi/Java/VisualBasic это можно сделать быстрее? Да, язык неплох в своей нише. Какашки вкусные. Миллионы мух не могут ошибаться. Выкинь свою подсказывалку.
-------------------- NightmareZ.net - мой блог и сайт, мои проекты и прочий трэш Ely-Art.ru - наша маленькая домашняя арт-студия mugcraft.ru - кружки на любой вкус |
||||
|
|||||
| Леопольд |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 943 Регистрация: 17.6.2009 Репутация: нет Всего: 13 |
Я спрашиваю с целью выяснить насколько хорошо ты знаешь С++.
Тогда расскажи, пожалуйста, чем ООП в Лиспе лучше или хуже ООП в С++. Хотелось бы увидеть от тебя хотя бы немного конкретики а не юморески про какашки. Добавлено @ 09:03
Для того что-бы писать те же дрова, программисту С++ не надо будет изучать новый язык. В чём его преимущество, он придерживается тех же принципов что и С - делай что хочешь, если знаешь что делаешь. Я конечно не могу знать, не интересовался, но почему-то почти уверен что С++ на этом уровне на голову выше Лиспа. Добавлено @ 09:10
Это сообщение отредактировал(а) Леопольд - 20.9.2009, 09:18 -------------------- вопросов больше чем ответов |
||||||||
|
|||||||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: -1 Всего: 69 |
так не спрашивают. нужно попросить решить какую-нибудь простенькую задачку на С++ и уже по уровню кода можно будет сказать насколько человек хорошо/плохо знает С++. это как игра в шахматы: более опытный игрок может определить уровень своего оппонента по том, как он ходит(фигурами) |
|||
|
||||
| W4FhLF |
|
||||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 2 Всего: 121 |
Я сейчас занимаюсь разработкой софта для статистического анализа. В общем там очень много расчётов и везде работа в матрицами. На С++ у меня реализован класс Matrix<T>, где оптимизировано хранение больших матриц в памяти, операции над ними. Могу писать:
Что ты мне предложишь на С? Как бы оно выглядело? А если захочу поменять тип данных в матрице? Или добавить ещё 3-4 операции в формулу с разными типами? Если же говорить про C#/Java/Lisp, то я уверен, что реализация такого класса и интерфейса с классической нотацией проиграет в скорости моей на порядок на больших матрицах (от 512х512). Можем протестить, если у кого-то есть желание. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
||||
|
|||||
| Леопольд |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 943 Регистрация: 17.6.2009 Репутация: нет Всего: 13 |
Больше чем уверен, что он откажется. -------------------- вопросов больше чем ответов |
|||
|
||||
| Fatkh |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 5.9.2009 Репутация: нет Всего: 1 |
1. Да, букв было бы больше. Не спорю. 2. Поменять тип данных? Зачем? Если дело обходится базовыми типами, то double - на все случаи жизни (или long double (C99)). Иначе - void * и переданный указатель на функцию сравнения (или еще чего-то). http://numpy.scipy.org/ http://www.scipy.org/ Классический пример, но Питон для сложных математических вычислений использует NASA (или Pyrex, или С, или асм, если очен уж нужно оптимизировать). Им не важна скорость? (Да, большая часть кода написана в виде либ на С, но не на плюсах) |
|||
|
||||
| Fatkh |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 5.9.2009 Репутация: нет Всего: 1 |
Представьте, что приложение работает 24/7. Скоро с памятью начнутся проблемы. Во-первых - нет в плюсах инкапсуляции. Там есть data hiding. Поищите в инете - поймете разницу. А эта ваша data hiding нужна, только если априори считать программистов придурками. Если он полез туда, куда не надо - это его проблемы. К тому же даже data hiding плохой. Простым memset я могу сделать то, что захочу.
Сложностью и неудобностью языка. На Питоне писать намного проще и куда быстрее, а соответственно - намного дешевле. Qt4 хорош... для того, чтобы сделать его порты на другие языки. |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: -1 Всего: 69 |
C++ защищает от случайного изменения приватных данных, но не от намеренных изменений. c помощью идиомы pimpl можно скрыть детали реализации. Это сообщение отредактировал(а) zim22 - 20.9.2009, 12:32 |
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
создается впечатление что ты не знаешь о чем говоришь инкапсуляция - не свойство языка, это паттерн который может применен в конкретном коде. сокрытие реализации - не от того что пользователь считается идиотом, оно нужно чтобы нельзя было как-то изменить реализуемую абстракцию. это гарантирует надежность кода. простым memset, в общем случае ты ничего не сделаешь, т.к. в общем случае тебе вообще неизвестна и недоступна реализация. |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 2 Всего: 121 |
Намного больше. Плюс есть разница между A * B / В и кучей вызовов функций в строчку. Писать на С++ на порядок проще и удобнее, чем на С, а соответственно дешевле и быстрее. При равной эффективности. А зачем вообще нужно обобщённое программирование? Ну если хочешь пример, то я в матрице могу хранить комплексные числа. Представляю в какую лапшу превратится код на С. А на С++ ничего менять не надо. Я работал с этой библиотекой на питоне. Там для работы с матрицами используется NumPy. Если честно, очень неудобная библиотека. Качественная, хороший функционал, но лично мне она показалась даже менее удобной, чем мои средства на С++. Но я не понял, что ты хотел этим сказать? То, что писать такие либы на С более удобно и эффективно, чем на С++? Очевидно, что это не так. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| Anikmar |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 1 Всего: 59 |
Написать приложение, у которго в режиме 24/7 можно на любом языке. Причем здесь плюсы? Я говорил про конкретно конструктор копирования: Вы сказали, что из-за плохой реализации языка конструктор копирования часто приводит к утечке памяти. Я попросил привести пример такого кода. И получил такой ответ. Проблеме распределения памсяти для приложений 24/7 посвящено очень много статей и книг. И при чем здесь конкретный язык? Для этого и существуют собственноручно написанные менеджеры памяти. И на плюсах использовать свой менеджер памяти можно запросто. При этом удобство очевидно. В си реализовать это намного муторнее.
Этой фразой вы наверное сильно подняли свой авторитет |
||||
|
|||||
| Fatkh |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 5.9.2009 Репутация: нет Всего: 1 |
В плюсах это не паттерн, а декларируемое свойство языка. И паттерн этот можно реализовать и средствами С. (Можно, только не нужно это там) Перечитай предыдущие посты. Началось с определения ниши для плюсов. И этим я хотел сказать, что в таких случаях лучше применить что-то более высокоуровневое, (Питон?). А для системного программирования - С. И не надо смешивать. Никто не предлагал такие задачи решать на С. Для них есть другие средства. Просто С покрывает низкоуровненвое программирование (+асм), а высокоуровневое покрывается языками более высокого уровня(уже перечислял). И где ниша С++? С++ пытается занять все ниши. Только для каждой ниши есть более подходящие, так как узкоспециализированные, инструменты. |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 1 Всего: 59 |
С++ ничего не пытается. Он не умеет думать и он не живой. Пытаются те, которые на нем работают. За последние 5 лет для С++ вышло столько великолепных библиотек, что только доказывает, что армия приверенженцев С++ только увеличивается. Язык без поддерджки - пустое место. Если язык превращается в очень высокий уровень - он резко теряет производительность. Если брать Си - на нем ничего кроме низа делать не хочется. С++ имея столько наработок и бибилиотек превращается в инструмент на все случаи жизни не набирая "веса" и не теряя уровня. |
|||
|
||||
| Fatkh |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 5.9.2009 Репутация: нет Всего: 1 |
Это умный пост? По частям: 1. Я нигде не говорил про плюс-минус пару сотен функций. Если у вас так - вы не умеете проектировать. 2. Чем не нравится double? (для бызовых типов, как я и писал) 3. Где??? Где пару гигов? Где вы такое видели? За всю жизнь видел только одного такого монстра, и написанного как раз на плюсах. К слову. По поводу будущего С++. Не забывайте про Games development. Это самая жирная часть рынка. Не надо объяснять, почему там С# рулит? (Для непонимающих объясню: Microsoft + development time + портируемость на консоли = С#) Это сообщение отредактировал(а) Fatkh - 20.9.2009, 12:45 |
|||
|
||||
![]()
|
| Правила ведения Религиозных войн | |
|
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Религиозные войны | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |