Опишите кратко и понятно философию популярных языков программирования?

Руслан Юмаев
  ·  
12,0 K
Вы знаете ответ на этот вопрос?
Поделитесь своим опытом и знаниями
Войти и ответить на вопрос
4 ответа
Рафаэль  ·  -11
идеология-россии.рф программирование-для-детей.рф
Философия = мировоззрение, метафизика, картина мира, система ценностей.. Это не про программирование. Читай вузовские учебники про основы программирования, про историю развития языков. http://программирование-для-детей.рф/ Это редактор для создания веб-приложений. Целевая аудитория — любители и старшекласники. В этом редакторе соединены две противоположности: 1)... Читать далее
1 января  ·  103
Комментировать ответ...
Реклама
Vladimir Gordeev  ·  312
Разработчик
У языков программирования часто действительно есть своя философия. Такая формула, которой руководствовался создатель языка программирования. У некоторых языков, которые развивались хрен пойми как, такой формулы нет. Perl -- "Всегда есть несколько способов это сделать" (There's more than one way to do it). Пёрл известен огромным количеством выразительных средств, одну и... Читать далее
30 сентября 2016  ·  1,0 K
Комментировать ответ...
Программист, любитель истории (древние цивилизации и ХХ век)
В вопросе написано кратко, а тут настрочили целые простыни. Отвечу за несколько языков, которые я знаю. Python. У питона (пайтона) есть своя официальная философия. Если коротко, то: 1. Лучше написать больше, но что бы оно выглядело (и работало) хорошо и понятно 2. Явное лучше неявного И все в таком роде. А вот в JavaScript все кардинально иначе. Из-за особенностей... Читать далее
30 сентября 2016  ·  < 100

Опять необоснованные камни в огород js.

Комментировать ответ...
Термин "Философия программирования" встречал только в русских переводах к западным изданиям. Например "Thinking in Java" как раз перевели как "Философия Java". Имеет смысл говорить не о философиях языков программирования а о разных парадигмах программирования. Одни языки тяготеют к одним парадигмам, другие к другим.  Многие языки являются мультипарадигменными... Читать далее
30 сентября 2016  ·  < 100
Я вам тоже сейчас ссылку на вики дам, где вы (внезапно!) встретите термин философия применимо к программированию ht... Читать дальше
Комментировать ответ...
Реклама
Читайте также

Python или С++ и почему?

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

Давайте рассмотрим три момента: скорость, популярность и зарплата специалиста. Рассмотрим каждый из этих пунктов в отдельности.

Скорость

Что касается скорости Python или C++, то это самый обсуждаемый вопрос на форумах по поводу сравнения этих двух языков. И это не без оснований! Хороший язык программирования должен быть быстрым, иначе он будет неэффективным и не сможет сравниться с другими более быстрыми языками. На самом деле добавить что-то еще к этому нечего – эти два языка программирования, о которых идет речь, достаточно быстро взаимодействуют и в отношении их скорости разницы нет.

Популярность

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

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

Тем более изучать популярный и востребованный язык программирования проще и приятнее, чем тот, которым никто не пользуется и на который нет спроса. Развитие определенных языков связано с некоторыми факторами – интернет-ресурсами и сообществами. С непопулярными языками найти человека, который мог бы поделиться информацией не просто сложно, бывает вообще такую информацию не найти в интернете.

Зарплаты специалистов

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

Как я уже упоминал в начале статьи сравнения Python или C++, программирование действительно очень прибыльная профессия. Тем не менее специалисты в различных языках программирования также зарабатывают по-разному. Это объясняется многими причинами: некоторые компании ставят конкретные требования к специалистам по знаниям языка, другие компании не имеют конкретных требований. Как бы то ни было, факт остается фактом – не все языки имеют одинаковую зарплату.

Какой из них быстрее?

Поскольку скорость в сравнении Python или C++ является важным аспектом, о котором мы сначала поговорим.

На первый взгляд после поиска в Интернете, кажется, что C++ более быстрый. Считается, что C++ более быстро исполняется, главным образом потому, что его конкурент – Python – написан на C. Как я уже упоминал, C++ часто рассматривается как самый быстрый язык программирования.

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

Какой язык более популярен?

Несмотря на то, что это сложный критерий в оценивании, очевидно, что у Python, и у C++ есть много поклонников в Интернете. Поскольку сейчас решают цифры, можно уверенно сказать, что все зависит от группы людей, про которую мы говорим, – начинающие программисты, как правило, начинают с Python, в то время как те, у кого уже есть опыт, проявляют интерес к C++.

Чья зарплата выше?

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

Согласно общедоступных данных, разработчики Python могут рассчитывать на получение в среднем 92 000 долларов США в год, что примерно составит 7670 долларов США в месяц. Ожидается, что разработчики C++ будут зарабатывать около 95 000 долларов в год или почти 7920 долларов в месяц. Что эти зарплаты говорят нам?

Разница очень низкая, и это довольно удивительно. Это странно, потому что C++ считается очень сложным языком программирования для изучения, в то время как Python стремится к простоте. Честно говоря, эта небольшая разница в зарплате может быть лишь одной из основных причин, почему все больше и больше людей выбирают изучение Python.

Заключение

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

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

Какой бы язык вы ни выбрали, я надеюсь, что мой ответ принес вам больше ясности. Удачи!

Подобрать курсы по изучению Python или С++ от всех крупнейших онлайн-школ можно через наш агрегатор курсов онлайн школ https://tutortop.ru/

5 мая  ·  472
Прочитать ещё 5 ответов

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

https://miro.medium.com/max/60/1*5LmPlq2XA8Lq7DXfcETP5w.png?q=20!https://miro.medium.com/max/280/1*5LmPlq2XA8Lq7DXfcETP5w.png

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

Выбор языка программирования связан с несколькими компромиссами.

Для начала нужен баланс между затратами времени и усилий на изучение языка и его ощутимыми преимуществами. Выясните, какие у выбранного вами языка есть перспективы. В начале 2000-х веб-разработчики думали, что PHP и Ruby on Rails — это лучшие языки с точки зрения карьерного роста. Сегодня ситуация на рынке изменилась: в 2020 году уже не выгодно учить PHP и Ruby.

Я составил список языков, которые полезно выучить в 2020 году, рассказал, как используются эти языки и какие у них перспективы. Также в статье есть список языков, достойных упоминания: их тоже стоит учить, однако они узкоспециализированные и используются только в определенных сферах. Чтобы объективно отразить сложившуюся рыночную ситуацию, в качестве основы я взял опрос разработчиков, который Stack Overflow проводил в 2018 году.

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

Несмотря на то, что мой список основан на опросе Stack Overflow, в нем есть отличия. Во-первых, я перечисляю языки от самых выгодных для изучения к менее выгодным. Во-вторых, в список я не стал включать декларативные языки и языки сценариев оболочки (Bash, например). Я ограничился только императивными языками. Стоит отметить, что в опросе Stack Overflow второе, третье и четвертое места заняли HTML, CSS и SQL.

1) JavaScript

