3Bit #01
03 января 2005

Программинг - дизайн исходных кодов: основные требования к листинг программы, ориентированной на широкую публику.

(c) Dr.Lion/RSM
──────────────────────────────────────────
  Время от времени мне попадают в руки ис-
ходники других программистов спека. Основ-
ная  проблема состоит в том, что читабель-
ность и оформление этих исходников не под-
дается никакой критике. Да, при особом же-
лании  и  умной голове можно разобраться в
чужом труде или хотя бы найти интересующий
нас  участок  кода  и  вставить его в свое
творение без всякой оптимизации.
  Если  вы,  уважаемый  кодер, выставляете
исходные тексты своих программ на всеобщее
обозрение, то  не  забывайте, что их будут
читать  другие  люди,  которым,  зачастую,
трудно  понять, что творится в вашей гени-
альной голове. Оформляйте исходники в кра-
сивом, полном соответствующих комментариев
и  пояснений виде. Вот самые основные тре-
бования,  которым, на  мой  взгляд, должен
соответствовать  листинг программы, ориен-
тированной на широкую публику:

1.Функциональная  законченность кода. Если
  какой-то код выполняет строго определен-
  ную  масштабную  функцию  (функции), его
  лучше  выделить в отдельный подгружаемый
  исходник (прим. плеер AY музыки, програ-
  мма работы со стрелкой, блок арифметиче-
  ских функций и т.п.)

2.Весь текст исходника  должен быть оформ-
  лен в однотипном стиле, т.е. все воспри-
  нимается как единый текст.

3.Каждую функционально законченную подпро-
  грамму  нужно  назвать  именем,  которое
  максимально  отображает суть работы под-
  программы. Первой  строкой  подпрограммы
  должна быть строка-коментарий, отобража-
  ющая  полное название подпрограммы, либо
  описывающая   выполняемую  подпрограммой
  функцию. Имена меток внутри подпрограммы
  должны указывать на явную принадлежность
  к данной подпрограмме.

4.Каждый отрезок кода подпрограммы, испол-
  няющий свою особую подфункцию желательно
  снабжать  пояснительным комментарием. Но
  совсем не обязательно расписывать каждую
  комманду кода.

5.Любой ассемблер позволяет использовать в
  исходнике три типа комманд:
  а) полный набор транслируемых в код ком-
     манд Z80;
  б) общепринятые вспомагательные комманды
     (напр. ORG, DEFB, DEFW, DEFS, EQU);
  в) специфические   комманды   ассемблера
     (напр. для  ALASM комманды DISP, ENT,
     DUP, EDUP, MACRO и т.п.).
  Для того, что-бы исходник можно было ле-
  гко конвертировать в любой ассемблер, он
  должен  содержать минимальное количество
  комманд из группы в.

6.В начале текста желательно указывать ав-
  торство,  дату  последней  редакции, тип
  исходника  (независимый или зависимый от
  других  исходников), полный перечень ос-
  новных подпрограмм данного исходника.

7.Все метки желательно  писать с использо-
  ванием  строчных  букв попимо заглавных.
  Таким образом разнообразие меток и эсте-
  тический вид вам гарантирован.

8.Может еще что-то, уже и не вспомню.

  Примером по-человечески оформленного ис-
ходника может послужить любой мой исходник
из приложения журнала.
──────────────────────────────────────────



Другие статьи номера:

От редакции - новый украинский электронный журнал под названием "3BiT".

От редакции - накануне: переписка авторов журнала с корреспондентами.

От редакции - Credits: авторы журнала.

Speccy news - новости: Scl выпустил газету Cossackos, результаты Воронежского фестиваля KidSoft'2004, Сергей Бульба архив AY музыки, Alone Coder выпустил Info Guide #6...

Программинг - новый быстрой и короткий PT3.x Player от RSM.

Программинг - дизайн исходных кодов: основные требования к листинг программы, ориентированной на широкую публику.

Программинг - процедуры печати текста шрифтами 8х8, 6х8, 5х8, 4х8 точек.

Программинг - обзор особенностей моделей оттечественного и фирменного спектрума от Rob F.

Программинг - сборник кодов: Рисование окна с рамкой в цвете, обработка дисковых ошибок TR-DOS, универсальня процедура Scroll'a экрана.

Программинг - Game Making: Mad Killer делится опытом создания игр для ZX Spectrum.

Программинг - Нестандартное использование General Sound: эмулятор звукового сопроцессора AY-3-8910.

Hacker Zone - "фрикинг": Халявные звонки на таксофонах. Бесплатные звонки в любую точку мира.

Перспективы - Dune для Спектрума от Сосюра Игоря.

Есть мнение - Mad Killer уличает Инфорком в продажности PC.

Рабочий стол - JPEG/GIF laboratory 1.1: программа для просмотра картинок в формате JPEG/GIF.

Рабочий стол - General Sound AY Emulator v1.0

Рабочий стол - обзор утилиты для поиска музыкальных файлов Pro Tracker 3.X Mod Finder v1.2

Игромания - Архивариус: обзор не очень свежей но интересно адвентюры "Последняя авантюра".

Игромания - Wolf 2004: Мир увидел то, над чем трудился Alone Coder целых 8-мь лет!!

Железячки - Кое-что о CMOS-часах: доработанная схема от Alone Coder'a.

Железячки - обзор некоторых современных контроллеров для работы с внешними накопителями информации для ZX-Spectrum.

Веселуха - Жизнь простого сисадмина И печальна и тосклива если рядом нету пива: Сисадмину посвящается.

Веселуха - юмористический рассказ: Я МАШИНА.

Веселуха - Компьютерные анекдоты.

Иной мир - Radeon X700: недорогая основа для геймерских карт.

Разное - отчет Rob F. с Украинской тусовки SpeXtream'2004.

Разное - старости: для чего нужны программы, особенно игровые и как их делать хорошо.

Разное - Конкурс от групы P7S для патриотов Спектрума!

Разное - Интервью с DESALEX'ом/XPJ.

Разное - интервью с автором одного из самых ожидаемых игровых проектов, игры Dune: The Battle for Arakkis.

Разное - интервью с автором нашумевшей демки под VIC-20 - Viznut/PWP.

Разное - интервью с известным Английским спектрумистом Gasman/Raww arse.

Разное - Интервью с Random'om взятое на Construction Chaos 2004.

Разное - Реклама - двигатель торговли и не только.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Хорошая пресса - рекомендации будущим авторам газет и журналов.
От идиоторов - в следующем номере Вы обязательно встретите...
Вступление - Состояние близкое к шоку...

В этот день...   24 июня