LINUX.ORG.RU
Форум — Talks  

Какой язык бы выбрали для изучения программирования в 2026 году?

 


0

3

Какой язык бы выбрали для изучения программирования в 2026 году?

Перемещено dataman из general



Последнее исправление: Dimez (всего исправлений: 2)

Пока ничего лучше Паскаля не видел. Качай Введение в профессию Столярова и программировай.

vbr ★★★★★
()
Ответ на: комментарий от tcpfinhello

C++ побеждает просто потому, что самый быстрый без всяких компромиссов.

Не. За счёт того, что очень долгое время был единственным вариантом языка практически не накладывающим ограничений (можно выразить практически всё, что позволяет аппаратура).

glebiao ★
()
Ответ на: комментарий от Ygor

не поспоришь. но я бы взял язык, дающий возможность попробовать и современные идиомы. без унаследованной зауми.

glebiao ★
()
Ответ на: комментарий от vbr

Пока ничего лучше Паскаля не видел. Качай Введение в профессию Столярова и программировай.

Мужики всё равно собирались выпить, но тут кто-то вспомнил про паскаль и Столярова …

VIT ★★★
()
Ответ на: комментарий от tcpfinhello

C++ побеждает просто потому, что самый быстрый

С++ — это длящаяся уже четыре десятилетия безуспешная попытка написать годный класс для строк. А быстро у вас получается только память портить.

ugoday ★★★★★
()

Отвечу по теме форума: shell, awk, C.

buddhist ★★★★★
()
Ответ на: комментарий от ugoday

С++ — это длящаяся уже четыре десятилетия безуспешная попытка написать годный класс для строк.

Справедливости ради, в Qt, который написан на C++, строки прекрасны. Но в стандартной библиотеке - да, это тихий ужосо.

Xintrea ★★★★★
()
Ответ на: комментарий от Xintrea

Да множество есть попыток исправить строки в С++. Но сама эта множественность свидетельствует о неуспехе. Вот, в языках, при создании которых сначала головой подумали, Java, например, или Go (там и зарплаты выше), такой фигнёй не страдают.

ugoday ★★★★★
()
Ответ на: комментарий от glebiao

Не. За счёт того, что очень долгое время был единственным вариантом языка практически не накладывающим ограничений (можно выразить практически всё, что позволяет аппаратура).

Почему был, остался же. Rust даёт гораздо больше ограничений: пока напишешь то же самое, что на крестах, в дурку уже увезут. Да, получится в итоге строже и формально верифицируемо, но Rust не единственный путь достигать такого, если это нужно: есть всякие там статические анализаторы и доказатели корректности, а если программа зависит от данных, то и в Rust будет оверхед на проверки в рантайме… Ну и часть возможностей Rust достигается оборачиванием его кода в какой-то там unsafe блок, что превращает его в сишечку с void* указателями.

tcpfinhello
()
Ответ на: комментарий от ugoday

С++ — это длящаяся уже четыре десятилетия безуспешная попытка написать годный класс для строк. А быстро у вас получается только память портить.

Эту задачу не решили в стандарте, чтобы оставить эту задачку для собесов, ведь нужно фильтровать даунов на входе в профессию!

P.s. никогда не испытывал проблем со строками в проклятых крестах, не понимаю почему эта тема так раздута. Щас же есть возможность написать

auto s = std::format("hello {} blabla {}, hehehe {}", 1, 2, 3);

и где тут какие проблемы я чё-то не понял. Кому там чего не хватает? Ладно, тупой вопрос, всегда есть те, кому чего-то не хватает - живут у кремля и жалуются, что метро далековато. Ну ладно не будем поднимать срачь, у меня есть гораздо более интересные проблемы в жизни - например как эффективно сливать блоки B+-Tree дерева

Да, на C++ бывает сидиш пишешь маленький велосипед для какой-то мелкой вещи. Каждый крестовик уже давно в жизни разработал свою маленькую библиотеку и таскает из проекта в проект. Типа строки свои там всякие зачем-то. Можно сказать, что С++ - язык со встроенным в жизненный цикл профилактическим прохождением LeetCode.

tcpfinhello
()
Последнее исправление: tcpfinhello (всего исправлений: 5)
Ответ на: комментарий от shell-script

Да был в соседней теме тоже один, которому пробелы мешали. Мол считать сложно. Он их, наверное, с калькулятором проставляет, чтобы со счёта не сбиться.

Таким объяснять что-то - только время зря тратить.

bbc69
()
Ответ на: комментарий от justmson

уже дошло до того что 4 года обучения джава + си + Делфи в колледже просто выдали все соки и не знаю что выбрать

Если из вас все соки выжала даже дэльфя, то имхо погромирование не ваше.

anc ★★★★★
()
Ответ на: комментарий от shell-script

От це номер, а я всё слышу про обратное, спасибо!

anc ★★★★★
()
Ответ на: комментарий от cadaber

Да, перл в части парсинга текста по мне вполне годен. Много пришлось попарсить.

anc ★★★★★
()
Ответ на: комментарий от tcpfinhello

