Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi -> Java: отличия, и как с ними разобраться 
V
    Опции темы
skyboy
Дата 18.4.2007, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



перехожу из Delphi в Java.
Прошу людей, хоть сколько-нибудь работавших с обоими языками, сказать, что присутствует в Java, чего нет в Delphi. А то ведь буду делать свои костыли там, где есть вполне "официальные" транспортные средства smile
Навскидку(со многим не знаком, только слышал):
  • Generics
  • Коллекции
  • Garbage collection
  • Отсуствие указателейнепосредственного доступа к указателям
  • модификатор final
Что ещё? 
И, если можно, при упоминании(если просто называете - и всё) приводите ссылки на мало-мальски вменяемые пояснения. Ман, конечно, вещь хорошая, но это ж не учебник, а справочник.
зы Версия знакомой мне Delphi  - 7. Если сравнивать будете с Turbo - переживу  smile 
ззы Знаком с С++ и С-подобными языками, потому родственные синтаксические конструкции(for(;;), ?:, модификатор static) можно опустить smile
зззы Спасибо  smile 
PM MAIL   Вверх
AntonSaburov
Дата 18.4.2007, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 51
Всего: 118



В принципе ты перечислил уже все, в чем эти языки отличаются.

Самое правильное в данной ситуации почитать что-либо по синтаксису - подойдет практически любая книга - поищи на форуме.

Можешь пойти после этого в Студенческий отдел кадров чтобы иметь самое начальное представление.

А дальше - задавай вопросы - готовы будем отвечать.


PM MAIL WWW ICQ   Вверх
skyboy
Дата 18.4.2007, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



Цитата(AntonSaburov @  18.4.2007,  16:33 Найти цитируемый пост)
В принципе ты перечислил уже все, в чем эти языки отличаются.

правда? я немного разочарован  smile 
кстати, зря я static запихнул в категорию "с этим знаком".
итак, те, кто будет искать ответ на схожий вопрос. ещё одно отличие:
  • static - модификатор. Методы классов в DElphi тоже есть, но этот модификатор может применяться и к полям, что делает поля полями класса   smile
А свойства(property) в java можно реализовать, или придется "обходиться" getter/setter'ами?

Добавлено через 6 минут и 50 секунд
AntonSaburov, а "Студенческий отдел кадров"  - это вещь smile Но в данном случае мне нужна не практика(с ООП - проектированием/программированием довольно тесно работаю в DElphi - там те же классы, абстрактные объекты,интерфейсы и т.д.  - кроме полей классов), а теория - то есть описание, ЧТО собой представляют те же генерики или коллекции. С остальными отличиями(если это и правда - всё) уже свыкся и вполне сосуществую  smile 
и как я мог кодить с принудительным освобождением памяти
PM MAIL   Вверх
W0LF
Дата 18.4.2007, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: нет
Всего: 20



Цитата(skyboy @  18.4.2007,  17:39 Найти цитируемый пост)
А свойства(property) в java можно реализовать, или придется "обходиться" getter/setter'ами?

конечно можно, ставишь спецификатор доступа public, ну или же для данного пакета protected или friendly(то есть ничего не ставишь)
Ну, а вообще некрасиво - инкапсуляция должна быть.


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
AntonSaburov
Дата 18.4.2007, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 51
Всего: 118



Цитата(skyboy @  18.4.2007,  17:39 Найти цитируемый пост)
правда? я немного разочарован

Так на сегодня С++, Java, C#, Delphi Pascal - достаточно одинаковые по своим конструкциям. Основной плюс Java и .NET - не надо думать об освобождении памяти.

Основная сила платформ Java и .NET в большом количестве удобных и современных технологий и пакетов, которые позволяют создавать очень мощные и сложные приложения за достаточно короткий срок. Так же они позволяют расширять, поддерживать огромные проекты.

Вообщем-то и все. Если ты думал увидеть огромную разницу именно в языке - тут не получается. Все эти языки досттаочно современные и вряд ли те, кто их делал не использовал опыт предшественников.


PM MAIL WWW ICQ   Вверх
skyboy
Дата 18.4.2007, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



Цитата(AntonSaburov @  18.4.2007,  17:28 Найти цитируемый пост)
Все эти языки досттаочно современные и вряд ли те, кто их делал не использовал опыт предшественников.

