Глоссарий кодера, или С Самого Начала
группа товарищей
.........
IF получилось 0 THEN считай там;
IF юзер нажал пимпу "А" THEN закругляйся ELSE запускай Кваку;
.........
Дабы комп просек, куда ему, собственно, обратиться за данными
в каждом случае, была придумана МЕТКА (LABEL). То есть комп читает
программу сверху вниз, как и все нормальные перцы. И доходит до
места, где надо проверить, например, не нажал ли юзер кнопец,
- и дальше работать в зависимости от этого обстоятельства. Но
код-то для разных вариантов поведения проги находится в разных
местах, так? Так вот, в каждом конкретном месте ставится метка
со своим именем. И в проге описывается: если так-то, то иди к
метке 1, а если не так, то - к метке 2. Только не увлекайся. Есть
правило: крутость программера обратно пропорциональна числу меток
в программе.
ВОТ ЕЩЕ НЕСКОЛЬКО ПОНЯТИЙ КОДИНГА
СТЕК. Упорядоченный набор элементов (составляющих частей стека),
в котором добавление новых элементов или выбрасывание старых может
происходить только с одного конца. Этот конец, вдобавок ко всему,
в умных книжках вершиной стека обзывают. Представь, что ты занимаешься
изготовлением пиратских CD на дому. :) Сидишь, лепишь себе с болванок
заветные алюминиевые, потом свет отрубается, дверь выламывается...
доблестная милиция пожаловала! Ну, ты первым делом куда диски
денешь? Нет, смывать в биде их не надо! :) Ломишься на кухню и
в вентиляцию все: там узко, не упадут. Вот тебе и стек настоящий
в вентиляции получился: нижний диск не вытащишь - придется сверху
по одному тянуть :). В этом случае элементы стека - это твои кровные
самые что ни на есть компактные диски. Стеки в умных книжках еще
называют структурами LIFO (Last In First Out) - последним пришел,
первым ушел.
ПРОЦЕДУРА. Часть программы, реализующая свой алгоритм. Она же
подпрограмма (все зависит от языка разные названия). Процедуры
обычно - это ни что иное, как отдельная небольшая "программка"
(т.е. подпрограмма), все ее команды выполняют небольшую (по сравнению
с основной), но конкретную задачу. Пример: процедура очистки окна
в досявых прогах (`CLS' в васике).
ФУНКЦИЯ. Часть программы (подпрограмма), которая после окончания
выполнения своего алгоритма выдает определенный результат (значение
функции). Грубо говоря, процедура, которая дает результат. Функции
могут иметь аргументы. Короче, все как в школьной математике 8-9
классов: функции от аргументов (или ты математику не учил?).
БИБЛИОТЕКИ DLL (Dynamic Linked Library) - библиотеки динамической
компоновки (так говорят в любимых умных книгах :)). Работают они
как юниты в Паскале/Дельфях. Только, грубо говоря, код юнитов
паскалевых во время компиляции цепляется к проге, да так, что
потом не отлепишь (т.е. линкуются статически), а dll-ки существуют
свободно от проги, их использующей. Юзать dll удобно тем, что
она грузится только тогда, когда это нужно твоей (или спиратченной
:) ) софтине. При этом процедуры, функции и прочая шняга из dll
могут использоваться и другими прогами или dll`ами. Самое веселое,
что библиотеки dll могут быть написаны хз на каком языке: пишешь
ты прогу на Вижуал Васике и юзаешь dll-ку, забацанную на Си. :)
Короче, dll - это рулезная фича :), в которую удобно напихать,
например, функции, используемые несколькими твоими прогами.
ЗАКРУГЛЕНИЕ
Ну вот, перец, теперь ты реально продвинулся в кодинге. Мы разобрали
основные понятия по полкам. До остальных вещей ты дойдешь сам,
это не так сложно. Помни, никто не родился кодером, все начинали
так же как и ты, с самых азов. Любая даже самая крутая и навороченная
прога все-таки была кем-то написана. Так почему бы тебе не написать
еще круче? Дерзай! И помни, что золотым правилом всех программеров
всех времен и народов было, есть и остается - RTFM!
Удачи.