Ваш любимый язык разработки

Друзья, прошу вас поделиться своими мыслями по поводу самого перспективного языка разработки под нашу любимую ОС Linux.

Вопрос номер один. Правда ли, что за языками сверхвысокого уровня будущее?

Вопрос номер два. Какие основные требования к языку выдвигаете вы?

Идеальный язык программирования для Linux отличается от идеального языка для Windows?

Скрипты это плохо? А что думаете по поводу всяких модных Microsoft Framework?

Самый лучший язык под Linux - наверное, никто с этим спорить не будет - C/C++ :)
Встречный вопрос - что Вы подразумеваете под языками "сверхвысокого" уровня? Java? Python?
Основные требования к языку - чтобы на нем было просто и удобно писать (а не сидеть часами, копаясь в документации и выясняя, где же поставить скобочку). На С++ - удобно и просто. На Asm - удобно, просто (но трудоемко, увы). А вот на Perl - лично мне неудобно.
Идеальный язык под Винду - Турбо-Паскаль ака Дельфи. Потому что там думать не нужно. Клепай знай одну формочку к другой...
Скрипты - это хорошо, пока они выполняют свое предназначение: за пару минут быть написанными для выполнения какой-то мелкой задачки. Когда на них начинают писаться более-менее большие программы - это уже не есть гут.
Фреймворк - это протез. Удобный такой. Естественно выглядит, почти как настоящая нога. Даже шевелится. Но, увы, это всего лишь протез:(

azmiol аватар

>никто с этим спорить не будет - C/C++

Я буду. Для системного ПО это хороший выбор. Для остального - нет.

Bull-Dog аватар

если отвечать на вопрос прямо тогда shell-скрипт (читать Мастер Фу и десять тысяч строк).
если смотреть с другой стороны нужно использовать более высокоуровневые языки программирования.
а если отвечать подумав тогда для каждой задачи нужно выбирать свой язык.

azmiol аватар

Считаю вопрос не корректным. Для разных задач лучше подходят различные языки. Один "идеальный" и "любимый" выбрать невозможно. Также как и "самый перспективный".
По пунктам:
1. правда.
2. возможность быстро написать соответствующую задаче программу.
3. не отличаются. Т.к. идеального языка просто не существует.
4. Скрипты это "хорошо" =). Фреймворки - тоже. Т.к. ускоряют процесс разработки.

Stilgar аватар

В общем поддерживаю, но любимый — это не идеальный. Это тот, который любишь. Вот я люблю Python. Я на нём пока мало писал, когда будет возможность пописать больше, смогу рассказать, за что. Но я бы на нём не писал всё подряд, например если нужна высокая производительность.

Кроме того языки можно разделить на хорошие и плохие, а также находить недостатки в хороших (занятие полезное ввиду того, что языки подлежат исправлению). Это же не правда, что все языки являються идеальными инструментами для своего круга задач. Тем более можно заклемить программы за неадекватное использование языков и фреймворков, что обычно всех и возмущает.

azmiol аватар

Хм. Ну, насчет "любимого" языка, возможно, вы и правы.
Я, честно говоря, не могу выбрать один конкретный язык =).

Находить недостатки и примеры неадекватного использования действительно нужно.
И языки действительно бывают различными. "Лучше"/"Хуже". Но это уже подробности.
Я имел ввиду, что одного "наиболее перспективного" языка не существует, и различные языки могут быть более/менее подходящими для определенных задач. И только это. Это ни в коем случае не значит, что "все языки являются идеальными инструментами для своего круга задач".

liberatum аватар

