Новини високих технологій
» » У програмуванні змінна повністю характеризується чим?

У програмуванні змінна повністю характеризується чим?

13-04-2017, 09:35
1 658
У програмуванні, добре описати завдання не завжди означає вирішити її. Але будь-опис задачі завжди наближає до її вирішення. Алгоритмізація та програмування останнім часом вже з великою натяжкою вважаються словами-синонімами. Програмістів все частіше називають розробниками. Результатом програмування завжди є опис (змінні + алгоритм) розв'язування задачі.
На якому мовою, що і як зроблено - неважливо.

Трохи зворушливої історії

Алгоритмізація та програмування спочатку йшли рука об руку, але потім їхні дороги розійшлися. На сей момент багато згадувати не варто - це стосується першого. Про змінних і алгоритмах завжди потрібно мати чітке уявлення - це стосується другого.


Благоденство сучасного програмування в чому зобов'язане тернистому шляху, яким ішов розуміння інформації, опис даних і алгоритмів їх обробки в програмах. Перші мови були прості як перфокарти, але вони працювали. Змінні, типи змінних, оголошення змінних і порядок опису був самим жорстким чином регламентовано.
Як правило, змінні ділилися на динамічні (ті, що можна змінювати) і статичні (константи, їх змінювати не можна). Найпершою була змінна типу вказівник (це заслуга кращого і "вічного" мови - "Асемблера"). Не у всіх мовах вона зберігалася в різні часи, але в сучасному програмуванні використання покажчиків - верх досконалості коду.

Основні правила: з чого все починалося

Змінна повинна бути описана до першого використання, а найчастіше на самому початку програми, а ще частіше - в конкретній секції програми. Змінна повинна бути написана латинкою, з цифрами або без. Деякі мови допускали символ "_". Першим повинен бути символ.


Змінна мала характерну особливість: вона повинна була знати, скільки байт займає в пам'яті і як їй вирівнятися на межу слова, а то й подвійного слова. Останнє було дуже важливо для математичних програм. Особливості організації оперативної пам'яті і робота математичного співпроцесора зобов'язували програміста не тільки правильно і вчасно описати змінну, але і подумати, як вона розташується в оперативній пам'яті. Прим. "Надра" оперативної пам'яті недоступні сучасного програмування в переважній більшості випадків. Раніше з організацією пам'яті доводилося суворо рахуватися. Перші структури даних - сукупності змінних - функціонували як змінні з певною семантикою, але для доступу до них потрібно не тільки знати, скільки байт займає, але і враховувати, що деякі типи даних компілятор автоматом вирівнював на кордон слова. Все це призводило до серйозних помилок в програмах. В пам'ять про ті суворі часи слід зазначити, що перші мови при всій їх пунктуальності і вимогливості забезпечували змінні, типи, структури даних в програмуванні та розробці безпечним синтаксичним контролем. Якщо програма проходила синтаксичний контроль і успішно линковалась, проблеми з виконанням починалися тільки при фатальної помилки програміста або збої апаратури.

Наш час, інтернет-програмування

Деякі мови програмування зберегли прихильність до суворого опису змінних. Більшість допускає опис, але дозволяє змінювати тип змінної як зручно програмісту.
PHP: тут змінна в програмуванні повністю характеризується іменем, значенням, а ось тип залежить від місця в коді і часу, коли вона знадобилася. Деяким не дуже подобається називати змінні з символу "$", але зате можна мати такі імена: $1 $2 $3. Діапазони значень перевищують необхідні межі, і передбачено безліч можливих типів. Для переважної більшості завдань вистачає рядків, цілих чисел, іноді речових та логічних. Покажчика як такого тут немає, але можливість передати вказівка на місце змінної є. jаvascript: мінлива в програмуванні повністю характеризується тим, що її потрібно обов'язково описати, хоча в деяких випадках мова пробачить відсутність опису, шансів отримати валідний код буде мало. jаvascript просто не буде працювати з тим, що не вкладається в його синтаксис або він не зміг виконати. Діапазони значень так само зашкалюють, але найбільшою популярністю користуються рядкові змінні.
Програмування на мовах, що належать до Інтернету опосередковано, тобто C#, C++, Pascal, Delphi - суворе. В C# потрібно не тільки описати, але і ініціалізувати.

Чим характеризуються змінні величини

