(no subject)
Nov. 24th, 2008 10:01 pmСобственно, возвращаясь к посту про настоящего программиста. Там в комментах
cmike высказал мнение, что Java - это такой нишевый язык.
Я задумался, и понял, что ниши для Java я не представляю. Возможно, сейчас не представляю - потому что уже есть C#.
Посему вопрос: какие задачи могут быть удачнее, чем на каком-либо другом языке, решены на чем-нибудь из списка: Java, Smalltalk, Haskell, Erlang? Меня устроит, если будет какой-то другой язык близкого класса, который это позволит сделать (кроме Java - там я хотел бы видеть четкие преимущества).
Желательно - чтобы с этими задачами было реально столкнуться на не сильно извилистом пути программиста (то есть если, чтобы к такой задаче подступиться, надо 15 лет учиться на микроэлектроника, то пример не канает).
Я задумался, и понял, что ниши для Java я не представляю. Возможно, сейчас не представляю - потому что уже есть C#.
Посему вопрос: какие задачи могут быть удачнее, чем на каком-либо другом языке, решены на чем-нибудь из списка: Java, Smalltalk, Haskell, Erlang? Меня устроит, если будет какой-то другой язык близкого класса, который это позволит сделать (кроме Java - там я хотел бы видеть четкие преимущества).
Желательно - чтобы с этими задачами было реально столкнуться на не сильно извилистом пути программиста (то есть если, чтобы к такой задаче подступиться, надо 15 лет учиться на микроэлектроника, то пример не канает).
no subject
Date: 2008-11-24 07:29 pm (UTC)Ну SmallTalk - это совсем редкость, а вот Erlang & Haskell сейчас потянулись в гору. Первый в основном из-за своего масштабирования и ориентированности на сети
no subject
Date: 2008-11-24 07:38 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-24 07:47 pm (UTC)Нaskell - это для задач, требующих определённым образом заточенных мозгов.
SmallTalk вообще-то хорош для GUI. Но поскольку GUI обычно должны интегрироваться в окружающий десктоп, а окружающие десктопы написаны не на SmallTalk, популярен он мало.
no subject
Date: 2008-11-24 08:50 pm (UTC)Gmail-клиент, написанный на Java, мегагерцы и мегабайты может и не жрет, но грузится за 2-3 минуты на моей Nokia E61i.
Про Haskell - это, извини, не ответ.
Про Smalltalk - а почему, собственно, Tk пофиг, на чем написан десктоп, а Smalltalk-у нет? Или что тогда значит "интегрироваться"?
(no subject)
From:no subject
Date: 2008-11-24 07:51 pm (UTC)no subject
Date: 2008-11-24 07:57 pm (UTC)(no subject)
From:Да
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-24 08:02 pm (UTC)В том числе гуёвых приложений ...
Только вот боюсь куча имеющихся сложных проблем от того, что "сделайте программу, которой сможет пользоваться полный Х, и только он будет её пользоваться", ну и от стандартного заблуждения, что "пользовательский интерфейс - это просто, любой джуниор справится" ...
no subject
Date: 2008-11-24 08:04 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:Апичатка
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-24 08:21 pm (UTC)no subject
Date: 2008-11-24 08:38 pm (UTC)Насколько я вижу, C# занял нишу Дельфи - то есть клиент-серверных приложений. Т.е. если и конкурирует, то только с Java EJB, причем C# тут изначально не в лучших условиях (как среда).
no subject
Date: 2008-11-24 08:32 pm (UTC)Собственно, из этого и вылезает ниша - все приложения, для которых стоимость поддержки существенна. Т.е. весть корпоративный сектор, веб-сервисы и все, что живет долго и меняется часто-часто.
Как ни странно, Eclipse RCP сейчас - один из лучших способов делать GUI, причем даже под Win результат выглядит вполне нативным и быстрым. С# пока еще нормального RCP не получил, насколько я знаю.
no subject
Date: 2008-11-24 08:34 pm (UTC)Кстати, по слухам, Fortran уже потихоньку вытесняется Java в научных исследованиях.
no subject
Date: 2008-11-25 05:47 am (UTC)Фортран весьма заметно вытесняется Матлабом (последние версии которого, по слухам, написаны на Джаве).
no subject
Date: 2008-12-02 12:00 am (UTC)Не знал ещё.
Мои устаревшие сведения были таковы, что нормальную скорость Java показывает только в родных условиях - на Sun'ах. Впрочем, сведения и в самом деле давние.
(no subject)
From:no subject
Date: 2008-11-24 08:53 pm (UTC)ослеп, а не е..режимный.А я вот покажусь завтра на ноуте под виндовс.
C#, говорите?
Ах да, это потом еще и суппортить надо, развивать. Кроме того, мы это ядро портальное уже три года довольно успешно запихиваем во все проекты. Perl, говорите?
no subject
Date: 2008-11-25 08:16 am (UTC)Саппортить - зависит от архитектуры все-таки, а не от языка?
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-24 10:54 pm (UTC)Говорят, на хаскелле очень удобно писать парсеры, а на эрланге - сильно распаралелленные вычисления (в том числе, тестовые клиенты для сетевых протоколов). Но видеть в одном списке Хаскель и Яву мне несколько странно.
no subject
Date: 2008-11-25 08:16 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-24 10:56 pm (UTC)no subject
Date: 2008-11-25 08:17 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-25 08:54 am (UTC)О да. Мой любимый пример, админка биллинга NetUp UTM5 для провайдеров. На Linux’е у неё не выпадают календарики ввода дат. И даже в винде они не управляются с клавиатуры. И поля ввода текста не выделяют всё содержимое при получении фокуса.
Java — это переносимые GUI-приложения, которые нигде не выглядят по-родному и теряют переносимость сразу, как только стандартной библиотеки виджетов перестанет хватать.
(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2008-11-25 12:29 am (UTC)no subject
Date: 2008-11-25 08:12 am (UTC)(no subject)
From:no subject
Date: 2008-11-25 11:46 am (UTC)+ когда ты пишешь всякий системно-смешной софт - у тебя нет выбора...
+ когда ты пишешь бизнес-ориентированный софт - у тебя есть выбор между очень странными языками и java... и у тебя нет выбора...
а c# - ну и где он нужен? ну и где он живьем используется? даже в виндовых игрушках - и то, java...
Gor
P.S. ты не мог бы зарегистрировать меня на
http://rblaze.livejournal.com/628095.html
?
no subject
Date: 2008-11-25 11:52 am (UTC)К базам сейчас можно цепляться на 10 языках как минимум.
Про бизнес-ориентированный софт - а ты, собственно, про что? Про аналитику кризиса (K++)? Там-то как раз выбор есть, насколько я знаю.
Тебя зарегистрировал.
(no subject)
From:(no subject)
From: (Anonymous) - Date: 2008-11-26 11:02 am (UTC) - Expand(no subject)
From:no subject
Date: 2008-11-27 03:56 pm (UTC)P.S. Ну, не считая НАСАвского WorldWind'а. И то они его на Java портируют.
no subject
Date: 2008-12-15 12:41 pm (UTC)Для меня Smalltalk -- это прежде всего язык экспериментальной разработки, exploratory programming. Т.е. я люблю решать на нём задачи вида "сделай то, не знаю, что".
Пример: вот хочу сделать необычную визуализацию для данных, лежащих в файле не вполне известного мне формата. Допустим, я знаю структуры, в которых лежат данные в файле, но не вполне понимаю семантику полей этих структур в пограничных случаях. И вот, я описываю эти структуры и пишу однострочник, который считывает содержимое файла. Дальше некоторое время лазаю по нему инспектором, иногда делая выборки, свертки и проч.
Потом я пишу опять-таки однострочник, который прямо на графическом контексте текущего окна рисует какие-то графики. Экспериментирую, подбираю, развлекаюсь. И когда, наконец, результат начинает меня удовлетворять, завожу класс и сваливаю мои однострочники в его методы.
Другой пример -- создать COM-объект и начать дергать его за разные методы, чтобы понять, как он себя ведет. Естественно, в процессе всё часто рушится или приходит в неправильное состояние, но при соблюдении минимальной аккуратности у меня всегда имеется на руках код, выполнив который после перезапуска я воспроизведу то состояние, с которым работаю.
no subject
Date: 2008-12-15 12:54 pm (UTC)(no subject)
From:(no subject)
From:Нишевый язык для внутренних разработок
From:Re: Нишевый язык для внутренних разработок
From: