Читайте также:
|
|
У зрілих технологічних середовищах, таких як середовище Web-програмування в середині 2000-х – нам доступні всі переваги багатої інфраструктури розробки ПЗ. Такі середовища надають широкий вибір мов програмування, потужні засоби пошуку помилок, ефективні інструменти налагодження і надійні автоматизовані засоби оптимізації продуктивності додатків. Компілятори майже не містять помилок. Інструменти добре описані в документації виробників, в книгах і статтях сторонніх фірм і на численних Web-сайтах. Інструменти інтегровані, завдяки чому ви можете розробляти UI (userinterface, користувацький інтерфейс), модулі роботи з БД, складання звітів і бізнес-логіки в одному середовищі. Вирішення проблем можна легко знайти у відповідях на «часті запитання». Крім того, доступні різноманітні послуги консультантів і програми тренінгу.
У ранніх середовищах, таких як Web-програмування в середині 1990-х – ситуація протилежна. Мов програмування мало, при цьому вони часто повні помилок і погано документовані. Замість написання нового коду програмісти витрачають масу часу тільки на те, щоб розібратися в особливостях мови. Незліченні години йдуть на боротьбу з помилками в мовах, ОС та інших інструментах. Інструменти програмування часто примітивні. Налагоджувачів може не бути взагалі, а про оптимізаторів компіляторів програмістам доводиться лише мріяти. Виробники часто випускають нові версії компіляторів, при цьому кожна нова версія відмовляється підтримувати значні частини вашого коду. Інструменти не інтегровані, через що UI, модулі роботи з БД, складання звітів і бізнес-логіки доводиться розробляти за допомогою різних засобів. Через погану сумісність інструментів і часту появу нових компіляторів і бібліотек програмісти витрачають багато зусиль тільки на підтримку працездатності наявної інфраструктури. При виникненні проблем в Інтернеті можна знайти деяку документацію, але вона не відрізняється достовірністю та повнотою.
Але в ранніх середовищах були розроблені програми, що дали початок деяким з найбільш інноваційних програм, такі як TurboPascal, Lotus 123, Microsoft Word і браузер Mosaic. Я просто хочу сказати, що від стадії розвитку технології залежить те, як буде проходити ваша робота. У зрілому середовищі ви можете присвячувати більшу частину дня поступовій реалізації нової функціональності. Працюючи в ранньому середовищі, виходите з того, що вам доведеться витрачати багато часу на з'ясування документованих можливостей вибраної мови програмування, налагодження помилок, які в підсумку виявляться дефектами бібліотек, перевірку того, що написаний код буде працювати з новою версією бібліотеки якого-небудь виробника і т. д.
При роботі в примітивному середовищі методики програмування можуть виявитися ще більш корисними, ніж в зрілих середовищах. Як сказав Девід Грайс (Gries, 1981), підхід до програмування не повинен визначатися використовуваними інструментами. У зв'язку з цим він проводить відмінність між програмуванням мовою (programminginlanguage) і програмуванням з використанням мови (programmingintolanguage). Розробники, що програмують на мові, обмежують своє мислення конструкціями, безпосередньо підтримуваними мовою. Якщо засоби мови примітивні, думки програмістів будуть такими ж примітивними.
Розробники, програмуючі «з використанням» мови, спочатку вирішують, які думки вони хочуть висловити, після чого визначають, як виразити їх за допомогою конкретної мови.
Доцент кафедри Волошко С.В.
Дата добавления: 2015-04-12; просмотров: 88 | Поможем написать вашу работу | Нарушение авторских прав |