Textbook People: Возможны дополнения информации к данной теме.

[5] Современное программирование

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

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

Аспекты современного программирования

  • Автоматизация задач
    Программы могут выполнять обработку данных, сортировку информации, генерацию отчётов и другие рутинные задачи. Это помогает сэкономить время и улучшить эффективность работы.
    1
  • Работа с большими данными
    Программирование позволяет обрабатывать, анализировать и визуализировать большие объёмы данных, что даёт возможность извлекать из них ценные знания и информацию.
    2
  • Разработка программного обеспечения
    Программирование позволяет создавать приложения для компьютеров, мобильных устройств и сайтов.
    3
  • Научные исследования
    Программирование используется в научных исследованиях для моделирования, симуляции и анализа данных.
    4
  • Кибербезопасность
    Программирование помогает разрабатывать системы безопасности и защиты данных, а также предотвращать кибератаки.
    5
  • Развитие креативности и аналитических навыков
    Создание программ требует от программистов не только технических навыков, но и креативного мышления и умения найти нестандартные решения для сложных задач.
    6

Профессии связанные с программированием

1С-разработчик
Занимается разработкой программного обеспечения на платформе 1С:Предприятие, создаёт информационные системы, автоматизирующие бизнес-процессы компаний и организаций
// Язык программирования 1C

Процедура Приветствие()  
Сообщить("Привет, мир!");  
КонецПроцедуры
Специалист по информационной безопасности
Отвечает за защиту информации и данных от несанкционированного доступа, кражи, порчи или утечки.

Безопасная версия кода — использование параметризованного запроса, где имя пользователя передаётся отдельно, и база данных экранирует его. Это предотвращает, что пользовательский ввод станет частью SQL-запроса.
# Язык программирования Pyton

# Пример кода авторизации без защиты

query = "SELECT * FROM users WHERE username = '" + name + "'"

Разработчик игр
Занимается созданием компьютерных игр, отвечает за разработку игрового контента, программирование игровой логики, а также за обеспечение качества и процесса создания игры.
# Язык программирования Pyton

# Установка размеров окна

screen_width = 800, screen_height = 600

# Название окна

pygame.display.set_caption("Моя игра")
Специалист по машинному обучению
Специализируется на разработке алгоритмов и моделей компьютерного обучения, которые могут анализировать данные и делать прогнозы без явных инструкций.
# Язык программирования Pyton

# Разбитие переменной (df) на две части - X и Y

# В Х содержатся данные кроме target
X = df.drop('target', axis = 1)

# В Y содержится только target
Y = df['target']
Android-разработчик
Занимается созданием приложений для операционной системы Android.
Программист на С++. Работает над созданием программного обеспечения на языке программирования C++.
// Язык программирования C++

// Директива, которая подключает заголовочный файл для работы с вводом и выводом
#include <iostream>

// Объявление пространства имён
using namespace std;  

// Функция, с которой начинается выполнение программы
int main() {  

// вывод сообщения на экран с помощью оператора cout. Оператор endl переводит вывод на новую строку
    cout << "Hello World!" << endl;  
    return 0;  
}  
iOS-разработчик
Занимается созданием мобильных приложений для устройств, работающих под управлением операционной системы iOS, разработанной компанией Apple.
# Язык программирования Swift

let greeting = "Hello, World!"
print(greeting)
Веб-разработчик
Занимается созданием и поддержанием веб-сайтов и веб-приложений.
// Язык программирования PHP

echo:
<?php echo 'Hello, World!'; // Вывод сообщения на страницу Hello, World!

Терминология

Бэклог (от англ. backlog) – очередь задач. Список всех задач по продукту, например, добавить новые функции, провести улучшения и исправить ошибки.
Деплой (от англ. deploy) – развёртывание. Процесс переноса кода из среды разработки на рабочий сервер.
Инстанс (от англ. instance) – экземпляр. Копия объекта, класса или системы, которая создаётся под конкретные задачи и запускается отдельно от других копий.
Код-ревью (от англ. code review) — обзор кода. Процесс анализа исходного кода, который помогает его улучшить и найти ошибки.
Легаси (от англ. legacy) — наследие. Неактуальный код, который до сих пор используется в программе.
МВП/MVP (от англ. Minimum Viable Product) — минимально жизнеспособный продукт. Незавершённая версия продукта, которая помогает проверить гипотезы о потребностях рынка и собрать обратную связь целевой аудитории.
Опенсорс (от англ. open source) — открытый исходный код. ПО с открытым кодом, любой пользователь имеет право его использовать, менять и создавать новые проекты на его основе.
Таска (от англ. task) — задача. Конкретное задание, которое нужно выполнить в процессе работы над проектом.
Фича (от англ. feature) — особенность. Функции продукта, которые отличают его от конкурентов.
Флоу (от англ. flow) — поток. Термин обозначает последовательность выполнения задач.
Фреймворк (от англ. framework) — каркас. Готовая структура и набор инструментов, на основе которых ведётся разработка на разных языках программирования.
Хардкод (от англ. hard code) — жёстко кодировать. Способ записи данных или алгоритмов прямо в исходный код без использования переменных.
Хотфикс (от англ. hotfix) — горячее исправление. Быстрое и временное решение проблемы, которое обычно внедряется без полного тестирования.