Какие языки программирования я должен выучить, чтобы стать разработчиком Ubuntu? [закрыто]

Хотя я использовал NetBeans один раз для проекта, какие языки мне нужно выучить, чтобы стать полноценным разработчиком Ubuntu?

Мой проект в NetBeans (только Java) состоял в том, чтобы разработать калькулятор (относительно просто). Более того, как мы учимся делать просмотрщики изображений, браузеры и т. Д.?

Кроме того, какой язык будет лучшим для определенных приложений?

22
задан 18 July 2013 в 21:55

5 ответов

Необходимо учиться:

  • JavaScript: как большинство платформ/ENV UI. / быть основанными на JavaScript; Вам будет нужен он так или иначе рано или поздно.

Затем для всего остальные Вам будет нужно что-то еще:

  • C++/C
    • профессионалы: удивительно быстро, доступ к низкоуровневым функциям
    • недостатки: много времени, чтобы изучить, как записать чему-то стабильное, ужасное сообщество
  • Ruby:
    • профессионалы: легкий учиться, действительно приятный записать, великое сообщество
    • недостатки: могло бы быть медленным для некоторой задачи (действительно)
  • Python:
    • профессионалы: много пакетов находится в Python, великом сообществе, быстро, и т.д.
    • недостатки: python 3 (просто kindin')

Но существует все еще много других языков, таких как Java, и т.д., однако, упомянутое вышеупомянутое может быть более легким для запуска, кроме C/C++, но который стоящий изучения, поскольку Вы сможете использовать его со многими другими языками (например, расширить Python, рубин, и т.д.)

5
ответ дан 18 July 2013 в 21:55

Если Вы намереваетесь записать приложения для Ubuntu, которая может работать на нескольких устройствах и форм-факторах (рабочий стол, телефон, планшет, ТВ...), я рекомендовал бы изучить QML и JavaScript. По существу:

  • Используйте QML для записи конвергентных приложений Ubuntu, которые натыкаются на форм-факторы и устройства
  • Используйте JavaScript для дополнительного QML при записи приложений Ubuntu и записать веб-приложения Ubuntu
7
ответ дан 18 July 2013 в 21:55

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

Таким образом, вы можете изучить Java, C, Scheme, OCaml, Assembly (по крайней мере, две архитектуры), Forth и немного Prolog, не обязательно в таком порядке. Второй язык будет самым сложным, потому что вам придется как выучить новые концепции, так и забыть концепции, которые вы выучили на первом языке, но оказались неверными. После этого это легко и только становится легче.

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

0
ответ дан 18 July 2013 в 21:55

Ответ прост и не очень полезен. Какой язык нужен. Ubuntu - это тонна программного обеспечения, некоторые из которых написаны на C, некоторые на C ++, некоторые на Python, Perl, bash ... и другие. Вы обязательно должны научиться писать скрипты на bash, и вы должны выбрать язык, такой как Perl или Python, возможно, последний. Кроме того, изучение старого доброго C никогда никому не навредит - вы узнаете больше о том, как работают программы, что такое библиотеки, много всего о других инструментах.

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

0
ответ дан 18 July 2013 в 21:55

Работа по программированию состоит из самого кода и ментальной модели под ним.

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

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

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

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

В качестве примера несколько постепенного вступления, посмотрите на мой вклад в проект Beignet . Знание языка программирования (в данном случае C / C ++), безусловно, не является здесь ограничивающим фактором.

0
ответ дан 18 July 2013 в 21:55

Другие вопросы по тегам:

Похожие вопросы: