LINUX.ORG.RU

Выбор первого языка

 , , ,


0

3

Вечер добрый, господа! Пожалуй подобных вопросов было уйма, но помогите выбрать первый язык. Всего у меня 3 варианта:С++, Goolag(Go) и Python. Хотелось бы узнать преимущества и недостатки каждого их них, а также какой из них способен выработать хорошие привычки в написании кода которые помогут избежать быдлокодинга в будущем? Какой из них, по вашему мнению, будет востребованным в будущем, какой с самой высокой оплатой, а какой с низким порогом входа? Также интересен один момент, сколько необходимо времени изучать язык чтобы после попробовать заняться фрилансом?(Естественно перед этим изучив алгоритмы и работу с базами данных(Ну и посоветуйте пж книжек на эту тему)). Буду работать в основном под Linux и писать программы под него соответственно



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

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

ну он не со зла. Для ТС годно TS. И звучит хорошо и по теме.

А долбоящеры выше, как всегда - НИ О ЧЁМ!

anonymous
()

И да, ТС! Твои варианты - говнина.

anonymous
()

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

Есть мнение, что это от языка не зависит. По крайней мере, не сильно.

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

По ссылке преобразование для проброса шоб компилятор не ругался, а у тебя в примере было слитие памяти в утечку. Там херота каката, а тут ты хитрожопый исказил =)))

я хз, но на том же SO пишут, что для 64-битов размер указателя — это long

Дали этим SOшникам sizeof(type) благодаря которому можно спокойно и не задумываясь про особенности 8/16/32/64 бит копировать и преобразовывать данные. А они всё за своё )))

В общем, как ни посмотри — какой-то г-код…

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

Хотя могли бы просто 1 переменную завести и писать в неё i и спокойно отдавать её адрес. Ведь создание тредов там поочерёдное. А если каждый тред дожен после рождения знать и хранить данные то можно было заранее выделить массив равный количеству тредов и дуда писать значение интерации и пробрасывать уже указатели на индексы.

То что предложили ему там годится только разве что для того что бы просто напечатать и всё. Тоесть завтра он по той логике в каждом треде заведёт цикл который будет писать что-то своё и выводить свой номер… только вот номер будет один на всех, последний =))) И опять он пойдёт на SO )))

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

спасибо, что разъяснил мне, убогому, что за проблема обсуждалась на SO...

Суть-то не в том, что в SO, а то, что в том коде, который я выше привёл, используется некорректное в общем случае преобразование указателя к целому типу.

Я ссылку на SO дал просто потому, что это первая ссылка, которая нагуглилась по описанию ворнинга.

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

))))))) Да ладно те чво агришься. В общем случае да, гавнина. А если использовалось то на то есть веские причины, а если причин нет , но всё равно использовалось то говнина в ромбике с подставкой и на полочку =) А может это мой коллега по скилу писал )))))))) Я порой и не такое костыляю, но мне то можно. А ты распечатай и на двери входа на работу повесь с подписью внизу

this commit made Серёжа (третий стол с права от в хода, дротики в коробке у пожарного крана) :)

LINUX-ORG-RU ★★★★★
()

Учи java и go. Го вместо тормозного питона для чего-то системного и вебни, а яву для смартфонов. Универсальный минимальный вариант того что нужно.

anonymous
()

смотри какие вакансии на hh.ru и потом начни учить 1с.

jura12
()

Scheme по SICP

Из реализаций бери GNU Guile

Если не нравятся скобки, есть такой синтаксис на основе отступов – wisp

Если нужна статическая типизация – Theme-D

Просто, быстро и готовые решения будут. Библиотек немного, но хватит. Активно развивается.

GNU Guile Scheme – официальный язык расширения GNU. Сможешь с помощью него рулить GIMP, LilyPond, GDB. Да и писать конфиги к операционной системе GNU Guix. А так же, в будущем, встраивать в свои нативные приложения в качестве скриптового языка.

pavelXbushmakin
()

Ruby, D, CL

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

Scheme vs Python

Если посмотреть сравнение по скорости исполнения программ Scheme по сравнению с Python, то среднебыстрый Racket опережает Python: https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/racket-python3.html

А вот такой интерпретатор как GNU Guile, и тем более компилятор Gebril далеко оставляют Python далеко позади: https://ecraven.github.io/r7rs-benchmarks/

Плюс нормальная многопоточность и никакой проблемы питоновского GIL

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

Так же имеются игровой движок Cheekadee, веб-фреймворк GNU Artanis, а так же возможность писать мультиплатформенные (iOS, Android, Windows, Linux, etc.) приложения с помощью LambdaNative.org

pavelXbushmakin
()

У Виталия Брагилевского есть хороший доклад насчёт выбора первого языка программирования для обучения https://m.youtube.com/watch?v=OtcKHgkPiyk