в стандартной библиотеке - да, это тихий ужосо.

никогда не испытывал проблем со строками

Немеркнущая классика: два С++’шника выразили два прямо противоположных мнения о строках в С++. Стоит ли удивляться, что у вас там эдакий зоопарт творится.

ugoday ★★★★★
()
Ответ на: комментарий от tiinn

и программировать исключительно на их, бд-шных, языках ;)

Это вы про всякие foxpro и другие pal ? :)

anc ★★★★★
()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

С x86 асма - да, тяжело. А какой-нибудь ARM/RISC-V/MIPS - очень даже неплохо.

В принципе, чтобы понять суть и смысл всей этой охоты с программированием достаточно вообще на Z80/6502 или 8-мибитных однокристалках потренироваться. Как дойдёт что именно вот в это всегда и превращается код на абсолютно любом языке и что вся глубинная суть программирования - заставить вот именно так устроенную железку решать нужную задачу, можно уже и к прочим аспектам программирования переходить.

Stanson ★★★★★
()
Ответ на: комментарий от anc

Ну ИМХО 6502 и PDP-11 (KP1801ВМ) всё-же попроще будут. Правда PDP-11 нынче туговато, хотя вроде Ангстрем до сих пор какую-то продвинутую версию 1801 выпускает. Зато у Z80 зачаточный гипертрединг есть, в виде теневого набора регистров. :)

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

Stanson ★★★★★
()
Ответ на: комментарий от ugoday

Немеркнущая классика: два С++’шника выразили два прямо противоположных мнения о строках в С++. Стоит ли удивляться, что у вас там эдакий зоопарт творится.

Никогда не понимал с каких пор это минус. Чем больше возможностей у языка, тем больше разных сортов одного и того же в нём естественным образом появляется. Ну типа у идеи «4 колеса и мотор» получается очень много разных видов автомобилей и это нормально.

tcpfinhello
()
Ответ на: комментарий от tcpfinhello

Никогда не понимал с каких пор это минус. Чем больше возможностей у языка, тем больше разных сортов одного и того же в нём естественным образом появляется.

Так то оно конечно так, но что лучше, взял диск, вставил и работает или диск DVD-R, а проигрыватель DVD+R. Или наоборот, но несовместимый?

VIT ★★★
()

Вот тут все пишут +- одно и тоже в духе «бери этот ЯП - он лучше» или «сейчас актуален этот» или «изучать надо 100500 ЯП а не один какой то»…это все фигня. можешь с таким же успехом свой вопрос адресовать гуглу/ии..

Прежде всего стоит уяснить самое главное: программирование это лишь род деятельности, т.е. действия, которым ты будешь решать (бизнес) задачи. Важно другое: какие (бизнес) задачи тебе интересно было бы решать (особенно это станет критически важно на этапе, когда это станет рутиной - работой). Другими словами стоит перво наперво определиться, какая сфера для тебя наиболее интересна: будь разработка программок для компика/мобилки, или же ембеддыд, а может и вовсе веб-кодинг, ну и тд. А вот в каждой сфере свой(и) ЯП, свои технологии и тд.

Сам(и) ЯП проще изучать прямо в процессе работы над задачкой (особенно в эпоху гуглей/ии). Во-первых когда тебе реально интересна задачка, нейроны в мозге намного эффективней выстраивают связи (факт) - кароче обучение проходит в буст-режиме, во-вторых ты получаешь новые знания/умения полностью соотвествующие насущной «проблеме», избирательно, а не в режиме «изучить все на всякий случай». Ну и в третьих, как я уже обозначил выше, когда натеребонькаешься на IT, выгорешь, и станешь бородатым скуфом с 20ти летним проф стажем, все это давно перестанет вставлять, будет оч важно что б сфера (задачи) над которым работаешь, хоть немного вызывали интерес. Это очень важно. Блеска в глазах как в молодости уже не будет, но хотя бы не будет тошнить от работы..

k000858
()
Ответ на: комментарий от tcpfinhello

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

Уволить сразу. Всегда волосы дыбом, когда приходишь в новую контору, а там на проекте свой велосипед вместо строк(и ещё половины stdlib) используется.

PS: Сам стараюсь даже на Qt использовать std::string(и конвертировать в QString только перед выводом), чтобы переносимость была.

Loki13 ★★★★★
()
Ответ на: комментарий от Loki13

Уволить сразу. Всегда волосы дыбом, когда приходишь в новую контору, а там на проекте свой велосипед

Лучше делать одно и то же много раз заново, чем использовать уже написанное однажды? Иногда бывает смысл использовать свои реализации, тем более если они уже есть.

LightDiver ★★★★★
()
Ответ на: комментарий от LightDiver

Не надо тащить свои велосипеды в проект, где кроме тебя работают другие люди. Ты уйдешь, а тому кто придет после тебя, изучать твои велосипеды. Для петпроектов это конечно нормально.

Loki13 ★★★★★
()
Последнее исправление: Loki13 (всего исправлений: 1)
Ответ на: комментарий от LightDiver

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

Loki13 ★★★★★
()
Ответ на: комментарий от Loki13

Ну и в чем разница между использованием готовых библиотек? Ты их так дохрена изучаешь при использовании? Или принципиально не используешь готовые?

LightDiver ★★★★★
()
Ответ на: комментарий от LightDiver

Я про низкоуровневые вещи, которые в stdlib. Да, если что-то есть в stdlib, то я стараюсь другие библиотеки не использовать для этого. Даже boost, только в самых безвыходных ситуациях, если и правда надо.

Loki13 ★★★★★
()
Последнее исправление: Loki13 (всего исправлений: 1)
Ответ на: комментарий от tcpfinhello

Песни новые сочиняют те, у кого старые хреновые. Если вы пишете пятнадцатый класс для обработки строк, значит предыдущие четырнадцать у вас не получились. Слово «стандартный» в «стандартная библиотека» стоит не просто так. Предполагается, что если стандартная библиотека сделана хорошо (как это случилось практически во всех остальных языках), то программисту не нужно переизобретать колесо в каждом новом проекте, что увеличивает продуктивность работы и снижает количество ошибок.

P.S. Если уж мы вступили на стезю автоаналогий, то С++ — это автомобиль с семью колёсами, каждое из которых отличается от других и ни одно из них не круглое.

ugoday ★★★★★
()
Ответ на: комментарий от LightDiver

Лучше делать одно и то же много раз заново, чем использовать уже написанное однажды?

Так ведь ситуация, когда каждый программист пишет свою личную «стандартную» библиотеку именно этим и является.

ugoday ★★★★★
()

LISP, какой именно - не определился, изучаю теорию.

etwrq ★★★★★
()
Последнее исправление: etwrq (всего исправлений: 1)
Ответ на: комментарий от tiinn

Ага. T-SQL мелкомягких, PL/SQL и т.д.

Вот кстати да, SQL развелось как грязи, но только я всё-таки имел ввиду то на чем приложухи писали, а не только лишь данными манипулировали :)

anc ★★★★★
()
Ответ на: комментарий от tiinn

раньше было лучше :), ага. FoxPro, Clipper…

Ага, ага, я про них любимых :)

anc ★★★★★
()
Ответ на: комментарий от algo

Ты получаешь зарплату, а созданная тобой добавленная стоимость остается у работодателя-буржуя. И он эту добавленную стоимость продаëт на рынке. Вот только добавленная стоимость и зарплата дорожают вместе с ростом цен на всë необходимое для производства, поэтому буржуй ищет способы снизить затраты на производство добавленной стоимости. Он не может снижать зарплату – иначе к нему никто не пойдëт работать, а вот снижать общие затраты на зарплату он может, что и делает, внедряя автоматизацию и механизацию труда, в том числе умственного, именно с этой целью крупные буржуи вкладываются в ИИ и робототехнику.

yars068 ★★★★★
()
Ответ на: комментарий от ugoday

при создании которых сначала головой подумали, Java, например

Так в твоей таблице у Java 55%, а у Qt - 61% близости к идеалу. Получается, что в C++/Qt лучше подумали над строками, чем в Java?

Xintrea ★★★★★
()
Ответ на: комментарий от Xintrea

Считать надо количество реализаций строк на язык программирования. Сколько у явы, сколько у С++? Вот то-то и оно-то.

ugoday ★★★★★
()
Ответ на: комментарий от VIT

Так то оно конечно так, но что лучше, взял диск, вставил и работает или диск DVD-R, а проигрыватель DVD+R. Или наоборот, но несовместимый?

Если у тебя в проекте свои строки, то там всё совместимо с твоими строками. Иначем откуда бы там взяться твоим строкам, если они не работают. Ну и плюс что-то подшаманить, чтобы было совместимо - 5 сек работы, это же не дом из кирпича строить, на кнопки нажимать. Ну типа подпилил метод конвертации в «обычные» строки и всё работает.

tcpfinhello
()
Последнее исправление: tcpfinhello (всего исправлений: 1)
Ответ на: комментарий от ugoday

Предполагается, что если стандартная библиотека сделана хорошо

У профессионалов в любой сфере таких понятий нет. Есть инженерные категории «подошло под такую-то цель». Ну значит захотели управлять памятью иначе, чем это делает std::string или избавиться от возможных свобод std::string. Например я могу приплюсовать к std::string другую строку и оно сконкатенирует и получит новую строку, но в проекте хочется такую фичу запретить, чтобы аноны не спровоцировали обращение к аллокатору…

tcpfinhello
()
Последнее исправление: tcpfinhello (всего исправлений: 1)
Ответ на: комментарий от ugoday

что увеличивает продуктивность работы

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

tcpfinhello
()
Ответ на: комментарий от tcpfinhello

Чем лепить левые отмазки, лучше бы взяли всем С++ сообществом и запилили нестыдную стандартную библиотеку.

ugoday ★★★★★
()
Ответ на: комментарий от thesis

В стандарте языка цпп семь реализаций строк? Я что-то упустил?

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

tcpfinhello
()
Вы не можете добавлять комментарии в эту тему: только для зарегистрированных, score>=50.