Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Вниз

Python   Найти похожие ветки 

 
начинающий ©   (2006-02-21 10:25) [0]

В расстроенных чувствах из-за отказа Борланда от Дэлфи полез куда-то в сеть, посмотреть, на чём пишут бесплатное ПО (уже и не помню мотивации). Напоролся на Python.
Кто-то на нём из Вас пишет? Хотя бы намекните: стоит ли? и для чего? можно ли на нём автономные EXE-шники получать, или дело обстоит как с Явой?
Заранее спасибо.


 
tesseract ©   (2006-02-21 10:41) [1]

чуства проявляешь зря. Я например 7 как пользуюсь так и буду пользоваться.
python позоволяет писать даже многопоточные приложения. Что-то типа foxpro или clarion.
Можешь присмотреться и к oberon/blackbox.

Exe можно даже на perl/php писать - www.activestate.com


 
Nick Denry ©   (2006-02-21 10:44) [2]

[1] tesseract ©   (21.02.06 10:41)

Exe можно даже на perl/php
И чего получится?


 
начинающий ©   (2006-02-21 11:08) [3]

В принципе, можно и ЕХЕ-шник из Ява-проэкта сделать: напихать в исполняемый файл ресурсов с виртуальной машиной, а при запуске распаковывать её куда-то в %SystemRoot%\TEMP


 
Курдль ©   (2006-02-21 11:16) [4]


> можно ли на нём автономные EXE-шники получать, или дело
> обстоит как с Явой?


А "автономные EXE-шники" - это что за самоцель? Чем плоха ява-машина или CLR?


 
Mystic ©   (2006-02-21 11:22) [5]

Можно еще Ada глянуть :)
http://www.adacore.com/home/


 
tesseract ©   (2006-02-21 11:31) [6]


> А "автономные EXE-шники" - это что за самоцель? Чем плоха
> ява-машина или CLR?

Угу посылаю заказчику ole-dll на 100 Кб. А к нему в комплектность 22,4 Mb Framework.....


 
Тульский ©   (2006-02-21 11:53) [7]


> В расстроенных чувствах из-за отказа Борланда от Дэлфи

Какой еще отказ?


 
wicked ©   (2006-02-21 12:01) [8]


> Можно еще Ada глянуть :)
> http://www.adacore.com/home/

еще ocaml можно....
эт мну все не отпускает холиварец, прочитанный на rsdn.... хотя, осилить даже основы языка не смог.... старею?.... или просто было лень?...
также, из "интересненького" - erlang.... тут проще - очень ясная документация....


 
wicked ©   (2006-02-21 12:08) [9]

поффтоплю.......
найти бы "идеальный язык".... это конечно, сродни "идеальному газу" и "идеальной жене", но всё таки интересно было бы поглядеть на такое чудо....
критерии идеальности языка для меня просты - поддержка "обобщенного" программирования (generics), поддержка структурного программирования и ООП, простота синтаксиса языка и его компилятора, возможность "ухода на уровень ниже" - написание части кода на ассемблерах/plain C....
требования к рантайму - опциональность или отсутствие сборщика мусора (странно, да?), возможность генерации как "байткода", так и автономных программ (PE/ELF файлы).....
вроде всё....... есть такое чудо в природе?..... или как всегда, каждый язык для своей цели?....


 
начинающий ©   (2006-02-21 12:56) [10]

Дополнение к качествам идеального языка: бесплатность, поддержка COM (технологии, а не расширения файла :) ).

Офф: я одно время страдал такой х..нёй: писал на Дэлфи COMы, а на JavaScript или VBScript их вызывал из файлов *.hta (по сути тот же html но есть некоторые ньюансы, напр., не спрашивает меня в своём ли я уме если запускаю COMы; да и внешний вид *.hta немножко отличается изначально от обычных страничек). Но таблетки быстро подействовали и теперь я этого больше не делаю.


 
wicked ©   (2006-02-21 14:25) [11]


> поддержка COM

"Скрипач не нужен" (цы) КДД


 
Ученик чародея ©   (2006-02-21 14:42) [12]

>>wicked ©   (21.02.06 12:08) [9]

Дык C++, а остальное зависит от компилятора.


 
wicked ©   (2006-02-21 14:52) [13]

> Ученик чародея ©   (21.02.06 14:42) [12]

> >>wicked ©   (21.02.06 12:08) [9]
> Дык C++, а остальное зависит от компилятора.