!

Согласно исследованию Stack Overflow, проведенному в 2018 году, 71,5% разработчиков считают JavaScript самым популярным языком программирования. Это больше, чем в 2015 году: тогда 54,4% разработчиков придерживались такого мнения.

Сейчас JavaScript используется везде. JavaScript-фреймворки (Angular, React и Vue) используются на стороне клиента для разработки веб-приложений на основе браузера. За пределами браузера с помощью Node.js lets можно писать серверные приложения на том же языке, на котором вы пишете клиентский код. С помощью Node можно создавать веб-сервисы, управлять Интернетом вещей (IoT) и экспериментировать с машинным обучением. Важное преимущество JavaScript перед другими языками — широкая поддержка в индустрии ПО со стороны таких IT- корпораций, как Google, Facebook, Microsoft и Amazon. Второй плюс — очень легко найти учебные материалы по JavaScript: существует множество платных и бесплатных курсов, веб-сайтов, книг, видео и тематических блогов.

Большую часть своей истории JavaScript считался гадким утенком от мира программирования. Нет, он не стал прекрасным лебедем, как это произошло в сказке. Тем не менее сообщество JavaScript приложило много усилий, чтобы превратить его из браузерного скриптового языка в современный и универсальный язык. Со временем большая часть недостатков JavaScript была устранена.

Стоит отметить, что большинство потенциальных работодателей на собеседовании будут оценивать ваши знания неочевидных функций JavaScript. Скорее всего вас спросят о переменной области действия, замыкании, обратных вызовах и условных операторах. Если вы ищете работу, связанную с JavaScript, вы должен быть готовы к таким вопросам. Я бы порекомендовал побольше узнать о компании, в которой вы хотите работать: исследовать их стек разработки и научиться в выгодном свете демонстрировать свои навыки работы с React, Angular или Vue.

2) Python

!

Согласно опросу Stack Overflow, Python пользуется популярностью у 37,9% разработчиков. Python интересен тем, что за последние пять лет он набирал популярность намного быстрее, чем остальные языки. Python стал настолько известен, что о нем написал журнал The Economist, никогда не отличавшийся интересом к разработке ПО.

Одна из причин популярности Python — в нем правила оформления кода проще, чем в других языках: например, не нужно ставить точку с запятой в конце оператора. Поэтому Python все чаще изучают в учебных заведениях— не только в университетах, но и в средней и начальной школе. Python используется в академической среде. Это самый популярный язык общего назначения, он используется для машинного обучения и в науке о данных. Python настолько активно используется в этих областях, что недавно было предложено слияние Python и R, языка науки о данных.

Python одновременно и похож на другие языков программирования, и сильно отличается от них. Если вы ищете работу, связанную с Python, на собеседовании вам нужно показать полное понимание того, как Python реализует общие функции: типы данных, модульность, функции и классы. Также могут спросить, как использовать Python в качестве скриптового, объектно-ориентированного или функционального языка. Работодатель может поинтересоваться, понимаете ли вы такие специфичные для Python типы данных и функции, как кортежи, списки, словари и декораторы.

3) Java

!

На третьем месте — Java. Согласно опросу Stack Overflow 2018 года, ее предпочитают 45,5% разработчиков.

Одно из преимуществ Java — это виртуальная машина JVM. JVM позволяет запустить любой язык на любой аппаратной платформе или устройстве. Java также был разработан для решения задач, связанных с типами данных и управлением памятью — этот язык упростил жизнь разработчиков. Java упрощает разработку и внедрение приложений на разных операционных системах: поэтому крупные компании чаще используют Java. Это язык, благодаря которому можно попасть в штат крупной компании. На Java пишут нативные приложения для Android. Доля Android на рынке больше, чем у конкурентов вместе взятых: поэтому разработчики изучают Java.

JVM используется все активнее: создаются новые языки, адаптируются уже существующие. Экосистема Java активно используется. Scala, Closure и Kotlin популярны в отдельных сферах. У Kotlin много интересных применений, например, написание приложений для Android и создание смарт-контрактов с помощью платформы Corda.

При поиске работы в качестве Java-разработчика важно понимать сферу применения языка. На собеседовании могут спросить о чем угодно, связанном с Java. Если вас нанимают, чтобы разрабатывать корпоративные приложения, скорее всего, придется продемонстрировать понимание инфраструктуры Java, так что ждите вопросов по JDK, JRE и JVM.

Android-разработчикам будут задавать вопросы, связанные с разработкой на Android: будут вопросы об управлении версиями SDK, Intent, эмуляции и процессе развертывания приложения. Если вы проходите собеседование в компанию, которая использует не только Java, но и языки JVM, умения работать с этими языками также будет преимуществом.

4) C#

!

По данным опроса Stack Overflow 2018, 35,5% разработчиков — фанаты Microsoft C #. Не только Python и Java обогнали C #: несмотря на нелюбовь многих разработчиков к Microsoft, язык сценариев Bash используют 40,4% разработчиков.

Java по-прежнему лучше, чем C #, однако в будущем ситуация изменится. Java медленнее вводит новый функционал, в то время как Microsoft агрессивно развивает и добавляет новые возможности в C #. Таким образом компания стремится перестать зависеть от Windows. По этой же причине Microsoft купила Xamarin и ее кроссплатформенную среду разработки, выпустила многоплатформенное ядро .NET и продолжает инвестировать в Azure. Microsoft видит, что C # играет ключевую роль в ее новой стратегии развития, и прилагает немало усилий, чтобы C # можно было использовать как с технологиями от Microsoft, так и с открытыми промышленными стандартами.

Как и в случае с Java, язык и экосистема C # огромны. Это означает, что перед собеседованием важно разобраться, какое место на рынке занимает ваш потенциальный работодатель. Как и в случае Java, на собеседовании вас спросят об инфраструктуре: зададут вопросы о .Net framework и Common Language Runtime (CLR). Стоит также отметить, что CLR поддерживает другие языки, F # и VB.net. Если вы проходите собеседование в компанию, которая использует не только C #, но и другие языки CLR, стоит научиться программировать и на них.

5) C и C++

!

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

Язык C больше не используется для разработки приложений, пользовательских интерфейсов, мобильных приложений и машинного обучения — его заменили другие языки, перечисленные выше. Несмотря на это, C по-прежнему используется во встраиваемых и операционных системах. Показательный пример — Linux, самая популярная операционная система всех времен, которая используется в крупнейших мэйнфреймах и всех устройствах с Android. Ключевая часть Linux — ядро Linux, которое написано на C. Более того, на языке С пишутся другие языки программирования, например, Python.

C++ — это более современная, объектно-ориентированная версия C. На C++ пишут приложения, для которых важна производительность. Например, многие компании в финансовом секторе, используют С++ во внутренних системах. C ++ используется как в «скучных», так и в «интересных» сферах. Благодаря высокой скорости работы C ++, его используют при разработке приложений, активно использующих графику: при разработке игр, графических движков, а также виртуальной и дополненной реальности.

Если вы ищете работу, связанную с C или C ++, на собеседовании могут задать вопросы по обоим этим языкам: могут спросить о типах данных, операторах, циклах, условных операторах, указателях, об управлении памятью. Могут попросить объяснить, что такое цепные списки, и написать короткую программу, которая реализует такие списки и управляет ими. Поскольку C + +— это объектно-ориентированный язык, скорее всего, вам зададут несколько вопросов об объектах, классах, методах, свойствах и т. д.

Кстати, практичекую помощь в поиске курсов по изучению всех выше названных языков программирования может оказать сайт-агрегатор онлайн-курсов tutortop.ru . Там в удобном виде собраны курсы от всех основных онлайн школ. Удобно выбирать и сравнивать.

7 мая  ·  684
Прочитать ещё 5 ответов

Правда ли, что выбирая тот или иной язык программирования,то мы выбираем ту или иную "сторону"? Программисты делятся на фракции?

Vladimir Gordeev  ·  312
Разработчик

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

А вообще, разные языки нашли разное применение в разных отраслях. Таким образом если новичок взял язык Ruby как свой первый язык и после этого попробовал найти работу -- скорее всего он найдёт работу связанную с web.

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

После получения какого-то опыта знание какого-то конкретного языка становится уже не так важно.

Прочитать ещё 1 ответ

Где изучать язык Pascal?

Red Felt boots  ·  57
Developments & cats

Скорее всего только в школе и на первых курсах  в ВУЗе. Т.к. Pascal уже почти нигде кроме учёбы не используется. Ещё великое множество уроков на youtube. Но я бы посоветовал даже для учебы учить какие-нибудь другие языки. Например java, python или c#, для которых тоже огромное количество уроков на youtube.

Прочитать ещё 1 ответ

В чем отличие языка программирования от естественных языков (таких, как русский, английский, японский)?

Веб-разработчик, авантюрист, диванный криптоаналитик

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

15 июня 2016  ·  418
Прочитать ещё 2 ответа