Пожалуй, отвечу и сам. :)

  1. Правда. Это убеждение основывается на том факте, что вычислительные ресурсы гораздо дешевле времени программиста. Если мы говорим о промышленном программировании, то за языками сверхвысокого уровня будущее. Хотя, это не отменяет любителей, которые будут создавать великолепные программы на любых языках.
  2. Тут как бы все просто. :) Язык должен быть легким в изучении, не допускать неоднозначного использования своих лексических конструкций, должен брать на себя то, что компьютер может сделать лучше человека. Например, сам следить за возможными переполнениями буфера, SQL-инъекциями и т.п. Т.е. максимально исключать человеческий фактор. Не забудем и о производительности. Впрочем, это все больше требования к интерпретаторам и конкретным реализациям, нежели к самому языку. А еще он должен мне нравится субъективно. :) Например, я не могу терпеть символ «$» у переменных в PHP, а кому-то нравится. Или мне не очень нравится идея с отступами в Python, а питонистам очень нравится.
  3. Конечно, отличается. Идеальный язык должен максимально эффективно использовать особенности операционной системы, ее конкретные сильные стороны.
  4. Скрипты — и это хорошо, и плохо, но пользы от них намного больше. Например, не надо тратить время на компиляцию, скрипты из непроверенных источников легче поддаются аудиту, нежели бинарники, скрипты легко переносимы между платформами и т.п. Недостатки — производительность. Сторонники проприетарного ПО приведут еще проблемы с защитой интеллектуальной собственности.

    Фреймворки — это замечательно. :) Но только тогда, когда человек сначала обучается на самом низком уровне, потом приходит к пониманию необходимости использовать фреймворк. Например, можно начать изучать JavaScript и основы AJAX, а можно сразу изучить jQuery. В втором случае, думаю, вреда будет больше. :)

    Подведу итог. Самым интересным языком в плане развития мне кажется Ruby. Ему еще есть куда развивается, но общее направление мне кажется верным. :) Кроме этого, можно привести еще и Python.

melcomtec аватар

Как я хотел ответить так же! Ну что ж - Ваш ответ исчерпывающий и полностью созвучен моим ощущениям. И я с удовольствием присоединяюсь к нему. Блестяще! Добавить нечего!

Если начнешь учить какой-нибуть язык не зная C/C++ и основ--на всю жизнь останешся лохом -- "Привет мир".

azmiol аватар

Это шутка такая?
C и особенно C++ - далеко не лучшие языки для обучения.
Если речь идет, конечно, именно о серьезном обучении программированию, а не о изучении основ быдлокодинга.
P.S.: из вашей фразы, кстати, следует, что все программисты, начинавшие свою карьеру до появления C/C++ на всю жизнь остались лохами. Что, мягко говоря, не соответствует действительности.

Это крайне неоднозначное утверждение. Во-первых, "язык С" - это не "язык С++" и, тем более, - не "С/С++". Если для своего времени С был революционным открытием (переносимый, лёгкий, простой, гибкий) и сыграл фундаментальную роль в развитии ОС (всех ОС, не только юниксоподобных), да и железа тоже, то С++ - это уже что-то, во многом противоположное С по своей задумке... А stl - вообще вредительство.

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

Скажем, С внёс операции "." (адресация члена структуры), "->", "*" и "++" "--". Теперь во многих языках эти операции именно так и обозначаются. Алгол внёс в язык "begin;" и "end;". Перл - внёс понимание того, что дальнейшее продвижение по пути С в части синтаксиса - совершенно безыдейное занятие. Нет более нечитаемого языка, чем Перл. При том, что по всем прочим статьям Перл - язык превосходящий многих, сомнительно, что тот же Питон как-то радикально превосходит Перл. Ну, и т.д.

Отправить комментарий

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote>
  • Строки и параграфы переносятся автоматически.
  • Поисковые системы будут индексировать и переходить по ссылкам на разрешённые домены.

Подробнее о форматировании

КАПЧА
Этот вопрос предназначен для проверки вашей принадлежности к Homo sapiens
CAPTCHA на основе изображений
Скопируйте буквы (соблюдая верхний и нижний регистры) с картинки.
RSS-материал
Яндекс.Метрика