LINUX.ORG.RU

Выбор ЯП для системного программирования.

 ,


2

4

Добрый день, задумался я тут о том чтоб начать учить один из низкоуровневых ЯП для развития и разработки. До этого писал только на Python, но он на роль языка разработки системных инструментов не подходит. Так как тут народ опытный хотел бы узнать что в данный момент лучше начинать учить? Пока выделил следующие ЯП. C,C++,JAVA,RUST.


Ответ на: комментарий от RazrFalcon

http://www.opennet.ru/opennews/art.shtml?num=47196 - тоже неплохо

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

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

Я книжку недавно нашел «Язык с в xxi веке», автор Бен Клеменс. Очень интересно. С99 и С11 довольно сильно отличаются от С, описанного в книжке Кернигана/Ричи. Да и библиотек/инструменов для него много понаписано. Вполне можно в С и с юникодом работать и doxygen прикрутить и простейший ооп организовать. Так что рано его списывать в утиль.

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

С99 и С11 довольно сильно отличаются от С, описанного в книжке Кернигана/Ричи

И? Ничего кардинально исправляющего его убогость там не появилось.

Вполне можно в С и с юникодом работать и doxygen прикрутить и простейший ооп организовать

И что? И на ассемблере можно, и на брейнфаке.

Так что рано его списывать в утиль.

Не рано, а надо было ещё в 99. Увы, уникумов пишущих на нём даже прикладуху ещё достаточно.

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

многие gtk-проги на плюсах

Я знаю только тормозной Inkscape на gtkmm. Есть ещё что-то серьезное?

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

Конечно лучше. Писать на Python, узкие места сглаживать Rust.

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

Не рано, а надо было ещё в 99. Увы, уникумов пишущих на нём даже прикладуху ещё достаточно.

Это вы про linux kernel, git, gcc и т.п.? Ну перепишите их на чем-нибудь другом, кто мешает? ))). ЯП сейчас полно. С++ не стал убийцей C. А Go, Java, Rust, D и подавно. Никто не мешает выбрать ЯП по душе и писать только на нём.

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

Хрен редьки не слаще. С появился в 70х, С++ - в 80х. Там тоже есть тысячи способов выстрелить в ногу. Я до сих пор не понимаю, чем cout << x; лучше чем printf. Как ни странно, более простой язык java стал самым популярным. Из относительно новых ЯП мне интересны Go, D. Rust выглядит как сборная солянка из c++, perl и функциональных языков типа ocaml\haskell. И похоже, он не дает прироста производительности программиста, если считать строки кода на задачу и время на его написание/компиляцию/отладку.

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

А git на C/shell/perl. А linux на GNU C, который таки чуть вменяемей чем C. И всё это не мешает регулярно находить детские баги и уязвимости.

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

Какой-то поток сознания неасилятора.

Как ни странно, более простой язык java стал самым популярным.

Он стал популярным потому, что:

a) для большинства прикладных задач, которые решаются с помощью компьютера, низкоуровневые языки без сборки мусора, т.к. C, C++, Modula-2, Ada и пр. не нужны в принципе. Это было понятно еще в 50 и 60-е годы, когда появился Lisp, Simula и пр. языки со сборкой мусора;

b) с конца 1980-х мощность вычислительной техники начала стремительно расти. И если ранее разработчики были вынуждены использовать C или C++ для того, чтобы на дохлом железе программа хоть сколько-нибудь нормально отзывалась, то в 90-е сложилась ситуация, когда мощность компьютера росла чуть ли не ежедневно. Поэтому то, что в 1990-ом приходилось тчательно оптимизировать для работы на 8086-ом, то в 2000-ом можно уже было написать на Java под Windows на Pentium III не заботясь о тормозах.

Вот как раз где-то с начала 2000-х надобность в использовании C++ в прикладухе стала стремительно сокращаться. А надобность в использовании того же С в прикладухе стала сокращаться еще лет на 10-15 раньше.

Ну и ниша C и C++ сейчас лежит далеко не в прикладухе, а в системном программировании и middleware (ну и еще в каких-то совсем узких нишах, вроде CAD-ов, Photoshop-ов и тому подобных вещей). Сравнивать из-за этого их популярность с популярностью Java, это как сравнивать популярность помидоров и популярность мяса индейки. И то, и другое можно употреблять в пищу, но это сильно разные продукты.

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

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

У моего нифига мощность ежедневно не растет, что я делаю не так?

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

т.е. неделю назад росла, а сейчас уже перестала? бред

в 90-е сложилась ситуация, когда мощность компьютера росла чуть ли не ежедневно.
в 90-е

Брал машину времени напрокат в прошлый уикенд? Не подскажешь адрес, где брал?

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

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

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

Мне бы для начала понять, что ты хочешь доказать. Что Си рано закапывать? Так его и не закопают. Даже C++ вряд ли закопают, а Си и подавно.

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

Я бы еще добавил, что с того времени произошел заметный прогресс в написании сборщиков мусора, управлении памятью, хотя те же сборщики себя очень хорошо показали еще и в середине 80-х в smalltalk и common lisp

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

Он стал популярным потому, что:

Он стал популярным из-за распиаренной концепции «написано однажды работает везде» :-) Ему предписывали возможность работать в каждом утюге :-) Язык получился простым как пробка, со вменяемой семантикой и синтаксиса, благодаря чему, именно для Java (а не для цепепе) созданы самые продвинутые IDE :-) Уже почти с самых первых времён существования Java получилось решить проблемы распространения модулей (пакетов), получилось создать стройную систему документации, множество систем сборки :-) Ну и получилось создать быстрый рантайм и компилятор :-) И единственно, что могли всему этому противопоставить красноглазики из мира цепепе - это бесконечные жалобы на скорость работы, сочиняя сказки про тормоза Java направо и налево, приправляя их сказками о способности компиляторов цепепе осуществлять героические инлайны, чем и достигается невиданная скорость работы цепепе-программ :-)

Это было понятно еще в 50 и 60-е годы, когда появился Lisp, Simula и пр. языки со сборкой мусора;

Тут надо добавить, что LISP был вторым языком после Фортрана :-) Тогда не было ни Симулы, ни цепепе, Java :-) И это в LISP впервые появился сборщик мусора, а не где-то там ещё :-)

Ну и ниша C и C++ сейчас лежит далеко не в прикладухе

Это неправильно примазывать к нише адекватного кросс-платформенного ассемблера (имя ему - C) язык неадекватных размеров и сложности (цепепе) :-) Для Си ниша была всегда одна - рантаймы и ядра ОС :-) Для цепепе ниша сегодня - это как раз прикладуха на Qt, игры и прочие фотошопы :-)

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

Начни с ассемблера, он сейчас даже востребован.

Думаю, лучше начать с Яра :-) А можно ли с помощью Яра доказать, что смайлик один? :-) Лол :-)

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

Уже почти с самых первых времён существования Java получилось ... Ну и получилось создать быстрый рантайм и компилятор

Смайлодаун в очередной раз отжег напалмом.

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

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

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

И ты при этом спокойно слушать твои сказки :-) Лол :-)

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

И ты при этом спокойно слушать твои сказки :-) Лол :-)

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

Или мозгов пройти регистрацию не хватает?

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

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

Нет, не известно :-) Но я и не хочу отправлять никого в игнор :-) Даже тебя с твоими потугами и наивными оскорблениями :-) Лол :-) Зачем? :-) Есть Правила форума :-) Есть модераторы :-) Вот пусть и следят за их соблюдением :-)

Или мозгов пройти регистрацию не хватает?

Хватает мозгов не регистрироваться :-)

И чего ты так возбудился :-) Цепепе-17 что-ли не нравится? :-)

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

И чего ты так возбудился

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

Подозреваю, что не только мне.

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

Вот как раз где-то с начала 2000-х надобность в использовании C++ в прикладухе стала стремительно сокращаться. А надобность в использовании того же С в прикладухе стала сокращаться еще лет на 10-15 раньше.

