Нужно ли знать все языки программирования

Сколько языков программирования может знать разработчик?

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

Оценить 1 комментарий

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

Это все вместе — весьма большой багаж знаний, поэтому изучить за жизнь больше 1-3 языков на таком уровне сложно.

Если же чисто сами языки, без всего остального — да хоть по языку в месяц можно подучить.

Я постоянно использую 4 языка собственно для программирования.
Поэтому я их знаю в прямом смысле этого слова.

Не считая вспомогательные SQL и HTML, CSS, которые я тоже знаю.

А с синтаксисом знаком примерно еще с 5-ю.

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

Похоже, что автор статьи — школота.
Для Вас: нужно чётко различать:
1. Знания архитектуры приложения (зависимости объектов, ООП и прочее).
2. Знания алгоритмов, применительно к конкретной задаче (формулы, псевдо-код).
3. Знания алгоритмического языка программирования. (синтаксис, переменные, функции)

Для Вашей задачи — нужно начинать с нужного пункта (в зависимости от задачи):
Хотите разработку архитектуры проекта — с п.1 (архитектор)
Хотите расширение функционала — с п.2 (программист)
Хотите простой кодинг по детализированному ТЗ — с п.3 (разработчик/кодер)

Главные правила:
1. Чем выше уровень манипулирования структурами, тем дороже такая должность и тем большим количеством языков может владеть этот человек, даже не зная их синтаксиса и видя впервые.
2. Если человек не архитектор и говорит, что знает хорошо 2 алгоритмических языка — скорее всего, он лукавит. (Архитектор — может знать до 3-4 алг. языков.)

Вы преувеличивайте значение знания синтаксиса.
Это от пары часов до пары дней учится.
Всего лишь.

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

petermzg

Это мнение конкретного автора выраженное из его собственных жизненных принципов и лени.
Как можно нормально не разбираться во множестве языков, если десятками лет приходиться на них писать?

Для примера web разработка ранее требовала знания более 2х языков. (Javascript для фронт и другой для бекенда, Сейчас конечно можно Javascript + Node.js).

Rou1997

Абсолютно сколько угодно, вот сложно как раз вызубрить синтаксис и прочую «сырую» информацию и постоянно держать ее в верхний слоях памяти не опираясь на Гугл и т.п., а понять принципы — не проблема, мозг очень хорошо хранит такую информацию, ведь она отлично сжимается с потерей тонкостей которые при необходимости вспоминаются или воспроизводятся на практике, из документации и т.п. Если у вас не хватает объема мозга — то просто для хранения «сырой» информации «подключайте» цифровые носители, которые хорошо для этого подходят, от заметок в Блокноте до серверов того же Гугла, — и будет вам счастье.

Этот автор хотя бы цифровые компьютеры ремонтировать умеет?
А аналоговый, который в голове, в тысячу раз сложнее.

Источник

Нужно ли учить языки программирования до поступления в институт или всему обучают уже там?

До поступления в институт нужно изучить хотя бы один язык программирования и стек технологий к нему. И главное. Попробовать на этом всем написать какую-то систему. Лучше реальную. Например в таких областях как веб или мобильная разработка вполне есть возможности для внедрения собственных идей. Не факт что оплачиваемых и вообще коммерчески успешных, но кто знает. В крайнем случае написать вымышленную систему. Но не задачки из учебников (хотя их разумеется надо решать) а такую, которая Вам самому кажется реальной. Желательно не одну.

Причины три, хотя и любой одной достаточно:

  1. Программирование это область которая далеко не всем подходит. Как впрочем и все остальные известные мне области, предполагающие разработку чего-либо и творчество. А Вам оно нужно понять это уже угробив время и деньги на ВУЗ? Лучше понять это ДО поступления. А поскольку это не конструирование подводных лодок и не ядерная физика это возможно сделать самому более чем.
  2. В ВУЗе Вас научат фундаментальной теории что Вам потом пригодиться всю карьеру. НО. Остальное чему Вас там научат в частности языки устареет лет этак через 5-10 в лучшем случае. И кроме того рынок IT а соответственно потребность в программистах знающих какие-то определенные технологии, постоянно меняется. Поэтому всю карьеру Вам придется САМОМУ изучать языки, фреймворки и прочие технологии стека на котором Вы собираетесь работать. Если у Вас не получилось самому изучить один язык это ничего страшного. Бывает что и профессионалам определенные языки «не заходят». Но если несколько разных — это уже звоночек а не стоит ли присмотреться к более консервативной области человеческих знаний. Где не придется осваивать самому все и постоянно.
  3. Учась в ВУЗе все равно желательно бы одновременно работать программистом. Поскольку теоретики мало кому нужны. Разве только на кафедре остаться преподавать. Всем нужны не только знания но и опыт реальной разработки. И вот получится Вы весь такой со своим новеньким хрустящим дипломом приходите в компанию. Джуниором от которого пока толк в реальном проекте честно сказать минимален. А Вашим первым сеньором будет 20-летний парень. Который не пошел в ВУЗ а школьником работал на фрилансе, а окончив школу пошел уже в компанию. Как-то так.

