C++ || JAVA

kode

never knows best
Автор оригинала: Alexandre
maxwell значить я тупой, у меня ушло более месяца на освоение VS 6.0 при базовом знании С++


оффтоп:
запорожец круче мерса тем, что он отлично ходит по бездорожью, и особенно класно при поездки в лес.
что очень актуально в Российской глубинке.

ну-ну а условную компиляцию уже отменили??
мда...Условная компиляция в сях - это костыль. Правильный путь - это как в Яве: делать слои абстрации на классах (как сделано в кроссплатформенных тулкитах, в Qt например, хотя это уже плюсы). Или вы собираетесь два раза переписывать один и тот-же по сути кусок кода?


Автор оригинала: Alexandre
хорошие IDE разработаны и для Си
много хороших библиртек есть и для си,
согласен, для джавы их гораздо больше.

на счет кросплатформенности джабы- это можно поспорить. многие классы, особенно десктопные, скомпилированные под одну платформу, надо перекомпилировать под другую, т.е. сама идея байткода не во всех случаях 100% применима.
Детский лепет. Если в классе нет нативных вызовов к платформе, значит он кроссплатформенный. Байд-код под любую платформу одинаков.

Автор оригинала: Alexandre
в настоящий момент я начинаю работу над одним проектом, который представляет графический сервер с WEB интерфейсом (решаются задачи распознования образов распознование ). Проект будет Apache/PHP/C++ К сожалению J2EE здесь не справится.
чтоб не было лишних помидоров: нагрузка не высокая, по этому выбор WEB сервера не принуципиален.
PHP - идеальная среда Controller-View уровня МVС, а сама модель или обработка будет вестись на Сях.
c такойже вероятностью можно было бы использовать Tomcat или JBoss с вызовом сишных модулей (благо в джава есть порт в си),
исторически сложилось что PHP я знаю лучше.
*овации*


Автор оригинала: Alexandre
и что - это разве не порт в джаву?????
У меня такое чуство что у вас нарушение терминологии - порт != интерфейс к API
 

maxwell

artifex
Ну вот, товарисч kode в принципе все правильно написал про джаву.
Единственное с чем я не очень согласен, так это со скоростью исполнения.
Что быстрее летит? Кирпич или мячик?

у джавы много плюсов, но начинать все же советую с паскаля :)

Alexandre, вы все это время сидели непрырывно и изучали язык? Если да, то истинность вашего утверждения остается прежней.
 

Сергей Тарасов

Профессор
Автор оригинала: kode
мда...Условная компиляция в сях - это костыль. Правильный путь - это как в Яве: делать слои абстрации на классах (как сделано в кроссплатформенных тулкитах, в Qt например, хотя это уже плюсы). Или вы собираетесь два раза переписывать один и тот-же по сути кусок кода?
Походу, ты или погорячился, или не очень разбираешься в вопросе.

Автор оригинала: kode

Детский лепет. Если в классе нет нативных вызовов к платформе, значит он кроссплатформенный. Байд-код под любую платформу одинаков.


*овации*



У меня такое чуство что у вас нарушение терминологии - порт != интерфейс к API
Это, собственно, что констатирует? :)
 

kode

never knows best
Автор оригинала: Сергей Тарасов
Походу, ты или погорячился, или не очень разбираешься в вопросе.
мне не в кайф писать такой код:

int socket;
#if __WIN32___
socket = win32_socket_create(AF_INET,....);
WSAAsyncSelect(socket);
....
#else
socket = socket_create(AF_INET,...);
socket_bind(socket);
.....
#endif

я не отрицаю что их надо использовать для кроссплатформенности, но использовать это как аргумент....
 

Alexandre

PHPПенсионер
Детский лепет. Если в классе нет нативных вызовов к платформе, значит он кроссплатформенный. Байд-код под любую платформу одинаков.
я б не утверждал, если бы не сталкивался (правда не сам лично)...
Байд-код под любую платформу одинако, но на разных платформах он дает разный ожидаемый эффект. спорить на эту тему не буду. Для system.output он конечно же даст одинаковый эффеект.
У меня такое чуство что у вас нарушение терминологии - порт != интерфейс к API
по большому счету порт это как раз то узкое место, которое стыковывает две разные системы, например суша и океан,
можно назвать это API ?
 

Wicked

Новичок
Alexandre
о большому счету порт это как раз то узкое место, которое стыковывает две разные системы, например суша и океан,
можно назвать это API ?
нет.

даже лингво знает, что перевод слова port - это, в том числе,
3) переносить (напр., программу с одной машины на другую)
к портам (докам) и стыковке это не имеет отношения.

-~{}~ 11.06.08 21:28:

http://ru.wikipedia.org/wiki/Портирование
 

Farsh

~ on ~ high ~ wave ~
А я не знал =) Понеслось ...
Все таки решил в пользу C++ ( хотя может вы меня все таки переубедите ) .
Раз вы офтопите , так и я ;)
Решил накатать список книг , которые собираюсь брать :
<!-- подскажите что стоит убрать и что добавить -->
1) CSS - каскадные таблицы стилей. Подробное руководство. 3-е издание , Мейер Э.
2) MySQL. Сборник рецептов 3) MySQL. Третье издание - Дюбуа П.
4) UNIX. Профессиональное программирование , Стивенс У., Раго C.
5) Профессинальное PHP программирование, 2-е издание ( не знаю , стоит ли http://www.books.ru/shop/books/84429 )
6) Профессиональное программирование на PHP , Шлосснейгл Д.
7) С++. Сборник рецептов , Стефенс Д. Р
8) Mysql . Справочник по языку 9) Mysql. Руководство администратора - mysql AB
10) C++ . Специальное издание - Страуструп

