(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 08:04 pm (UTC)no subject
Date: 2008-11-24 08:24 pm (UTC)Язык (точнее его возможности) достаточно влияет на возможности ... Как компактности, так и читабельности/поддерживаемости кода ... Вспомни первые MFC или OWL ...
Как раз обычно больше говён я видел от "нарисованного в дизайнере", чем закодированного ... А уж как это выглядело, когда надо было какой-то кусок заюзать в еще одном месте ... А с той же Qt-кой я просто влегкую делал класс-биг-виджет и просто вставлял его в другом месте ...
Кстати, вот думаю, не поразвлекаться что ли на PyQt ...
no subject
Date: 2008-11-24 08:36 pm (UTC)no subject
Date: 2008-11-24 10:14 pm (UTC)Для явы, кстати, вроде тоже вариант есть, только не помню, платный или как, надо смотреть на trolltech.com.
no subject
Date: 2008-11-25 04:02 pm (UTC)А то мне кажется, что поверх явы через Jython это будет совсем грустно шевелиться ...
no subject
Date: 2008-11-26 12:27 am (UTC)А про Jambi я что-то ничего реального не нашел. Похоже, никто это не использует.
no subject
Date: 2008-11-24 10:04 pm (UTC)Её надо решать исключительно мозгами. Созданием адекватного этой проблеме понятийного аппарата и поддержкой его в языке. Все проблемы GUI на мейнстримовых языках происходят именно потому что у ПРОГРАММИСТА нет понятийного аппарата чтобы думать про GUI. Поэтому все GUI - непродуманные. Вот у смоллтолкеров кое-какие наметки на эту тему есть.
Думать же на уровне образов человек в принципе не в состоянии. Не заточены у него мозги для этого. Думать можно только "в терминах".
no subject
Date: 2008-11-25 08:14 am (UTC)no subject
Date: 2008-11-25 10:20 am (UTC)А отследить глазками то, для чего реально нужен интерфейс - весь граф путей прохождения пользователя через решения его, пользовательских задач, абсолютно не реально - там слишком много ветвлений, комбинаторный взрыв получается.
Плюс к тому, имеются разные типы информационных метоболизмов (не соционических) пользователя, поэтому восприятие одной и той же информации может быть разным, и если разработчику при просмотре глазками все понятно, не факт, что будет все понятно пользователю.
я уж не говорю, про проблемы интернационализации, которые нафиг на корню убивают идею "Рисования GUI" - либо GUI будет "резиновым", и тогда его не рисовать надо, либо там не уместятся переводы надписей на финский или суахили, либо этот GUI не уместится на экран EeePC 700.
no subject
Date: 2008-11-26 07:22 pm (UTC)no subject
Date: 2008-11-27 05:51 am (UTC)Так же и тут. Число возможных комбинаций состояния интерфейса, разрешения экрана и локализации намного превосходит то, что можно глазками посмотреть, даже если у тебя полторы тысячи тестеров.
Соответственно, тебе нужна теория, которая позволит выделить несколько десятков особых точек, которые нужно проверить руками и посмотреть глазами, чтобы быть уверенным, что остальные десять в хренадцатой степени вариантов тоже будут выглядеть прилично.
no subject
Date: 2008-11-27 07:45 am (UTC)no subject
Date: 2008-11-25 10:04 am (UTC)Близко к тому, что строго наоборот.
no subject
Date: 2008-11-25 10:22 am (UTC)Дальше все. Для того чтобы перейти на следующий уровень абстракции все равно нужны слова.
no subject
Date: 2008-11-25 05:33 pm (UTC)Я недавно купил флешку, теперь пользуюсь и ругаюсь – слишком много ошибок в интерфейсе. Показывает название трека, но оно обычно не влезает и тогда показывается бегущей строкой – однако ползёт эта строка очень медленно и задолго до того, как доползёт до конца экран гаснет (зелень!). В процессе проигрывания не показывает число проигранных секунд, только бегунок. При проигровании песни показывает узорчики вместо названия трека/бегунка (workarond – залочить и разлочить плейер).
Как ты думаешь, поможет ли система разработки, работающая на высоком уровне абстракции, писать программы без таких плюх? Очень сомневаюсь. Опять имеет место попытка решать не ту проблему которая есть, а ту, которую хочется.
Я у тебя и другие ошибки вижу, но это имеет большее отношение к теме обсуждения.
Апичатка
Date: 2008-11-25 05:48 pm (UTC)Имеется в виду mp3-плейер, конечно.
no subject
Date: 2008-11-25 06:57 pm (UTC)no subject
Date: 2008-11-25 08:24 pm (UTC)Пользовательский опыт и средства разработки неизбежно вступают в противоречие. Пример навскидку. Файл – хорошая абстракция и рано или поздно файл на удалённой машине тоже считается файлом. И сразу же оказывается, что пользователю нужно работать с такими файлами по-другому: показывать бегунок, делать докачку и т.д.