Передусім своїм ім'ям, до якого різні мови висувають суворі вимоги. Якщо в PHP знак $ обов'язково стоїть перед ім'ям змінної, то в Java це виходить за рамки угоди. Взагалі, в частині іменування змінних величин, крім ідей синтаксису мови, є маса ідей розробників. Починаючи писати на конкретній мові, слід прислухатися до думки колег і подивитися останні ідеологічні мануали по стилю мови. Друга характеристика змінної - її значення. Воно є завжди. Навіть якщо значення відсутнє - це теж значення. Характерна риса: наприклад, PHP багато функцій, що видають в якості результату число, можуть видати результатом boolean - чим не результат?
Тип не важливий, важливо наявність, і багато конструкції jаvascript хвилі задовольняються наявністю значення, незважаючи на його тип. Останнє, що має значення, так це, власне, значення змінної.

Базові типи даних

Загалом-то світ опису, світ змінних, незважаючи на діалекти і стилі в іменуванні, не сильно розвинувся щодо базових типів. В основному програмісти використовують рядок (string), часто цілі числа (int, integer), при необхідності речові числа (double, real), деякі ще зберегли поняття знака (char). Про бази даних (від мала до велика) можна навіть не говорити, там кількість варіацій основних типів передбачено на всі випадки життя, а багато типів даних успадковані з часів Ади і Беббіджа.
В даний час сама краща змінна в програмуванні повністю характеризується зазначенням на себе, допускаючи, що її значення, тип і взагалі хто вона така буде ясно тільки в той момент, коли вона буде потрібна.

Змінні та алгоритми

Самотня змінна в програмуванні повністю характеризується прагненням опинитися в компанії їй подібних. Це історичне явище, і мало що тут залежить від волі розробника.
У програмуванні змінна повністю характеризується чим?
Якщо створення програми починається з технічного завдання, особливо якщо в розробці беруть фахівці, для яких у темі "алгоритмізація та програмування" перше слово має більше значення ніж друге, то змінних буде безліч. Зазвичай такий варіант зупиняється на етапі опису змінних. Якщо створення програми починається з аналізу її основного завдання, і саме головна точка завдання береться за основу, то шансів отримати працюючий результат достатньо. Описати головну точку і створити алгоритм, що її обслуговує, - це не просто змінна в програмуванні, тип, ім'я, значення і місце опису, а початок процесу. Важливий процес опису змінних і алгоритму, який з ними працює. Важливо рух: перше наближення до мети; результат, аналіз і уточнення опису; друге наближення до мети. Зазвичай після створення другого-третього опису приходить розуміння, з чого слід починати. І завдання пішла в роботу.

Вказівний опис змінних

Чого варто почати програму з основних змінних: не імена, типи та значення відіграють головну роль. Самотня мінлива, структура даних, масив і навіть об'єкт - це просто статистичне рішення задачі. Дерево об'єктів, що описують завдання, тобто і змінні, і алгоритми, інкапсульовані в єдиний код - об'єкт, а всі об'єкти в загальний об'єкт - систему об'єктів - ось це річ. Ось це реальне і сучасне створення змінних.
Такі змінні можуть взаємодіяти з собі подібними, а завдяки спадкуванню кожна з них може переміщатися по своїм родоводом гілці, тобто вказівник на те, що і де в даний момент використовується, і як він це робить - актуальне, а саме його зміст - ні. У даному випадку зміст грає свою роль, коли вона це зробить, курсор переміщується на наступний зміст.
Цікаво по темі
Оператор присвоювання в "Паскаль": для чого призначений, які дії виконує
Оператор присвоювання в "Паскаль": для чого призначений, які дії виконує
Turbo Pascal – нескладна мова програмування, але його вивчення трудомістко, якщо зайнятися цим питанням серйозно. Починаючий користувач осягає ази
Математика від JavaScript Math
Математика від JavaScript Math
Об'єкт Math мови jаvascript реалізує практичний набір математичних функцій. Складні розрахунки можна виконувати всередині браузера, не
JavaScript, масиви: опис
JavaScript, масиви: опис
jаvascript – сучасна мова програмування, він унікальний у частині синтаксису і семантики. Має специфіку...
Практика використання функції PHP empty()
Практика використання функції PHP empty()
Сучасне програмування давно і успішно маніпулює нетипированними змінними. Тип змінної можна не вказувати ...
Javascript Array для збереження необмеженої кількості змінних
Javascript Array для збереження необмеженої кількості змінних
Логічно масив займає проміжне положення між змінними і об'єктами. Практично не слід надавати особливого значення словам. У програмі є змінні і код.
Перетворення типів. Функції Round і Trunc в "Паскаль"
Перетворення типів. Функції Round і Trunc в "Паскаль"
Перетворення типів в Pascal дозволяє реалізувати більш широкий клас задач та виконувати операції над величинами різних типів.