Отсюда вопросы :
1) или все таки java? =))
2) Нужно ли столько книг по MySQL ( как видите все топовые ) , если нет , то какие лучше будут? =)
3) по С++ стоит брать или лучше читать третье издание на английском ?
4) или лучше вообще все убрать и все читать на английском ? =)
 

Alexandre

PHPПенсионер
5) Профессинальное PHP программирование, 2-е издание ( не знаю , стоит ли http://www.books.ru/shop/books/84429 )
не советую
лучше http://www.books.ru/shop/books/377120
или http://www.books.ru/shop/books/367978... она есть
10) C++ . Специальное издание - Страуструп
слишком сложно... можно оставить
вот еще:
http://www.books.ru/shop/books/391846 есть еще с такимже название этого автора "55 верных способов улучшить стиль кодирования"
тоже надо знать: http://www.books.ru/shop/books/215384
4) или лучше вообще все убрать и все читать на английском ? =)
бери на русском...
больше половины книг можно найти в отсканированном виде.
 

StUV

Rotaredom
10) C++ . Специальное издание - Страуструп
нормально
только читать стоит начинать с третьей главы =)

+
вот это почитай
http://vmk.ugatu.ac.ru/book/buch/index.htm
(можно параллельно со страуструбом)

++
если серьезно хочешь взяться за С++ - забей на некоторое время на все остальное
первое время тебе и так крышу сносить будет по полной - на все остальное у моска просто сил не останется =)
 

Alexandre

PHPПенсионер
http://www.books.ru/shop/books/30688
и очень рекомендую http://www.books.ru/shop/books/582079 или http://www.books.ru/shop/books/314291

-~{}~ 11.06.08 19:34:

8) Mysql . Справочник по языку 9) Mysql. Руководство администратора - mysql AB
будет повторением
3) MySQL. Третье издание - Дюбуа П.
лучше бери Дюбуа, отличная книга, хоть и толстая, от автора документации по мускулю.
 

Farsh

~ on ~ high ~ wave ~
Ок , спасибо .
Теперь остался единственный вопрос , смысл которого в самой теме ;-)
Плюсы C++ :
1) стандарт прикладных языков программирования
2) MS Visual Studio , MSDN
Плюсы JAVA :
1) тот самый java bridge ( не знаю почему я его сюда вписал )
2) опять же мультипоточность
Скорей всего придет время, что придется делать программы под Win .
Отсюда один полностью нубский вопрос и другой просто нубский :
1) Как у JAVA обстоят дела с Win ? То есть нужно ли будет людям делать ещё что-нибудь , кроме запуска самой программы ?
2) Все таки какие будут плюсы у JAVA над C++ в плане мультипоточности ?

Это последнее , что я хотел бы знать :)
А так , заранее ещё разок спасибо .
 

phprus

Moderator
Команда форума
Farsh
2) опять же мультипоточность
Это плюс ОС, а не языка. Так как если ОС поддерживает потоки, то для многих языков использующихся в этой ОС будут библиотеки для работы с потоками.

2) Все таки какие будут плюсы у JAVA над C++ в плане мультипоточности ?
Никаких.
 

Farsh

~ on ~ high ~ wave ~
phprus
Про ОС конечно понятно , но спасибо ;-)
Пошел оплачивать буквари =)
 

kode

never knows best
Автор оригинала: Alexandre
я б не утверждал, если бы не сталкивался (правда не сам лично)...
Байд-код под любую платформу одинако, но на разных платформах он дает разный ожидаемый эффект. спорить на эту тему не буду. Для system.output он конечно же даст одинаковый эффеект.
по большому счету порт это как раз то узкое место, которое стыковывает две разные системы, например суша и океан,
можно назвать это API ?
Понимаете, не стоит утверждать того что вы сами не знаете. По вашим доводам можно понят что Яву вы не знаете (или знаете плохо)
 

Alexandre

PHPПенсионер
я и не утверждаю что ее знаю хорошо
иначебы программил на ней :)
но знаю людей которые на ней собаку съели
 

kode

never knows best
Автор оригинала: Alexandre
я и не утверждаю что ее знаю хорошо
иначебы программил на ней :)
но знаю людей которые на ней собаку съели
Вот почему я не люблю авторитеты: один умный дядя сказал, мы верим, мы не думаем
 

nerezus

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

Байд-код под любую платформу одинако, но на разных платформах он дает разный ожидаемый эффект.
Значит проблема в нижестоящих классах, либо вообще в платформе(в смысле ОС), которая не позволяет сделать определенные вещи )

Это плюс ОС, а не языка. Так как если ОС поддерживает потоки, то для многих языков использующихся в этой ОС будут библиотеки для работы с потоками.
Так-так, а где мои потоки в PHP? Или моя ОС их не поддерживает?

Так что это очевидно плюс языка. Точнее не самого языка, а именно реализации его VM.

-~{}~ 13.06.08 11:12:

А точнее даже не плюс. Но отсутствие реализации этого - это явный минус.
 

Alexandre

PHPПенсионер
Вот почему я не люблю авторитеты: один умный дядя сказал, мы верим, мы не думаем
ага, тогда скажите мне умники, почему большинство ява-приложений для вин и никс распространяются в разных дистрибутивах
если такой совершенный байт-код??

-~{}~ 14.06.08 21:06:

Значит проблема в нижестоящих классах, либо вообще в платформе(в смысле ОС), которая не позволяет сделать определенные вещи )
это проблема не в платформе, а в конкретной JVM
 
Сверху