не проходит по таким номинациям, как
> простота синтаксиса языка и его компилятора
> поддержка "обобщенного" программирования
- она то есть, но сложная и какая-то.... неполноценная, что ли....
плюс, я, уже написав постинг, вспомнил, что меня так раздражает в си++ - отсутствие нормальной поддержки модульности.... а-ля паскаль-дельфи...


 
Nick Denry ©   (2006-02-21 14:55) [14]

[13] wicked ©   (21.02.06 14:52)

отсутствие нормальной поддержки модульности

это как???


 
Alkid ©   (2006-02-21 15:59) [15]

А чем таки .NET не нравится? Там всё так на Дельфи похоже, что меня
по-началу мучало дикое дежа-вю :) В последней версии C# они и
обобщённые классы ввели, a-la С++, но несколько беднее, конечно.


 
начинающий ©   (2006-02-21 16:55) [16]

Возвращаясь к сабжу: стОит ли? и для чего? что на нём просто, а на других языках - геморройно?


 
Alkid ©   (2006-02-21 17:11) [17]

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

Что же до C# + .NET, то его сильные стороны:
1. Простота и незамороченность программирования, сравнимая с Delphi (что не удивительно, учитывая что их один и тот же человек делал).
2. Платформа: Наличие механизма Reflection (a-la Java), гораздо более мощного, чем в Delphi. Возможность добавлять свои аттрибуты классам, полям, методам и т.п.
и потом в run-time их извлекать.
3. Билбиотеки: Большая куча всяких готовых классов и компонент на многие случаи жизни
(хотя стандартная палитра GUI-компонентов бедновата). В частности:
 а) Стандартные структуры данных. ну это как везде.
 б) Remoting. Вот это на других языках геморройно.
 в) Работа с XML. Удобно, но так же как и везде. Это не язык, это библиотека.
 г) Работа с БД. Примерно как в Delphi.
 д) Сериализация. Офигенно удобно. Нигде больше не встречал. Может быть в java что-то подобное.
 е) примочки для веб-программирвания.
 ж) обработка регулярных выражений
 + ещё много чего.
4. Платформа: Более быстрое исполнение по сравнению с Java и в некоторых особых
случаях даже по сравнению с native-кодом, полученным в C/C++/Delphi.
5. Язык: Удобный C/Java-подобный синтаксис (ну это уже дело вкуса).
6. Платформа: возможность run-time компиляции исходного текста
на некоторых языках (C#, J#, VB.NET) и исполнение полученного кода.

Слабые стороны:
1. Необходимость наличия .NET framework версии не ниже определённой
на машие для исполнения. Но чем дальше, чем это проблема меньше.
2. Всё-таки в целом производительность ниже, чем у native-кода программ
C/C++/Deplhi.
3. Невозможность писать низкоуровневые программы, типа драйверов.

В целом всё это эквивалентно java, но на мой взгляд, в мелочах получше.


 
ArtemESC ©   (2006-02-21 22:36) [18]

>>...отказа Борланда от Дэлфи ...
  Delphi я думаю еще будет долго жить, оказалось что сейчас даже на некогда популярном Borland Pascal"e пишутся коммерческие проги, хотя
времени с тех пор прошло очень много...


 
марсианин ©   (2006-02-22 01:23) [19]

Однозначно попробуй python. на Delphi он не похож.. даже отдаленно

прежде всего, это скриптовый язык, со всеми вытекающими..

с явой определенное сходство есть. он также работает везде (в смысле переносим)
так же как и ява перед выполнением он компилится в оп-код.
в принципе, есть проект freeze, который позволяет делать stand-alone приложения.
есть Jython - интегрированный с ява питон
есть даже вышла какая-то бета IronPython - Python под .Net
подробнее на www.python.org

довольно оригинальный и простой синтаксис, высокоуровневые объекты, объекная ориентированность )
а также очень мощная библиотека.. можно легко писать многопоточные и ГУИ-приложения..

писать на питоне очень просто, приятно и легко.. и быстро

простота порой просто обескураживает.. мысленно спрашиваешь себя: "И это все, что надо написать??" :-)

основной минус как и у любого скиптового языка - быстродействие, оно заметно ниже Delphi или C++
некоторая экзотичность этого языка.. (ИМХО, конечно)
да и все-таки ГУИ-приложения на питоне как-то странно выглядят.
отсуствие серьезной среды разработки.. хотя я и не искал.. мне доводилось писать на питоне только мелкие программульки :-)

тем не менее и большие проекты строгают на питоне..


 
Eraser ©   (2006-02-22 02:04) [20]


> wicked ©   (21.02.06 12:08) [9]


> поддержка "обобщенного" программирования (generics), поддержка
> структурного программирования и ООП

