You are on page 1of 6

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

СУМСЬКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ


КАФЕДРА КОМП’ЮТЕРНИХ НАУК

Лабораторна робота № 4

З дисципліни:
«Вступ до спеціальності»

Виконав (ла) : Коноз Р.В., група №КНз-31с


Перевірила: ст.викладач, к.т.н. Москаленко А.С.

СУМИ – 2023
1) Еволюція мов програмування є довгим і складним процесом, що обумовлений розвитком
технологій, змінами в області архітектури комп'ютерів, потребами розробників і суспільством
в цілому. Основні етапи розвитку можна розділити на кілька періодів:
1. Найраніший період (до 1950 року):
- Машинні коди та асемблери: У цей період програмування велося безпосередньо в
машинних кодах або мовах асемблера, що важкочитається і вимагає великих зусиль для
написання і розуміння програм.
2. Період першого покоління мов (1950-1960 роки):
- Fortran (1957): Розроблений для інженерів і науковців, Fortran був однією з перших
високорівневих мов, яка дозволяла структурувати програми.
- Lisp (1958): Створений для обробки символьної інформації, Lisp вперше введений ідею
гарбеж-збору (garbage collection).
3. Період другого покоління мов (1960-1970 роки):
- COBOL (1959): Створений для бізнес-застосувань, COBOL був однією з перших мов, яка
дозволяла читабельність коду.
- ALGOL (1960): Вніс значний внесок в теорію структуризації програм.
4. Ера третього покоління мов (1970-1980 роки):
- C (1972): C був спроектований для розробки операційних систем і виявився дуже
ефективним та переносимим.
- Pascal (1970): Розроблений для навчання, Pascal пропонував структурований підхід до
програмування.
- Smalltalk (1972): З'явилося поняття об'єктно-орієнтованого програмування.
5. Ера четвертого покоління мов (1980-нині):
- C++ (1983): Розширення мови C, введення об'єктно-орієнтованого програмування.
- Java (1995): Був розроблений для написання програм для віртуальної машини Java, що
дозволяє покращити переносимість коду.
- Python (1991): Динамічна, високорівнева мова програмування, орієнтована на простоту
читання коду та швидкість розробки.
- C# (2000): Розроблений Microsoft, має високий ступінь об'єктно-орієнтованого
програмування.
- Swift (2014): Розроблений Apple, орієнтований на простоту та безпеку коду, особливо для
розробки iOS-додатків.

На різних етапах розвитку мов програмування відбувалися зміни з метою полегшення процесу
розробки, підвищення читабельності коду, забезпечення більшої ефективності виконання
програм, а також з врахуванням змін у вимогах до програмного забезпечення та
обчислювальних систем. Наприклад, зростання популярності мобільних платформ призвело
до появи мов програмування, таких як Swift для розробки додатків для iOS. Об'єктно-
орієнтоване програмування, концепції гарбеж-збору та функціонального програмування стали
значущими тенденціями у сучасному програмуванні.
2) Давайте порівняємо дві мови програмування: Python (представник багатоцільового
програмування) та Haskell (представник функціонального програмування).
1. Синтаксис:
- Python: Має чистий і лаконічний синтаксис, який нагадує псевдокод. Використовує
відступи для визначення блоків коду.
- Haskell: Має дуже експресивний синтаксис. Використовується інфіксна нотація для
бінарних операцій та каррірування функцій.
2. Типізація даних:
- Python: Динамічна типізація. Типи визначаються автоматично під час виконання програми.
- Haskell: Статична і сильна типізація. Типи визначаються на етапі компіляції, і компілятор
гарантує їх правильність.
3. Підтримка парадигм програмування:
- Python: Підтримує об'єктно-орієнтоване програмування, процедурне програмування та
функціональне програмування (з обмеженнями).
- Haskell: Орієнтований на функціональне програмування, але також підтримує монади для
обробки побічних ефектів, що робить його мовою з чистим функціональним ядром.
4. Процес компіляції/інтерпретації:
- Python: Інтерпретована мова. Код виконується рядок за рядком за допомогою
інтерпретатора Python.
- Haskell: Зазвичай компілюється. GHC (Glasgow Haskell Compiler) є одним з
найпоширеніших компіляторів для Haskell.
5. Області застосування:
- Python: Широко використовується для веб-розробки, наукових обчислень, штучного
інтелекту, аналізу даних та ін.
- Haskell: Зазвичай використовується для функціонального програмування, особливо в галузі
великих та складних систем, де безпека та ефективність важливі.
Інші аспекти, такі як продуктивність, екосистема інструментів та бібліотек, можуть
варіюватися в залежності від конкретних вимог та завдань. Обидві мови мають свої сильні
сторони і можуть бути вибрані відповідно до конкретних вимог проекту.

3) Давайте розглянемо історію розвитку мови програмування Java:


Створення (1991-1995):
- Java була розроблена Джеймсом Гослінгом, Майклом Шеріданом та Патріком Наугтоном у
компанії Sun Microsystems.
- Робоча група по проекту над мовою розпочала свою діяльність у 1991 році, але перший
випуск мови, означений як Java 1.0, відбувся в 1995 році.
Ключові характеристики:
1. Об'єктно-орієнтована: Java була спеціально створена для підтримки об'єктно-орієнтованого
програмування.
2. Переносимість: Це "write once, run anywhere" (WORA) програмна мова, оскільки код,
написаний на Java, може бути виконаний на будь-якому пристрої, що підтримує віртуальну
машину Java (JVM).
3. Безпека: Велика увага була приділена безпеці, особливо у відношенні до мережевого
програмування.
Основні етапи розвитку:
- Java швидко здобула популярність через свою переносимість та безпеку, ставши ключовою
технологією для розробки веб-додатків та корпоративних систем.
- У 2004 році був випущений Java 5, який вніс підтримку аннотацій, покращення в області
управління пам'яттю та інші нововведення.
- У 2014 році вийшов Java 8, який вніс лямбда-вирази, нові API та інші функції.
- Поява Java 9 (2017) та подальші версії принесли модульність, поліморфізм у верхніх межах
та інші покращення.
Основні області застосування:
- Веб-розробка: Java використовується для створення веб-додатків та веб-служб.
- Корпоративні системи: Як мова, що підтримує розробку корпоративних систем, Java широко
використовується у великих компаніях.
- Мобільна розробка: Запуск Java на Android робить її ключовою мовою для мобільних
додатків.
- Вбудовані системи: Java використовується для розробки вбудованих систем та Інтернету
речей (IoT).
Java залишається однією з найпопулярніших мов програмування завдяки своїй переносимості,
надійності та широкому спектру застосувань.

4) На момент мого останнього оновлення в січні 2023 року, давайте розглянемо деякі загальні
тренди у світі мов програмування. Звертаю увагу, що популярність мов може змінюватися в
залежності від регіону, галузі та інших факторів.
### Зростання популярності:
1. Python:
- Чому: Python залишається однією з найпопулярніших мов програмування завдяки своїй
простоті, читабельності, розширюваності і великій кількості бібліотек для різноманітних
застосувань, таких як штучний інтелект, аналіз даних, веб-розробка та інше.
2. JavaScript:
- Чому: JavaScript залишається ключовою мовою для фронтенд-розробки веб-додатків. З
додатковими фреймворками та бібліотеками, такими як React, Angular та Vue.js, JavaScript
також використовується для розробки повноцінних веб-застосунків.
3. TypeScript:
- Чому: TypeScript, розширення JavaScript з підтримкою статичної типізації, набирає
популярність завдяки покращенню безпеки коду та інструментів для розробників.
4. Go (Golang):
- Чому: Go отримує визнання через свою ефективність, швидкість та простоту використання.
Використовується для розробки масштабованих веб-сервісів та інфраструктури.
5. Rust:
- Чому: Rust отримує популярність через свою високу ефективність, систему власності та
забезпечення безпеки виконання коду.
### Зменшення популярності:
1. Java:
- Чому: Хоча Java залишається ключовою мовою для корпоративних систем, банківських
додатків і великих підприємств, її популярність у веб-розробці може зменшуватися через
появу новіших мов, таких як Kotlin для Android.
2. C/C++:
- Чому: Хоча C/C++ залишаються важливими для системного програмування та розробки
вбудованих систем, їх популярність у веб-розробці може зменшуватися через вищеописані
мови вищого рівня.
3. PHP:
- Чому: З зростанням популярності альтернатив, таких як Node.js, та підходів до розробки,
таких як серверне відображення та мікросервісна архітектура, популярність PHP може
зменшуватися.
Важливо відзначити, що популярність мов програмування може змінюватися
відповідно до конкретних завдань, технічних вимог та ринкових тенденцій. Також слід
враховувати, що нові мови можуть з'являтися та отримувати популярність відповідно до
розвитку технологій та вимог ринку.
Джерела:
https://uk.wikipedia.org/wiki/Фортран
https://uk.wikipedia.org/wiki/Lisp
https://uk.wikipedia.org/wiki/COBOL
https://uk.wikipedia.org/wiki/ALGOL
https://uk.wikipedia.org/wiki/C_(мова_програмування)
https://uk.wikipedia.org/wiki/Pascal
https://uk.wikipedia.org/wiki/Smalltalk
https://uk.wikipedia.org/wiki/C%2B%2B
https://uk.wikipedia.org/wiki/Java
https://uk.wikipedia.org/wiki/Python
https://uk.wikipedia.org/wiki/C_Sharp
https://uk.wikipedia.org/wiki/Swift_(мова_програмування)
https://uk.wikipedia.org/wiki/Haskell
https://uk.wikipedia.org/wiki/TypeScript
https://uk.wikipedia.org/wiki/Go_(мова_програмування)
https://uk.wikipedia.org/wiki/Rust_(мова_програмування)
https://uk.wikipedia.org/wiki/PHP
https://chat.openai.com/c/e1f2884d-1143-4811-b053-cb3d1822321a

You might also like