Какой ЯП более гибкий.
Модератор: Модераторы
-
PascalBeginer
- незнакомец
- Сообщения: 2
- Зарегистрирован: 02.02.2012 12:34:10
Какой ЯП более гибкий.
Какой язык программирования более гибкий?
Pascal
Python
C++
?? Какой из вышеперечисленных ЯП на ваше усмотрение более гибкий.
Pascal
Python
C++
?? Какой из вышеперечисленных ЯП на ваше усмотрение более гибкий.
- Little_Roo
- энтузиаст
- Сообщения: 639
- Зарегистрирован: 27.02.2009 18:56:36
- Откуда: Санкт-Петербург
PascalBeginer писал(а):Какой язык программирования более гибкий?
Для каких задач?
тот, который лучше знаешь 
- Brainenjii
- энтузиаст
- Сообщения: 1351
- Зарегистрирован: 10.05.2007 00:04:46
Питон гибче всех, инфа 100%
-
Padre_Mortius
- энтузиаст
- Сообщения: 1265
- Зарегистрирован: 29.05.2007 17:38:07
- Откуда: Спб
Каждый язык под свою задачу.
-
PascalBeginer
- незнакомец
- Сообщения: 2
- Зарегистрирован: 02.02.2012 12:34:10
Допустим авто проверка почты, RSS рассылка, и т.д. Все что связано с Web. И какой более гибкий в плане автоматизации Windows, Linux?
-
Padre_Mortius
- энтузиаст
- Сообщения: 1265
- Зарегистрирован: 29.05.2007 17:38:07
- Откуда: Спб
С автопроверкой почты очень хорошо справляется любой почтовый клиент.
Автоматизацией чего? Сферического коня в вакууме? Любая программа есть автоматизация каких-либо действий. Для автоматизации действийЁ например, системного администратора в Линукс используется bash, python, perl. Под Windows теже действия выполняют скрипты на PowerShell, vb script, javascript и т.д.
И какой более гибкий в плане автоматизации Windows, Linux?
Автоматизацией чего? Сферического коня в вакууме? Любая программа есть автоматизация каких-либо действий. Для автоматизации действийЁ например, системного администратора в Линукс используется bash, python, perl. Под Windows теже действия выполняют скрипты на PowerShell, vb script, javascript и т.д.
Паскаль как язык достаточно сбалансированный:
1. Он достаточно строгий, чтобы отсеять большинство проблем, имеющихся при неумелом использовании С/С++, т.к. 90% проблем с безопасностью (всякая вирусня и т.п.) связано именно с этим (язык разрешает делать баги для программера средней квалификации, которые потом вычищаются годами).
2. Он достаточно быстрый, в отличие от языков с динамической типизацией.
3. При необходимости он имеет variant, чтобы использовать динамическую типизацию.
4. Он содержит сборщик мусора для строк и динамических массивов. А для чего еще нужен сборщик мусора? Ведь не для классов же, где в любом случае нужно вызывать деструктор.
Естественно, что в частном случае может быть лучше ассемблер, С/С++, Java, Python, C#, но в другом частном случае оптимальным будет другой язык. Паскаль на мой взгляд как раз находится в области "золотой середины". Он не является самым лучшим для конкретного случая, но его можно применить всегда и достаточно эффективно.
Кстати, мы часто делаем системную ошибку при выборе чего-то. Нужно смотреть не только на сильную сторону чего-то (в т.ч. ЯП), но и на его слабую. Причем на слабую смотреть сильнее. Именно в таком ключе Паскаль очень сильный язык, его слабая часть несущественна, по сравнению со слабыми частями тех же С/С++, Java, Python, C#.
1. Он достаточно строгий, чтобы отсеять большинство проблем, имеющихся при неумелом использовании С/С++, т.к. 90% проблем с безопасностью (всякая вирусня и т.п.) связано именно с этим (язык разрешает делать баги для программера средней квалификации, которые потом вычищаются годами).
2. Он достаточно быстрый, в отличие от языков с динамической типизацией.
3. При необходимости он имеет variant, чтобы использовать динамическую типизацию.
4. Он содержит сборщик мусора для строк и динамических массивов. А для чего еще нужен сборщик мусора? Ведь не для классов же, где в любом случае нужно вызывать деструктор.
Естественно, что в частном случае может быть лучше ассемблер, С/С++, Java, Python, C#, но в другом частном случае оптимальным будет другой язык. Паскаль на мой взгляд как раз находится в области "золотой середины". Он не является самым лучшим для конкретного случая, но его можно применить всегда и достаточно эффективно.
Кстати, мы часто делаем системную ошибку при выборе чего-то. Нужно смотреть не только на сильную сторону чего-то (в т.ч. ЯП), но и на его слабую. Причем на слабую смотреть сильнее. Именно в таком ключе Паскаль очень сильный язык, его слабая часть несущественна, по сравнению со слабыми частями тех же С/С++, Java, Python, C#.
*Надевая троллфайсе: asm конечно.. и попробуйте возразить)
Посмотрите на ник ТС. ИМХО тролль детектед.

