Какой язык программирования лучше учить?

Каждую неделю Look At Me ищет ответ на один неожиданный вопрос. Сегодня мы пытаемся узнать, есть ли языки программирования, знание которых приносит больше всего денег.Внимание! Мнение людей, отвечающих на вопрос,
может не совпадать с мнением редакции. 

 

Какие языки программирования выгоднее учить?

КАРТЕР ПЕЙДЖ

технический руководитель Google

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

ВИРТУАЛЬНАЯ МАШИНА JAVA

БОЛЬШАЯ ЧАСТЬ LINUX

PYTHON

ЯДРО MAC OS X

WINDOWS (С И C++)

ORACLE DATABASE

МАРШРУТИЗАТОРЫ CISCO

 

 

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

C улучшит ваши навыки в Java. Вы разберётесь, когда виртуальная машина использует стек, а когда — кучу, и что это значит. Вы будете интуитивно понимать, как происходит сборка мусора. Вы будете лучше понимать, как использовать примитивные типы данных и объекты.

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

C улучшит ваши навыки в Objective-C. Вы научитесь управлять подсчётом ссылок и поймёте, какая часть кода должна «владеть» объектом. Вы сможете избегать утечек памяти.

Так что лучше — C или C++? Я отдаю предпочтение C++, потому что, хотя они очень близки, C++ поддерживает объектно-ориентированное программирование. Даже если вы будете работать только с функциональными языками, объектно-ориентированное программирование научит вас организовывать код таким образом, чтобы вы могли создавать и поддерживать крупные проекты.

Возможно, вы не будете зарабатывать так же много,
как специалисты по COBOL (Один из старейших языков программирования. — Прим. ред.), которые могут внезапно потребоваться. Но после C вы сможете выучить любой другой язык. Если в индустрии компьютерных технологий
и есть постоянство, то оно заключается в следующем: сегодняшняя новинка может через несколько лет оказаться старомодной. Научитесь навыкам, которые позволяют обретать новые навыки, и всё у вас будет хорошо».

ШТЕФАН ЦУКЕРМАН

программист

«Если вы умеете правильно организовывать данные, совершенно не важно, каким языком вы владеете. Есть три тесно связанные вещи, которые вам нужно знать: 

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

  Моделирование данных, полученных из реального мира (понимание логики уже выстроенных моделей, умение работать со стандартными и сторонними библиотеками);

 Любой язык программирования, который вам удобен. Если вы хорошо знаете язык и можете показать это на деле, то сможете на этом много заработать. Напишите что-нибудь полезное или просто классное, и если вы не боитесь критики (порой — жёсткой), выложите код на тот же GitHub. Если
вы хорошо освоите какой-нибудь язык, то сможете выучить любой другой.

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

Если брать самый высокий уровень, то я бы посоветовал один из трёх следующих языков: Perl, Python, Ruby (и как вариант Lua). В них встроено много полезных структур данных: хеш-таблицы, динамические массивы и другие. Также они упрощают работу
с устройствами ввода-вывода и предлагают модули
и библиотеки, которые позволяют сразу перейти к решению проблемы, а не писать промежуточный код, который
и так должен быть включён в любой современный язык программирования;

Императивный/процедурный язык не слишком низкого уровня: C, Go, Fortran (мой выбор — C);

Императивный/объектно-ориентированный язык: C++, C#, Java, Ada (я бы предпочёл C#, потому что его создавали, учитывая ошибки Java);

Функциональный/мультипарадигмальный язык: Objective Caml, Clojure, Common LISP, Erlang, F#, Haskell,  Scala, Scheme. Я склоняюсь к OCaml и Scala, потому что
их синтаксис проще, чем у остальных, хотя это, конечно, субъективно.

Какой бы язык вы ни выбрали, выучите его по-настоящему хорошо и наберитесь опыта работы с ним. Уметь создавать реализацию класса в Java — это здорово, но если вы узнаете, как в Java работает сборка мусора (или в чём её недостатки), то станете более классным программистом. Хорошо знать, что в Perl можно использовать модули,
но совсем другое дело, если вы понимаете, когда они просто интерфейсы для кода на C: это означает, что интерпретатор не управляет памятью автоматически. И так далее».

ИСТОЧНИК

фотографии via Shutterstock, Aurelio Sánchez Escudero, Lundgren Lindqvist


Похожие новости
Новый клип XXXTENTACION - Look At Me! (18+) 16 сент. 2017 г.

Новый клип XXXTENTACION - Look At Me! (18+)

Рэпер XXXTENTACION выпустил новый клип на песню Look At Me! Мрачное видео режиссера JMP имеет политический подтекст.Видео начинается со сцены погрома, который темнокожие подростки устраивают в школе. Они избивают белого учителя и разносят класс. Потом...

дальше...

Look At Media запустил англоязычное издание 18 февр. 2015 г.

Look At Media запустил англоязычное издание

Издательский дом Look At Media запустил городское англоязычное издание Hopes&Fears. Редакция сайта работает в Нью-Йорке. Аудитория Hopes&Fears — жители больших городов.В сферу интересов издания входят культура и субкультуры, город, отношения...

дальше...

Look At Media запустил проект по анализу трендов De:coding 27 нояб. 2014 г.

Look At Media запустил проект по анализу трендов De:coding

Издательский дом Look At Media запустил аналитический проект для бизнеса De:Coding, который будет выпускать отчёты о современных потребительских трендах. В команде проекта — социологи, специалисты по семиотике, психологи, социальные исследователи...

дальше...

На iPhone X запустили Mac OS 8, Warcraft II, Sim City 2000 10 апр. 2018 г.

На iPhone X запустили Mac OS 8, Warcraft II, Sim City 2000

Из-за маленького размера смартфонов, их часто недооценивают. Запуск настольной системы на iPhone – пример мощи этих устройств, видео Hacking Jules тому доказательство.Mac OS 8.1 вышла 1998 году, сейчас является несовременной операционкой и была рассчитана...

дальше...

Как запустить Mac OS X на ПК с Windows 10, 8, 7 и XP 28 мая 2017 г.

Как запустить Mac OS X на ПК с Windows 10, 8, 7 и XP

macOS – продвинутая и в то же время надежная операционная система, которую многие пользователи PC предпочли вместо Windows 10. К сожалению, установить платформу Apple на компьютер другого производителя не так просто. Наиболее простой и удобный способ...

дальше...

Поклонница Apple сшила себе Mac OS 18 июля 2018 г.

Поклонница Apple сшила себе Mac OS

Давняя фанатка Apple Гленда Адамс вышила на пяльцах элементы классических операционных систем компании.Гленда работает разработчиком iOS-приложений, а в свободное время занимается вышивкой. Ее любовь к Apple нашла проявление в творчестве девушки.Адамс...

дальше...

Состоялся официальный анонс игры XCOM 2 для PC, Linux и Mac OS 02 июня 2015 г.

Состоялся официальный анонс игры XCOM 2 для PC, Linux и Mac OS

У легендарной серии пошаговых стратегических игр X-COM появится официальное продолжение. Судя по всему, это будет первое официальное продолжение оригинальной игры X-COM: UFO Defence (UFO: Enemy Unknown в Европе), вышедшей в 1993 году, так как в заголовке...

дальше...

10 причин отказаться от Windows в пользу Mac OS X 26 дек. 2013 г.

10 причин отказаться от Windows в пользу Mac OS X

Apple является самой успешной IT-корпорацией в мире. Продажи iOS-устройств бьют рекорды. iPad – самый популярный планшет, iPhone – самый популярный смартфон, а iPod – самый популярный плеер. Казалось бы, полная монополия. Но все это мобильные гаджеты...

дальше...

Последние новости

Новости на сегодня 11 авг. 2022 г.