И там как один из вариантов Scheme представленный в виде Racket

pavelXbushmakin
()

Python подойдёт Вам.

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

Я рекомендую сначала английский язык. А потом уже что угодно

Аймаладца! Дай пять!)))

Oberstserj ★★
()
Ответ на: комментарий от LINUX-ORG-RU

P.S. Я не программист можешь мои слова мимо ушей пустить, но как «домохозяйка» постоянно сталкиваюсь с разными языками и если я могу себе позволить просто поверхностно понять что-то и внести правки под себя в каком то частном случае и забыть.

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

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

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

Haskell

В случае хаскеля еще метофизику автора надо постичь. И поллитра для храбрости перед компиляцией. Не отпугивай новичка.

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

А hh.ru уже перестал быть помоечкой для чернорабочих?

Он теперь стал помоечкой впринципе. Там кроме доморощенных эйчарих на удаленке никого нет.

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

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

Не, ну не отрицаю, но лично я криворукий. Умных мыслей зафиксированных в коде замечено мною не было :D А кто-то да может и Фабриссу Беллару прикурить дать по приколу будучи просто энтузиастом.

Ещё память важна, когда в одно ухо вжух и сразу из другого не оставляя времени подумать над информацией, то тяжко. И будь ты хоть гением всё будет мимо =)

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от WitcherGeralt

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

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

После прочтения SICP нужно изучить и пройти SCP иначе всё бестолку

LINUX-ORG-RU ★★★★★
()

Для обучению программированию и алгоритмам хорошо подходит Оберон и среда Blackbox. В Обероне нет неопределённого поведения с неожиданными последствиями, с помощью сборщика мусора гарантируется целостность памяти, при этом язык компилируемый. В языке есть полноценная модульность. Нет возни с консолью и системами сборки, программу можно написать и запустить за секунды. При необходимости можно легко обращаться к ОС и внешним библиотекам. Помимо Windows, есть версии под Linux/BSD и Haiku (WIP).

X512 ★★★★★
()
Последнее исправление: X512 (всего исправлений: 1)

1С:

  • английский не нужно знать;

1C - то, о чем тупые C/C++ говорят и хотят реализовать, но не могут.

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

Dlang

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

что скажут эксперты?

anonymous
()

Так как спрашивают о деньгах и востребованности, то расскажу две истории.

Много лет назад я со знанием python в пределах батареек + wxPython пошёл искать работу. Два месяца ходил по собеседованиям. В результате меня взяли программировать на C#, потому что у меня был опыт разработки на C++.

Вторая история уже из этого года. Коллега изучил python и нейросети (TensorFlow, Keras и т.д.). Имел опыт разработки в этой области больше года. Пошёл искать новую работу с хорошей зарплатой. Теперь пишет на C# какое-то ПО с WPF и базами данных.

Объясняется это просто. Для клепания сайтов на python скорее возьмут человека с опытом разработки на PHP. А нейросети более популярны у разработчиков, чем у работодателей, поэтому зарплаты там не особо высокие (могут быть единичные исключения).

Вывод: учите PHP или C#.

Kogrom
()

Какой из них, по вашему мнению, будет востребованным в будущем, какой с самой высокой оплатой, а какой с низким порогом входа?

зарубежные языки появляются и умирают в угоду моде, один лишь 1С остаётся стабильно востребованным

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

Объясняется это просто.

Знание технологий и их назначения - «руками водящих» === «уборщиц».

Да и уровень знаний IT в основном - «щеки понадувать на форуме».
Говорю так не от обиды на кого-то, а на основания «общения» с IT-шниками.

Скорее всего какие-то там знания имеются у программистов в IT-шных конторах.

Однако судя по тредам, затрагивающих C/C++ эти «знания» похожи на фанатизм, но ни как не суждения разработчиков.

Владимир

anonymous
()

изучай .NET через месяц выходит .NET 5.0 (C# 9.0 / F# 5.0 / Visual Basic 15.5)

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

Пусть не обижаются C/C++ «всей земли», но не осилить разработку хорошего API для работы с строками за 40 лет - ПОКАЗАТЕЛЬ.

Владимир

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

Изучаешь месяные курсы по Ruby и зашибаешь большие деньги.

Это суждение похоже на

Покупаешь дорогую скрипку и идешь работать в симфонический оркестр.

Владимир

anonymous
()

Никого не слушай!

Бери язык Ada! Только он хорош.

anonymous
()

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

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

богоподобный Си

Сделанный второпях на коленке левой рукой?

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

По фрейду и аватарка у него странно подозрительная

На свои аватарки посмотрите, сборище гомиков…

anonymous
()

TCy

Внезапно, советую в первую очередь почитать про Машинный код.

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

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

ugoday ★★★★★
()

C (там есть концепции, которые есть во многих языках программирования) или python (простой синтаксис)

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