🐺Разрабатываю и внедряю ПО на заказ, web, десктоп, мобильные приложения, сохраняя Ваши. · 9 авг 2020 · digitalwolf.org

Добрый вечер! Всему точно не обучат, только основам языка и решению простых задач для закрепления материала. Язык программирования можно изучить до ВУЗа, если вам это действительно интересно и после принимать участие в различных конкурсах, которые проводятся как внутри ВУЗа, так и за его пределами. Этим самым вы: 1. Прокачаетесь в выбранном языке и технологии, 2. Читать далее

Как тут верно замечено, смотря на какую специальность. Если вы хотите получать именно высшее программистское образование, то желательно к моменту поступления в институт уверенно владеть несколькими языками программирования (ну или уж по меньшей мере отлично знать один) и иметь опыт написания практически полезных программ хотя бы по 10000 строк самостоятельно. Читать далее

Источник

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

image

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

Я работаю программистом четыре года. Начал с С#, разрабатывая игры, затем перешел на Python и машинное обучение. Потом учил JavaScript и TypeScript для фронтенда. Следующим этапом стала разработка мобильных приложений, так что я занялся Ionic, React и React Native. Заинтересовался бэкендом, начал работать с Go. Чуть позже к списку моих языков и фреймворков добавились Dart, Java и PHP — все три потребовались во время моей работы в Facebook.

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

Skillbox рекомендует: Двухлетний практический курс «Я — веб-разработчик PRO».

Напоминаем: для всех читателей «Хабра» — скидка 10 000 рублей при записи на любой курс Skillbox по промокоду «Хабр».

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

Решение первой проблемы

Приведу простой пример. Несколько месяцев назад я выбирал Bluetooth-наушники. Остановился на AirPods. Я опробовал множество других, но эти показались мне максимально удобными. Проблема была в том, что я использовал их одновременно с Windows-ноутбуком и Android-телефоном. И если оба гаджета находились рядом, то наушники подключались к телефону, но не к ноутбуку. Поэтому приходилось отключать их вручную и подключать снова. Каждый день.

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

Изначально для решения этой задачи я решил использовать Python. Я считал, что без труда смогу найти библиотеку, позволяющую управлять Bluetooth-устройствами. Это оказалось не так, хорошей библиотеки не нашлось.

Следующий этап — Node.js. Я смог найти JavaScript-библиотеку, которая дала возможность контролировать функции Bluetooth на моем компьютере. Выполнив этот скрипт на Node.js, я добился того, что нужно.

// App.js const device = new bluetooth.DeviceINQ(); const airpodsAddress = "18:81:0E:B2:6B:A6" const airpodsName = "Akshat's Airpods"; device.findSerialPortChannel(airpodsAddress, function (channel) < // make bluetooth connect to remote device bluetooth.connect(airpodsAddress, channel, function (err, connection) < if (err) return console.error(err); console.log('YAY! Airpods Connected'); // Don't need a communication stream between the two // so let's just exit the stream. setTimeout(() =>process.exit(0), 5000); >); >);

ОК, но теперь мне понадобилась кнопка на экране, которая запускала бы выполнение скрипта. В итоге я решил разместить ее на панели задач Windows, чтобы та всегда была доступна. Я сделал еще один скрипт, который, как мне казалось, должен был помочь выполнить эту задачу. Но нет, пришлось обратиться к Golang. Он дал возможность создать исполняемый файл, который, в свою очередь, выполнял ранее созданный на Node.js скрипт.

/ main.go package main import ( "fmt" "os/exec" ) func main() < output, err := exec.Command("npm", "start").CombinedOutput() if err != nil < fmt.Println(err.Error()) >fmt.Println(string(output))

Все получилось. Я сделал ярлык для десктопа и переместил его на панель задач. Все OK, все работает.

Мне подумалось, что на C# я бы тоже смог решить эту задачу. Но очень не хотелось устанавливать Visual Studio и IDE.

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

Так зачем еще учить другие языки?

Если честно, то это интересно. Плюс это расширяет ваш горизонт, выводит за пределы зоны комфорта (не создает неприятности, а дает толчок, стремление изучать что-то новое).
Еще одна причина — выйти за пределы возможностей одного языка или фреймворка. Объектно-ориентированные языки — просто прекрасно, но стоит также изучить функциональное или процедурное программирование.

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

Еще одна причина, которая, как мне кажется, может побудить изучать другие языки, — WASM. Web Assembly даст возможность запускать язык, который вам нужен, в браузере.

Если вы — JavaScript- или Python-программист, стоит освоить низкоуровневые языки. Вы можете начать с С++ или С, но я бы советовал Golang. Он позволяет получить все скоростные возможности С++ без проблем, характерных для семейства С.

Если вы работаете с низкоуровневыми языками, то попробуйте JavaScript или Python. Оба весьма востребованы и распространены. Оба можно использовать в связке с низкоуровневыми языками. Можно писать модули С++ для Node.js и Python.

Поделитесь собственным опытом в комментариях: какие языки вы знаете, какие планируете изучить и почему?

Источник

Читайте также:  Обеспечение информационной безопасности автоматизированных систем программирование
Оцените статью