Object Pascal (aka Delphi), C++, C#

> возможность "ухода на уровень ниже" - написание части кода
> на ассемблерах/plain C....

а разве в Делфи нельзя ассемблерные вставки делать? ;)

> требования к рантайму - опциональность или отсутствие сборщика
> мусора (странно, да?), возможность генерации как "байткода",
>  так и автономных программ (PE/ELF файлы).....

Borland Developer Studio 2006. В частности модель VCL.NET почти идеально соответствует этим требованиям.

> начинающий ©   (21.02.06 10:25)


> В расстроенных чувствах из-за отказа Борланда от Дэлфи полез
> куда-то в сеть, посмотреть, на чём пишут бесплатное ПО (уже
> и не помню мотивации).

открою тайну - грубо говоря, в 95% случаев на том же что и платное :)
а вообще .NET (какой конкретноя язык - это уже дело третие) изучать надо... imho.


 
TUser ©   (2006-02-22 09:01) [21]

Недостатков у него, имхо, 3
1. Маленькое по сравнению с Delphi, C++, etc коммьюнити. То есть вопрос задать на классном форуме будет сложнее, готовых библиотек, FAQ и пр. меньше.
2. Он нетипизированный, + не надо объявлять переменные. Это облегчает написание глюков, как в любом скриптовом языке. Такеи языки удобны для скриптов, но плохо приспособлены для больших проектов. Хотя сложные программы пишутся и на питоне некоторыми.
3. Там пустое место означает что-то осмысленное. Имхо, отсутствие операторных скобок также способствует написанию глюков.


 
paul_k ©   (2006-02-22 09:25) [22]

Power Builder автору в руки... :)


 
Ученик чародея ©   (2006-02-22 09:33) [23]

>>paul_k ©   (22.02.06 09:25) [22]
>>Power Builder автору в руки... :)

Чур меня, чур. Тогда уже 1С...


 
paul_k ©   (2006-02-22 09:43) [24]

а что 1С это язык программирования? мне всегда казалось что это набор макросов встроенный в систему бухучета. И вне этой системы не живущий.


 
Ученик чародея ©   (2006-02-22 10:24) [25]

>>paul_k ©   (22.02.06 09:43) [24]

То же самое можно и сказать про PB, хотя это просто СУБД, как FoxPro, с теми же возможностями.


 
tesseract ©   (2006-02-22 10:43) [26]


> а что 1С это язык программирования? мне всегда казалось
> что это набор макросов встроенный в систему бухучета. И
> вне этой системы не живущий.


Почему - стартуем 1с как COm-сервер и вперёд :-)


 
noname_   (2006-02-22 11:56) [27]

2 wicked [9]


> критерии идеальности языка для меня просты -
> 1. поддержка "обобщенного" программирования (generics)
> 2. поддержка структурного программирования и ООП
> 3. простота синтаксиса языка и его компилятора
> 4. возможность "ухода на уровень ниже" - написание части кода на ассемблерах/plain C....
> требования к рантайму -
> 5. опциональность или отсутствие сборщика мусора
> 6. возможность генерации как "байткода",
>  так и автономных программ (PE/ELF файлы).....


из того что пришло в голову:
1, 2, 3, 4, 6 www.plt-scheme.org/software/mzscheme
1, 2, 3, 4 sourceforge.net/projects/ooc 6 сейчас нет, но принципиально возможно

по 5 - чем плох GC? IMHO с ним гораздо проще, а современные реализации обычно не сильно хуже по скорости/потреблению памяти чем ручное управление.


 
Mystic ©   (2006-02-22 14:55) [28]


> IMHO с ним гораздо проще, а современные реализации обычно
> не сильно хуже по скорости/потреблению памяти чем ручное
> управление.


И тем не менее при замене менеджера памяти в DBS 2006 было заявлено о росте производительности :)


 
Algol   (2006-02-22 14:56) [29]


> > поддержка "обобщенного" программирования (generics), поддержка
>
> > структурного программирования и ООП
>
> Object Pascal (aka Delphi), C++, C#


Дженерики и паскаль ака Делфи - вещи несовместимые.


 
wicked ©   (2006-02-22 15:41) [30]

> noname_   (22.02.06 11:56) [27]