ну, javascript с его протипной моделью ОП - тоже не вчерашний день... а специфика работы и проектирования - разная ведь. 
PM MAIL   Вверх
powerOn
Дата 18.4.2007, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 47
Всего: 159



Еще в Java есть анонимные и внутренние классы.


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
skyboy
Дата 18.4.2007, 19:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



Цитата(powerOn @  18.4.2007,  18:15 Найти цитируемый пост)
Еще в Java есть анонимные и внутренние классы. 

а можно об этом - но немного подробнее?
PM MAIL   Вверх
nornad
Дата 18.4.2007, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Цитата(W0LF @  18.4.2007,  21:21 Найти цитируемый пост)
конечно можно, ставишь спецификатор доступа public

Это не будет соответствовать property в дельфи. Точного соответствия нет, но геттеры и сеттеры ведут себя наиболее приближённо к свойствам. А некоторыми вещами (EJB или Hibernate - не помню, т.к. мало работал) даже воспринимаются как свойство.
Кстати, делать публичные поля не очень хорошая идея.

Добавлено @ 19:44
Цитата(skyboy @  18.4.2007,  22:34 Найти цитируемый пост)
а можно об этом - но немного подробнее? 

Пожалуйста:
Код

public class A {
  private B[] bb;

  public A() {
    bb = new B[1] {
      new B() { // анонимный
        public void doMisc() {
           // делаем что-то другое
        }
      }
    }
  }

  class B { // внутренний
    public void doMisc() {
       // делаем что-то
    }
  }
}


Это сообщение отредактировал(а) nornad - 18.4.2007, 19:46


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
skyboy
Дата 18.4.2007, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



Цитата(nornad @  18.4.2007,  18:40 Найти цитируемый пост)
Кстати, делать публичные поля не очень хорошая идея.

хм. я ж не о полях говорю, а о свойствах... впрочем, вполне переживу без синтаксического сахара smile
-------
сорри, в коде я понял где анонимный класс, но не понял, зачем его туда захимичили... Можно на пальцах диаграмму классов изобразить?
P.S. Анонимный класс - объектный вариант замыканий?
PM MAIL   Вверх
powerOn
Дата 18.4.2007, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 47
Всего: 159



Анонимный класс - это способ быстрого наследования. Ничего сверхъестественного.
Допустим есть класс A в котором определен метод meth(). Твоя задача - отнаследоваться от него и переопределить в наследнике метод meth(). Это можно сделать 2-мя способами:

1) Создать простой класс:

Код

class A 
{
    public void meth() 
    {
        System.out.println("A");
    }
}

// Создаем наследника:
class B extends A 
{
    @Override
    public void meth() 
    {
        System.out.println("B");
    }
}

// Используем его:
class С 
{
    public static void main(String [] args)  
    {
        A obj = new B();
        obj.meth(); 
    }
}


2) Переопределяем метод непосредственно во время создания экземпляра класса:

Код

class С 
{
    public static void main(String [] args)  
    {
        A obj = new A()
        {
            @Override
            public void meth() 
            {
                System.out.println("B");
            }
        };

        obj.meth(); 
    }
}


во втором случае класс несоздавался. Соответственно имени у него нет - поэтому и анонимный.

P.S.: код набирал прямо тут, так что мог ошибиться где-нибудь smile

Добавлено через 58 секунд
Анонимные классы весьма удобно использовать для реализации интерфейсов.


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
nornad
Дата 19.4.2007, 02:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Я на них 97% листенеров делаю. smile
Остальные три процента - обобщённые листенеры, которые обрабатываю схожие события от разных компонентов.
Ну и в других местах бывает применяю. Когда лень выделять в отдельный класс. Одна беда - публичные расширения класса в анониме бессмысленны. smile


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
Elfix
Дата 17.11.2007, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 167
Регистрация: 13.7.2005

Репутация: нет
Всего: нет



Мне жутко нравились property из Delphi. Очень удобная вещь. В Java их нет (или я не нашел). Скажем при простом присваивании свойству значений возможно выполнить процедуру Set или Get, в Java нет такого. Ты явно должен Set-тить или Get-тить.

Проще кодом написать:

Код


private
 FColor: TColor;
 function GetColor: TColor;
 procedure SetColor(NewColor: TColor);
public
 property Color: TColor read GetColor write SetColor; default 0;

Писал без редактора, мог ошибиться, но смысл понятен. Т. е. в Delphi мы могли скрыть поле класса, а также скрыть методы работы с ним, но все таки простыми операциями присваивания неявно пользовались ими. Кстати, так же очень удобно событийную модель описывать. Она очень прозрачна и понятна. В Java несмотря на простоту языка все таки трудности возникают. Но я видимо еще сам к ней непривык. Теперь вот перебегаю с одной среды на другу, как мелкий грызун с тонущего корабля... Но ничего не поделаешь...

Это сообщение отредактировал(а) Elfix - 17.11.2007, 17:42
PM MAIL   Вверх
nornad
Дата 17.11.2007, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Цитата(Elfix @  17.11.2007,  20:39 Найти цитируемый пост)
Мне жутко нравились property из Delphi. Очень удобная вещь. В Java их нет (или я не нашел).

У джавы иная идеология. Вместо пропертей использую пару getter/setter. Постепенно привыкаешь и забывешь о том, насколько удобны были проперти. Потому что проперти, по большому счёту, не панацея - с ними тоже мороки хватает. В джава специально отказались от идеи пропертей, чтобы программист всегда видел, к чему он обращается - к полю или к методу.


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
Elfix
Дата 17.11.2007, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 167
Регистрация: 13.7.2005

Репутация: нет
Всего: нет



Да не спорю. Ко всему можно привыкнуть. Много инструментов отобрали. Объясняют тем, что теперь у нас нет возможности плодить ошибок. Да, увы. Раньше хороший юзер был безрукий, безногий, слепой, немой и глухой человек, теперь, увы из программистов делают то же самое. Ты никогда не сделаешь ошибки, если тебе будет нечем ее делать.

Так то пофиг. Лучшая среда программирования та, для которой создано и создается много различных удобных оболочек. Похоже Java самая перспективная в этом плане среда. Ну и бонус многоплатформенность (за которую приходится платить медленностью), конечно, смысл в которой я пока плохо себе представляю ибо мне проще найти привычную виндовую систему, чем какую-либо другую.
PM MAIL   Вверх
makados
Дата 17.11.2007, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 2.10.2007
Где: Киев

Репутация: нет
Всего: 1



Цитата(Elfix @  17.11.2007,  16:56 Найти цитируемый пост)
Ну и бонус многоплатформенность (за которую приходится платить медленностью)


по поводу медленности есть отдельная тема на форуме, в которой продвигается мнение, что медленность java - архаизм
PM MAIL WWW ICQ Skype   Вверх
Vurn
Дата 17.11.2007, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 24.5.2007

Репутация: 2
Всего: 3



Java значительно быстрей Delphi, наравне с C#, C++, примерно на 20% медленней С.
PM MAIL   Вверх
Daevaorn
Дата 17.11.2007, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Цитата(Vurn @  17.11.2007,  21:02 Найти цитируемый пост)
Java значительно быстрей Delphi, наравне с C#, C++, примерно на 20% медленней С. 

Результаты тестирования в студию. А то пока это только твои мечты.
PM MAIL WWW   Вверх
powerOn
Дата 17.11.2007, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 47
Всего: 159



опять за свое взялись... 


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
makados
Дата 17.11.2007, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 2.10.2007
Где: Киев

Репутация: нет
Всего: 1



Цитата(Daevaorn @  17.11.2007,  18:06 Найти цитируемый пост)
Результаты тестирования в студию. А то пока это только твои мечты. 


есть отдельная тема на форуме. там множество результатов, есть что почитать;). здесь их выкладывать нет смысла
PM MAIL WWW ICQ Skype   Вверх
powerOn
Дата 17.11.2007, 22:26 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 47
Всего: 159




 ! 
powerOn
Значит так, господа, эта тема предназначена для обсуждения различий (языковых) между Java и Delphi. Если хотите перевести эту тему в русло Религиозных войн, то она отправится в соответствующий раздел. Вопросы "кто быстрее?" и "кто лучше?" здесь не обсуждаем.


Это сообщение отредактировал(а) powerOn - 17.11.2007, 22:27


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Elfix
Дата 18.11.2007, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 167
Регистрация: 13.7.2005

Репутация: нет
Всего: нет



В Java нет конструкции with. Она бывает очень удобной в некоторых случаях. Всегда можно создать экземпляр класса, но при этом не иметь ссылку на него, но тем не менее работая с ним неоднократно. Пример:

Код

 with TButton.Create(nil) do
  begin
   Caption:='Button';  // Работаем с полями класса
   Tag:=0;
   Name:='NewButton';
   Free;
  end;

Зато потерять ссылку на такой объект, все равно что сделать ошибку в программе - ресурсы за нас никто не освободит. В Java же есть сборщик мусора. Опять же, наверно не понимаю как он работает, но я бы предпочел сам ресурсы освобождать, чем ждать когда за меня это сделает машина. Пример. Класс имеет поле типа массив. Массив содержит несколько тысяч записей. После работы с этими записями (сортировка, уничтожение дубликатов, устранение орфографических ошибок и т. д.) класс сохранит записи в файл и так и будет висеть в памяти, пока его не уничтожит мусорщик. Вопрос только в том, когда он захочет уничтожить такой огромный кусок памяти? А вдруг в тот момент, когда программа будет записывать информацию в базу данных и для юзера максимально быстрая ее запись туда является жизненно необходимой?
PM MAIL   Вверх
Daevaorn
Дата 18.11.2007, 11:57 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Цитата(Elfix @  18.11.2007,  12:13 Найти цитируемый пост)
Вопрос только в том, когда он захочет уничтожить такой огромный кусок памяти? А вдруг в тот момент, когда программа будет записывать информацию в базу данных и для юзера максимально быстрая ее запись туда является жизненно необходимой? 

вызови gc сам и не жди.

Добавлено через 34 секунды
Цитата(Elfix @  18.11.2007,  12:13 Найти цитируемый пост)
В Java нет конструкции with. Она бывает очень удобной в некоторых случаях.

в оооочень некоторых.а вообще от неё больше зла.
PM MAIL WWW   Вверх
AlexeyVorotnikov
Дата 18.11.2007, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 18.6.2007
Где: Москва

Репутация: 10
Всего: 18



Цитата(Daevaorn @ 18.11.2007,  11:57)
Цитата(Elfix @  18.11.2007,  12:13 Найти цитируемый пост)
Вопрос только в том, когда он захочет уничтожить такой огромный кусок памяти? А вдруг в тот момент, когда программа будет записывать информацию в базу данных и для юзера максимально быстрая ее запись туда является жизненно необходимой? 

вызови gc сам и не жди.

В Java невозможно принудительно вызвать GC.

Это сообщение отредактировал(а) AlexeyVorotnikov - 18.11.2007, 12:01


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
Elfix
Дата 18.11.2007, 13:37 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 167
Регистрация: 13.7.2005

Репутация: нет
Всего: нет



Цитата(Daevaorn @  18.11.2007,  11:57 Найти цитируемый пост)
в оооочень некоторых.а вообще от неё больше зла

Согласен, я with'ом пользуюсь крайне редко, в основном кода собираю мусор в исходниках группирую элементы в with для красоты. Только видишь, в Delphi я могу ими пользоваться, а могу и не пользоваться. У меня есть право выбора. То же касается и свойств. В Java же права выбора у меня нет. Не могу сказать плохо это или хорошо. Я сам себе разработчик, мне плохо, а те, кто работает в команде наверно только рады, что вариантов игры с кодом теперь меньше и будет легче понимать своих коллег.
PM MAIL   Вверх
Daevaorn
Дата 18.11.2007, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Цитата(AlexeyVorotnikov @  18.11.2007,  13:00 Найти цитируемый пост)
В Java невозможно принудительно вызвать GC.

а System.gc(), что делает?
PM MAIL WWW   Вверх
nornad
Дата 18.11.2007, 16:54 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Цитата(Daevaorn @  18.11.2007,  14:57 Найти цитируемый пост)
вызови gc сам и не жди.

Извиняюсь, за офтоп, но вынужден напомнить прописную истину - вызов System.gc() не обязует Garbage Collector провести немедленную принудительную сборку мусора. Этот вызов всего лишь сообщает GC, что программист в этот момент хотел бы провести очистку памяти. GC же волен вообще проигнорировать сие пожелание.
Когда переходишь на джаву с С++ (ну или хотя бы с дельфи), очень недостаёт возможности очищать память самостоятельно по желанию. С другой стороны, намного меньше (имхо, порядка на два) возникает ошибок с утечкой памяти, т.к. не приходится пытаться запомнить все случаи, когда объекты создавались динамически, а потом ещё и стараться отследить все ситуации, когда эти объекты перестают быть нужны.
Принимая общую идеологию джавы довольно быстро привыкаешь к GC и учишься по возможности не создавать гигабайтных массивов данных. К тому же, если хорошенько подумать, можно догадаться до того, что такие объёмы в памяти требуются крайне редко. В основном, на крупных серверных системах. Но, уж извините, крупные сервера - на то и крупные, чтобы быть мощнее десктопов и уметь справляться с повышенными нагрузками. Хотя и там лучше заменить прямую работу с данными в памяти на работу с БД, файлами или ещё чем - в зависимости от нужд программы.

Добавлено через 9 минут и 29 секунд
Цитата(Elfix @  18.11.2007,  16:37 Найти цитируемый пост)
У меня есть право выбора. То же касается и свойств. В Java же права выбора у меня нет.

Может, тогда стоит обратить внимание на ассемблер? Вот уж где наибольшая свобода. smile
А про медленность разработки на нём особо не рассказывайте - при наличии необходимых библиотек (алгоритмы, работа с сетью и много чего ещё) писать можно практически с той же скоростью, что и на других языках.

По поводу "плохо или хорошо".
Джава такая, какая есть. Потому она и джава. Хочется свойств - дельфи или билдер (кстати, в вижуале свойств не было - это борланд придумал для популяризации; сами по себе свойства удобны, но код становится непереносимым на другие компиляторы, что редко радует; хотя, микрософт тоже любит делать свои диалекты).

Мораль: у каждой технологии своя ниша. И свои поклонники. И фанаты. Наиболее правильно - разобраться с технологией и научиться её использовать в подходящих местах. Да, есть джава-машина реального времени. Но лично я для работы в реальном масштабе времени выберу си, либо ассемблер. Чтобы наверняка не "проколоться".


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
Elfix
Дата 18.11.2007, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 167
Регистрация: 13.7.2005

Репутация: нет
Всего: нет



Цитата(nornad @  18.11.2007,  16:54 Найти цитируемый пост)
А про медленность разработки на нём особо не рассказывайте - при наличии необходимых библиотек (алгоритмы, работа с сетью и много чего ещё) писать можно практически с той же скоростью, что и на других языках.
Про медленность разработки никто и не говорил. Про медленность выполнения программы споры идут, а разработка вроде на уровне. Java в некоторых случаях даже радует обилием классов для любого рода задач.
Цитата(nornad @  18.11.2007,  16:54 Найти цитируемый пост)
Но лично я для работы в реальном масштабе времени выберу си, либо ассемблер. Чтобы наверняка не "проколоться".
Я им тоже больше доверяю, чем страшной яве машине, которая неизвестно где и как работает.
PM MAIL   Вверх
serger
Дата 19.11.2007, 06:56 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 19.6.2007
Где: Ижевск

Репутация: 1
Всего: 5



Цитата(Elfix @ 18.11.2007,  20:51)
Я им тоже больше доверяю, чем страшной яве машине, которая неизвестно где и как работает.

Люди, имейте совесть!!!  smile 

Вылазит чел и Delphi форума и понеслось.. Каждому своё!!!  smile 

ВААЩЕ сравнение языков во многом бесмысленно. Язык определяет мышление, а в этом контексте сравнивать практически не возможно. Задачи на разных языках мб совершенно по-разному реализованы. Если ты силён в чём-то, то смысл дрейфовать туда-сюда следя за модой? Или ты спец в одном деле или "ванька-встанька" (хотя иметь общее представление всё равно не помешает).
А если уж переходишь, то лучше отбросить все предыдущие навыки на время, и начать с азов, чтобы не охать и ахать, почему тут так, а там было так! Или мне не удобно, потомучто привык так!

Это сообщение отредактировал(а) serger - 19.11.2007, 08:42


--------------------
упс!
PM MAIL WWW Skype GTalk Jabber   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0811 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.