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

насмешил
интегрировать РНР и Си можно несколькими способами. С Джавой проще - есть порт к джавовским классам.
1) использовать собственные расширения
http://devzone.zend.com/node/view/id/1021
2) использование средств межпроцессного взаимодействия
3) просто как запуск внешних программ(утилит) через system/popen...
в общем выбор широк.
> джава - энто оболочка или как они называют - виртуальная машина
неверно - Java это язык программирования использующий Java Virtual Machine для абстракции от аппаратно-программной платформы, а виртуальные машины разные бывают (разные реализации). А ещё бывают разные языки к этой вирт. машине.
К яве идёт разный комплект кроссплатформенных библиотек: J2SE (в опсновном десктопные приложения) , J2ME (для мобильных платформ), J2EE (сложные корпоративные программы и веб (сервлеты))
> до мультипоточности еще дожить надо

Не смешно, мультипоточность делается:
PHP:
new Thread(
new Runnable{
public void run(){
System.out.println("Это уже в другом потоке");
}
}
).start();
//либо
class MyClass implements Runnable {
public String my_var = "Hello";
public MyClass() {
Thread thread = new Thread(this);
thread.start();
}
public void run(){
synchronized(this.my_var){
this.my_var = (this.my_var == "Hello")?"Good bye":"Hello";
System.out.println("I said "+this.my_var);
}
}
}
В Сях (или СПП) нужно немного больше постаратся, причём не кроссплатформенно
> С Джавой проще - есть порт к джавовским классам.
> 1) использовать собственные расширения
http://devzone.zend.com/node/view/id/1021
> 2) использование средств межпроцессного взаимодействия
> 3) просто как запуск внешних программ(утилит) через system/popen...
4)
http://ru2.php.net/manual/en/java.examples.php
-~{}~ 11.06.08 10:14:
в итоге получаем:
Си - низкоуровневый язык, быстрый, но сложный. Нативно не кросс компиляторный/платформенный, много библиотек, много велосипедов. Изучать несложно, но для того чтобы нормально с ним работать надо понимать много аспектов работы компьютера (работа с памятью и её устройство, как происходят вызовы). Чтобы писать на сях нужно немного опыта и мозгов, мусор за собой убирать надо самому.
Ява - высокоуровневый язык, более медленный, но гораздо более простой. Много хороших библиотек, быстрая скорость написания, удобные IDE, по сложности сопоставим с Похапе. Мусор убирать не надо, как и в PHP.
В результате советую тебе сначала изучить более простую Java, а потом переключится на C/C++