Ох, лол :-) Т.е. «надобность в использовании того же C в прикладухе стала сокращаться» с конца 1980-х годов :-) Лол :-) И тут в апреле 1998 года выходит первый релиз GTK+ :-)

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

И тут в апреле 1998 года выходит первый релиз GTK+ :-)

GTK+ — это прикладуха? Прикладуха — это то, что в 1998-ом делали на FoxPro, VisualBasic, Delphi или каком-нибудь еще Clarion-е.

Смайлодаун, сделайте доброе дело: зарегистрируйся уже. Заткнуть свой фонтан вы не сможете, но его хотя бы можно будет безболезненно игнорировать.

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

Более чем надоело получать через уведомления ссылки на ваши потоки бреда

Так отпишись от уведомлений :-) Кто ж тебе виноват? :-)

завуалированных попыток оскорблений и открытого панибратства.

То, что тебе что-то там мерещится - твои личные проблемы :-) А насчёт оскорблений и панибратства - так это ты обладаешь такой странной особенностью сочетать обращение на «Вы» с каким-нибудь оскорблением типа «смайлодаун» :-) Такой вот странный этикет :-)

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

GTK+ — это прикладуха?

А что это, операционная система? :-) СУБД? :-) Лол :-)

Смайлодаун
Заткнуть свой фонтан вы не сможете

Такой вот странный этикет от Евгения :-) Настоящий такой :-)

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

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

Чтобы не видеть ответов мне от других участников форума? Очевидно же, что даун в отношении вас — это не оскорбление, а констатация факта.

А насчёт оскорблений и панибратства - так это ты обладаешь такой странной особенностью сочетать обращение на «Вы» с каким-нибудь оскорблением типа «смайлодаун»

К регистрантам здесь есть возможность обращаться по нику. С анонимами это невозможно. Поэтому анонимов приходится как-то идентифицировать. В вашем случае «смайлодаун» — это уже закрепившийся за вами никнейм на лоре. Все сразу понимают о чем речь.

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

eao197 ★★★★★
()

на роль языка разработки системных инструментов
C,C++,JAVA,RUST

пролетарии всех стран выбирают C

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

Чтобы не видеть ответов мне от других участников форума? Очевидно же, что даун в отношении вас — это не оскорбление, а констатация факта.

Факт - это отражение объективной реальности :-) В своей реальности ты можешь констатировать любые факты, что ты с успехом и делаешь :-) А в настоящей реальности факты надо подтверждать, особенно когда тебе уже за 40 :-) Итак, у тебя есть подтверждение озвученного факта? :-)

В вашем случае «смайлодаун» — это уже закрепившийся за вами никнейм на лоре. Все сразу понимают о чем речь.

Это опять какой-то факт из твоей параллельной реальности, в который ты, очевидно, знаешь всё и про всех :-) Лол :-)

вне зависимости от того, анонимы они или регистранты — на «вы». Это практически не имеет никакого отношения к тому, ведет ли человек себя в беседе как дебил или нет.

Тогда чего ты там про какое-то панибратство? :-) Какая разница на «ты» или на «вы»? :-) Это выбор каждого :-) Хочешь, я буду говорить тебе you :-)

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

Отмечу ещё один немаловажный фактор популярности - и С и java в своё время использовались для обучения студентов программированию. Ява в версии 1.0 действительно была убога. И в той нише где её первоначально пиарил Sun - ява-апплеты - не взлетела.

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

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

С++ не стал убийцей C. А Go, Java, Rust, D и подавно

Стали, ещё как стали. Убийством считается когда на языке перестают писать новые проекты, а накопившийся груз гнилья будут переписывать и заменять ещё примерно столько же сколько он сам писался, а C, напомню, уже 45 лет. А речь-то именно про то что изучать и на чём начинать писать новое.

И я повторю ещё раз: C неудобен, неэффективен и небезопасен для абсолютно любых применений.

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

Если ему действительно за 40 или около того, и при этом он вместо разумной дискуссии предпочитает называть других людей даунами или дебилами, то, по всей видимости, он не очень счастлив в жизни :-( Тут не смеяться, а плакать надо :-(

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

Ты смотри, смайлодаун сцепился с актородурачком. Не пропустите!

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

... известно ли вам, что зарегистрировавшись на LOR-е вы сможете отправить в игнор меня и вам не придется слушать мои сказки ...

чтобы игнорить ЛОРовского регистранта не обязательно регистрироваться самому. пару способов сходу предложит любой программист. (под словом программист подразумевается человек умеющий программировать)

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

Tiobe index sep 2017 1. Java 12.7% 2. C 7.4% 3. C++ 5.6% 4. C# 4.8% 5. Python 3%

http://langpop.corger.nl/ - тут тоже Си в топ10 входит. По большому счету у всех С-образных языков корни растут из С.

По графику https://www.tiobe.com/tiobe-index/ видно, что популярность «большой тройки» Java, C, C++ падает.

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

(под словом программист подразумевается говноед)

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

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

По графику https://www.tiobe.com/tiobe-index/ видно, что популярность «большой тройки» Java, C, C++ падает.

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

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

сочетать обращение на «Вы» с каким-нибудь оскорблением типа «смайлодаун»

Эта фишка Евгения, как твои смайлики. Возможно он еще немного преподает, отсюда и привычка обращения к аудитории в стиле «эй вы, долбоебы». К вежливости это не имеет ни малейшего отношения.

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

Возможно он еще немного преподает, отсюда и привычка обращения к аудитории

А, и поэтому ему мерещатся «завуалированные оскорбления» и «панибратство» :-) Тоже привычка общения с аудиторией, наверное :-) Лол :-)

сочетать обращение на «Вы» с каким-нибудь оскорблением типа «смайлодаун»

К вежливости это не имеет ни малейшего отношения.

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

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

А, и поэтому ему мерещатся «завуалированные оскорбления» и «панибратство»

По поводу «мерещатся»: ура, наконец-то в Яре достигнут какой-то успех (комментарий)

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

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

По поводу «мерещатся»: ура, наконец-то в Яре достигнут какой-то успех (комментарий)

Это ответ тебе на твою «форму обращения к незнакомым людям»: https://www.linux.org.ru/forum/development/13632803?cid=13635687 (комментарий) :-) Каков привет, таков и ответ :-)

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

Ваше множество смайлов и «лолов» раздражает намного больше, чем любое прямое оскорбление. Создаётся обманчивое [ли?] впечатления общения с полным дауном. И хотя понятно, что это всего лишь маска, «но осадочек остался...»

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

Ваше множество смайлов и «лолов» раздражает намного больше, чем любое прямое оскорбление.

Это твоя проблема, что ты не понимаешь разницы :-) Ибо смайлы в любом количестве не запрещены, а вот оскорбления - запрещены вообще :-)

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

С годами у меня появилась привычка называть дебилов дебилами для взаимной экономии времени. Поэтому я не претендую на звание самого вежливого участника LOR-а.

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

Был бы у вас ник на LOR-е, мне бы не пришлось употреблять «смайлодаун». Но так как ника у вас нет, по вполне понятным причинам, то дабы выделять вас из всего множества анонимов, идентификатор «смайлодаун» выглядит наиболее предпочтительным.

Не нравится — регистрируйтесь. Это позволит нашим путям разойтись и не пересекаться. Что устроит не только меня, но и, полагаю, изрядное количество пользователей, которым не доставляет удовольствия читать наши с вами срачи.

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

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

Что, прям в реале в глаза называешь дядек дебилами для взаимной экономии времени? :-)

Был бы у вас ник на LOR-е, мне бы не пришлось употреблять «смайлодаун»

Так применяй на здоровье :-) Это не мои проблемы :-)

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

За 20 лет программирования можно было научиться выбирать идентификаторы по-короче :-) В данном случае «смайлик» короче :-) Лол :-)

Не нравится — регистрируйтесь.

Имею право не регистрироваться :-)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.