Brainenjii писал(а):Питон гибче всех, инфа 100%
- debi12345
- долгожитель
- Сообщения: 5761
- Зарегистрирован: 10.05.2006 23:41:15
- Откуда: Ташкент (Узбекистан)
Из всей компании несомненно гибче Пайфон - огромная библиотека на все случаи жизни, и ессно главная фишка скриптовых языков - возможность на лету строить и тут же читать и выполлнять идентификаторы (переменных и процедур). Но все эти плюсы аннулируются невозможностью пошаговой отладки. Вообще, из скрпитовых языков кажется только ПХП имеет отладчик.
ПС:
Пишу это как несчастный пользователь брата/близнеца связки Python/Tk/QT - связки TCl/TK. В "наследство" достался программый комплекс на сопровождение - однако пришлось переписать уже порядка 50%, и скажу - большей пытки трудно представить
ПС:
Пишу это как несчастный пользователь брата/близнеца связки Python/Tk/QT - связки TCl/TK. В "наследство" достался программый комплекс на сопровождение - однако пришлось переписать уже порядка 50%, и скажу - большей пытки трудно представить
- bw
- постоялец
- Сообщения: 359
- Зарегистрирован: 01.12.2005 10:36:23
- Откуда: Усть-Илимск
- Контактная информация:
> невозможностью пошаговой отладки
С хрена ли? С этим никаких проблем нет, просто эта фича значительно менее популярна чем в нативных языках.
Пока вопрос не касается реализации ресурсоёмких алгоритмов я используются Python, а так же для прототипирования с пониманием что всё придётся переписывать. Для написания оптимизированных нативных модулей Pyrex/Cython (не всегда годится на 100%). Ну и для всего остального (годами не нужно, скилл теряется, обидно): Vala, C, FreePascal.
..bw
С хрена ли? С этим никаких проблем нет, просто эта фича значительно менее популярна чем в нативных языках.
Пока вопрос не касается реализации ресурсоёмких алгоритмов я используются Python, а так же для прототипирования с пониманием что всё придётся переписывать. Для написания оптимизированных нативных модулей Pyrex/Cython (не всегда годится на 100%). Ну и для всего остального (годами не нужно, скилл теряется, обидно): Vala, C, FreePascal.
..bw
- debi12345
- долгожитель
- Сообщения: 5761
- Зарегистрирован: 10.05.2006 23:41:15
- Откуда: Ташкент (Узбекистан)
С хрена ли? С этим никаких проблем нет, просто эта фича значительно менее популярна
=============
Хм, рыл да ничего не нашел - ни под TCL, ни под Python. Как назывется тулза ?
Добавлено спустя 7 минут 15 секунд:
Пока вопрос не касается реализации ресурсоёмких алгоритмов я используются Python
=============
Ну, на нем мало-мальки сложное БД приложение не напишешь - комбобоксы и гриды вручную грузить приходится, и т.п. - то есть уйма тупого служебного кода.
Хотя Пайфон тут не одинок, его GUI-провайдеры (TK, QT,..) имеют библиотеки, воротящие нос от БД. Вообще БД-компоненты с мире опен-сорса в загоне - что весьма странно.
=============
Хм, рыл да ничего не нашел - ни под TCL, ни под Python. Как назывется тулза ?
Добавлено спустя 7 минут 15 секунд:
Пока вопрос не касается реализации ресурсоёмких алгоритмов я используются Python
=============
Ну, на нем мало-мальки сложное БД приложение не напишешь - комбобоксы и гриды вручную грузить приходится, и т.п. - то есть уйма тупого служебного кода.
Хотя Пайфон тут не одинок, его GUI-провайдеры (TK, QT,..) имеют библиотеки, воротящие нос от БД. Вообще БД-компоненты с мире опен-сорса в загоне - что весьма странно.
На мой взгляд излишняя гибкость Python и подобных языков приводит к большому раслабону программиста, в результате чего получается не продуманный код.
Фактически такие языки хороши для простых задач, когда взял, написал и забыл.
В сложных задачах строгость языка сильно помогает, т.к. путей решения задач меньше, и не нужно запоминать как и что было сделано. То есть естественным образом получается некая унификация решений. Опять же в сложной задаче - этап кодирования (который вроде бы как проще на питоне) не является ключевым по трудоемкости. А более низкое быстродействие интерпретирующих языков заставляет извращаться с алгоритмами. Сборщики мусора - тоже вещь в себе. В паскале мне кажется она реализована оптимально на уровне строк и динамических массивов. Для классов важен момент их финализации (там часто сидит некий функционал), а где не важен, там есть тоже приемы "а ля" локальный сборщик мусора типа ObjectList. В ресурсоемких задачах, когда работаешь на гране свободной памяти, то явное освобождение памяти работает намного лучше.
Фактически такие языки хороши для простых задач, когда взял, написал и забыл.
В сложных задачах строгость языка сильно помогает, т.к. путей решения задач меньше, и не нужно запоминать как и что было сделано. То есть естественным образом получается некая унификация решений. Опять же в сложной задаче - этап кодирования (который вроде бы как проще на питоне) не является ключевым по трудоемкости. А более низкое быстродействие интерпретирующих языков заставляет извращаться с алгоритмами. Сборщики мусора - тоже вещь в себе. В паскале мне кажется она реализована оптимально на уровне строк и динамических массивов. Для классов важен момент их финализации (там часто сидит некий функционал), а где не важен, там есть тоже приемы "а ля" локальный сборщик мусора типа ObjectList. В ресурсоемких задачах, когда работаешь на гране свободной памяти, то явное освобождение памяти работает намного лучше.
Последний раз редактировалось alexey38 04.02.2012 16:17:49, всего редактировалось 1 раз.
-
NTFS
- постоялец
- Сообщения: 388
- Зарегистрирован: 05.11.2007 13:57:50
- Откуда: Краснодар
- Контактная информация:
debi12345
Вообще БД-компоненты с мире опен-сорса в загоне - что весьма странно.
Ничего странного - БД это прежде всего корпоративный сектор, а OpenSource (массовый) - это в основном всякие мелкие свистелки и хотелки. Не вспомню с ходу ни одного серьезного приложения Enterprise-уровня, реализованного в чистом OpenSource.
Насчет гибкости - этот термин мне вообще никогда не был понятен. Ну, смогу я в Pythone записать решение тридцатью тремя вариантами - что это дает мне на этапе отладки, тестирования, внедрения и сопровождения? Почти ничего. Алгоритм любой сложности можно на машине Тьюринга построить
только поддерживать будет тяжко.
Вообще БД-компоненты с мире опен-сорса в загоне - что весьма странно.
Ничего странного - БД это прежде всего корпоративный сектор, а OpenSource (массовый) - это в основном всякие мелкие свистелки и хотелки. Не вспомню с ходу ни одного серьезного приложения Enterprise-уровня, реализованного в чистом OpenSource.
Насчет гибкости - этот термин мне вообще никогда не был понятен. Ну, смогу я в Pythone записать решение тридцатью тремя вариантами - что это дает мне на этапе отладки, тестирования, внедрения и сопровождения? Почти ничего. Алгоритм любой сложности можно на машине Тьюринга построить
