Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмізація та програмування.docx
Скачиваний:
84
Добавлен:
17.05.2015
Размер:
1.35 Mб
Скачать

3. Мислення і властивості програміста

Тут, продовжуючи попередні роздуми ми поговоримо про стиль мислення програміста і про деякі особливості його мозкової діяльності. Необхідно вказати, що мова піде про вже сформованих програмістів, фахівців-професіоналів. Справа в тому, що одним з найважливіших завдань будь-якого навчання є формування відповідного стилю мислення, наприклад у лікаря - лікарського, у інженера - інженерного, у гуманітарія - гуманітарного. Кожен з цих стилів характеризується своїми основними рисами, які ж з них характерні для програміста?

Перший ми вже знаємо:

Логічне мислення (здатність вибудовувати ланцюг логічних міркувань) (приклад вище)

***

Алгоритмічне мислення (здатність вирішувати завдання за допомогою чітко визначеної послідовності дій, набору конкретних кроків) Створення правильного алгоритму - це більша половина справи у вирішенні задачі. *** (Що є алгоритмом?) Алгоритм - це послідовність дій зрозумілих виконавцеві і однозначно призводять до бажаного результату. Тобто, алгоритм це деякий рецепт. Наприклад, рецепт коктейлю, Якщо ви виконуєте рецепт в точності ви отримує певний коктейль, якщо я виконую цей рецепт в точності я з великою часткою ймовірності отримаю той-же коктейль. Таким чином, цей рецепт не залежить від виконавця і приводить до результату. Здатність придумувати правильні «рецепти» алгоритми є однією з найважливіших особливостей мислення програміста, без якої він не буде здатний вирішити поставлених завдань.

Алгоритм – це послідовність дій, який призводить до рішення деякі задачі, зрозумілі виконавцю що призводить до досягнення мети.

Алгоритм як перейти дорогу.

  1. Підійти до дороги.

  2. Якщо червоний колір, чекати зелений.

  3. Зелений – перейти.

Системне мислення (здатність отримувати знання «розкладати по поличках» і встановлювати зв'язки між наявними знаннями, для отримання цілісної системи)

Аналітичний склад розуму (здатність робити аналіз ситуації, розкладання проблеми на компоненти), наприклад вам треба побудувати будинок. Це загальна проблема. Вона складається з купівлі місця під будівництво, улаштування фундаменту, стін, даху, інженерних систем, внутрішньої обробки. Кожна з цих задач в свою чергу може бути розділена на окремі елементи, наприклад пристрій фундаменту складається з викопування котловану, покупки бетонних блоків, їх установки, створення гідроізоляції, заливки вимощення і т.д. Часто доводиться аналізувати поведінку програми, чому з вірних даних ми отримуємо невірні результати?

Абстрактне мислення (один з видів людського мислення, який полягає в утворенні абстрактних понять і оперуванні ними.). У житті ми в основному маємо справу з конкретними речами, які бачили або про яких чули - це предмети які нас оточують. У нашій голові ми мислимо за допомогою категорій, які властиві цим предметам, наприклад «на столі лежить шматок білої крейди». *** (Які предмети тут використані) Предмети «стіл, крейда» *** (Як вони співвідносяться?) Співвідносяться через вплив «лежати на», у крейди є властивість «білий». Такий стиль мислення називається предметним. Абстрактне мислення протилежно предметному, при цьому необхідно мислити категоріями які не мають реального відображення в нашому світі. Щось на зразок математики «a> b-3», абстрактні поняття *** (Які?) «A, b» співвідносяться *** (як?) Як «менше». У програмуванні, як і в математиці також часто необхідно виконувати дії над деякими абстрактними сутностями, тобто змінними, масивами, структурами, списками. Задачу однак, полегшує, то що, часто ці сутності якимось чином відображають предмети реального світу, наприклад змінна, яка зберігає значення процентної ставки в банку, або масив який показує скільки кілометрів пробіг спортсмен на кожному тренуванні.

Якщо говорити про особливості програмістів, то виходячи з педагогічної практики можна виділити наступне:

1. Програмісти - люди підвищеної чесності. І професія ще погіршує цю якість. Бо машину не обдуриш: що написав, то і отримав ...

 Більш того, за багато років стало зрозуміло: якщо студент намагається схитрувати на лабораторних і / або заліку-іспиті - з нього хорошого програміста не вийде ... Життя підтверджує: такі люди зазвичай йдуть в інші галузі. Наприклад в підприємці ...

 2. Програмісти - клінічні оптимісти! Без оптимізму неможливо налагоджувати програми. Програміст завжди впевнений, що програма ось зараз запрацює. Ось вже одна маленька остання помилка залишилася ...

3. Програмісти - дуже, наполегливі люди. Доробити програму до робочого стану - потрібно бути дуже впертим.

4. Для програміста внутрішня мотивація важливіше зовнішній. Люди, у яких зовнішня мотивація (кар'єра, заробітки ...) превалює - з часом йдуть з програмування, наприклад в менеджмент.

Хотілося б завершити ці роздуми жартом: «є 10 типів людей - які розуміють двійкову систему і які не розуміють ...»