> > критерии идеальности языка для меня просты -
> > 1. поддержка "обобщенного" программирования (generics)
> > 2. поддержка структурного программирования и ООП
> > 3. простота синтаксиса языка и его компилятора
> > 4. возможность "ухода на уровень ниже" - написание части
> кода на ассемблерах/plain C....
> > требования к рантайму -
> > 5. опциональность или отсутствие сборщика мусора
> > 6. возможность генерации как "байткода",
> >  так и автономных программ (PE/ELF файлы).....
>
>
> из того что пришло в голову:
> 1, 2, 3, 4, 6 www.plt-scheme.org/software/mzscheme
> 1, 2, 3, 4 sourceforge.net/projects/ooc 6 сейчас нет, но
> принципиально возможно
>
> по 5 - чем плох GC? IMHO с ним гораздо проще, а современные
> реализации обычно не сильно хуже по скорости/потреблению
> памяти чем ручное управление.

спасибы, почитаю..... но страшит меня что-то лисп/схеме своей сложностью и "непохожестью" ни на что мне известное....

а по GC - не устраивают те пляски с бубном, сопровождающие принципы его работы.... причем, на каждой платформе разные....
-------------------------------

> > > поддержка "обобщенного" программирования (generics),
>  поддержка
> >
> > > структурного программирования и ООП
> >
> > Object Pascal (aka Delphi), C++, C#
>
>
> Дженерики и паскаль ака Делфи - вещи несовместимые.

а если пофантазировать?..... ;)
type
 T = generic;

 Vector(T) = class
....
 end;
....
var
 vect: Vector(TPoint);
...

конечно, я утрирую, но имхо, такой способ вполне реален.... единственная преграда для дженериков в обжект паскале/дельфи - иделогическая.... потому что для правильной их работы необходимо вводить в язык перегрузку операторов и автоматические обьекты (которые создаются НЕ на куче)....


 
wicked ©   (2006-02-22 15:44) [31]

кстати, в паскаль способе можно даже упростить задачу компилятору и ввести конструкцию instantiate для явного типизирования нужных классов и функций....


 
oldman ©   (2006-02-22 15:45) [32]


> куда-то в сеть, посмотреть, на чём пишут бесплатное ПО (уже
> и не помню мотивации).


мдя...


 
seg   (2006-02-22 15:49) [33]

Необходимость наличия .NET framework версии не ниже определённой
на машие для исполнения. Но чем дальше, чем это проблема меньше.


Действительно?
А держать на каждой машине по несколько  фреймворков для каждого приложения по 10-20 метров каждая?
Да за такое вешать надо!


 
wicked ©   (2006-02-22 15:52) [34]


> А держать на каждой машине по несколько  фреймворков для
> каждого приложения по 10-20 метров каждая?
> Да за такое вешать надо!

имхо, микрософт тока с версиями 1.1 и 2 такого накосячил.... дальше, если они не спятят, то должны будут обеспечить обратную совместимость.... если так и будет, то у юзера будет на машине максимум 2 версии фреймворка - 1.1 и последняя....


 
noname_   (2006-02-22 15:55) [35]

2 Mystic [28]

Сборщик мусора не исключает менеджер памяти. Как я понимаю, сборщик обычно использует какой-либо менеджер, впрочем наверное есть и варианты 2 в 1


 
Jeer ©   (2006-02-22 15:57) [36]

Питоном заинтересовался где-то в 2001.
Очень интересный язык.
Считался языком верхнего уровня.
Сфера применения - как системное (верхний уровень ОС), так и высокоуровенное объектное программирование.
Напрягает синтаксис.
Непривычно, отсюда ошибки есть


 
seg   (2006-02-22 16:03) [37]

если они не спятят, то должны будут обеспечить обратную совместимость....

Это не их метод.


 
noname_   (2006-02-22 16:05) [38]

2 wicked [30]


> но страшит меня что-то лисп/схеме своей сложностью и "непохожестью"
> ни на что мне известное....


scheme один из самых простых языков, hello world на нем:
"Hello World"

я им заинтересовался после статьи
http://www.softcraft.ru/paradigm/dp/dp05-01.shtml
там предельно простыми элементами языка делаются весьма нетривиальные вещи



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.57 MB
Время: 0.018 c
2-1141008905
alex111
2006-02-27 05:55
2006.03.19
в системный трэй


2-1141386799
DancerMan
2006-03-03 14:53
2006.03.19
Table+DBGrid ins вставляемую запись отобразить в гриде последней


2-1141279313
Sany81
2006-03-02 09:01
2006.03.19
Delphi: ActiveX Form+TThread=Проблема


15-1140614702
ArtemESC
2006-02-22 16:25
2006.03.19
Редактор физических секторов диска...


2-1141034471
BaBayka007
2006-02-27 13:01
2006.03.19
Доброго всем дня....подскажите пожалуйста.....вроде делаю правиль





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский