Главная страница
Навигация по странице:

  • Что пишут на Python

  • Веб-разработка

  • Десктопная разработка

  • Мобильная разработка

  • Кому нужен SQL

  • ооо. Презентация 11. Языки программирования


    Скачать 4.23 Mb.
    НазваниеЯзыки программирования
    Дата18.11.2022
    Размер4.23 Mb.
    Формат файлаpptx
    Имя файлаПрезентация 11.pptx
    ТипДокументы
    #795530

     Языки программирования

    Выполнили:

    Заскалов Ю. А.

    Валеев Е. Р.

    Python

    Что такое Python?

    Что такое Python?

    • Python (произносится как «пайтон», но многие говорят «питон») – это язык программирования общего назначения, который широко применяется в различных областях: от создания банальных веб-страниц до систем управления роверами на других планетах.
    • Язык скриптовый, он универсален и является самым популярным языком программирования в мире (по данным издания Tiobe, составляющего топы наиболее востребованных языков). 
    • Что пишут на Python?

    • Что вздумается. Любой программный продукт, независимо от сложности и специфики, можно создать на Python и одном из сотен фреймворков, разработанных для него. 

    Веб-разработка

    Веб-разработка

    • Для создания веб-приложений и сайтов используются сторонние библиотеки в духе Pyromid, Flask, Django и десятков других, помогающих заменить PHP и JavaScript.
    • На Python даже полноценные системы управления данными пишут, которые впоследствии становятся аналогами мастодонтов наподобие WordPress и Drupal. Также на Python создают вспомогательные инструменты для работы с вебом, например скрапперы, собирающие информацию с чужих веб-страниц. 
    • Десктопная разработка

    • На Python создавались мощные приложения и инфраструктуры, например редактор изображений GIMP, магазин приложений в операционной системе Ubuntu, редакторы 3D-графики, bittorrent-сети и т.п. Список можно продолжать долго.
    • Также Python нередко становится составной частью подобных приложений. Например, Sublime Text написан на С++, а расширения и плагины для него написаны на Python. 
    • Так что Python можно нередко встретить в совершенное неожиданных местах. 
    • Мобильная разработка

    • Приложения для iOS и Android создаются на сотнях различных языков, и Python в их числе. Чаще, конечно, это касается их серверной составляющей, потому что за интерфейс отвечают более распространенные фреймворки либо какие-то узкоспециализированные технологии. Тем не менее за бэкенд (то есть внутреннюю логику программы) часто отвечает именно Python. 
    • Видеоигры
    • Python используется в разработке игр как раз из-за возможности создавать с помощью языка надежные и продуманные скрипты. Они отвечают за движение персонажей, выполнение каких-либо действий, переход от одного события в игре к другому и так далее. 

    С++

    C++ — компилируемый, статически типизированный язык программирования общего назначения, на котором можно создавать программы любого уровня сложности. С++ – это мультипарадигмальный язык (от слова парадигма – стиль написания компьютерных программ), включающий широкий спектр различных стилей и технологий программирования. Часто его причисляют к объектно-ориентированным языкам, но, строго говоря, это не так. В процессе работы разработчик получает абсолютную свободу в выборе инструментов для того, чтобы задача, решаемая с помощью того или иного подхода, была решена максимально эффективно. Иными словами, С++ не понуждает программиста придерживаться только одного стиля разработки программы (например, объектно-ориентированного). Синтаксис C++ унаследован от языка C. Одним из принципов разработки было сохранение совместимости с C. Тем не менее, C++ не является в строгом смысле надмножеством C. Со временем, практическая совместимость между языками C и C++ постепенно будет утрачиваться, так как языки разрабатывают разные группы по стандартизации, не взаимодействующие друг с другом. C++ повлиял на многие языки программирования, в их числе: Java, C#, PHP, Perl, D, Lua, Rust. C++ имеет богатую стандартную библиотеку, которая включает в себя распространённые контейнеры и алгоритмы, ввод-вывод, регулярные выражения, поддержку многопоточности и другие возможности. За время своего существования за языком С++ закрепились устойчивые мифы, которые легко опровергаются.
    • C++ — компилируемый, статически типизированный язык программирования общего назначения, на котором можно создавать программы любого уровня сложности. С++ – это мультипарадигмальный язык (от слова парадигма – стиль написания компьютерных программ), включающий широкий спектр различных стилей и технологий программирования. Часто его причисляют к объектно-ориентированным языкам, но, строго говоря, это не так. В процессе работы разработчик получает абсолютную свободу в выборе инструментов для того, чтобы задача, решаемая с помощью того или иного подхода, была решена максимально эффективно. Иными словами, С++ не понуждает программиста придерживаться только одного стиля разработки программы (например, объектно-ориентированного). Синтаксис C++ унаследован от языка C. Одним из принципов разработки было сохранение совместимости с C. Тем не менее, C++ не является в строгом смысле надмножеством C. Со временем, практическая совместимость между языками C и C++ постепенно будет утрачиваться, так как языки разрабатывают разные группы по стандартизации, не взаимодействующие друг с другом. C++ повлиял на многие языки программирования, в их числе: Java, C#, PHP, Perl, D, Lua, Rust. C++ имеет богатую стандартную библиотеку, которая включает в себя распространённые контейнеры и алгоритмы, ввод-вывод, регулярные выражения, поддержку многопоточности и другие возможности. За время своего существования за языком С++ закрепились устойчивые мифы, которые легко опровергаются.

    Где применяется С++?

    • Где применяется С++?
    • В недавнем интервью по ссылке ниже создатель языка рассказал, что C++ используют практически во всех областях. Мы выделим три направления, в которых лучше всего раскрываются преимущества языка.

    • Оптимизация
    • Перепишите любой код с языка более высокого уровня на C++, чтобы программа работала быстрее. Так часто делают в сфере глубокого обучения и других алгоритмических областях, где важна скорость. Подход может выглядеть так: 

      пишу код на Python; 

      заставляю работать нейросеть, которая решит мою проблему; 

      переношу код на C++.

      Но это не всегда приносит пользу: иногда быстрая разработка важнее производительности, или выгода от переноса кода на C++ совсем незначительна.

    Игры

    • Игры
    • В инди-играх обычно используются высокоуровневые языки и игровые движки (C# и Unity, Java и jMonkeyEngine), но на том же Unreal Engine можно создавать игры и на C++. Множество игр AAA-класса пишутся на C++ по нескольким причинам:
    • топовые игры надо хорошо оптимизировать, а С++ достаточно гибкий для этого. Но вместе с тем на нём удобно писать в ООП-стиле, не спускаясь до очень низкого уровня;
    • использование собственного движка для полного контроля любых игровых механик. Да, так делают не всегда, но часто — в основном из-за проблем с лицензиями и необходимостью делить прибыль с продаж;
    • кроссплатформенность: игра должна хорошо работать на всех поддерживаемых устройствах. Хотя многие движки по умолчанию предоставляют эту особенность, она не всегда эффективна: у кого-то игра может работать быстрее, а у кого-то медленнее. Код пишется так, чтобы оптимизировать компиляцию в бинарные файлы на разных платформах.
    • GPU-вычисления
    • Nvidia CUDA и OpenCL — две платформы, позволяющие запускать код C++ на графическом процессоре. GPU содержат сотни небольших вычислительных ядер, которые могут одновременно выполнять простые математические операции. Написав код для GPU, распараллеливающий сложные вычисления, можно добиться очень высокой производительности и скорости. C++ отлично подходит для этого.
    • Среди возможных применений:
    • майнинг биткоинов: код на C++ помогает майнить быстрее;
    • обучение нейросетей: большинство библиотек Deep Learning используют C/C++ код на CUDA или OpenCL, чтобы нейросети обучались и работали быстрее. Однако многие функции доступны как на C++, так и на более высокоуровневых языках;
    • шейдеры для игр и графического ПО. Шейдеры — небольшие участки кода, параллельно запускающиеся на GPU и выполняющие сложные графические задачи (например, трассировку лучей).

    C#

    • C# — объектно-ориентированный, ориентированный на компоненты язык программирования. C# предоставляет языковые конструкции для непосредственной поддержки такой концепции работы. Благодаря этому C# подходит для создания и применения программных компонентов. С момента создания язык C# обогатился функциями для поддержки новых рабочих нагрузок и современными рекомендациями по разработке ПО.
    • С# популярен за счет своей «простоты». Простоты для современных программистов и больших команд разработчиков, чтобы те могли в сжатые сроки создавать функциональные и производительные приложения. Этому способствуют нетипичные конструкции языка и специфичный синтаксис, помогающий максимально органично реализовать намеченные функции.
    • Популярность языка – еще одно значимое преимущество. Большое количество поклонников C# способствуют его развитию. Также это благоприятно влияет на рост числа вакансий, связанных с разработкой на языке Microsoft. Программисты, хорошо знакомые с С#, востребованы в индустрии, несмотря на их большое и постоянно увеличивающееся количество. 
    • Microsoft — приложения для Windows и Xbox.
    • Tesla — корпоративные веб-сервисы и программы.
    • Stack Overflow — серверную логику сайтов.
    • Сбербанк — 3D-графику и программы виртуальной реальности.
    • Ozon — складские и логистические системы.
    • «Яндекс» — приложения для автоматизации продаж.

    Java

    • Java – это язык программирования общего назначения. То есть язык, который применяется в разработке различных программных продуктов, без четкой специализации в конкретной сфере. Он во многом похож на Python, JavaScript и другие языки того же уровня, что и Java. Кроме того, Java заимствует массу синтаксических конструкций из C и C++. 
    • Это объектно-ориентированный язык. Вся структура строится вокруг объектов, классов, инстансов и прочих формальных сущностей, принятых в сообществе программистов за стандарт разработки ООП. Это как проектирование домов с использованием отдельных строительных блоков, которые потом можно задействовать при постройке различных типов зданий. Программы, написанные на Java, состоят из подобных «блоков», что сокращает время разработки, а также делает код более читаемым и удобным для модификации. 
    • А еще Java выступает в роли платформы. Код, написанный на этом языке, запускается в виртуальной машине JVM и без проблем инициализируются в любой системе, где поддерживается соответствующая виртуальная машина. 

    Сферы применения языка Java

    Сферы применения языка Java

    • Java используется во многих сферах начиная с e-commerce веб-сайтов и заканчивая приложениями для Android, в научных исследованиях и финансах, играх вроде Minecraft и настольных приложениях Eclipse, Netbeans и IntelliJ.
    • Мобильные приложения Android
    • Java Micro Edition – это популярная кроссплатформенная среда, применяемая для создания приложений смартфонов. Примеры мобильных приложений, написанных на Java: Netflix, Tinder, Google Earth, Uber и т. д.
    • Игры на Java
    • Сайт Java-Gaming.org полностью посвящен созданию игр на Java. Библиотека LWJGL значительно упрощает этот процесс. Примеры написанных на Java игр перечислены в статье 38 лучших приложений (англ.).
    • Серверные финансовые приложения
    • Глобальные инвестиционные банки Goldman Sachs, Citigroup, Barclays, Standard Charted используют Java для написания фронт и бэк-офисов систем электронной торговли, систем расчетов и подтверждения транзакций, обработки данных и т. д.
    • Веб-приложения на Java
    • Из представленной ниже таблицы следует, что Java – самый популярный серверный язык среди ведущих технологических компаний. В сравнении с другими языками программирования, Java обладает лучшей безопасностью, адаптируемостью и масштабируемостью приложений.

    SQL

    • SQL (сокращение от англ. Structured Query Language) — это язык запросов, который применяют, чтобы работать с базами данных, структурированных особым образом. Главные задачи SQL — составлять запросы так, чтобы находить среди большого объёма информации ту, что нужна для конкретных целей, сортировать её, структурировать и представлять в наиболее простом и понятном виде.
    • Чтобы понять, зачем нужен язык SQL, представьте, что женщина выбирает в интернет-магазине летнее платье жёлтого цвета и хочет уложиться в 5 тысяч рублей. Всего в магазине 10 тысяч платьев. Если просто перебирать их по каталогу, уйдёт несколько часов. Но можно задать в фильтрах настройки по категории, сезону, цвету, цене и сразу найти нужные модели. Эти фильтры работают за счёт языка SQL.
    • Первый прототип SQL представила в 1979 году компания-разработчик Oracle. Сначала это был простейший инструмент для извлечения нужных данных, вроде фильтров в Excel-таблицах. С годами он усложнился, и теперь его применяют в качестве одного из основных инструментов для обработки данных. С помощью SQL можно:
    •  ● собирать и хранить данные в виде таблиц;

       ● изменять их содержимое и структуру;

       ● объединять данные и выполнять вычисления;

       ● защищать и распределять доступ.

    Кому нужен SQL?

    Кому нужен SQL?

    SQL, как простой и лёгкий в изучении язык сегодня активно применяется:

    • разработчиками для обеспечения функциональности приложений;
    • тестировщиками в ручном и автоматическом тестировании;
    • аналитиками для анализа и преобразования данных;
    • администраторами для поддержания работоспособности среды.
    • Язык универсален и обладает чётко определённой структурой за счет устоявшихся стандартов. Взаимодействие с базами данных происходит быстро даже в ситуациях, когда объёмы данных велики (Big Data). Кроме того, эффективное управление возможно даже без особых познаний кода.
    • создавать таблицы данных;
    • получать, изменять и хранить данные;
    • изменять структуру данных;
    • объединять данные;
    • выполнять вычисления;
    • обеспечивать защиту данных.
    • И хотя язык SQL легкий в изучении и обладает множеством функциональных возможностей, он не является привычным процедурным языком программирования, т.е. не предоставляет средств для построения циклов, ветвлений и т. д. Поэтому позже стали появляться процедурные расширения. Например, PL/SQL – расширение, разработанное Oracle. Такие расширения позволили создавать программы, которые хранятся в базах данных и выполняются СУБД, они обеспечили решение практически всех возможных задач, связанных с данными, а еще позволили автоматизировать их обработку.


    написать администратору сайта