Записки реликта - Post a comment [entries|archive|friends|userinfo]
Latimeria chalumnae

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

Aug. 14th, 2008|09:56 am

uri
В свое время мне очень понравилась Java, как «дисциплинирующий язык».

Дисциплинирующий — очень правильное слово. Когда надо силами двухсот индусов получить вменяемый код, другого выбора нет (С#, возможно, разве что). Но писать на Java быстро и одному невозможно: когда на каждый чих заводится новый класс, волей-неволей приходится сначала думать над архитектурой и пр. Иногда это раздражает.

В зависимости от ситуации, я бы вместо Qt4 использовал AWT/Swing.

Swing довольно похож на GUI-часть Qt4: тот же MVC, много чего ещё. Даже названия классов похожи. В общем, тоже ничего так библиотечка. Но с Java любая ошибка проектирования отливается в изрядный геморрой. На C++ тоже, но исходный пост как раз и был в том числе про средство обхода этих граблей: Python/PyQt4 для быстрого прототипирования, C++ для окончательной реализации. На удивление удобно.

Не про Python, но про любителей всё на нем переписывать

Ну, с Лиспом, по крайней мере в инкарнации Scheme (CL я не знаю и говорить о нём не возьмусь), Питон как раз сравнивать невыгодно: лисповский синтаксис, на самом деле, более читабельный (потому что более простой и последовательный), и Лисп более гибок, чем Питон. Питоновская lambda выгдядит пародией на схемную, call/cc в Питоне просто нет (есть, правда, yield, позволяющий реализовать часть фокусов с call/cc; кроме того, call/cc, кстати, есть в Ruby).

Но под Лисп нет приличной библиотеки для рисования гуя, например. По крайней мере, я такой не знаю.
Link Read Comments

Reply:
From:
(will be screened)
Identity URL: 
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
Username:
Password:
Subject:
No HTML allowed in subject
Message: