|
Модераторы: LSD |
|
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Сорри если не туда запостил топик
Вобщем мне жутко интересно, чем лучше C++ того же паскаля? Думаю всем здесь известно, что настоящий программист составляет и реализует свои алгоритмы, и в зависимости от специфики задачи выбирает удобную в плане реализации среду программирования. Конечно, существует такой сильный фактор, как "к чему в детстве приучили". Я например начинал с паскаля и сейчас отдаю ему предпочтение (читай Delphi). Кто то начинал с Си и сейчас например предпочитает Билдер Дельфям. А ктооо тооо (тут полагается сделать зловещую паузу ) учил в детстве бэйсик.... Так вот. Вопрос заключается в следущем: ЧЕМ кардинально отличается С++ от паскаля? Конкретные примеры есть? |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Это в религиозные войны. Кстати, к примеру, я жутко не люблю С++, так что слово "все" лишнее...
-------------------- |
|||
|
||||
Void |
|
||||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Во-первых, как правильно заметил Domestic Cat, этот провокационный вопрос надо в Религиозные войны
В принципе, это так. Но, во-первых, число языков, которые можно знать на высоком профессиональном уровне, довольно ограничено. Во-вторых, большую, подчас решающую роль играет наличие поддержки этой среды для данной платформы, готовых библиотек, квалификация остальных разработчиков в команде... Все не так просто.
Ну я учил К счастью, прогноз Дейкстры не оправдался Я полностью излечился
Отличий масса... На мой взгляд, наиболее существенное отличие языка - наличие шаблонов и автоматических объектов. Именно из этого проистекают наиболее важные на мой взгляд практические различия. Ну и некоторый синтаксический сахар в виде перегрузки операторов. Это из преимуществ. А из недостатков (опять же на языковом уровне) - отсутствие модульности. Кстати, "все" его действительно не любят. Сейчас, пожалуй, даже больше тех, кто его не любит. Правда, C++ они чаще противопоставляют Java и .NET, а не Паскаль/Delphi. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||
|
|||||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Со словом "все" я действительно поторопился. Я хотел сказать, что большинство программистов (особенно продвинутых) восхваляют Си.
По поводу шаблонов и перегрузки операторов: действительно это делает Си более мощным языком, но мне например кажется, что эти "вкусности" мало испоьзуются и являются экзотикой (хотя это конечно же ИМХО) А вообще мне лично Си ненравится из-за его "закорючности" в синтаксисе: фигурные скобки, амперсенты, звездочки... =) Вобщем если сравнивать с тем же паскалем (хотя он создавался как учебный язык программирования для студентов), то у первого код намного читабельнее чем у Си. PS я не против переноса темы в "Религиозные войны" |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Не путай Си и С++ - в С нет шаблонов и это вообще чисто процедурный язык.
-------------------- |
|||
|
||||
Mayk |
|
||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Паскаль vs C? Усё. Счас начнется(а кончится всё фразой, что каждой задаче - свои инструменты).
В паскале нет шаблонов. Это раз. В паскале нет циклов. Это два(for i := 10 downto 0 это не цикл, while(*i++=*j++) - вот пример цикла. for(iter i = collection->begin(); i->value != desired_value && i != collection->end(); ++i) - вот пример цикла) В паскале очень длинный, запутанный, я б даже сказал, дурацкий синтаксис. Это три(integer вместо int, begin вместо { и end вместо }, then вместо <тут пусто>). В паскале указатели просто смешны. Мне НУЖЕН указатель на статическую переменную. Я НЕ хочу вызывать операции по удалению объектов в ручную. Я НЕ хочу обращаться к тормознутому менеджеру памяти(выделение в стеке гораздо быстре). И если компилятор имеет на этот счёт иное мнение, то я имею топку в которую полетит шибко умный компилятор. Это четыре. И это приговор. В паскале нет препроцессора. Это пять(кстати за это я не люблю яву, с#) В паскале очень тупые ветвления(then, наличие ';', отсутствие ';') это пять с копейками В паскале нет оператара присваивания. Это шесть с копейками(a:=b это операция присваивания. a=b=c=d=e=f=g=someFunction(h) - вот это оператор присваивания в своей красе). В паскале синтаксис очень похож на basic'овский. Это шесть с копейками. С ОЧЕНЬ ВЕСОМЫМИ копейками В паскале очень тупая библиотека. На си создания дубликата участка памяти я запишу в одно выражение memcpy(malloc(len),src,len); В паскале getmem НЕ возвращает значение. А устанавливает переданный ей pointer. В си есть циклы, операторы присваивания, препроцессор, stdlib функции которой возвращают то что им положено возвращать. В си++ есть классы. Паскалевскому stringу в пору бится в конвульсиях. Кстати, сколько операционных систем написано на паскале?
Ну, например, я. Это был единственный нормальный ЯВУ на ZX спеки 48кб. Все остальные не могли быть нормальными, так как им негде было размещать свое толстое тело. Бейсик был просто вшит. ЗЫ. МОДЕРАТОРЫ, перенесите тему в религиозные войны. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||
|
|||||
Void |
|
||||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Я сейчас буду занудой... Не Си, а C++. Это разные языки. Без шаблонов современный C++ невозможен в принципе. На шаблонах держится практически вся стандартная библиотека C++. Без перегрузки операторов невозможно прозрачно сэмулировать числовые, векторные и матричные типы, умные указатели.
Синтаксис - исключительно дело вкуса. Когда вы найдете у языка существенные практические преимущества, вы быстро забудете про эстетические качества синтаксиса
Для новичка - да. А для опытного программиста поддержка кода на них одинакова по сложности, имхо. P.S. Как и многим здесь присутствующим, мне наперед известны почти все аргументы и контраргументы, которые сейчас пойдут в дело. И все-таки мне почему-то еще интересны язковые войны Это сообщение отредактировал(а) Void - 11.7.2005, 21:02 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||
|
|||||||
Earnest |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: нет Всего: 183 |
Mayk, полностью поддерживаю!
И еще добавлю: шаблоны С++ сделали возможным реализацию концепций обобщенного программирования. Да, в С++ нет объектов типа "метакласс", порождающих классы. Но с помощью шаблонов это прекрасно эмулируется - достаточно почитать Александреску или посмотреть в boost. Причем, все это (в отличие от супер-высокоуровневых языков типа Smalltalk) абсолютно бесплатно (в смысле производительности)! Потому что все навороты кода беследно исчезают в момент компиляции. Таким образом, ИМХО, наиболее мощное свойсво С++, отличающее его от всех существующих языков программирования, это то, что он позволяет писать очень высокоуровневые и выразительные программы, и при этом получать очень производительный код. -------------------- ... |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Но лучше всего Java
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Mayk
Сдаюсь! Вы просто разбомбили меня аргументами Теперь я кажется получил довольно полный ответ на мой вопрос. PS Говоря "Си" я подразумевал С++ PSS Ну на самом деле я "войны" не хотел, а просто удовлетворил свой интерес Хеппи энд |
|||
|
||||
chipset |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Эй, эй! Ну я люблю C++
А почему? А патамушта и свобода и удобно программировать! Хочешь, на чисто Сишных функциях дрова кодь, а не хочешь, с GC и мета-программированием высокоуровневую хрень программируй. Если стоит выбор .NET или C++, тут и думать не надо, C++ конечно. Ни под .NET ни под Java нету такого хорошего ассортимента, к примеру GUI либ.. Я думаю все фичи Джавы уже давно реализованы в виде многочисленных бустов, и прочего барахла, а в Джава нету тех фич которые есть C++, и не будет, ибо это ограниченный язык, не универсальный, и сравнивать их нехорошо. Джаву я признаю только в веб-программировании. PS. c.l.c++.moderated: Why do you program on C++? --------------------
|
|||
|
||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Ну ладно. Тогда задам такой дурацкий вопрос: что можно сделать на С++, чего нельзя сделать на дельфи? Я про конкретную задачу, а не про внутреннее описание всяких там шаблонов и перегрузку оперторов.
|
|||
|
||||
Ch0bits |
|
|||
Python Dev. Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 1 Всего: 62 |
А чё на Delphi можно OSь написать?
Это сообщение отредактировал(а) Vadim999 - 12.7.2005, 00:14 |
|||
|
||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Vadim999
1) Я конечно не компетентен в этом вопросе (программирование осей), но почему нет? 2) Допустим нельзя написать ось на дельфи (в чем я сомневаюсь). Но разве это ОГРОМНЫЙ МИНУС Ведь оси пишутся не каждым вторым программистом. Абсолютное большинство программистов пишут программы под оси, а не оси. (Хотя я могу узко понимать этот вопрос, ведь оси пишутся не только под ПиСи, но и под всякие мобилы...). С осями разобрались. Что еще нельзя на дельфи? |
|||
|
||||
Kurt |
|
|||
Увлеченный Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: нет Всего: 36 |
Писать под не-Windows системы. Kylix не в счет - он тока под *.nix и уже не развивается. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
Alex |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4147 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 162 |
Если брать прикладные задачи, то разницы на чем их реализовывать на С++ или Delphi нет ни какой
-------------------- Написать можно все - главное четко представлять, что ты хочешь получить в конце. |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Добавлено @ 01:13 Дельфи поносить не будем, потому что на ней тоже написано много хороших программ: Total Commander, мой любимый PHP Expert Editor и даже Dev CPP . Это сообщение отредактировал(а) Perchilla - 12.7.2005, 01:14 |
|||
|
||||
vadims |
|
|||
Опытный Профиль Группа: Участник Сообщений: 305 Регистрация: 8.6.2005 Репутация: нет Всего: 17 |
ИМХО: Вопрос абсолютно некорректен
Все разговоры на тему предпочтения тех или иных языков могут звучать только так - "есть задача ... на каком языке оптимальнее ее решать ?" И не забывать большое значение при выборе имеет личный опыт и субъективные конкретного программиста Иначе это аналогично - "Что лучше москвич или жигули, что лучше витамин А или витамин C ?" или "Почему ты любишь именно свою маму ?" Это сообщение отредактировал(а) vadims - 12.7.2005, 02:23 -------------------- Cpu not found ! Press any key for software emulation. |
|||
|
||||
Domestic Cat |
|
||||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Да ладно, generics в Java и .NET реализованы лучше и дают больше возможностей.
Чипсет, а я С++ вообще не признаю, он постепенно уйдет на третий план, в системное программирование и в игры (где я его и признаю). Потом, мы ж не в ресторане, чтобы смотреть ассортимент. Ну много С++ библиотек. Ну и Java библиотек немало. В Java пользуют в основном несколько гуи библиотек, и в С++ то же самое.
Вот именно... -------------------- |
||||||
|
|||||||
Void |
|
||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Не передергивайте Это настолько разные вещи, что сравнивать их так некорректно. У дженериков есть констрейнты, и они не убивают модульность, но на них невозможно метапрограммирование. (А констрейнты (aka concepts) будут в C++09... надеюсь )
А также в платформы, где кроме C/C++ ничего нет и не предвидится. Тут я согласен. Чем больше прикладного софта будет написано на управляемых средах, тем лучше и для программистов, и для юзеров. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Почему? -------------------- |
|||
|
||||
vladgri |
|
||||
Unregistered |
Вообще то не корректно сравнивать Delphi c C++ (общим названием) быстрее
уж Delphi vs MSVC++ и (или) ObjectPascal vs C++ (Pascal vs C).
Есть FreePascal.
На Pascale. FreePascal TORO Kernel DELPHINEOS NUCLEOS Turbo Pascal PERIXOS ERASMOS Больше аргументов против Delphi, в теме я не заметил. Кроме как (begin end плохо {} foreva ) |
||||
|
|||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Та-ак, что ты мы опять скатываемся в C++ vs Java, а про автора темы забыли
TP@MB@Y Практически все, что можно сделать в C++, можно сделать в Delphi, и наоборот. Вопрос лишь в том, в какой геморрой это выльется Вот вам пара примеров: Как уже говорилось, в Delphi нет шаблонов и автоматических объектов. Из этого следует, что на Delphi принципиально невозможно создать умный указатель. А вручную освобождать память при создании сложного графа объектов (напимер, узлы AST в трансляторе) - это... В таких ситуациях лучше всего подходит GC, но Delphi до переезда на .NET не имела ни GC, ни вообще каких либо возможностей автоматизировать управление памятью. Наглядная демонстрация возможностей C++ - это STL (про Boost я пока молчу ). Познакомьтесь с ней поближе. То что у Delphi нет, не было и не предвидится адекватного ответа STL, для меня - главный минус языка. Минус настолько серьезный, что, имхо, Паскаль идет лесом даже в признанной своей вотчине - олимпиадах. C++ - это своеобразный констуктор "сделай все сам". Шаблоны (+ иногда препроцессор) позволяют вводить в язык сущности, которые он изначально не поддерживает, причем с высокой эффективностью в рантайме (но, увы, как правило, ценой времени компиляции). Конечно, с LISP C++ в этой области не тягатся, но большинство мейнстримных языков (и Delphi в том числе) вообще не обладают такими способностями. Пример - создание анонимных функций (лямбда-функций). С помощью STL и библиотеки Boost.Lambda мы можем написать так:
Эта строчка вставит элементы из контейнера in в конец контейнера out, прибавив к каждому из них x. Этот пример также демонстрирует использование замыкания (closure) - ведь x берется из контекста вызова. Можно такое сделать в Delphi? Сомневаюсь -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
vladgri |
|
|||
Unregistered |
Пример автоматических объектов на Delphi. Auto_object |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Пардон, не сразу заметил пост... Параметром дженерика может быть только тип. Дженерики нельзя явно специализировать, нет и частичной специализации. Параметр дженерика сам не может быть дженериком (т.е. нельзя написать class<T<U>, V>). Невозможен SFINAE (substitution failure is not an error). vladgri Ах да... читал ведь ту ветку, мог бы вспомнить... Зачет Но аргументы WolfHound остаются в силе Предложение всем: давайте отходить от отрицательной аргументации: ваш XXX так не может, а вот YYY... Особенно когда имеете о XXX поверхностное представление. Вот например я только что с автоматическими объектами в Delphi лажанулся Лучше так: XXX может так, и это полезно потому что [...]. А что вы в таких случаях делаете с YYY? Это сообщение отредактировал(а) Void - 12.7.2005, 10:15 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
vladgri |
|
||||
Unregistered |
Единственный аргумент это отсутствие типизации.
Ни в одном форуме отрицательно не высказывался ни о каком языке програмирования. Мне кажется все они имеют право на существование. Если какой либо из ЯП, помог реализовать свои мысли хотябы одному програмисту, то это хороший ЯП. To Void Попытки реализации STL в Delphi есть. 1. DSL DSL 2. DeCAL Decal Home С.Гурин о Decal |
||||
|
|||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
|
|||
|
||||
vladgri |
|
||||
Unregistered |
To Perchilla
Small
|
||||
|
|||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
vladgri во во .
Вон в последних дельфях и прегрузка операций появилась и шаблоны можно организовать. |
|||
|
||||
Ch0bits |
|
|||
Python Dev. Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 1 Всего: 62 |
Ооо!!! Как ШЫ++ хвалят! Щас ВСЁ брошу и кинусь ставить старую недобрую VS6 и давай кодить троянов как в старые недобрые времена.
C# на помойку! |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Vadim999 ты ето... рекламу в подписи то подправь .
|
|||
|
||||
Се ля ви |
|
|||
Java/SOAрхитектор Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 8 Всего: 127 |
у меня он после Си++ вызывает ассоциацию такую - он просто деревянный. Видели какую-нибудь деревянную избу? Вот если её сравнить со зданием эры Hi-Tech, то это и будет похоже на сравнение С++ и Object Pascal . Не, это кароче не серьёзно. Кроме того, не забываем, что Дельфи как самостоятельный проект позорно слили, подложив его под dotNET в последней версии - Паскаль, годный для сердцевины Enterprise-приложений, теперь существует лишь как диалект MSIL`а, более привычный для приверженцев Дельфи и на этом поле у меня боооольшие сомнения, что он долго выдержит конкуренцию с C#`м и не скатится на уровень Visual Basic`а... А вообще-то, если рассматривать классические Паскаль и Си, то Си - вообще считается языком среднего, а не высокого уровня - и именно в этом его уникальность. Т.е. он более низкоуровневый, чем Паскаль. Если не прибегать к ассемблерным вставкам, а использовать чистые возможности языка, то на Си можно работать с аппаратурой на гораздо более низком уровне - насколько я знаю, на нём даже драйвера без применения асма иногда пишут. Да и код в итоге получается компактнее и екзешник аналогичный меньше ресурсов ест - т.е. гораздо более широкие возможности оптимизации. -------------------- |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Се ля ви щас тебе покажут какой - нибудь DDK для дельфи Споры бесспыслены . |
|||
|
||||
Void |
|
||||||||||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Немаловажный, однако. Хотя, конечно, это гораздо лучше, чем ничего.
Это совсем не к вам относилось Вам наоборот большое спасибо за интересные ссылки.
Интересно... Не имею возможности плотно с ними познакомится, но складывается впечатление, что авторы действительно выжали из языка что могли
А что, есть такие?
В смысле, дженерики?
Отнюдь, в них хоть и не рождается истина, но зато пробуждается любознательность. Если в итоге хоть один человек повнимательнее присмотрится к C++ или какому-нибудь другому языку - флеймили не зря -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||||||||
|
|||||||||||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
|
|||
|
||||
rsm |
|
|||
Опытный Профиль Группа: Участник Клуба Сообщений: 999 Регистрация: 16.3.2005 Репутация: 7 Всего: 62 |
Я присматриваюсь Лично для меня счет пока что не в пользу С++ только из-за отсутствия хорошей графической библиотеки а-ля VCL. Из всех библиотек, которые смотрел (Qt, wxWidgets, WTL, MFC, Fox, ATL и еще несколько мелких), больше всего понравились Qt и wxWidgets. Однако Qt поставляется по строгой лицензии (шаровары с ней не попишешь), а у wxWidgets нет хорошего бесплатного (!) редактора форм. Сейчас качаю VCF, посмотрим, ху из зыс... Давайте будем спорить о графических либах для С++ - глядишь что-нить реально хорошее отыщется, польза будет! З.Ы. О бесплатности и возможности писать коммерческий софт: очень важно, чтобы библиотека была бесплатная (ну нету у меня пары килобаксов на Qt! ), с хорошим редактором форм и, конечно, содержала побольше готовых классов и графических контролов. Примечание о VCL: насколько мне помнится, лицензия на пробную версию Дельфи разрешает писать шароварный софт. Так что можно условно считать VCL бесплатной - раз в месяц переустановить Дельфи это не проблема. |
|||
|
||||
vladgri |
|
|||
Unregistered |
To rsm
Посмотри wxFormBuilder и (мне больше нравиться) wxWindows Dialog Designer: |
|||
|
||||
Void |
|
||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Вообще, сам факт, что какая-то фича вводится в язык отдельным препроцессором, меня совершенно не коробит. Я бы с удовольствием признал наличие в такой custom Delphi шаблонов, если бы не одна проблема - диагностика ошибок в шаблонном коде. Она достаточно хреновая и в нынешних плюсах, а тут не будет вообще никакой. А значит практическая ценность подобных наворотов - околонулевая. Сделать же нормальную диагностику, не интегрировавшись с компилятором - нереально.
А законна ли такая переустановка сама по себе? Вообще, сколько я знаю, цены на Professional и Enterprise версии Delphi и Builder просто запредельные - не дешевле той же Qt. А Personal имеет серьезные ограничения на коммерческое использование. В то же время VS Express раздают бесплатно, и без лицезионных ограничений... А GUI для C++ - действительно больной вопрос... Я не испытывал в такой библиотеке очень уж острой необходимости, но пока все что я видел не очень впечатляет. (Qt еще не пробовал. Сейчас докачиваю Qt4 opensource edition, но без VS я вряд ли проживу. Наверное, придется забить и доставать ломаную коммерческую версию ). -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
vladgri |
|
|||
Unregistered |
Цитата (Void @ 13.7.2005, 12:21)
Ну почему же так жестко ? Отладка шаблона производится на тестовом примере, причем в Pascal большинство ошибок (в основном синтаксических) определяется на этапе компиляции. К примеру при испытании Delphi language Preprocessor`а я написал и оладил темплейт Auto_Object с типизацией за 10 минут. |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Я программировал сначала на QБейсике, потом на С++ и после него перещел на pascal
и Delphi. На мой взгляд нельзя говорить о том, что Delphi не идет ни в какое сравнение с С++. Проблема заключается в том, что в C++ реализовано намного больше возможностей для программирования. При этом С++ обладает очень запутанным синтаксисом и логикой программирования. Изучать его очень долго и трудно, а для начинающих написание приложений в нем превращается в настоящее мучение: указатели на указаеть указателем погоняет. Непонятные ошибки непонятно откудо появляеются. Delphi же обладает более понятным интерфейсом и упрощенной алгоритмической логикой. При этом он конечно очень проигрывает по гибкости C++, однако его намного быстрее можно изучить и писать программы быстро и легко. Самый логичный язык - это С++. С точки зрения логики алгоритма это самый лутший язык в своем роде. Читаемость - это сложный вопросс. Ибо если ты в нем программируеш достаточно давно, то после этого читаемость ObjectPascal окажется более запутанной. Но сначало нужно понять Delphi. Я считаю, что термин "ГУРУ" трудно отнести к программисту в Delphi. Даже достигнув совершенства в Delphi, ты всё равно поймеш, что программисты на С++ круче, т.к. они программируют на С++. Итак, Delphi - это язык программирования для программистов, которые хотят создавать прикладные программы не вдаваясь в тонкости архитектуры ОС , компьютера, пердставления данных и компилятора. Они стеснены узкими рамками компилятора. Вот почему многие операционыые сисетмы написаны на С++ (UNIX). Программируя на С++ ты ощущаеш близость к коду и ты подчти ни чем не ограничен. Это как программирование на ассемблере. НО это все можно достигнуть лиш годами практики программирования на С++. Delphi для профессиональных порграммистов, С++ для ГУРУ. Заранее приношу извенения, если когото обидел. Но это моё мнение. Лично я программирую в Delphi 7 и он мне нравится. В С++ я разбирался очень долго и это дело бросил до поры до времени. |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
А вот с этим я не согласен (в пользу Java). -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
TP@MB@Y |
|
||||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Void Хм... Навороченность языка С++ действительно делает его очень мощным. НО Все эти "навороты" тоже программировались, чтобы они были доступны в использовании. Понимаете? И начем же они программировались? А это уже не важно, потому как точно не на С++ (так как С++ - это и есть эти навороты). И вы хотите сказать что все эти "умные" операторы и функции нельзя реализовать на другом языке? Звучит глупо. Вот например для меня разобраться в чужом коде на асемблере намного сложнее, чем написать эту программу самому (попутно изучив проблемы поставленой задачи и ее реализации). Тоже самое с "умными" операторами С++: если мне понадобиться в реализации моей задачи что-то похожее, то проще будет написать самому, чем искать в хелпах и разбираться и подгонять под уже существующую "сущность". |
||||
|
|||||
Void |
|
||||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Что ж, очень рад Но ведь есть еще ошибки неправильного использования шаблона. Обращаясь к той же STL - допустим, передали мы в std::sort bidirectional iterator вместо random-access. В нынешнем C++ (без констрейнтов) мы получим несколько маловнятных сообщений, но они в конце-концов приведут нас к источнику ошибки - точке инстанциирования шаблона. Что будет делать препроцессор? И есть еще одна проблема - надо убедить дельфистов, что шаблоны им нужны TP@MB@Y
Во-первых, показанные здесь "навороты" реализуются библиотеками, написанными на чистом C++. C++ сам по себе, как язык - ничего этого не дает. Я хочу лишь сказать что шаблоны вместе с перегрузкой операторов позволяют сделать код более высокоуровневым, и понятным, повысить повторное использование кода, повысить его надежность.
Возможно, вы так и поступите. Но для меня и миллионов других C++-программистов легче будет воспользоваться именно хорошо известными и широко распространенными библиотеками (Boost), и конечно же стандартной библиотекой (которая сейчас имеет тенденцию к серьезному расширению). К тому же в Delphi вы, надо полагать, не задумываясь пользуетесь теми сотнями компонентов, которые входят в стандартную поставку, пользуетесь справкой - так почему же вы не признаете code reuse в C++? Синтаксис вам кажется "заумным" - но это лишь от непривычки. Нет, у всего есть предел, в C++ тоже можно наворотить чудовищные и малопонятные конструкции там где можно обойтись локальным велосипедом. Но, поверьте, приведенный код к этому случаю не относится -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||
|
|||||||
rsm |
|
||||||||
Опытный Профиль Группа: Участник Клуба Сообщений: 999 Регистрация: 16.3.2005 Репутация: 7 Всего: 62 |
Первая программа весьма интересная, посмотрю ее подробнее. А вторую уже видел - сплошное глюкалово
А кто докажет, что я ставлю Дельфи второй раз?
Это который VC++ 2003 Toolkit? Или что-то другое? Если другое, напиши пожалуйста УРЛ. Добавлено позже Ага, кажись сам нашел. 500 Мб... Мне это никогда не скачать Будем юзать VC++ 2003 Toolkit.
Мда, вот так всегда - столь мощный язык и так незаслуженно пролетает аки фанера над Парижем Это сообщение отредактировал(а) rsm - 13.7.2005, 20:43 |
||||||||
|
|||||||||
Void |
|
||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Это потому что туда впихнули невпихуемое: MSDN Express и еще что-то... Народ раздобыл нормальные ссылки: VC++ (65 Мб). При установке будет немножко ругаться, но работать будет, вроде лечится распаковкой бутстрапера того же VC++ в каталог установки. Вот обсуждение.
Что ничуть не мешает создавать на C++ самые навороченные GUI -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Void
Ну я все понимаю, просто раздражает то, что некоторые работадатели ставят задачу + ставят жесткое условие касательно языка программирования |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Насчет читабельности кода С. Можети сходу сказать, что делает эта программа? У меня она какимто загадочным образом выводила куплеты
с текстом. #include <stdio.h> main (int t, int _,char *a){return!0<t?t<3?main(-79,-13,a+main(-87,1-_, main(-86,0,a+1)+a)): 1,t<_ ? main(t+1,_,a):3,main(-94,-27+t,a)&&t==2\ ?_<13?main(2,_+1,"%s %d %d\n"):9:16:t<0?t<-72? main(_,t,"@n'+,#'/*s{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/n\ {n+,/+#n+,/# ;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!\ /+k#;q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!\ /n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw' iwk{KK{nl]!/\ w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}\ #nc,',#nw]'/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/") :t<-50?_==*a?putchar(31[a]): main(-65,_,a+1): main((*a=='/')+t,_,a+1): 0<t?main(2,2,"%s") :*a=='/'||main(0,main(-61,*a, "!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-0;m .vpbks,fxntdCeghiry" ),a+1); } |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Вообще-то нечто подобное можно на любом языке написать
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Мне ближе мнение CosmoMan.
Кроме того, хочу добавить от себя. Сам достаточно давно программировал и на pascal'е и на C. Но, всегда в C были проблемы с читабельностью. Например. мне подслеповатому всегда было легко перепутать { и [ на некоторых мониторах (давно это было). Семантическая нагрузка на отдельные символы в C СУЩЕСТВЕННО выше, и в случае элементарных описок, легко получить синтаксически правильную, но неправильную семантически конструкцию. И вылавливать такие ошибкипотом не так легко. Более того, если на C не программировал месяца два, три, то потом, неделю как минимум глаза и мозги настраиваешь. А уж то что на C можно так код написать, что даже твой напарник без поллитра не разберется! Так, постепенно, мои интересы перемещались в область Pascal. С тех пор много воды утекло. Теперь я пишу практически только на Delphi. Хотя, как мне кажется, у меня не вызывает трудностей чтение не слишком замороченных кодов даже на C++. Холтя конечно напрягает . В принципе, все что я сказал о C, еще в большей степени относится и к C++. Что же касается возможностей этих языков, то тут я даже спорить не хочу. Скажу лишь что Windows рождалась на Pascal'е. А из своего опыта, могу сказать, что еще в бытность ПЯ, лично принимал непосредственное участие в разработке сетевой операционной системы для встроенных систем, управляющих целым комплексом боевого оборудования. Так вот в этом комплексе, только BIOS компов был написан на ассемблере. Остальное, начиная от ядра ОС и до прикладнгого ПО писалось на pascal'e, правда несколько расширенном (OMSI Pascal). Добавлено @ 23:29 Впротчем, я бы не отказался кое что позаимствовать из C++ в Delphi -------------------- Все знать невозможно, но хочется |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Полностью согласен, множественное наследлвание например. По моему С++ надо много взять из Делфи, чтобы стать более удобным. |
|||
|
||||
Петрович |
|
||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
А мне кажется что использование интерфейсов даже удобнее. Мне лично прежде всего не хватает того, что бы выражение присваивания имело значение. Просто надоело писать подобное:
Ну еще хотелось-бы что бы в блоке begin end можно было бы объявлять локальные переменные. Это в основном... -------------------- Все знать невозможно, но хочется |
||||
|
|||||
chaos |
|
|||
Серийный программист Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: нет Всего: 44 |
не много не в тему)) ну все же
меня допустим воротит от редактора текстов от Borland(Delphi, CBuilder v5,6) по сравнению VC++6.0 может быть я не умею ими пользоваться, не нашел табулирования выделенного блока текста, перевод из верхнего регистра и обратно все с тем же выделенным блоком текста, различные переходы к бегинам ендам, закладки не по русски как-то ставятся(через контектное меню) |
|||
|
||||
Alex |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4147 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 162 |
-------------------- Написать можно все - главное четко представлять, что ты хочешь получить в конце. |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Вы не знаете, чем друг от друга отличаются компиляторы в
Borland C++ Builder 6, Microsoft Visual C++ и GCC. Там библиотеки чемто оличаются? |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Что-то я совсем рассеянный стал - второй пост уже в этой теме мимо глаз пропустил... А конкретные причины можно? Я вот кроме наличия GC, избавляющего от написания деструкторов, delete, etc ничего не вижу. Мне кажется, что функциональный язык вроде OCaml или Haskell по краткости и логике записи алгоритмов порвет на тряпки и плюсы и яву. А OCaml скорее всего еще попутно порвет Java по скорости. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
А по скорости разработки ПО, поддержке и читаемости кода? -------------------- |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Напомню, речь шла исключительно об алгоритмике. Конечно, писать на них бизнес-приложения было бы довольно странно, но, думаю, в определенных областях они могут конкурировать с Java по всем трем параметрам (научное, математическое ПО, например). На Винграде нужен апологет функциональных языков У C++ такие есть, у Java есть, с .NET как-то не очень... А вот у всего остального - нет! (Или они просто помалкивают? ) От человека, активно пропагандирующего какую-то концепцию, язык, технологию, есть реальная польза в расширении кругозора, при условии что он не просто фанатствует, а приводит реальные доводы, ссылки, статьи - даже если в целом его выводы по поводу XXX не совсем адекватны. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Возьмешься? -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Lamer George
Не знаю Вот сейчас с OCaml потихоньку разбираюсь. Пока нравится. Что из этого выйдет - посмотрим. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
Се ля ви |
|
|||
Java/SOAрхитектор Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 8 Всего: 127 |
Smalltalk и то не смог пробиться в копоративную среду, хотя уж на что хороший язык! Сейчас Python пытается, но шансов не много, хотя язык сам по себе замечательный. Мне кажется, ты не понимаешь, что тормоза, даже если они и есть, могут легко ликвидироваться наращиванием аппаратной части - как чаще всего и делается, и на первый план выходит скорость разработки ПО, требующая библиотек на все случаи жизни - было бы не так - все бы на ассемблере до сих пор писали идеальные быстроработающие алгоритмы. Просто посчитай стоимость компьютерного железа и почасовую оплату опытного программиста - и поймёшь, что гораздо выгоднее купить больше памяти и лучше процессор, чем мучиться с самостоятельным написанием кучи библиотек, необходимых для написания Информационных Систем. Именно по-этому рулят платформы, а не языки. И именно по-этому существуют только 2 настоящих конкурента на корпоративном рынке - .NET, в библиотеки которой вливает тонны денег Microsoft, и J2EE, поддерживаемая не только SUN, но и созданным ей большим сообществом из сотен других крупных компаний, а сейчас ещё и OpenSource`никами. Это тяжёлая ломка, когда понимаешь, что на самом деле оптимальный, вылизанный код нужен только тебе одному и больше никому, но через это рано или поздно пройти придётся. Дело, канешь, твоё - можешь тратить время в пустую, но подумай вот о чём - человек, с точки зрения животных - слаб, медлителен и неэффективен - а между тем доминирует на Земле, да как доминирует! Иные гораздо более эффективные, чем он, по животным меркам, - в красной книге или уже вообще истреблены только потому, что многим его представителям нравится шкура с их трупов. Так же и с языками - эпоха языков прошла, теперь время платформ. Уже не важно, какой ты хороший язык - важно, что бы он позволял использовать всю мощь платформы, был массовым и простым. Дольше, независимее свех держался Delphi, но, как платформа, не выстоял и он - прибился к .NET`у. Python поступил хитрее, его разработчики написали компиляторы для обеих популярных платформ. Сейчас ситуация напоминает холодную войну, гонку вооружений (библиотек) и прочее между двумя самыми популярными платформами - J2EE и .NET, всё остальное - практически не востребовано, приложения на других языках напоминают экзотических зверушек в зоопарке, заповеднике или на воле, куда ещё не добрался человек и они доживают свой век на всё время немилосердно сокращающейся территории... Особнячком стоит гигант С++, бывший некогда практически безраздельный правитель, последний оплот оптимального кода без GC, прочно занимая нишу приложений, где высокая производительность и надёжность критична. Последний, совершеннейший в своём роде динозавр... Да, он был крут, силён и могуч, и он уходит вместе со своей эпохой. Да, он рулил безраздельно на корпоративной арене, но время неминуемо утекает - на нём уже пишутся фундаментальные, универсальные вещи, которые так и норовят закрыться, ошетиневшись внешними интерфейсами, что бы лечь в основу платформ-гигантов, превращая своих программистов в подобие сантехников, приходящих только если поломалось что-то из того, что они написали... Постепенно, хотя и очень медленно, он выдавится и из этих областей платформами-гигантами. Пока виртуальные машины представляют собой нашлёпки над операционными системами - он ещё может давать какой-то выигрыш производительности и надёжности за счёт отсутствия GC, но когда они устоятся, станут по-надёжнее и их реализуют на уровне операционных систем - его позиции сильно пошатнутся даже там, где он царствовал безраздельно с незапамятных времён, в самом сердце крушащейся империи... Когда же виртуальные машины будут частично или полностью реализованы аппаратно, С++ сдаст последние оплоты и окончательно уйдёт в историю, останется лишь партизанить там, где нет больших денег и гиганты просто побрезгуют туда из-за этого лезть с ним биться - в болотах программирования... .NET уже взяла курс на перетягивание бывших С++`ников к себе и, похоже, немного обгоняет в этом Java - именно по-этому в C# хуже чем в Java реализован механизм отлова исключений - лозунг здесь "можем немного пожертвовать удобством языка, только бы по-больше разработчиков переманить" - опять же, заметь, они жертвуют языком, а вместе с тем и платформой, т.е. где-то и возможностями исключительно ради переманивания разработчиков - т.е. вопрос стоит прямо противоположно тому, как его ставишь ты - теперь не язык должен быть хорошим, а языком можно пожертвовать где-то, что бы людям было удобнее переходить, меньше приходилось переучиваться - вот она, другая эпоха! Маркетинг наступает и бъёт чистую алгоритмию. Именно этим я объясняю, помимо обширной рекламной компании, немного большее количество .NET`чиков по сравнению с Java`истами. Вобщем, любить можно какие угодно языки, но давайте думать реалистичнее - что нужно рынку, а что нет. Какие специалисты понадобятся в перспективе, а какие - со времянем не будут нужны никому?... Я вот, лично, хотел бы быть среди первых Это сообщение отредактировал(а) Се ля ви - 20.7.2005, 16:37 -------------------- |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Се ля ви
Хороший пост. Но ты меня неправильно понял - мои взгляды ни в чем радикально не отличаются от вышеизложенных. Дело в том, что многим людям хочется считать любимый язык, будь то Java, C++ или C#, лучшим во всем - в том числе и в таких абстрактных категориях, как читаемость, эффективность, лаконичность. А я указываю на то, что это не так, и что мейнстрим - мейнстримом, а объективность - объективностью. Кстати, быстродействие вовсе не было ключевым моментом моего поста. Наоборот. Погоня за байтами и тактами мне давно не интересна (хотя в индустрии были, есть и останутся области, где вычислительных мощностей не хватает всегда). Мне нет существенной разницы, во что там компилируется язык - нативные коды, MSIL или байткод Java. Речь идет преимуществах декларативного подхода над императивным, там где его оказывается возможным применять - это преимущество внеплатформенно. И если завтра тот же OCaml переедет на .NET (собственно, это уже сделано - см. F#) - суть от этого не поменяется.
Правила наследования в C# ничем не отличаются от таковых в Java. Просто синтаксис наследования класса и реализации интерфейса одинаковый: class Foo : Bar, IBaz вместо class Foo extends Bar implements IBaz. Учите матчасть, товарищи -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
simanyay |
|
||||||||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Не понял причём тут синтаксис. Множественного наследования в C# нет, потому следующий код не скомпилируется
Также как не скомпилируется и этот код
Причём тут синтаксис?
Никогда не понимал этой фразы. Объясните кто-нибудь, пожалуйста. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
||||||||
|
|||||||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: нет Всего: 53 |
учите математическую часть |
|||
|
||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
- бред автора вызванный невнимательностью и чтением по диагонали -
Это сообщение отредактировал(а) Mayk - 16.7.2005, 21:20 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Материальную Добавлено @ 21:07 Mayk Ничего не понял в твоем коде. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Mayk, я привёл пример и написал, что он не скомпилируется. В этом примере я попытался использовать множественное наследование классов. Раз я написал, что он не скомпилируется, следовательно в Java нет множественного наследования классов. Вот.
А что за материальная часть? -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
simanyay
Упс. Извеняюсь, тормозим-с, читаем через строчки. Всё, иду спать. Всё равно не вменяем. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Это выражение употребляют в армии и подобных структурах. "Материальная часть автомата Калашникова". Только не спрашивай у меня, где у него духовная часть. Материальная часть - любое имущество. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Ёптыть, какие корни... -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Это я под влиянием своего текущего поста в ЖЖ.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Синтаксис Java/C# и этимологию слова "матчасть" разобрали?
А по сабжу кто-нибудь выскажется? Мы ж, как никак, в религиозных войнах -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Да что там высказываться-то? Почему все любят С++? Так не люблю я его, вот и не знаю, почему его любят. Воюйте на здоровье. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Да и никто его не любит. Делают вид
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Lamer George
Нет. В религиозных войнах сабж - это то, на чем остновилась дискуссия, которая через 10 постов всегда уезжает от заголовка темы Вот Се ля ви эмоциональное послание написал, я, сам того не желая, попал в роль адвоката ФЯ -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
simanyay Тогда давай дальше про матчасть
Добавлено @ 22:30 Void Ну выходной, блин Не хочу про С++. Это сообщение отредактировал(а) Lamer George - 16.7.2005, 22:30 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Про функциональные и декларативные языки - в отдельный тред пжалста.
А здесь будем считать кто С++ не любит -------------------- |
|||
|
||||
chipset |
|
||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Ты опечатался. --------------------
|
||||
|
|||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Ага, это я тут, бездельник, которому потрепаться охота, тему подымаю Domestic Cat Которая из этих симпатичных рожиц олицетворяет нелюбителей C++ Все, ушел спать -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Я люблю C++ и буду биться до последнего .
И не надо рассказывать байки про аппаратную реализацию "виртуальных" машин. К тому времени, когда это возможно настанет, независимых платформ будет так много, что мы опять придем к еще более ужасному разграничению, уже на аппаратном уровне . Поэтому будет единый машинный код, а пока есть машинный код, C++ рулит, а всякие Жабы с пончиками - донатами курят в сторонке. Это сообщение отредактировал(а) Perchilla - 17.7.2005, 03:11 |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Ну-ну... Чего-то не видно что рулит К тому же достаточно аппаратного ускорения и машинного кода... Да и посмотрим что ты скажешь лет через 5, когда все будут на лонгхорне и НЕТ, а на плюсах под винду будут писать только хоббисты. -------------------- |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Domestic Cat договорились .
Добавлено @ 03:32 Не будем забывать, что у нас еще C++0x на подходе . |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
А микрософт одобрил ? -------------------- |
|||
|
||||
chipset |
|
||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
У МС есть такая штука как C++/CLI. В нём и фичи доната, и С++ не ободран как в mc++ ;) --------------------
|
||||
|
|||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Дык есть то есть, но реклама то на всех сайтах какая? Visual Studio .NET.
-------------------- |
|||
|
||||
Mayk |
|
||||||||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Даа. Рано я вчера спать ушел, столько интересного пропустил.
А что нам микрософт? Они ведь и яву не жалуют.
Я видел несколько IDE и текстовых редакторов. Возьмём vim(это не IDE, но я его неброшупотомучтоонхороший), VS60, Borland Builder, NetBeans, vs2003. По скорости всех рвёт, разумеется, VIM, благо он редактор, а не IDE. На втором месте идут билдер и 6ая вязанка, а вот в самом конце плетутся NetBeans и vs2003. Разве тормоза - рулез? Что есть рулез?
Кстати, а какой процессор появится первым? Ставлю на MIX(ассемблер Кнута). Он наиболее изучен.
Лонгхорну еще выйти надо. А он очень не торопится. К тому же надо прибавить еще лет 10, пока предприятия снесут DOS, 9x, 2k, XP и поставят лонгхорн. Скорее выйдет какая нибудь 3rd party OS, которая порвёт всех на части и загребёт себе половину рынка ОСей.
Ну вот вы, дважисты, и займитесь тем, чтобы изничтожить .NET под корень -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||||||
|
|||||||||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Хочешь удивлю? Visual Studio .NET написана на плюсах А вообще компы надо нормальные брать. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Mayk |
|
||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Странно. Я где-то читал что на .net. Хотя ладно, 6ая вязанка всё-равно быстрее. А вим, который на чистых сях всех вообще рвёт в прах.
Я и так коплю на AMD64 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||
|
|||||
simanyay |
|
||||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Посуди сам. Почти одновременно, с выходом .NET Framework появилась студия. Если студия написана на C#, то не думаю, что первая студия использовала незаконченный фрэймворк. А придерживать продукт, в данном случае .NET Framework, не в стиле Microsoft. VIm конечно классный редактор, но лично мне нужна полноценная IDE.
Ну и где тогда проблема тормозов? У меня на AMD64 3.4+ (1Gb RAM) всё вышеперечисленное летает. Иногда NetBeans притормаживает, но тут виноват медленный винт. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
||||
|
|||||
Mayk |
|
||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Во-всяком случае .net там использован. Док-во, например: ildasm e:\Program Files\Microsoft Visual Studio .NET 2003\Common7\ide\Microsoft.VSDesigner.dll не бьет по рукам
В текущем Celeron'е на 1700Mhz -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||
|
|||||
Kurt |
|
|||
Увлеченный Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: нет Всего: 36 |
VS не на .NET написана?..
Хмм... А кто-нить пробовал удалить из системы Framework, а потом запустить VS? Будет работать? (я серьезно спрашиваю - сам не эксперементировал) -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
А как вы думаете будет работать VS .NET без .NET? Компиляторы, виртуальные машины и прочее ведь во фрэймворке, а среда разработки без всего этого стафа не будет работать.
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Источник http://www.codeproject.com/dotnet/SMRefactorAddinArticle.asp -------------------- |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Mayk
Страшно дивлюсь, где ты увидел тормоза VS 2003 по сравнению с Билдером. 6-й билдер у меня грузится раза в четыре дольше, и в работе тормозит страшно. К VS в плане быстродействия вообще никаких нареканий. (Cel-1400/512 MB - даже не low-end по нынешним временам). А за ее удобство и нормальный компилятор я готов простить и чуть меньшую, чем у VC6, скорость работы. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
У меня 384. Билдер грузится быстрее. Хотя они все тормоза. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
1024. Builder не грузил, но студия грузится максимум за 3 секунды. Eclipse 3.1 - секунд 10 (и то из-за медленного винта, поскольку обновляет базу javadoc'ов)
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Kagor |
|
|||
Debian user Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: 1 Всего: 85 |
512Mb, разницы особо не заметил.
P.S. Правда, после сдачи последний лабы, снес Билдер к едрене фене. -------------------- Disassemble Your life and get the key! |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
У меня Celeron 1999MGg 768 MB RAM
Странно, но Билдер (Думаю имеется в виду Borland C++Builder 6) загружается немного быстрее, чем Borland Delphi 7. А MSVC вообще в 3 раза быстрее. (отредактировано модератором bagira) |
|||
|
||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Не знаю как у билдера. Но у Delphi скорость загрузки ОЧЕНЬ сильно зависит от числа включенных пакетов. Если не включать не нужные в проекте пакеты то крузится очень быстро.
Это сообщение отредактировал(а) Петрович - 19.7.2005, 18:58 -------------------- Все знать невозможно, но хочется |
|||
|
||||
RA |
|
||||
Брутальный буратина Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: нет Всего: 115 |
На этом приимущесва билдера заканчиваются.
Добавлено @ 19:55 Скупайте акции борланда. |
||||
|
|||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
По этому вопросу stron может ситуацию изнутри осветить
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
RA |
|
|||
Брутальный буратина Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: нет Всего: 115 |
Lamer George А он в борланде ?
|
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Это сообщение отредактировал(а) Perchilla - 19.7.2005, 23:10 |
|||
|
||||
CosmoMan |
|
||||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Согласен
Не знал. Обязательно попробую. |
||||
|
|||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Perchilla
Да. В российском. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Sniper |
|
|||
Опытный Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Я СИ тоже НЕ люблю, но по долгу службы приходится писать (VC++ .NET 2002)
не люблю я его в первую очередь из-за идиотского синтаксиса, который после 8 лет Delphi кажется действительно идиотским... также не люблю его за его *.h файлы Каардинально отличается от паскаля СИ тем, что в нем есть шаблоны, которые все хвалят, но ниодна нормальная компания (главное словосочетание здесь ниодна нормальная, а не компания =) их не применяет... ещё есть STL.. но так как в Pascal шаблонов нет, то и STL нет по определению... -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
После таких фраз принято добавлять ИМХО. Потому что это имхо чистой воды. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Sniper |
|
||||
Опытный Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
>>После таких фраз принято добавлять ИМХО. Потому что это имхо чистой воды.
Наверное вы не видели исходников HL2.. а вот я видел (только видел их у меня нет) Но я туту же обратил внимание, что не используется ни boost ни stl, ни ещё чего лишнего... размеется Q1,2,3 были написаны также без применения вышеозначенных библиотек. Так что это никакое не имхо...
Это тоже не имхо, тут бесполезно спорить... факт
ИМХО есть только во здесь.. -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
||||
|
|||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
q1 и 2 не могли использовать stl/boost, так как были написаны на Си без плюсов(исходники ку1-2 можно скачать на ftp.idsoftware.com). Ку3 афаик тоже. В сдк-шке во-всяком случае только сишные файлы. Это сообщение отредактировал(а) Mayk - 20.7.2005, 15:56 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Мне в C++ не нравится то, что необходимо постоянно отслеживать операции с указателями. Для того, чтобы объявить двумерный динамический массив в с++, надо написать:
int ***m = new int **[2]; for(int i=0;i<1;i++) { m[i] = new int *[1]; for(int j=0;j<1;j++) { m[i][j] = new int [1]; } } delete[]m; А вот для любителей С: a=(long ***)calloc(10,sizeof(long **)); for(int i=0;i<10;i++) { a[i]=(long ***)calloc(10,sizeof(long *)); for(int j=0;j<5;j++) { a[i][j]=(long *)calloc(5,sizeof(long )); } } в Object Pascal: var m :array of array of Integer; //мне так больше нравится bagin SetLength(m,10); for i := 1 to 10 do SetLength(m[i],10); SetLength(m,0); //освободили память end;//тут и понимать ни чего не надо Все! А потом работаеш как с обычным массивом! А не с указателями. |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
CosmoMan зато у тебя будет приличная оптимизация, а если не устраивает такой "изврат", юзай контейнеры.
|
|||
|
||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Дык в Delphi такое дает ОЧЕНЬ оптимизированный код. -------------------- Все знать невозможно, но хочется |
|||
|
||||
S.A.P. |
|
||||||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
CosmoMan А я даже и не заметил сразу, вот и верь после этого. А ты зачем в C++ трехмерный массив сделал, когда по условию двумерный требуется? Да еще лишних строк понавтыкал
Ощути разницу. Можно даже так
сколько преимуществ в маленьком примере: 1. Операция следования 2. Объявление и инициализация переменных в програмном блоке 3. Инкрементирование 4. Результат операции присваивания 5. Циклы!!! Хотя мне болше по душе
Это сообщение отредактировал(а) Perchilla - 21.7.2005, 03:48 |
||||||||
|
|||||||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
К вопросу о читабельности кода -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Retro |
|
|||
Диалектик Профиль Группа: Участник Клуба Сообщений: 1934 Регистрация: 28.6.2005 Где: Киев Репутация: 1 Всего: 117 |
А что? |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Да вот туговато как-то воспринимается. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Вот это не будет работать правильно, так как array определен лишь внутри тела цикла, которое весьма тривиально: {} -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Вот видите - уже труднообнаружимые ошибки
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Lamer George Я понял!
Java - это как новая религия! Распространяется при зарождении быстро, причём тут же обрастает толпой воодушевлённых фанатиков, которые пойдут на всё лишь бы перетащить на свою сторону по-больше народу! Не выйдет |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Уже вышло -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Mayk |
|
||||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
И пророк есть:
Ну не знаю. Я может к ним перейду - у них нет десятка библиотек для оконного интерфейса. Только пока не могу понять как в java прочитать строку с клавы. В сях просто: fgets. А в java к.з. Поэтому сижу на сях. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||
|
|||||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Где? Си++шников стало меньше - не спорю. Но ушли-то только те, кто особо ничего и не достиг в Си++. У нас остался надёжный контингент |
|||
|
||||
batigoal |
|
||||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
Если проблема только в этом - переходи
Ну дык косность мышления и все такое -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
||||
|
|||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Mayk ты не системщик, как я понял, - потому уйдёшь без вопросов
Всё, что не касается критичности в скорости и железа скоро на 99% захавают языки вроде Java. Я считаю это и логичным и правильным. А всё остальное... ну на Java драйвера не попишешь контроллеры с Java-машинами есть, но подходят они только там, где не считают каждую копейку - в ограниченный партиях. |
|||
|
||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Дрова пишут на плюсах? . АФАИК дрова в основном пишутся на сях, а это разные языки. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Не смеши! Си++ от Си немногим отличается (в плане скорости и возможностей). Си++ просто даёт возможность задействовать врожденноразвитую часть мозга - объектное мышление. Да, там есть достаточно много средств, которые иногда трудно, а иногда вообще невозможно использовать при писании прог для микросхемок. Но даже если этими средствами не пользоваться, Си++ всё равно значительно удобнее. То, что до сих пор Си++ для мелкосхем, поддерживающих Си, скорее исключение, чем правило - лишь банальная экономия денег. Действительно, зачем разрабатывать Си++ компилятор, если Си обойдётся во много раз дешевле? Однако принципиально я не вижу ограничений для использования этого языка. P.S. Кстати, я когда настроение совпадает со свободным временем пишу компилятор Си для PIC-контроллеров с надеждой, что когда-нибудь доведу его хотя б до урезанного Си++ |
|||
|
||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
ManiaK
В Си нет тормознутых шаблонов, нет классов, нет stl, нет исключений, нет строгой проверки типов указателей(ненавижу (char*)malloc()) Вообщем нет того, чего в дровах и не нужно. В С++ эти понятия(особенно классы) являются основными.
Удачи -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
ManiaK |
|
||||||||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Mayk объясни, каким таким способом "чистые" классы (без шаблонов, без ....) хуже структур+набора функций (Си)? Не вижу тут ни капли проигрыша Си++ перед Си. Си++ тем и лучше, что он более обобщенный язык, на нём можно написать всё то, что напишешь на Си, только в более красивой форме.
Ты не представляешь себе жизнь в Си++ без STL?
Они, насколько знаю, не тормознутые, а немного увесистые - получится кода больше (и то не всегда). После компиляции все шаблоны становятся обычными классами.
Это атавизм языка Си.
|
||||||||
|
|||||||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Дык а нафига, когда все что нужно сделать - это динамический массив . Выше ж пример есть . |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Атавизм - человеческий признак, который является генетически унаследованным от животных, однако в нормальном состоянии не проявляется в фенотипе. В случаи нарушений в процессе формирования зародыша могут проявляется в виде хвостатости, многососковости, волосатостью, наличия жаберных щелей и т.п. у новорожденного. Рудимент - человеческий признак, который является генетически унаследованым от животных, однако в фенотипе проявляется как рецесивный признак: "гусиная кожа", апендикс и т.д. Как понять атавизм языка??? Или тогда может рудимент языка? А на Паскале тоже ДРОВА писать мпожно...на встроенном ассемблере. А что лутчше - выучить С++ или (Паскаль & ассемблер)? |
|||
|
||||
Петрович |
|
||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Лучше выучить и то и другое. Добавлено @ 14:43
Например, в процессе развития языка, некоторые языковые конструкции оставляют для совместимости со старыми программами. Вот их-то обычно и называют аттавизмами. Пожалуй, рудимент более применим в данном случае. Хотя конечно нельзя в данном контексте понимать этот сленговый термин буквально. Вообще то, в английском языке очень часто новые сущьности называют существующими уже словами с близким смыслом, или даже просто созвучными словами. Взять тотже термин "folder" - "папка". Если привести точное определение слова folder, то наверное тоже будет не совсем понятно какое оно имеет отношение к тому что им обозначают в компьютерном сленге. Но, это уже область филологии а не программирования -------------------- Все знать невозможно, но хочется |
||||
|
|||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Дык помимо этого надо ещё интерфейс для системы обеспечить. На паскале его обеспечишь? А покажите тогда мне хоть одну Pascal-ную операционку... |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
Ну почему все, кого я не встречаю ставят этот тезис, что мол "ну линукс же написан на С++". Да, написан. А толку с этого. Кому она нужна.
Ты какой итерфейс имееш ввиду - если пользовательский, то С++ его просто супер обеспечивает. Только на Паскале его можно написать в двое быстрее. А вообще если честно, то меня С++ не привлекает только чисто из-за его сложности. Синтаксис в полне нормальный, но его изучить - это просто титаническая задача. Я пытался, синтаксис я знаю, но не могу понять многоие операции в С++, а также очень продвинутые вложенные конструкции, которыми изобилуют многие конструкции исходников того же ядра Linux. Но будем пытатся. |
|||
|
||||
S.A.P. |
|
||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
|
||||
|
|||||
Kagor |
|
|||
Debian user Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: 1 Всего: 85 |
-------------------- Disassemble Your life and get the key! |
|||
|
||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Ну уж совсем то придераться не надо. Наверняка человек имел ввиду Pascal-подобные языки, в том числе и Delphi. -------------------- Все знать невозможно, но хочется |
|||
|
||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Кстати, об операционных системах. Лично знаком с двумя написанными на Pascal-подобных языках. Одна специализированная сетевая OS для наземного коммандно-измерительного комплекса. Сам лично учавствовал в ее создани еще в конце 80-х. За долго до появления Linux'а, как впротчем и C++ .
Вторая, создавалась на языках MODULA-2 и Oberon, для платформы Кронос. К сожалению, платформа Кронос не смогла получить широкого распространения. Соответственно, данная ОС тоже умерла вместе с ней. Так вот. То что для Linux'а нельзя написать драйвер на каком-то из языков, совсем не означает что этот язык не пригоден для создания операционных систем. А то можно договориться до странных вещей. Вот например могу смело утверждать что язык C++ это фигня, поскольку на нем нельзя написать программу для моего Nokia 6610. А вот JAVA это круто - на нем можно -------------------- Все знать невозможно, но хочется |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Такое ощущение, что 99% заданий для программиста это написать операционную систему
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
RA |
|
||||
Брутальный буратина Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: нет Всего: 115 |
ага и программ для мобилы. Добавлено @ 22:21
Петрович ну ты ветеран |
||||
|
|||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
RAdmin, а сл-но все задачи программиста сводятся к написанию операционной системы для мобилы
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Void |
|
||||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Ой, сколько тут без меня понаписали...
Отсюда и далее ИМХО.
В каком месте они тормознутые? Разве макросы могут быть тормознутыми? Или ты имеешь в виду долгую компиляцию? Ну это скорее проблема современных компиляторов. К тому же простой шаблонный код (как в STL, например) компилируется очень быстро.
Я фигею, честное слово Народ со страшной силой борется за строгую типизацию, недостаточно строгая типизация едва ли не главный аргумент противников C++, а тут и такая не нравится... (Кстати, а нафига вообще в C++ malloc?) Нет, если использовать язык как "высокоуровневый ассемблер", то может быть так оно и есть... Но тогда при чем тут вообще C++?
Это только с непривычки. После пары месяцев практики любой реальный код (демки вроде того куплетиста, что ты приводил - это нереальный код ) на Си (а ядро Линукса - это Си, а не Си++) разбирается с налету. Рядовой Си++ код - тоже. Настоящее веселье начинается в вещах а-ля mpl или spirit, но это уже издержки попыток приспособить язык к тому, для чего он изначально не предназначен. Да и нет как правило необходимости городить такое в собственном коде. В общем, C++ был, есть и будет есть. Причины: 1) гигабайты работающего промышленного кода на C++, который надо будет поддерживать еще очень долго; 2) задачи, где необходима бескомпромиссная производительность - отмазки в виде аппаратных реализаций VM пока не катят. А учить лучше всего C#/Java (как основные промышленые языки на сегодняшний и, наверное, завтрашний день), C++ (как средство вправления мозгов, утомленных рантаймом) и какой-нибудь функциональный и/или логический язык (как средство вправления мозгов в сторону повышения абстракции). Dixi Это сообщение отредактировал(а) Void - 21.7.2005, 22:47 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||
|
|||||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
|
|||
|
||||
RA |
|
|||
Брутальный буратина Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: нет Всего: 115 |
Мда, прочитанные критерии выбора языка вызывають лоль, симпатизирыю только одному критерию (УДОБСТВО).
А так к общему числу приимущественных языков хочу добавить один из лутших в мире, и имя ему QBasic !!! Спросите почему? Да потому что это один из самых безобидных языков программирования (для изготовления мал-варе не годится) |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Ну и кого сейчас интересует, сколько будет весить программа, 100 или 20 Кб? Разве что вирус писать -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
ManiaK |
|
||||||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Perchilla на счёт Паскаля/Дельфи погорячился. Я его, конечно, не люблю (Майк тут уже писал за что его Сишники не любят), но достоинств его как сильного языка не отрицаю.
Я б хотел вернуться к того с чего начали, мы ж не во флейме Начали мы с этого:
Закончили как обычно:
1. Не спорю, написать операционку на Паскале можно. Но ответьте на вопрос: почему таковых нет в массовом употреблении в наше время, а не в каких-то там 80-х? 2. Главное достоинство Си++ - его потрясающая способность подстраиваться под задачи.
То, что до сих пор организация интерфейса пользователя в Си++ - задача более сложная, чем в языках вроде Си#, Java (не говоря уже о Дельфи) - указывает только на одно: не написано ещё удобных библиотек к нему. Много раз уже повторял тем же Явленцам: к указателям никто особой любви не питает даже среди Си++шников, но Си++ даёт возможность подумать над ними один раз, а дальше пользоваться кодом, в котором вы даже не будете подозревать, что пользуетесь указателем. Ява не даёт такой свободы. Он говорит: у меня есть набор инструментов, на основе них могёшь делать, что хотишь. А больше - ни-ни! Простите, а на чём написаны эти базовые инструменты?.. |
||||||
|
|||||||
bel_nikita |
|
|||
Эксперт Профиль Группа: Эксперт Сообщений: 2304 Регистрация: 12.10.2003 Где: Поезд №21/22 ( ст . Прага ) Репутация: нет Всего: 47 |
Народ, а Delphi стандартизирован кем-либо или это только детище Borland? И если умрет Borland, то умрет и Delphi.
З.Ы.: А вот, С/С++ - стандартизирован |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
bel_nikitaВпрочем Жаба без Сана тоже мало куда продвинется .
|
|||
|
||||
bel_nikita |
|
|||
Эксперт Профиль Группа: Эксперт Сообщений: 2304 Регистрация: 12.10.2003 Где: Поезд №21/22 ( ст . Прага ) Репутация: нет Всего: 47 |
Perchilla
Но вопрос в том, что: Delphi стандартизирован? |
|||
|
||||
Mayk |
|
||||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Давай разберём по пунктам. 1) Инкапсуляция. Дрова и так инкапсулированы сами в себе. Они довольно самодостаточны, чтобы жить. 2) Наследование. И от чего наследоваться драйверу? Разве что от абстрактного класса. А чему наследоваться от драйвера?? Сложно придумать. 3) Полиморфизм. Ну дрова вообще-то просто имплементируют базовый объект.Они ничего по сути не изменяют, они просто делают. Ну и к чему всё это?
Я себе даже Си без qsort/hsearch/printf представляю. Только зачем такое безобразие? Если есть библиотека - то её надо бы использовать.
"Немного увесистые"?! Время компиляции увеличивается в разы! -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||
|
|||||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
По поводу Java: без Sun Java проживёт прекрасно. В отличие от всяких Delphi за Java стоят такие гиганты, как IBM, BEA, Oracle, etc., которые просто напросто возьмут сий замечательный язык под своё крыло, в случае чего. Более того скажу, что IBM только этого и ждёт, ИМХО
Так что господа, выбор очевиден: Java. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
ManiaK |
|
||||||||||||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Давай
Первое. Не очень понял, что ты этим хотел сказать. С дровами надо как-то общаться, чтобы управлять устройствами. Один из вариантов - драйвера как Slave, ядро оськи - как Master. Второе и главное! Не цепляйся к дровам - ими область применимости Си++ не заканчивается. Есть ещё одна огромнейшая сфера - встроенные системы...
Вот пример:
Опять же, одиними драйверами ограничиваться глупо.
Думаю и так понятно. Где надо - используй, где не надо - не используй. Свобода выбора!..
И что? Зато летают они не медленнее обычных классов и даже обычных функций/структур из Си. А для компиляции можно и машину лучше поставить и компилятор по-лучше взять. Главное, чтоб у клиента летало. |
||||||||||||
|
|||||||||||||
Mayk |
|
||||||||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
То, что инкапсуляция рулит в большем объеме. В малом - нет. get/set'ы не люблю.
Ну не знаю. Видел только сишные. Да и то мельком.
Во-первых я не вижу что-бы что-то наследовалось от GF440MXDrv. Во-вторых запись с callback'ами не намного длиннее, даже короче.
То, что в один и тот же участок времени ты меньшее число раз успеешь собрать и запустить и, значит, протестировать. Значит, меньшее число отлавленных багов в единицу времени. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||||
|
|||||||||
fevdokimov |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 16.10.2004 Репутация: нет Всего: нет |
[quote] на Delphi не уверен, но на OBERON уже написана |
|||
|
||||
CosmoMan |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: нет Всего: 0 |
И пришли таким образом к выводу, что С++ (пусть Си) - язык ниского уровня, годный для написания драйверов, встроенных сисем, ядер операционок.
Пользовательский интерфейс пусть пишется на Delphi, Javа и С#. C++ для одних целей, ObjectPascal & Java для других. Cогласен, что на Pascal & Asm сложнее написать оперционку, чем на Си |
|||
|
||||
DENNN |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
Не надо обобщать Это только ты пришел к такому мнению, множества же других людей с большим успехом используют плюсы и для создания интерфейсов, и для математических алгоритмов, и для 3Dграфики, и для CGI-приложений, и для ..., да собственно зачем я объясняю? |
|||
|
||||
Петрович |
|
||||||||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Для полноты, не хватает вопроса "А почему за все время существования C++ не написано еще удобных библиотек к нему?" На самом деле, это лишь свидетельствует об наиболее вероятной области применения тех или иных языков. А вообще то, я не верю что "не написано ещё удобных библиотек к нему". Просто наверное их слишком много, и среди них нет абсолютного лидера. Да и область распространения C++ куда шире (в смысле платформ). Что соответственно не позволяет иметь универсальную библиотеку на все случаи жизни. С Delphi проще. Тут только для Windows и Linux.
Ну... Это уж слишком. Во первых, Borland жил, Borland жив, Borland будет жить. Шутка . А если серьезно, то смерть Borlan'да совершенно не означает смерть Delphi. Как ни странно, эфект может даже быть обратным. В конце концов, кто вспомнит авторов и поставщиков компиляторов для Cobol'а? А вот язык до сих пор существует. Хотя, молодежь о таком и не слыхивала. И слава богу . Чтоже касается стандартизации, для Delphi это не имеет существенного значения поскольку на сегодняшний день, компиляторы под него поставляет лишь одна группа разработчиков (Borland). Т.е. его можно считать стандартизированным - см.описание языка. Вопрос стандартизации очень существенен для C и C++. Это для них существуют куча постащиков, и поэтому крайне важно добиться их совместимости на уровне входного языка.
Да, да. Лично я считаю что C++ своей популярности обязан прежде огромным распространением C на момент появления C++. Ведь именно от него он и родился. А если даже быть более точным, то C++, это язык C, который расширен в соответствии с велением времени (ООП). А вот почему C популярен был (и есть)? Думаю, что прояснить это, поможет небольшой экскурс в историю. Ведь кому как не мне, старому седому аксакалу, не порассказывать байки о том как я в сибири яй..... Ой забылся Что ж, да простят меня модераторы, Начнем. В 70-е годы, в эру "больших" (IBM и т.п.) и особенно "средних" (DEC PDP, и т.п.) машин, большинство высших учебных заведений было оборудовано именно ими. Особенно в США. Более того, уже тогда они объединялись в глобальные сети (тогда это еще не называлось Internet). Так вот, именно в те времена, для удобного использования имеющихся ресурсов и была создана ОС UNIX. А вот для ее создания, как раз и были созданы языки, сначала B, а затем и сам C. Студенты вообще не любят стандартных решений . Более того, поскольку разработка изначально велась на машинах DEC PDP-11, производительность которых тогда была невелика, разработчики не могли себе позволить построения автоматически-оптимизирующих компиляторов. Они пошли другим путем. Они отдали оптимизацию программ в руки программисту. Т.е., они просто создали "высокоуровневый ассемблер" - дешево и сердито. Именно поэтому, архитектура DEC PDP-11 наложила неизгладимый отпечаток на язык C. Это и используемая восьмеричная система счисления, и операторы ++ --, базовые типы данных, и еще много чего. ОС UNIX получилась весьма удачной. Именно по этому она и живет по сей день, и даже реинкарнировалась в виде Linux'а. Но, вернемся к основной теме лекции . Так вот, ОС UNIX получилась весьма удачной. Поэтому, в максимально короткие сроки, она стала стандартом для компьютерных систем университетов и других учебных заведений. Да и альтернативы ей, как сетевой ОС, в то время практически не было. Естественно, поскольку сама она была написана на C, то именно этот язык и стал основным при разработке программ под эту ОС. Как следствие, преподавание программирования и смежных дисциплин, тоже стало вестись на примерах языка C. А открытые исходные тексты UNIX'а позволяли любому программеру еще и повышать свой уровень. Ну и какому языку программирования будет отдавать предпочтение программист закончивший такое учебное заведение? А какому языку программирования будет обучать преподаватель закончивший такое учебное заведение? .... Ответ очевиден. (это Вам на домашнее задание) Ну а в завершение лекции, немножко о последующих событиях. Некоторые наверное уже их застали и сами. Позже, появились "персоналки", причем тогда еще даже не "завязанные" в сеть. Их пользователями становились не профессианалы-компьютерщики (какому профессионалу интересен программируемый калькулятор ), а простые менеджеры, писатели, продавцы и пр. Для них, ОС UNIX была сложна и непонятна, да и не нужна. Не говоря о том, что к тому времени UNIX стала в некотором роде "монстром" которого было невозможно "затолкать" в IBM-PC (напомню: 64Kb RAM, No HDD, 360Kb FDD). Поэтому, и появились сначала ОС CP/M, а затем MS-DOS - "нечто", являющееся жалкой попыткой сделать выжимку (пятого отжима) из идей UNIX. Там, по началу, основным языком был ассемблер. Но, поскольку кагорта потребителей быстро росла, и среди них стали появляться доморощенные программисты, им нужен был язык. Ну не на птичем-же языке ассемблера будут писать домохозяйки. Да и C для них был неоправданно сложен. Так и родился всеми любимый Basic . Позже, когда уже Microsoft стала прикладывать к нему руки, он стал преображаться в QBasic, Word Basic, Visual Basic, и прочие. Время не стояло на месте, персоналки становились мощнее, а потребности больше. Но как и прежде, UNIX не мог предложить дружественного интерфейса для рядового пользователя. Вот так и родился Windows. Но, это уже другая история . Для нас важно только то, что к этому времени, рынком ПО для ПК заинтересовались профессионалы. Ну и как следствие, на ПК пришел C, со всеми вытекающими. Причем, еще до прихода C на персоналки, было создано великое множество его реализация и расширений. В общем бардак. Благо во время одумались, и таки застандартизировали его. Правда, как всегда было много противников большинство из которых справидливо считали что стандарт это смерть. Хорошо что они ошибались. Теперь, при наличии мощных, многопроходных оптимизирующих компиляторов, все богатство низкоуровневых возможностей языка C принципе без надобности. Но, стандарт есть стандарт. Да и привычки чего стоят. Вот кажется и вся история появления, и распространения языка C, естественно в кратком изложении . Ну и на последок отмечу что в США, самой компьтиризированной стране, до недавнего времени, наиболее распространенными языками программирования были именно C, C++ и Basic-подобные языки. А вот Delphi, насколько я знаю, распространен там очень слабо. Почему, теперь я думаю Вам и самим это ясно. В последнее же время, на арену борьбы за души программистов, стало выходить множество других языков, а порою даже не языков а вообще не понятно чего . Это, по моему мнению, является следствием того, что традиционные языки уже с трудом удовлетворяют все возрастающим потребности пользователей, и все возрастающим возможностям современной техники. Естественно, опять активно ищутся компромиссы между прототой языка, его функцианальной мощью, способностью адаптироваться к предметной среде, мультиплатформенностью, и прочее, прочее прочее... Так рождаются языки .java, C# и др. Но, время, лучший судья. Некоторые новые языки ожидает долгая и счастливая жизнь (типа как у C), других же, легкая и быстрая смерть в почти еще зародышевом состоянии (типа как было с языком ADA). Поживем (надеюсь), увидим. P.S. В своей лекции я специально не затронул историю Delphi - тема то не о нем . Добавлено @ 12:17
Я уже писал выше про ось на Pascal-е. Что же касается Delphi - не вижу препятствий кроме двух: 1. А зачем? 2. Кто это будет оплачивать? Добавлено @ 12:21 А еще, про то что можно а что нельзя, хотя и не совсем в тему. А знаете ли Вы, что компиляторы большинства языков, особенно серьезных, пишутся именно на этих-же языках, методом раскрутки? Это позволяет сразу же и проводить их тестирование и отладку. Так, практически изначально компиляторы C писались на C, Pascal'я на Pascal'е и т.п. -------------------- Все знать невозможно, но хочется |
||||||||||
|
|||||||||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Петрович - ЦАРЬ!..
Неужели C# трансляторы написаны на C#? |
|||
|
||||
Петрович |
|
||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
т.е. не всех. Что касается C#, то про него не скажу, не знаю. -------------------- Все знать невозможно, но хочется |
||||
|
|||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Хотя чем чёрт не шутит, можт лет через пять создадут такой комп, который будет интерпретаторы щёлкать как орехи Пока что слишком уж тормозно даже для среднего уровня сложности приложений, не говоря уже об компиляторах...
|
|||
|
||||
Poseidon |
|
|||
Delphi developer Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: нет Всего: 133 |
Пусть не в тему, простите уж. Но вот всегда хотелось узнать, это как? Вопрос по моему сродни такому: "Что появилось ранше: яйцо или курица?". Как можно написать компилятор на том языке, для каторого пишется компилятор? Чем тогда этот компилятор компилировался? -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
ManiaK |
|
||||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Мне так кажется это примерно так: написали на стороннем языке наипростейшую версию копилятора языка нового. А потом по-нарастающей, всё сложней и сложней до полной версии. |
||||
|
|||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Да да. Именно так. Именно поэтому такой способ и называется "метод раскрутки". -------------------- Все знать невозможно, но хочется |
|||
|
||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Хех. Сегдня всю ночь не мог заснуть и в итоге решил поближе познакомиться с С++
Для этого буду пытаться написать пошаговую игрушку типа Дисайпелс(со смесью хирос). Так вот, хотел поинтересоваться: у меня тут на выбор Visual C++6, Visual C++6.5 Update или мне нужно просто С++? Чем они отличаются? Если я собираюсь писать игру, то мне нужно юзать ОпенЖеЛе или ДиректорИкс, т.е. мне достаточно будет подключить их библиотеки и визуальные классы из Visual C++ мне не понадобятся? |
|||
|
||||
Poseidon |
|
|||
Delphi developer Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: нет Всего: 133 |
TP@MB@Y, думаю этот вопрос лучше было бы задать в специализированном разделе, там больше сишников крутится, они тебе подскажут и покажут
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
batigoal |
|
|||
Нелетучий Мыш Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 4 Всего: 151 |
С++ - это язык. Он один. А у тебя - среды разработки. На тот момент, когда я еще писал на Си, последней была Visual Studio 2003. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
TP@MB@Y |
|
|||
Опытный Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: 1 Всего: 4 |
Poseidon
Догадываюсь... просто хотелось "не отходя от кассы" Lamer George Ну я про среду и спрашиваю. С++ он и в африке С++ |
|||
|
||||
chipset |
|
||||||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Ну-ну. А потом ждать полтора часа пока выползет аутокомплит в Eclipse. Нафиг такое щастя.
Да.
Если уже неплохо знаешь C++ - используй 2003. Если только учишь: FAR+VC++Toolkit. --------------------
|
||||||||
|
|||||||||
chipset |
|
||||||||||||||||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Ты проводил измерения?
Ну там не совсем макросы.
Ты о чём? Ты сейчас о примении парадигмы ООП к ЦЕЛОМУ ПРИЛОЖЕНИЮ, а мы о использовании её в процессе написания КОДА ЛОГИКИ. Твои аргументы не катят.
Надо использовать то что удобно.
Ну-ну. Добавлено @ 10:54
Это зависит от прямоты рук программиста и нужд заказчика. --------------------
|
||||||||||||||||||
|
|||||||||||||||||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
У тебя 386 что ль? -------------------- |
|||
|
||||
Void |
|
||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Можно я за Mayk отвечу? Выяснилось, что речь идет о скорости компиляции, а с этим у сложных шаблонных конструкций туго. К тому же, без явного инстанциирования или export templates нет раздельной компиляции. Увы... Хотя преимуществ шаблонов это нисколько не умаляет
С т.з. кодогенератора - чисто текстовая подстановка (вот тут, отвечая, я имел в виду быстродействие скомпилированной программы). -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
chipset |
|
||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Athlon 1800+/512 MB А что, для комфортной работы Dual P4 и 2GB нужно? НАФИК ТАКОЕ, вижуал студия летает... --------------------
|
||||
|
|||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Ну не надо передергивать, разница во времени небольшая.
-------------------- |
|||
|
||||
chipset |
|
||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Между 386 и A1800? Добавлено @ 09:27 Кстати на 386 программы на Java вообще не запустяться никоим разом. --------------------
|
||||
|
|||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Ты че действительно не понял к чему был мой пост? -------------------- |
|||
|
||||
chipset |
|
||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Да вот такой я тупой, и телепатией ну никак ещё так хорошо не овладел... --------------------
|
||||
|
|||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Ух ох. Вот к чему си приводит...
-------------------- |
|||
|
||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Domestic Cat встану в защиту Чипса
У меня - P4 2000 (2400), 256 Мег оперативки. Первый пуск проги "Охотник" стал последним, т.к., несмотря на отличную идею и неплохую реализацию, за исключением одного момента, ... короче у меня постоянно возникала мысль: "А не перепутал ли я комп? Не сел ли я с перепою на свой старенький 166, что рядом стоит?". Ей богу, проги написанные на Си++ работают на 166 так же, как Java на моём "новом" (заметь: конфигурация последнего уже давно оставляет желать лучшего). |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
ManiaK
Встану посередине Java-программы лично у меня только грузятся долго. А так скорость работы что Eclipse (почти не пользуюсь), что jEdit (не откажусь, будь хоть в три раза медленне), что того же Охотника (на винте лежит - зачем, непонятно) меня вполне устраивает. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Аналогично, единственно различие что я замечаю - скорость запуска. Во всем остальном абсолютно не отличается от С++- и прочих программ. Вот Azureus сейчас у меня запущен - если б он грузился на секунду быстрее, отличить от нативного приложения было бы оченьтрудно. -------------------- |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 1 Всего: 71 |
Разрешите мне опять в пример привести эклипсу . Почему в ней так медленно работает автодополнение, это глюк разработчиков? .
Спасибо . |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Это к разработчикам пожалуйста. У меня виндозе, написанная на си, глючит как хзчто, но я ж не спрашиваю тут почему и из-за чего. -------------------- |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Нет, это ваш глюк. Во первых надо покупать нормальные не no name компы, а во вторых надо чуть-чуть поменять строчечку в параметрах запуска, для вашей оперативки. Eclipse 3.0.1 на рабочем Celeron 2Ghz, 512Mb RAM немного притормаживало, а Eclipse 3.1 вообще не тормозит. Я фигею, сколько можно болтать об одном и том же, блин. Ясен перец, что если вы купили материнку от дядюшки Ляо, то даже 512 метров оперативки будет работать на 30-40% медленее, чем должна. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
simanyay ты шота несдержанный стал У меня не noname материнка. Gigabyte SR555 или что-то в этом роде (искать лень), никаких нареканий нет. Охотник тормозит - а какой там интерфейс/функционал?? Нет, конечно у кого-то и Quake 3 на втором пне не тормозит. Требования у каждого свои...
|
|||
|
||||
Kagor |
|
|||
Debian user Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: 1 Всего: 85 |
-------------------- Disassemble Your life and get the key! |
|||
|
||||
ManiaK |
|
|||
Homo Sapience Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Вы, конечно, скажете, зачем же сидеть на таком старье, на что я вам отвечу: подождите Longhorn. Память всегда найдут, чем завалить, какого бы объёма она ни была. |
|||
|
||||
DENNN |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
Почему то я не секунды не сомневаюсь что ты прав |
|||
|
||||
Петрович |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
. Я так понимаю лейбак производителя влияет только на java? А не подскажете-ли как такого добиться в обычной, например Delphi программе? -------------------- Все знать невозможно, но хочется |
|||
|
||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Симаняй, не передергивай. Скорость работы памяти не зависит ТАК от чипсета (в случае интегрированного MC у А64 она от него вообще не зависит). К тому же ППС и латентность в нашем случае - дело десятое, тебя же не смущает, что на серверах используют DDR333 или даже 266, да еще и регистровую ECC? Я не призываю покупать noname, просто аргументация не та. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
chipset |
|
||||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Я не про глюки. Я про тормоза. Тормозит не Виндоза, тормозят программы, которые кстати, некоторые, написаны на, не побоюсь этих матюков Java или .NET.
А может лучше от Sun'a сервер заказать, шоб уж точно не тормозило? --------------------
|
||||||
|
|||||||
Kagor |
|
||||
Debian user Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: 1 Всего: 85 |
-------------------- Disassemble Your life and get the key! |
||||
|
|||||
simanyay |
|
||||||||||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Старею
Конечно скорость меньше. Но это "меньше" есть плата за переносимость.
А вы не подскажете как мне запустить скомпилированную в Delphi программу в Linux и Solaris? Читайте выше.
Здрасьте. При плохой шине, производительность понижается процентов на тридцать. Проверенно собственноручными тестами на мат. плате noname и белой плате.
Не, надо каждую новую версию по 3-4 года ждать. Зато не тормозит на первых пнях Одно сравнение. В Eclipse реализация средств рефакторинга была введена за месяц, а в Visual Studio за 4 года. Я лучше подожду при загрузке лишние 5-10 секунд, чем 4 года дожидаясь новой версии на супер языке. Добавлено @ 20:34 А теперь смотрим с точки зрения бизнеса на моём личном примере. Я сидел на Celeron 1.2Ghz 512Mb RAM. Eclipse тормозил, но там были средства рефакторинга + средства работы с CVS + плугин к PHP. Теперь рассматриваем варианты: Вариант один: - я написал с помощью выше указанных средств систему за 2 месяца и сдал раньше дедлайна, что позволило мне скопить на ноутбук с процом AMD Athlon 64 3.4+ 1Gb RAM, на котором уже вышедшая Eclipse 3.1 не тормозит вообще. Вариант два: - я бы писал с помощью убогих средств, которые бы не тормозили, месяца 3-4 с постоянным гемороем с синхронизацией и разными редакторами и, следовательно, не успел бы к дедлайну и не получил бы всей суммы денег (не то что премии за сдачу заранее). Какой бы у меня был комп? Может чуть лучше... Celeron 2Ghz. Зато не тормозящий софт! Счастье-то какое. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
||||||||||
|
|||||||||||
Void |
|
|||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Платы, процессоры, набор логики, набор тестовых приложений, ОС - в студию. Не верю © -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
Domestic Cat |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 4 Всего: 172 |
Собственноручно тестировал на старом своем Celeron 400 / 128 mb - отличие было только во времени загрузки. -------------------- |
|||
|
||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Не верь. Я логи не веду. Когда-то занимался сборкой нескольких ПК и для себя тестировал. А за отчётами - идите на iXBT и подобные. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Void |
|
||||
λcat.lolcat Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 11 Всего: 173 |
Ну хотя бы скажи, чем тестировал. Если мерял ППС в Sandra или ей подобных - корреляция с реальной производительностью, того, к нулю стремится.
Именно потому что я часто бываю на iXBT и подобных, я и накинулся на это утверждение. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
simanyay |
|
|||
Антон Ковалёв Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: 0 Всего: 36 |
Ubuntu Memory Testing. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
Петрович |
|
||||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 2 Всего: 55 |
Во первых, я так и не понял как лейбак производителя мамы сказывается на кроссплатформенности приложений? А во вторых, как часто вы пишите программы для работы в нескольких платформах? Наверное это специфика. Лично я свой хлеб только на платформе Windows зарабатываю. И вроде как хватает. По крайней мере пока. У меня в багаже, за 20 лет программирования, есть лишь одно кроссплатформенное приложение. Оно делалось для работы под DOS и под UNIX. Поэтому, в принципе не могло быть чисто кроссплатформенным . Просто писалось на C, и большая часть портировалась. А так, в принципе, не принципиально . Надо будет на java, сбацаем на java. Для нормального программера, язык не имеет принципиального значения. Изучение нового языка это вопрос времени, причем не катастрофически большого. Поэтому, при реальной необходимости не вижу препятствий.
А вот это как посмотреть. Лично у меня, при сегодняшнем уровне знания java, было-бы наоборот. Это сообщение отредактировал(а) Петрович - 1.8.2005, 21:43 -------------------- Все знать невозможно, но хочется |
||||||
|
|||||||
Kagor |
|
|||
Debian user Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: 1 Всего: 85 |
-------------------- Disassemble Your life and get the key! |
|||
|
||||
chipset |
|
||||
Эксперт Профиль Группа: Экс. модератор Сообщений: 4067 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 4 Всего: 164 |
Однозначно. --------------------
|
||||
|
|||||
JekaZZ |
|
||||||||||
Бывалый Профиль Группа: Участник Сообщений: 161 Регистрация: 6.10.2005 Репутация: нет Всего: 3 |
С++ имеет более понятный для понимания синтаксис.
Приведу пример. Я однажды спросил у одного программиста Delphi, изменится ли значение переменной i в данном случае:
Он говорит "Нет". И он прав.Тогда я спрашиваю, а изменится ли содержимое i в данном случае:
Он говорит "Да". И он прав. А вот почему так - он не знает. Потому что из синктасиса паскаля (далфи) невозможно понять, что передается в функцию-значение переменной или ссылка на нее. В С++ такой бы проблемы не возникло, так как для изменения переменной внутрь функции должен передаваться указатель и прототип ее будет следующий:
Знак "*" и говорит об указателе. Если же переменная передается по ссылке
то компилятор предупредит об этом. А чтобы он этого не делал, надо писать
Тогда однозначно переменная не меняется внутри функции. И никаких неопределенностей!!! Еще момент.Паскалевский компилятор для i:=i+1 создаст точно такой же машинный код - возмет из памяти переменную, поместит ее в регистр, потом прибавит к ней 1 и поместит обратно в память (проверено). Компилятор С++ сделает это одной командой процессора - прибавит 1 к значению в памяти. И записывается на с++ гораздо короче i++; |
||||||||||
|
|||||||||||
Mayk |
|
|||
^аВаТаР^ сообщение>> Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 2 Всего: 134 |
Это зависит от компилятора. Не думаю, что в стандарте паскаля есть какие-либо оговорки о генерации кода. ах, да. На паскале еще есть inc(i); -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |