TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
Сухарев 🌞 компьютерное просвещение

1 Mar 2021, 09:54

Open in Telegram Share Report

ЯЗЫКИ ПРОГРАММИРОВАНИЯ, ЧАСТЬ II

Зачем нужны разные языки программирования?

Разные языки программирования — как разные строительные инструменты. Молотком удобнее забивать гвозди, чем кувалдой или отверткой. Какие-то языки выполняются на компьютере быстрее, некоторые медленнее. Какие-то языки проще для начального понимания, а какие-то сложнее.

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

Некоторые технологии программируют только на JavaScript, например браузер, некоторые программируют только на C#, как игровой движок Unity. Выбор инструмента (языка) всегда зависит от условий задачи. Вы не будете писать программу навигации ракеты в космосе на JavaScript, скорее всего вы выберете C++, чтобы иметь полный доступ к памяти компьютера, и код выполнялся максимально быстро, а интерфейсы можно и на JavaScript сделать, как в SpaceX.

Иногда языки находятся в одной области применения и имеют общую парадигму программирования, но разный синтаксис — как кувалда и молот или Java и C#. Концептуально такие языки одинаковы, везде есть циклы, функции, строгая типизация, везде создаются объекты из классов, но синтаксис записи циклов или объявления переменных разный.

На Java программируют android приложения, на C# программируют игры в Unity. Так сложилось исторически, никаких законов природы тут нет. Просто Microsoft хотели свою Java и сделали C#, а в Unity, видимо, кто-то из первых разработчиков просто очень хорошо знал C#.

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

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

Примеры ООП языков, которые отличаются синтаксически, но имеют общую объектно-ориентированную парадигму: Java, C#, Python, JavaScript, С++, PHP, Perl, Ruby, Scala, Swift — это самые распространенные и популярные языки программирования.

Большинство из перечисленных выше языков мультипарадигменные и поддерживают не только ООП, но и процедурное или функциональное программирование. Например Python и JavaScript — два самых популярных мультипарадигменных языка в мире, если верить github.

Умея программировать на Python, написать код на JavaScript не будет проблемой, оба языка поддерживают одинаковые парадигмы программирования. Это как разные текстовые редакторы — Word и Google Docs — когда понимаешь идею, можешь использовать любой инструмент, если он лучше подходит для задачи.

На Python, например, написано очень много кода для машинного обучения. На JavaScript удобно программировать интерфейсы — от веб-сайта до ракеты SpaceX, у него там очень большая экосистема. У обоих языков огромное комьюнити, в интернете можно найти ответ на абсолютно любой вопрос.

Если хотите программировать бекенд, делать дата саенс и машинное обучение — начинайте с Python. Если интерфейсы приложений, фейсбуки и карму — берите JavaScript, а потом Python.
SpaceX and Javascript🚀
Yes, its damn true. SpaceX in its recent launch Dragon 2 Flight has used a technology based on Chro...

300 0 1
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot