Програмування з використанням стандартного введення-виведення

Досі для створення нових інструментів застосовувалися вже існуючі, але треба сказати, практично все, що можна зробити за допомогою оболонки, sed і awk, вже зроблено У цьому розділі ми напишемо кілька програм мовою програмування Сі Надалі при обговоренні та розробці програмного дизайну також буде домінувати основоположна філософія створення програм для спільної роботи – Ми хочемо створювати інструменти, за допомогою яких інші зможуть створювати власні інструменти Для кожного прикладу буде розглянута стратегія реалізації, представляющаяся авторам найбільш розумною: програма починається з абсолютного мінімуму, що виконує якусь корисну функцію, потім у міру необхідності до нього додаються різні властивості та можливості

Є вагомі підстави писати програми з нуля Може статися так, що поставлене завдання просто неможливо вирішити за допомогою існуючих програм Так часто буває з програмами, які повинні обробляти нетекстові файли Треба сказати, що більша частина програм, представлених раніше, успішно працює тільки з текстовою інформацією Якщо ж рішення, що використовує тільки кошти оболонки та інші універсальні засоби, існує, воно може бути недостатньо надійним і продуктивним У цьому випадку версія, написана в оболонці, добре підходить для уточнення специфікації і користувальницького інтерфейсу (І якщо вона працює досить добре, немає сенсу переробляти програму) Характерним прикладом є команда zap з попередньої глави: створення першої версії в оболонці зайняло всього кілька хвилин, окончатель-

ная версія надає цілком придатний для користувача інтерфейс, але працює програма занадто повільно

Обраний саме мова Сі, тому що це стандартна мова систем UNIX – ядро ​​і всі користувальницькі програми написані на Сі, і, якщо чесно, інші мови далеко не так добре підтримуються Передбачається, що ви знаєте Сі, принаймні настільки, щоб зрозуміти написане Якщо це не так, прочитайте книгу «The C Programming Language» Б В Керніган (BW Kernighan) і Д М Рітчі (DM Ritchie), видану в Prentice-Hall в 1978 году1

Буде використовуватися бібліотека стандартного введення-виведення – набір функцій, що забезпечують ефективний і стерпний введення-виведення і системні сервіси для програм на Сі Бібліотека стандартного введення-виведення доступна на переважно не-UNIX-систем, що підтримують Сі, так що програми, які обмежують взаємодію з системою її можливостями, легко переносяться

Приклади, представлені в цьому розділі, володіють загальною властивістю: всі вони представляють собою невеликі сервісні програми, кото риє використовуються кожен день, але при цьому вони не увійшли в сьому версію Якщо у вашій системі є подібні програми, корисно порівняти запропоновану реалізацію з уже наявною

Якщо ж ви вперше побачите програми в цій книзі, то можете, як і ми, виявити їх корисність У будь-якому випадку ці програми допоможуть зрозуміти наступне: не існує досконалої системи, але, застосувавши зовсім невелике зусилля, можна поліпшити стан справ і усунути дефекти

Джерело: Керниган Б, Пайк Р, UNIX Програмне оточення – Пер з англ – СПб: Символ-Плюс, 2003 – 416 с, Мул

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*