книги хакеры / журнал хакер / специальные выпуски / Специальный выпуск 4_compressed
.pdf
|
|
КОНСТРУКТОР |
|
|
|
>СПЕЦВЫПУСК #4 |
001D |
29 |
|
|
BR
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
на палитра Standard (она выбрана по умолча- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
нию). Кликни один раз на компоненту Edit (най- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
ди по хинтам), а затем щелкни на главную фор- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
му: там появится одна строка ввода. Можешь |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
потаскать ее по главной форме мышкой или |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
порастягивать. |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
Теперь зацени: слева на экране вертикальная |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
панель Object Inspector - очень важная и удоб- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
ная фича: в ней отображаются все свойства |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
всех компонент твоей проги. Сейчас вверху |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
написано Edit1:tEdit (если ты последний раз |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
кликнул в строку ввода, иначе Form1:TForm1) - |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
это имя и тип выбранного сейчас компонента. |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
Ниже, во вкладке Properties, можно найти |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
свойство Text, сейчас там написано Edit1, а на |
- |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
до все напрочь стереть - это свойство говорит, |
|
|
|
|
|
|
|
|
|
|
|
||
|
что будет написано в строке ввода при запус |
- |
|
|
|
|
|
|
|
|
|
|
|||||
|
ке программы. Запусти программу и посмот- |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
ри, что получится. Теперь аналогично помести |
|
|
|
|
|
|
|
|
|
|
|||
|
на форму еще одну строку ввода и расположи |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
ее под первой: в первую юзер будет потом |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
впечатывать белиберду, а во вторую прога бу |
- |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
äåò |
писать |
расшифровку. Сотри все в свойстве |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
Text. |
Найди на палитре и помести на панель |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
кнопку (Button) и в свойстве Caption впиши “Do |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
it!” или что-нибудь такое - эта кнопь будет все |
Внутри |
|
|
|
|
|
|
|
|
||||
|
|
|
|
запускать в твоей проге (свойство Caption у |
|
|
везде кликал один раз). Перед тобой |
откроет- |
|
|
|||||||
|
|
|
|
всех компонент отвечает за надпись, которая |
|
|
|
|
ся окошко текстового реактора... то |
åñòü ðå- |
|
||||||
|
|
|
|
будет нарисована на компоненте; и еще: пока |
Можно |
запустить программулину и пощелкать |
дактора, где будет написано: |
|
|
|
|
||||||
|
|
|
|
вписывай те надписи на кнопках, которые |
по кнопкам, |
вписать чего-нибудь, но прога не |
|
|
|
|
|
|
|||||
|
|
|
|
предлагаю я, чтобы мне было проще объяс- |
дает результата, который ты от нее хотел: она |
procedure |
TForm1.Button2Click(Sender: |
|
|||||||||
|
|
|
|
нить, позже ты все сможешь переделать по- |
ни фига не перекодирует. Тут следует разоз- |
TObject); |
|
|
|
|
|
||||||
|
|
|
|
своему). |
|
|
литься не на шутку и пойти бить морду подло- |
begin |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
му автору статьи, который обещал, что кла- |
end; |
|
|
|
|
|
|||
|
|
|
|
Далее надо как-то дать понять юзеру, в какую |
виатура даже не понадобится, а кинул по всем |
|
|
|
|
|
|
||||||
|
|
|
|
из строк писать лажовую строку, а в какой бу- |
статьям, и прога вообще не заработала. |
и еще всякой лабуды. Так вот, перед тобой |
|
||||||||||
|
|
|
|
дет ответ. Для этого помести на форму два |
|
|
|
|
процедура, которая будет выполняться после |
|
|||||||
|
|
|
|
компонента Label (иконка в виде буквы “А” на |
Весь секрет того, что программа ни фига не |
того, как кто-нибудь кликнет на кнопь “Выход” |
|
||||||||||
|
|
|
|
палитре Standard), один левее первой строки |
делает, заключается в том, что ее еще ничего |
во время работы программы. Сейчас она пус- |
|
||||||||||
|
|
|
|
ввода, другой левее второй. В первом в свой- |
не просили делать. Поясню на примере. Мож- |
тая, то есть ничего не делает, поэтому такая |
|
||||||||||
|
|
|
|
стве Caption впиши “Вводи сюды:” или что-то |
но сделать скриншот с десктопа, поставить |
лажа и получалась - щелкаешь по ней, а ей |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
в этом роде, а во втором - “Ответ тут:”. Потом |
его вместо обоев, скрыть значки, и что полу- |
все по фигу. Ща все исправим: вписывай меж- |
|
|
|||||||||
|
|
|
|
в низу формы помести еще две кнопки, в од- |
чится: та же картинка, те же иконки, но сколь- |
ду begin и end (то есть в “тело” процедуры) та- |
|
||||||||||
|
|
|
|
ной впиши “Выход”, в другой “About”. Значе- |
ко по ним ни кликай, ни одна прога не запус- |
кую строку: |
|
|
|
|
|
||||||
|
|
|
|
ние свойства Caption может быть любым, так |
тится, а все потому, что и не должна запус- |
Form1.Close; |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
что пиши по-русски или по-аглицки и любую |
титься, так как никто ей не сказал, что если |
|
|
|
|
|
|||||||
|
|
|
|
фигню - что захочешь. Теперь размести все |
какой-то урод будет по дурацким этим обоям |
|
|
|
|
|
|
||||||
|
|
|
|
компоненты ровнее на форме (форму можешь |
щелкать, ей надо запускаться, и вообще. Ну |
Теперь, когда эта кнопь будет нажата, эта про- |
|
||||||||||
|
|
|
|
растягивать мышью или устанавливать свой- |
вот, надеюсь, я пояснил необходимость того, |
цедура скажет главной форме (главная форма |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
ства Height и Width ручками в Object Inspector). |
что сейчас тебе придется делать. Надо каждой |
она потому и главная, что к ней все “крепит- |
|||||||||||
|
|
|
|
Если на какой-нибудь компонент щелкануть |
кнопке сказать, что она должна делать, когда |
ся”, и если ее закрыть - закроется вся прог- |
|||||||||||
|
|
|
|
правой кнопью крысы, то выскочит менюха, в |
по ней кликают. Придется всерьез взяться за |
рамма) “Закройся”, и все будет зашибись. За- |
|||||||||||
|
|
|
|
которой есть пункт Align, поэкспериментируй с |
клаву. |
|
|
|
пусти и полюбуйся на это. |
||||||||
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
ним - это выравнивание того компонента, ко- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
торый у тебя сейчас выбран на форме (там ес- |
Начнем с простого: хочется, чтобы при нажа- |
Еще можно слепить панель, которая будет |
|||||||||||
|
|
|
|
ть выравнивания по левому краю, по правому, |
тии на кнопку “Выход” прога закрывалась нап- |
выскакивать при нажатии на кнопь “О проге..” |
|||||||||||
|
|
|
|
по центру и др.). К этому моменту у тебя дол- |
рочь. Даблкликни на эту кнопку на главной |
и содержать всякую лабуду. Все просто: в |
|||||||||||
|
|
|
|
жно получиться что-то типа того: |
форме (заметь, ДАБЛКЛИКНИ, до этого ты |
главном меню Дельфей выбираешь “Филе”, в |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
|
|
001E |
КОНСТРУКТОР |
|
|
>СПЕЦВЫПУСК #4 |
|
||
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
нем “New...”, выскочит окошко, в нем смело |
запуском Дельфа что-то спросит - говори - |
нижнюю строку (RusLet) - переключаешься на |
|
||||||||||||||
|
|||||||||||||||||
выбирай вкладку “Forms”, там по умолчанию |
Да) и насладись открывшимися возмож- |
русский и повторяешь все как и для предыду- |
|||||||||||||||
выбран AboutBox, щелкай “ОК”. Дело в том, |
ностями. |
щей строки. |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|||||||
что в комплекте Дельфей есть некоторое ко- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
личество готовых форм “специально для ле- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
нивых”, их надо только подправить. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Итак, есть четыре компонента Label и один |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Image. Сперва исправь свойства Caption у |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
всех Labelов - не бойся их растягивать, они |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
могут содержать несколько строк текста (для |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
этого надо свойство WordWrap поставить |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
True, а не False, как по умолчанию). Теперь |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Image - выбирай свойство Picture, щелкай где |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
три точки и далее Load любую картинку (Bmp- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
формата), размеры смотри в свойствах Height |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
и Width, можешь их изменить, но Дельфа сож- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
мет картинку любого размера под те, что там |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
вписаны. И, наконец, даблклик по кнопке |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
“ÎÊ” |
на панели |
About |
- и там в редакторе впи- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
сывай |
почти то |
æå |
самое, что и раньше: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
AboutBox.Close; |
|
Вот и настал тот момент, когда тебе все-таки |
Дельфа, когда будет |
обрабатывать эту |
запись, |
|
|
|||||||||
|
|
|
|
||||||||||||||
|
|
|
|
придется написать основной алгоритм прог- |
будет читать так: “ага, написано const, |
значит |
|
|
|
|
|
|
|
|
|||
(говоришь панельке |
About закрыться при на- |
раммы, иначе, как уже говорилось, само оно |
дальше идут константы, клево, щас |
должно |
|
|
|
|
|
|
|
|
|||||
жатии). |
|
|
не заработает. Даблклик на кнопке “Do it!”, и |
быть имя первой константы, О-ппа, |
написано |
|
|
|
|
|
|
|
|
||||
|
|
|
|
попадаешь в редактор. |
EngLet, это оно и есть, вот двоеточие, |
а после |
|
|
|
|
|
|
|
|
|||
Тут я хочу сказать об одной полезной фиче - |
|
него должен быть тип указан. Во! Да тут так и |
|
|
|||||||||||||
|
|
|
|||||||||||||||
все названия по умолчанию в Дельфях - “го- |
Сначала попробуем расшифровывать с ан- |
написано: string, значит константа будет стро- |
|
||||||||||||||
ворящие”, вроде Button1, Edit1 - сразу понят- |
глийского на русский. Для этого придется за- |
ковой, я потрясена! Теперь равно, а опосля и |
|
||||||||||||||
но, о чем идет речь. Точно так же и с проце- |
дать соответствие между английскими и рус- |
значение должно быть в апострофах, и “;” - да |
|
||||||||||||||
дурами, зацени: эта процедура называется |
скими буквами на клаве. Мы поступим так: |
тут все так и написано, а раз все верно, то я |
|||||||||||||||
“TAboutBox.OKButtonClick”, если ты знаешь |
введем две строковые константы, в одной |
ругаться не буду. Блин, да тут еще одна кон- |
|||||||||||||||
английский, сразу можешь врубиться, на фи- |
последовательно укажем все символы русской |
станта!..” и так далее, ну, примерно так, тока |
|||||||||||||||
га она нужна - вызывается, когда в AboutBoxе |
раскладки клавы, а в другой - английской. |
не по-русски, а по-своему, по-Дельфивски. |
|||||||||||||||
Clickнут по кнопке OK. По-моему - удобно, но |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
это - дело вкуса. |
Итак, редакторе ползи наверх, пока не встре- |
Апострофы по краям говорят-показывают гра- |
|||||||||||||||
|
|
|
|
тишь жирную надпись var. Над ней надо впи- |
ницы строки, в английской раскладке на клаве |
|
|
|
|
|
|
|
|
||||
В левом верхнем углу этой формы у нас по |
сать следующее: |
встречается апостроф - найди его в строке |
|||||||||||||||
умолчанию написано About, но, выбрав в ин- |
|
EngLet и поставь рядом еще один, теперь |
|
||||||||||||||
спекторе AboutBox, можно поменять, как |
const |
Дельфа врубится, что здесь не конец строки, а |
|||||||||||||||
обычно, свойство Caption. |
|
символ “апостроф”. |
|||||||||||||||
|
|
|
|
EngLet : string = ‘~!@#$%^&*()QWER- |
|
|
|
|
|
|
|
|
|
|
|
|
|
Если ты был наблюдательным, ты просек, что |
TYUIOP{}ASDFGHJKL:”ZXCVBNM<>?qwer- |
Теперь найди процедуру TForm1.Button1Click |
|||||||||||||||
мы нигде еще не сказали, чтобы наша панель |
tyuiop[]asdfghjkl;’’zxcvbnm,./’; |
и дополни ее до следующего: |
|
|
|
|
|||||||||||
|
|
|
|
||||||||||||||
выскакивала при нажатии на соответствую- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
щую кнопь. На главной форме даблкликни на |
RusLet : string = ‘¨!”¹;%:?*()ЙЦУКЕН- |
procedure |
TForm1.Button1Click(Sender: |
||||||||||||||
кнопень “О проге...” и в окне редактора впи- |
ГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,йцу- |
TObject); |
|
|
|
|
|
|
|
|
|
|
|
||||
ши в тело процедуры следующее: |
кенгшщзхъфывапролджэячсмитьбю.~’; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AboutBox.Show; |
|
var |
|
|
|
|
|
|
|
|
|
|
|
||||
Строки эти надо набирать так: верхнюю |
|
i, j, flag |
|
integer; |
|||||||||||||
|
|
|
|
(EngLet)- переключаешься на английский, за- |
|
Result |
|
: string; |
|||||||||
Это для всех форм одинаково - метод Show их |
жимаешь shift и начинаешь слева направо |
begin |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|||||||
показывает, а метод Close - закрывает. |
последовательно нажимать клавиши той стро- |
|
Result:=’’; |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ки на клаве, где цифры, потом той, которая |
|
for i:=1 to length(Form1.Edit1.Text) do |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|||||||||
Сохрани проект - теперь у тебя спросят имя |
ниже, и так далее, потом отпускаешь shift и |
begin |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|||||||
для файла только что сделанной панели “О |
повторяешь (управляющие кнопки, вроде tab, |
|
for j:=1 to length(EngLet) do begin |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
||||||||||
проге...”. Запусти свое творение (если перед |
enter и других, нажимать не надо); теперь |
|
if EngLet[j]=Form1.Edit1.Text[i] then |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
КОНСТРУКТОР |
|
|
|
>СПЕЦВЫПУСК #4 |
001F |
31 |
|
|
|
|
|
|
break; |
|
полученную |
|
строку вписываем во |
|
вторую |
for i:=1 to length(Form1.Edit1.Text) |
|
|
do |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
end; |
|
строку ввода - в свойство Text компоненты |
begin |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
Result := Concat( Result, RusLet[j] ) |
Edit1 на форме Form1, во как. |
Flag:=0; |
|
|
|
|
|
|||||
|
|
|
|
end; |
|
|
|
|
|
|
for j:=1 to length(EngLet) do begin |
|
|
|
||
|
|
|
|
Form1.Edit2.Text := Result; |
Кидалово |
|
|
if EngLet[j]=Form1.Edit1.Text[i] |
then |
|
|
|||||
|
|
|
|
|
|
|||||||||||
|
|
|
|
end; |
|
|
|
|
|
|
begin |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
Догадайся, где я тебя только что кинул!.. До- |
Flag:=666; |
|
|
|
||||||
|
|
|
|
Попробую объяснить, что все это значит. |
гадался? Нет! |
break; |
|
|
|
|||||||
|
|
|
|
После слова var Дельфа ищет объявление пе- |
|
|
|
|
|
end; |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
ременных, как после const она ищет констан- |
Правильный ответ такой (запусти прогу и |
end; |
|
|
|
|||||||
|
|
|
ты. Мы с тобой хотим три целых переменных |
проверь): если ввести “Dj,kf” то прога выдаст |
if Flag=666 then Result := Concat( |
|
|
|||||||||
|
|
|
|
|||||||||||||
|
|
|
|
(integer) и одну строковую (string) - так и пи- |
“Вобла”, а если ввести “Dj,kf b gbdj”, то она |
Result, RusLet[j] ) |
||||||||||
|
|
|
|
|||||||||||||
|
|
|
|
шем, и указываем имена. Что делается в те- |
ответит |
|
снова “Вобла”, а “gbdj” (пиво) |
|
îíà |
else Result := Concat( |
|
Result, |
|
|
||
|
|
|
|
ле этой процедуры: берем первую букву вве- |
зажмет и |
|
не отдаст. |
|
|
Form1.Edit1.Text[i] ); |
|
|
|
|
|
|
|
|
|
|
денной строки, пусть ввели “Rthlsr”, значит |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
первая буква “R”, ищем ее в строке EngLet, |
- Почему, |
|
нехороший человек, ты меня |
|
опять |
end; |
|
|
|
|
|
|
|
|
запоминаем, какой по счету она стоит там, и |
кинул? - |
|
вежливо, не ругаясь, спросишь |
|
ìåíÿ |
Запусти и убедись, теперь прога |
|
работает |
|
|
||||
|
|
|
|
|
|
|
||||||||||
|
|
|
|
берем символ из строки RusLet с таким же |
òû. |
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|||||||||||
|
|
номером: |
можешь |
|
|
|
|
|
верно. |
|
|
|
|
|
|
|
|
сам посмотреть там, |
Сложно? Не |
очень. А |
главное |
Чтобы прога стала |
|
перево- |
|
|||||||||||
|
|
||||||||||||||||||||
|
|
|
где ты объявил кон- |
- результат: |
òû êðóò! |
Ó òåáÿ |
|
|
|||||||||||||
станты |
|
EngLet è |
дить с русского |
неправиль- |
|
||||||||||||||||
|
|
|
RusLet - |
|
ïîä |
буквой |
есть настоящая грамотная |
ного на английский |
ïðà- |
|
|||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
“R” написана |
буква |
серьезная прога. Можешь |
|
вильный, скопируй |
âñå, ÷òî |
|
||||||||||||
|
|
|
“К”, запомним ее, те- |
|
находится |
между |
апостро- |
|
|||||||||||||
|
|
|
выкладывать это файло на |
|
|||||||||||||||||
|
|
|
ïåðü èùåì |
вторую |
фами в объявлении |
строки |
|
||||||||||||||
|
|
|
|||||||||||||||||||
|
|
|
букву - “t”, находим |
своем сайте и хвастать |
|
EngLet, è |
помести |
перед |
|
||||||||||||
|
|
|
“и” и так далее, полу- |
всем, что ты теперь |
|
|
|
закрывающим апострофом |
|
||||||||||||
|
|
|
чаем “Кирдык”. |
|
|
|
|
|
|
|
|
â |
объявлении |
строки |
|
||||||
|
|
|
|
|
|
|
|
программер, а не просто |
|
RusLet и наоборот (если бы |
|
||||||||||
|
|
Найденные |
символы |
кул-хацкер. Удачи тебе, и, на- |
строки |
áûëè |
такими: |
|
|||||||||||||
|
|||||||||||||||||||||
|
мы будем |
сохранять |
деюсь, эта прога не будет |
EngLet - ‘QWE’, à RusLet - |
|
||||||||||||||||
|
|
|
в переменную Result, |
‘ЙЦУ’, то после этих опера- |
|
||||||||||||||||
|
|
|
поэтому |
äëÿ |
начала |
для тебя последней :). |
|
ций получилось бы: EngLet |
|
||||||||||||
|
присвоим |
åé |
пустую |
|
|
|
|
|
|
|
|
- |
‘QWEÉÖÓ’, à |
|
|
|
|||||
|
|
|
строку. Теперь берем цикл for от первой до |
- А чтобы ты внимательнее относился потом к |
‘ÉÖÓQWE’). |
|
|
|
|
|
|
||||||||||
|
последней буквы введенной строки (она хра- |
написанию кода, потому что, чтобы найти |
|
|
|
|
|
|
|
||||||||||||
|
|
|
нится в свойстве Text компоненты Edit1, а |
ошибку, нужно гораздо больше времени, чем |
Теперь мелочи: свойство BorderStyle |
|
|||||||||||||||
|
|
|
функция length возвращает нам длину вве- |
на то, чтобы написать здоровенную прогу |
Form1 можно |
поставить равным |
|
|
|
||||||||||||
|
|
|
денной в нее строки - для рассмотренного |
всего с одной этой ошибкой, - отвечу тебе я. |
чтобы основную панель нельзя было |
|
|||||||||||||||
|
|||||||||||||||||||||
|
примера она вернет 6, и цикл будет испол- |
|
|
|
|
|
|
нуть. А в свойстве Icon можно |
|
|
|
||||||||||
|
|
|
няться от одного до шести). Еще один цикл |
Секрет в том, что когда мы во втором цикле |
дартную иконку Дельфей в левом |
|
|
|
|||||||||||||
|
|
|
for - начиная с первого символа, просматри- |
ищем в строке EngLet символ “пробел”, мы |
лу главной панели на любую другую. |
|
|||||||||||||||
|
|
|
ваем строку EngLet до конца (length(EngLet) и |
его там не находим, огорчаемся и добавляем |
|
|
|
|
|
|
|
||||||||||
|
|
|
проверяем оператором if, не совпадают ли та |
â |
переменную |
Result |
символ |
EXE-файл своей проги ты найдешь на |
|
||||||||||||
|
|
|
|||||||||||||||||||
|
|
|
буква, которую мы сейчас ищем |
RusLet[length(Englett)+1], а это за пределами |
той директории, куда ты сейвил |
|
|
|
|||||||||||||
|
|
|
(Form1.Edit1.Text[i]), и та, на которую сейчас |
нашей строки, и там лежит какая-то лажа. |
Вот такие пироги |
|
|
|
|
||||||||||||
|
|
|
указывает счетчик j внутреннего цикла (а он |
Поэтому поступим так - введем специальную |
|
|
|
|
|||||||||||||
|
|
|
|
|
|
||||||||||||||||
|
|
|
указывает на EngLet[j]); если совпадают - то |
переменную Flag - флажок, который мы бу- |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
выскакиваем из цикла при помощи оператора |
дем по умолчанию поднимать, а опускать - |
Сложно? Не очень. А главное - |
|
|
|
|||||||||||||
|
|
|
break, кричим во все горло “Rulezz!” и добав- |
если нашли нужный символ в строке EngLet. |
крут! У тебя есть настоящая |
|
|
|
|||||||||||||
|
|
|
ляем найденную буковь (RusLet[i]) к строке |
Потом если он окажется все еще поднятым |
серьезная прога. Можешь |
|
|
|
|
||||||||||||
|
|
|
Result при помощи функции Concat (она бе- |
после окончания цикла, мы будем добавлять |
файло на своем сайте и хвастать |
|
|
|
|||||||||||||
|
|
|
|
|
|
||||||||||||||||
|
рет две строки, приписывает к концу первой |
в Result не из RusLet[i], а прямо из |
теперь программер, а не просто кул- |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
вторую и возвращает полученную строку. До- |
Form1.Edit1.Text[i] - то есть, в нашем случае, |
Удачи тебе, и, надеюсь, эта прога |
|
|
|
|||||||||||||
|
|
|
гадайся, что вернет эта функция, если ее |
добавлять пробел там, где надо. |
|
|
для тебя последней :). |
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
вызвать так: Concat( “Fu”, “ck off!” ) ). Вот и |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
все, а после того, как циклы завершатся, мы |
Итак, исправь эту часть процедуры вот |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
0020 |
ЗАКРОМА РОДИНЫ |
>СПЕЦВЫПУСК #4 |
||
ПРОГРАММИС |
|||||
РЕСУРСЫ В |
|||||
Horrific (smirnandr@mail.ru) |
|
||||
Êîìó áû |
|
WWW.TORRY.RU |
жешь их выложить здесь. Будь уверен, твою |
||
жаловаться на |
|
работу обязательно заметят. Если ты слишком |
|||
Я решил начать именно с этой странички. Хотя |
жадный, чтобы даром отдавать кому-нибудь |
||||
недостаток |
|||||
нет, страничкой это не назовешь - это просто |
свой труд, то можешь назначить цену. И если |
||||
èíôû - òàê |
чемодан какой-то. Чемодан информации. Если |
твоя работа действительно стоящая, то ты |
|||
только не |
|
ты пишешь свои проги на Delphi, то этот УРЛ - |
сможешь прожить беззаботную жизнь - прав- |
||
|
твой. Тут расположено громадное количество |
да, недолгую :). |
|||
программерам. |
|||||
компонентов, примеров, вспомогательных |
|
||||
Äëÿ íèõ â |
|
прог, документации, книг и куча всякой всячи- |
Очень сильно радует большое количество фри- |
||
сетке просто |
ны. И создал это чудо природы Maxim Peresada. |
варных софтин, которые могут помочь в нелег- |
|||
Хотя, по моим сведениям, он русский, я все же |
ком труде кодинга. Хотя некоторые из них боль- |
||||
море докумен- |
|||||
написал его фамилию как она есть в оригинале |
шие - хрен сольешь. Эту проблему можно ре- |
||||
тов, исходни- |
на сайте, чтобы не обидеть человека. |
шить с помощью громадного количества зер- |
|||
ков, компонен- |
|
кал, подобрав наиболее быстрое из них. НО! |
|||
|
Самое, пожалуй, грустное для всех нас: несмот- |
||||
тов и другой |
|
ря на российский адрес странички, все здесь на |
|||
ерунды. А если |
|
английском. Так что убирай свою улыбку и за- |
|||
|
пасайся англо-русским словарем. |
||||
говорить о |
|
||||
|
|
||||
начинающих - |
|
Чтобы не заканчивать на такой страшной ноте, |
|||
ооо... Каждая |
|
я еще раз похвалю www.torry.ru. Здесь есть |
|||
|
очень важный и очень полезный для нас раздел |
||||
вторая |
|
|
|||
|
|
- Humor. Сей хумор тоже на английском, но я |
|||
страничка |
|
|
всем советую почитать этот раздел. Вот нес- |
||
пытается обя- |
|
колько хуморин в русском переводе и моей ин- |
|||
|
терпретации: |
||||
зательно нау- |
|
||||
У сайта не очень яркий и не очень привлека- |
1. Корпорация Microsoft и Boeing Corp. рады |
||||
чить очередно- |
тельный дизайн, зато навигация достаточно |
||||
го ламера уму- |
удобная, за нее - 5 баллов :). |
сообщить о месяце совместной программы. Вы |
|||
|
можете бесплатно пролететь на Boeing 797 бет- |
||||
разуму. |
|
Очень важно, как мне кажется, и регулярное об- |
òà. Æäåì âàñ!!! |
||
Ó ìåíÿ çà 10 |
новление. Сайт обновляется не реже чем каж- |
|
|||
дую неделю, и количество информации очень |
2. Чем отличается женщина и Windows 95? Ни- |
||||
лет програм- |
|||||
быстро растет. Все новое можно легко найти в |
чем. Обе они обладают способностью вешать |
||||
мерского ста- |
специально отведенном разделе, и не надо ко- |
на вас тонны бесполезной информации и триж- |
|||
жа собралось |
пошиться среди бабушкиного белья. |
ды просить подтверждения очевидных вещей. |
|||
|
|
||||
громадное ко- |
Приличное количество доступных компонентов. |
3. Один ламер говорит другому: Вчера я вклю- |
|||
личество ссы- |
Все очень удачно разложено по разделам. С |
чил свой компьютер, и запустился Norton. |
|||
лок любого |
другой стороны, поисковой системы на сайте |
Смотрю, а у меня на левой панели диск С:\ и на |
|||
просто нет. Иногда бывает сложно сразу же |
правой панели диск С:\. Я подумал, зачем мне |
||||
направления и |
|||||
найти определенный файл, приходится беско- |
два одинаковых диска С:\? Взял и с одного из |
||||
ориентации. |
нечно ковыряться в этих самых удобных разде- |
них все удалил. |
|||
Хочешь, я |
|
лах. Maxim, правда, обещает исправить эту си- |
|
||
|
туацию в ближайшее время. |
4. Жена и муж (оба программисты) лежат в пос- |
|||
поделюсь |
|
|
òåëè: |
||
с тобой? |
|
Если ты - программер со стажем, и у тебя ес- |
Она: Вы хотите повторить процедуру? |
||
|
ть свои наработки в виде компонентов, то мо- |
Он: Функция не возвратила значение... |
|||
|
|
|
|
|
ЗАКРОМА РОДИНЫ |
|
|
|
>СПЕЦВЫПУСК #4 |
0021 |
33 |
|
|
ТСКИЕ
ÑÅÒÈ
|
|
|
VR ONLINE |
бовать от одного человека, да еще и без спон- |
что это похоже на фантастику о бедном хаке- |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
соров. |
ре и его друзьях. Не сказал бы, что бомба, но |
|||
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
http://www.crosswinds.net/~vrmag/ |
|
мне показалось интересным. Я его распечатал |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
Сейчас на страничке доступны 3 номера жур- |
и сейчас читаю в свободное время. Не буду |
|||
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
Следующий неплохой ресурс. Он будет очень |
нала. Мне удалось связаться с разработчиком |
больше ничего говорить. Если захочешь, то |
||||||||||
|
|
|
полезен программистам все того же Delphi, |
(скажу сразу, что он единственный, кто быс- |
сможешь сам все увидеть. |
||||||||||
|
|
|
хотя и все остальные здесь найдут полезную |
тро ответил на мой запрос), и он меня уверил, |
ROMKA GRAPHICS. |
||||||||||
|
|
|
инфу. Все пишется так, чтобы понимали прог- |
что уже готов августовский номер, и мы его |
|||||||||||
|
|
|
раммеры любых отклонений (особенно люби- |
увидим позже, потому что есть какие-то проб- |
|
|
|
|
|||||||
|
òåëè Ñ). |
|
|
|
|
|
|
лемы с закачкой. Поверим ему на слово, но... |
http://www.math.ut.ee/~romka/index_rus.htm |
||||||
|
В отличие от предыдущей странички, дизайн |
если обманет, то будет иметь дело со мной :). |
Эта страничка посвящена программированию |
||||||||||||
|
|
||||||||||||||
|
|
|
мне понравился. Нельзя сказать, что отлич- |
На данный момент в этом журнале описы- |
на OpenGL. Первый взгляд говорит, что сайт |
||||||||||
|
|
|
|||||||||||||
|
|
|
ный, но и не скажешь, что плохой. Неплохая |
ваются следующие темы: |
только начинает строиться. Информации не |
||||||||||
|
|
|
навигация, все быстро грузится, а самое глав- |
|
так уж и много, но она очень интересная и |
||||||||||
|
|
|
íîå |
- никаких баннеров и рекламы. Хотя нас- |
1. Программирование на Delphi (общие сведе- |
очень полезная. Сейчас здесь очень много |
|||||||||
|
|
|
|||||||||||||
|
|
|
÷åò |
рекламы я поторопился: хозяин ищет |
ния и использование графики). |
проблем, но будущее у странички есть. |
|||||||||
|
|
|
спонсоров, и, вполне возможно, он их найдет, |
2. Программирование в Internet или в локаль- |
|
|
|
|
|||||||
|
|
|
потому что его работа стоящая. |
íîé ñåòè. |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
3. Программирование момедов. Эта тема бу- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
дет полезна не только программистам, но и |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
юзерам. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4. ßçûê SQL. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5. Уроки программирования на OpenGL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6. Для создателей игр - DirectX. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Самая интересная для нас статья находится в |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
июльском номере - “Воровство паролей”. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Здесь рассказывается, как без проблем напи- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
сать прогу, которая вытащит тебе все пароли, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
даже если они не сохранены в pwl-файлах. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Немного оторвусь и расскажу, как это рабо- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
тает. Окна пользовательского размера (95/98 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
и даже старые NT) при старте загружают в па- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
мять все пароли и держат их там. Если поль- |
Так уж получилось, что мне придется |
больше |
|
|
|
|
|
|
|
|
|
|
|
|
|
зователь ввел еще один пароль, то он тоже |
ругать Ромку, чем хвалить. Но все же |
ÿ ñîâå- |
|
|
|
|
|
Âñÿ |
информация здесь выполнена в виде жур- |
остается в памяти, пока компьютер не перег- |
тую тебе сюда заглянуть, особенно |
åñëè òû |
|
|
||||||
|
|
|
|
||||||||||||
|
|
|
нала. Это и преимущество, и недостаток. |
рузят. В этой статье показаны недокументиро- |
собираешься заняться 3D графикой с |
исполь- |
|
||||||||
|
|
|
|||||||||||||
|
|
|
Преимущество в том, что любая инфа сопро- |
ванные функции, которые позволяют выта- |
зованием OpenGL. Правда, как это ни пара- |
|
|
||||||||
|
|
|
|
||||||||||||
|
|
|
вождается комментариями и пояснениями, |
щить из кэша эти пароли. |
доксально, и дизигн, и графика на паге здоро- |
|
|||||||||
|
|
|
что очень полезно для программеров других |
|
во хромают. |
|
|||||||||
|
|
|
языков (отличных от Delphi) и самое главное - |
Если у кого возникнут проблемы с написанием |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ламеров :). Это хорошо, что здесь не забы- |
кода, то он может скачать себе исходники в |
Вся информация достаточно доступна для |
||||||||||
|
|
|
вают про чайников. Если ты решил заняться |
архиве. В каждой статье есть ссылка на гото- |
программеров с небольшим стажем. Если ты |
||||||||||
|
|
|
программированием и ничего в этом не ру- |
вые исходники. Так что, если у тебя генети- |
начинающий, то сначала посети “VR online” и |
||||||||||
|
|
|
бишь, то здесь тебя научат. |
ческая ошибка в ДНК, то скачай себе все ис- |
только потом иди сюда, чтобы повысить свой |
||||||||||
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
ходники и не мучай клаву :). |
экспириенс. Исходные тексты демок написаны |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Недостаток оформления в виде журнала - это |
И напоследок: на все три выложенных на сай- |
на С. Они очень просты и понятны, если |
||||||||||
|
|
|
то, что очередного обновления приходится |
имеешь какие-нибудь начальные знания языка |
|||||||||||
|
|
|
ждать целый месяц :). Желательно, чтобы |
те номера разбит рассказ неизвестного авто- |
С и OpenGL. А вот без базовых знаний тут ло- |
||||||||||
|
|
|
журнал выходил почаще, но такое трудно тре- |
ра - “Dark Horror”. Мой острый глаз говорит, |
вить нечего :(. |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
0022 |
ЗАКРОМА РОДИНЫ |
|
|
>СПЕЦВЫПУСК #4 |
|
|
||||||
|
|
|
|
|
|
|
INTERFACE LTD.
http://www.interface.ru/interf.htm
На очереди теоретический сайт. Здесь полно информации, касающейся не только программистов, но и руководителей, администраторов и остальной компьютерной элиты. Сюда необходимо заглядывать за новостями. Программист, как никто другой, должен знать обо всех нововведениях.
полно инфы для сетевых и Web-программеров. Я тебе даю ссылку на библиотеку этого клуба. Сюда стоит захаживать за доками на любую программерскую тему.
на его любимом языке. Я очень часто здесь бываю, чтобы скачать очередную порцию примеров или документации.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Зайдя сюда, ты наткнешься на самую |
ужасную |
|
||||
|
|
|
|
|
|
Теперь разберем все по косточкам. Как всегда, |
|
||||||||||||||
|
|
|
|
|
начнем с дизайна. Он достаточно хорош - мо- |
|
навигацию, которую |
только можно себе |
ïðåä- |
|
|
|
|||||||||
|
|
|
|
|
|
жет быть, один из лучших среди подобных сай- |
ставить. Хозяева зачем-то выложили на |
главную |
|
||||||||||||
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
тов. Навигация тоже в поряде. Каждый раз, ког- |
страницу новости во весь экран и кучу |
ненуж- |
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
да я сюда захожу, складывается такое впечатле- |
ной ерунды. Сразу заметно, что проект |
ведет |
|
|
|
|
|||||||||
|
|
|
|
|
|
ние, что я здесь родился :). |
женщина :). Если хочешь избавиться от |
некото- |
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
рых проблем с навигацией, то начинай |
ñâîå ïó- |
|
|
|
|
|
|
|
|
|
|
|
Теперь по поводу инфы. Ее здесь полно, и она, |
тешествие с карты сайта http://delphi.vi- |
|
|
||||||||||||
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
в основном, теоретическая. Если ты захотел |
tpc.com/asp/catalog.asp. Леночке (она ведет |
||||||||||||||
|
Êàê è |
большинство |
|
сайтов компьютерной тема- |
|
познакомиться с языком программирования, |
этот проект) уже давно пора сделать карту на- |
|
|
||||||||||||
|
òèêè, |
эти страницы |
страдают плохим дизайном. |
|
используемым в Интернете, то твоя дорога ле- |
чальной страничкой и добавить к ней новости. |
|
|
|||||||||||||
|
Такое |
ощущение, что |
программеры - это не лю- |
|
жит сюда. Здесь есть инфа по языкам размет- |
Главное - все это сделать аккуратно. А я поста- |
|||||||||||||||
|
ди. Да и не сможешь |
ты здесь найти конкрет- |
|
ки, языкам программирования в сети и Web, |
раюсь дать тебе как можно больше прямых ссы- |
|
|||||||||||||||
|
|
||||||||||||||||||||
|
ную инфу по программированию - зато смо- |
|
серверам (установка, настройка и прочая ерун- |
лок, чтобы ты не заблудился. |
|||||||||||||||||
|
жешь найти достаточно много интересного о |
да), безопасности, протоколам, различным тех- |
|
|
|
|
|
|
|
|
|||||||||||
|
технологиях. Хорошо развиты ссылки на допол- |
|
нологиям и куча другой ерунды. Все очень хо- |
http://delphi.vitpc.com/table/search.asp - здесь |
|
||||||||||||||||
|
нительные источники, поэтому можно легко по- |
рошо разбито по разделам. |
|
|
|
|
|
|
|
находится поиск по круглому столу (по-нашему |
|||||||||||
|
полнить чемодан знаний из других источников. |
|
|
|
|
|
|
|
|
|
|
ýòî FAQ). http://delphi.vitpc.com/treasury/se- |
|||||||||
|
А самое главное здесь - это раздел “трудоус- |
|
Очень часто выложенные здесь доки страдают |
arch.asp - здесь находится поиск по сокровищ- |
|||||||||||||||||
|
тройство”. Он состоит из двух подразделов: |
недоеданием. В них описано все поверхностно |
|
нице (библиотека). |
|
|
|
|
|
|
|||||||||||
|
“биржа труда IT-специалистов” и “Наши вакан- |
|
или они просто неполные. Но попадаются и |
|
|
|
|
|
|
|
|||||||||||
|
сии”. Список предлагаемых здесь работ доста- |
|
очень хорошие материалы, в которых ты най- |
Некоторые из статей написаны плохим языком |
|||||||||||||||||
|
точно большой. Хорошо устроен поиск интере- |
|
дешь все, что тебе может понадобится. |
и очень тяжело перевариваются в желудке. Бы- |
|||||||||||||||||
|
сующей вакансии. С помощью фильтра ты мо- |
|
|
|
|
|
|
|
|
|
|
вает даже, что застревают в горле, поэтому для |
|||||||||
|
жешь выделить только те вакансии, которые те- |
|
Здесь же ты можешь попробовать найти себе |
понимания нужны достаточно хорошие знания |
|
||||||||||||||||
|
бе подходят. Работу здесь может найти не толь- |
|
работу. Для этого рискни посетить раздел “бир- |
языка. Хорошо, что такие статьи попадаются |
|||||||||||||||||
ко программер, но и админ, и даже наш брат - |
|
жа труда”. Люблю, когда предлагают денежку |
редко. |
|
|
|
|
|
|
||||||||||||
|
хакер (как эксперт по безопасности, железу или |
|
не отходя от кассы :). |
|
|
|
|
|
|
|
|||||||||||
|
софту). Предлагаемая на сервере работа ка- |
|
|
|
|
|
|
|
|
|
|
Итак, этот ресурс подходит для программеров |
|||||||||
|
сается в основном жителей Москвы. Я не так уж |
|
Несмотря на маленькие недостатки, этот сайт |
со стажем или для начинающих - как FAQ. Прав- |
|
||||||||||||||||
|
|
||||||||||||||||||||
и много просмотрел вакансий, но все они каса- |
|
смотрится очень красиво и аккуратно (так и хо- |
да, если ты совсем чайник, то научиться здесь |
||||||||||||||||||
|
лись нашей любимой столицы. |
|
чется нагадить). Так что заходи сюда, чтобы уз- |
будет тяжело. |
|||||||||||||||||
|
|
|
|
|
|
нать о технологиях, используемых в сетке, и о |
CIT Forum |
||||||||||||||
|
Советую тебе этот сервак как новостной, как |
|
программировании всего, что с этим связано. |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
источник инфы о технологиях и для поиска ра- |
|
КОРОЛЕВСТВО DELPHI |
|
|
|
|
|
|
|
|||||||||||
áîòû. |
|
|
|
http://www.citforum.ru/ |
|||||||||||||||||
|
БИБЛИОТЕКА WEBCLUB |
|
http://delphi.vitpc.com/ |
Как написано в заголовке, эта страничка хранит |
|
||||||||||||||||
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
в себе “Море аналитической информации”. Я |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
http://www.webclub.ru/library/index.html |
|
Следующая страничка будет полезна только |
бы немного поправил авторов - здесь целый |
|||||||||||||||||
|
|
|
|
|
|
программерам, использующим Delphi. Владе- |
океан. Эта библиотека хранит в себе инфу на |
|
|
|
|
||||||||||
|
Следующий проект называет себя “Российский |
|
лец пытается собрать здесь все, что хоть ка- |
все возможные программерские или околоп- |
|
|
|
|
|||||||||||||
|
клуб веб-мастеров”, и здесь действительно |
|
ким-нибудь боком касается программирования |
риблудные темы. Здесь описываются различ- |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ЗАКРОМА РОДИНЫ |
|
|
|
>СПЕЦВЫПУСК #4 |
0023 |
35 |
|
|
|
ные технологии, операционные системы, базы |
|
|
|
|
|
|
|
|
|
|
|
примитивного программирования, я до сих |
ïîð |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
данных, языки программирования (в основном |
|
|
|
|
|
|
|
|
|
|
не знаю ничего. Книгу мне покупать в лом, |
à â |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
разновидности С) и многое другое. Практичес- |
|
|
|
|
|
|
|
|
|
|
|
Инете “жавабль” - единственный достойный |
ðå- |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
ки все доки оформлены как книги и могут по- |
|
|
|
|
|
|
|
|
|
|
ñóðñ. |
|
|
|
|
|
|||||||
|
|
|
|
|
|
мочь как начинающим, так и мегабрейнам. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Если ты хочешь программить Яву, то заходи |
ñþ- |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
да. Может быть, мы когда-нибудь с тобой здесь |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
столкнемся. |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
КЛУБ ЛЮБИТЕЛЕЙ С |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
http://www.cppclub.newmail.ru |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
Отдельные |
|
- очень даже хороши. Если очень за- |
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
хочешь, то сможешь найти даже доки на ук- |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
раинском. |
|
Этого и следовало ожидать, |
âåäü |
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
страничка |
|
находится в Хохляндии. Если у |
òåáÿ ñ |
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
чувством |
|
юмора все в порядке, то обязательно |
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
скачай себе пару таких книженций. Очень даже |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
интересно почитать инфу на этом языке - раз- |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
Странички сайта грузятся практически момен- |
дел “хумор” этому сайту просто не нужен :). |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
тально из-за минимального использования гра- |
Жаль, таких книг мало - в основном все написа- |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
фики. Вся информация очень удобно разложе- |
ны русским |
|
и понятным нам языком. Да, |
åùå: |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
на по разделам, и если что-то надо найти, то |
|
|
очень |
|
|
советую |
заглянуть |
â |
|
раздел |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
это не составит особого труда. Разработчики |
Security&Hack. Здесь есть немного полезной |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
сделали |
даже поиск по серверу, хотя я им ни |
(хотя и устаревшей местами) инфы. |
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
ðàçó íå |
пользовался. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вроде все, больше ничего интересного на этом |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
Почти все доки, выложенные здесь, пытаются |
сайте нет. Двигаем дальше. |
|
|
|
|
Я расскажу о нем очень коротко. Новости здесь |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
научить программированию даже закоренелого |
JAVABLE |
|
|
|
|
|
можно не читать, толку от них мало. В раздел |
|
|
|||||||||
|
|
|
|
|
|
ламера. Хотя ни одному документу не удается |
|
|
|
|
|
“Книги” ты тоже можешь не торопиться. Ничего |
|
|
||||||||||
|
|
|
|
|
|
все разложить по полочкам, как это сделано в |
|
|
|
|
|
|
|
|
|
скачать здесь не дадут. Здесь просто полно от- |
|
|
||||||
|
|
|
|
|
|
VR Online. Если у тебя нет генетической ошибки |
http://www.javable.com |
|
|
|
сканенных титулов продажных книжечек, зай- |
|
|
|
||||||||||
|
|
|
|
|
|
в ДНК, то ты сможешь запросто научиться ко- |
|
|
|
|
|
|
|
|
|
дешь сюда - сможешь только полюбоваться об- |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
дингу на этих доках :). Правда, ты сильно рас- |
Теперь я хочу познакомить тебя с ссылкой на |
|
ложками и, в лучшем случае, прочитать аннота- |
|
|
|||||||||||||
|
|
|
|
|
|
строишься, когда отыщешь интересующую тебя |
сервер Java-программеров. Такой крутой до- |
|
öèþ. |
|
|
|||||||||||||
|
|
|
|
|
|
доку, потому что ее нельзя скачать себе на винт |
мен, а все страницы еще и доступны на англий- |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
и почитать в off-line. Все книги разбиты на час- |
ñêîì, |
испанском, |
французском, |
|
немецком, |
|
Но, несмотря на все это, здесь можно набрать- |
|
|
|||||||||
|
|
|
|
|
|
ти и занимают по несколько страниц - сие удоб- |
итальянском и моем любимом русском языке :). |
|
ся хороших знаний, особенно в разделах “Фо- |
|
|
|||||||||||||
|
|
|
|
|
|
но для загрузки и чтения, но не удобно для сох- |
|
|
|
|
|
|
|
|
|
рум” и “Феньки”. На этом сайте, в основном, |
|
|
||||||
|
|
|
|
|
|
ранения. Из-за этого приходится лазать по раз- |
|
|
|
|
|
|
|
|
|
общаются между собой достаточно хорошо по- |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
делам и сохранять или печатать кучу страниц, и |
|
|
|
|
|
|
|
|
|
нимающие свое дело кодеры. Хотя иногда по- |
|
|
||||||
|
|
|
|
|
|
только потом все соединять в одну доку. |
|
|
|
|
|
|
|
|
|
падаются глупые вопросы и такие же глупые от- |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
âåòû. |
|
|
|
|
|
|
|
|
|
|
|
|
Для того чтобы узнавать новости сервера, есть |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
список рассылки, на который ты можешь под- |
|
|
|
|
|
|
|
|
|
Очень интересен раздел “Проекты”. Если ты |
|
|
||||||
|
|
|
|
|
|
писаться. |
|
|
|
|
|
|
|
|
|
уже немного знаешь С/С++, то обязательно по- |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
сети. Здесь куча классных примеров. Возмож- |
|
|
|||
|
|
|
|
|
|
INFOCITY |
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
но, что ты подхватишь что-то новое :). |
|
|
|||||||
|
|
|
|
|
|
http://infocity.kiev.ua/main.html |
|
|
|
|
|
|
|
|
|
Самый лучший ресурс для программера |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Следующий сайт расположен на Украине. Нес- |
|
|
|
|
|
|
|
|
Я долго выбирал самый лучший из всех воз- |
|
|
|
||||||
|
|
|
|
|
|
мотря на свое происхождение и поголовный пе- |
Достаточно |
|
хороший и удобный ресурс |
äëÿ |
|
можных ресурсов и пришел к выводу - это ФИ- |
||||||||||||
|
|
|
|
|
|
реход украинцев на свой родной язык, странич- |
программеров, которые выбрали для себя тех- |
|
ДО. Его главные достоинства - здесь редко оби- |
|||||||||||||||
|
|
|
|
|
|
ка выполнена на русском. Здесь полно инфы |
нологию Java. Если ты один из них, то заходи - |
|
жают ламеров, а чаще помогают; есть спе- |
|||||||||||||||
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
для программера, администратора, хакера и, |
не пожалеешь. Тут можно найти громадное ко- |
|
циальные конференции, в которых обмени- |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
самое главное, - чайника :). |
|
|
личество доков, факов и просто инфы по этой |
|
ваются исходниками. Ну а самое главное - сеть |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
технологии. Правда, большинство доков тут на |
|
бесплатна (хотя плата есть - это пиво :)). |
||||||||||||
|
|
|
|
|
|
С этой паги качай все подряд и читай в off-line - |
английском. Точнее сказать, почти все. Я давно |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
благо, почти все доки зипованные. |
|
|
уже пытаюсь заняться Java, но, кроме основ и |
|
Подключайся к самым-самым! |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
0024 |
ТЕОРИЯ |
|
|
>СПЕЦВЫПУСК #4 |
|
ЯЗЫКИ ПРОГР ОБЗОР-ЛИКБЕ
The Hound Of Winter (thow@ireland.com)
Краткий список языков в хронологическом порядке по времени их создания:
(Как видно из списка, “áóì” по созданию языков произошел в 60-х/70-х годах. В то время стремительно развивались аппаратные возможности компьютеров, появились персоналки и, соответственно, стали появляться частные
разработки языков программирования, которые потом стали пользоваться всеобщей популярностью.)
19xx BCPL |
196x |
BugSys |
|
19xx IPL |
196x |
Algol & GAMS |
|
19xx |
A.Pa.Re.L. |
196x |
LISP |
19xx Clipper |
196x |
Pascal |
|
194x |
Plan.Calcul |
196x |
Algol Ext. |
1949 |
Краткий код |
196x |
Movie |
1952 |
AutoCode |
196x |
Snobol |
1953 |
SpeedCoding |
196x |
Scaner |
1954 |
Dart |
196x |
POPlestone |
1956 |
Flow-matic |
1970 |
Forth |
1957 |
APT |
1972 |
C |
1958 |
Algol-58 |
1972 |
L.d’I de S. |
1959 |
FACT |
1972 |
Prolog |
195x |
Fortran |
1976 |
Эльбрус-76 |
195x |
Math-matic |
1979 |
Ada |
1960 |
Algol-60 |
197x |
L.S.d’E. |
1962 |
APL |
197x |
SmallTalk |
1964 |
Альфа |
1985 |
BASIC True |
1964 |
PL/1 |
1986 |
SGML |
1964 |
BASIC |
1987 |
Oberon |
1967 |
LOGO |
1988 |
A.W.K. |
1967 |
Simula |
198x |
C++ |
1968 |
Аналитик-68 |
1992 |
Oberon-2 |
1968 |
Algol-68 |
199x |
Perl |
196õ COBOL |
199x |
Python |
|
|
ТЕОРИЯ |
|
|
|
>СПЕЦВЫПУСК #4 |
0025 |
37 |
|
|
АММИРОВАНИЯ. З.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ç |
ачастую человек, который хочет нау- |
ле. Как говорит мой знакомый: “Халявы |
íà õà- |
Дело было давно |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
||||
|
|
|
|
|
читься программировать, не может |
ляву не бывает”. И он абсолютно прав. ;-) Что- |
|
|
|
|
|
|
|
|
|
выбрать, с какого именно языка ему |
бы иметь халяву, нужно учиться ее иметь! ;-) |
На данный момент языков программирования |
|
||
|
|
|
|
|
стоит начать обучение. Он мечется в |
Нельзя стать крутым программистом а-ля Ро- |
насчитывается наверняка уже гораздо больше |
|||
|
|
|
поисках |
простого и понятного, но практически |
меро (который есть автор DOOM’а и еще пары |
сотни. Полный их список с короткими коммента- |
|
|||
|
|
|
|
|||||||
|
|
|
везде |
наталкивается на почти непреодолимую |
знаменитых игровых движков от ID Software) |
риями можно было бы напечатать брошюрой, |
||||
|
|
|
|
для непосвященного преграду из непонятных |
просто так, “за нефиг делать” в течение неде- |
вроде мемуаров отставного полковника. Первые |
|
|||
|
|
|
терминов, классификаций, структур. И обычно |
ли. Но даже если ты учился кодингу десять |
языки программирования появились еще в се- |
|||||
|
|
|
|
самому разобраться в них не представляется |
лет, знать о нем абсолютно все тоже не полу- |
редине 40-х годов! Похоже, не удастся устано- |
||||
|
|
|
|
|
|
|
|
|
||
|
|
|
|
возможным. Так и появляются клянчащие ла- |
чится. А потому надо разобраться, какие вооб- |
вить, кто же все-таки был самым первым, но из |
||||
|
|
|
|
меры в ньюс-конференциях, которые в поис- |
ще языки программирования существуют и |
них сейчас известны забугорный “Plan.Calcul” и |
||||
|
|
|
|
ках помощи, исходят криком на продукты жиз- |
какие наиболее популярны, а какие просты в |
отечественный “Краткий код” для малых вычис- |
||||
|
|
|
|
недеятельности человека, доставая окружаю- |
освоении и легче в понимании. Поделюсь соб- |
лительных систем. Затем произошло что-то |
||||
|
|
|
|
|||||||
|
|
|
|
щих своими криками, вроде: “НаУЧИте МЕня |
ственными знаниями и опытом более шести |
вроде взрыва активности по созданию языков |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ПРАГРОМИРАВАТЬ!”. Можно попытаться по- |
лет кодинга. Принимать за правила или руко- |
автоматизации всяческих процессов, и этих са- |
||||
|
|
|
|
мочь таким людям, но в большинстве своем |
водство к действию эту статью может и не |
мых языков стало больше, чем грибов после |
||||
|
|
|
||||||||
|
|
|
|
они хотят всего и быстро, а не понемногу и |
стоит, но - информация к размышлению, как |
дождичка в четверг. Самыми первыми, конечно, |
|
|||
|
|
|
||||||||
|
|
|
||||||||
|
|
|
|
постепенно, как это происходит на самом де- |
говорят. ;-) |
были языки, программы на которых выглядели |
||||
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
38 |
0026 |
ТЕОРИЯ |
|
|
>СПЕЦВЫПУСК #4 |
|
|
||||||
|
|
|
|
|
|
|
|
“плоско”. Не было ветвлений и всяческих пере- |
программистская кутерьма началась даже не в |
ткой!) стала дочь Беббиджа - Кэтрин Беббидж. |
||||||||||||||||||||||
|
ходов. Условные переходы - это уже следующая |
этом веке (который, кстати сказать, уже прош- |
Îíà |
помогала ему |
составлять программы |
|
äëÿ |
|
|||||||||||||||||
|
ступень развития, которая принесла намного |
лый :)), а еще в ХIХ, позапрошлом веке. В тыся- |
ýòîé |
“чудо-машины”. |
А кто-то говорил, |
÷òî ó |
|
||||||||||||||||||
|
|||||||||||||||||||||||||
|
больше функциональности и позволила делать |
ча восемьсот тридцатые годы математик Чарль- |
женщины-программиста |
с программированием |
|
|
|
||||||||||||||||||
|
нечто большее, чем сложение двух-трех чисел и |
з Беббидж загорелся великолепной и (по тем |
столько же общего, |
сколько у морской свинки с |
|
||||||||||||||||||||
|
|||||||||||||||||||||||||
вычисление логарифма от двойки. Постепенно |
временам) абсолютно сумасшедшей идеей пос- |
морем. ;-) |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
новые (в то время) языки программирования |
троения “думающей” машины. Идейка еще та |
Как это делается? |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
становились все больше и больше непохожими |
была. ;-) Хотя Беббидж прекрасно понимал, в |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
друг на друга, появлялись целые направления в |
какую авантюру он втягивается, он все-таки ре- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
программировании со своими концепциями и |
шился на постройку полностью автоматического |
Однако вернемся к |
íå |
столь давним временам. |
|
|||||||||||||||||||
|
методами написания программ. Многие языки |
счетного устройства. Эта машина должна была |
Сегодня существует |
òðè |
основных принципа |
íà- |
|
|
|
||||||||||||||||
|
появлялись исключительно благодаря опера- |
выполнять одно сложение в секунду и работать |
писания программ и, |
соответственно, построе- |
|
||||||||||||||||||||
ционным системам, в сос- |
Зачастую человек, который |
|
íèÿ |
|
языков программиро |
- |
|
|
|
||||||||||||||||
|
|
|
|
|
|||||||||||||||||||||
тав которых они входили, |
|
|
вания. Самый первый |
èç |
|
||||||||||||||||||||
|
другие были очень удобны |
хочет научиться программи |
- |
|
них и старший по возрасту |
|
|
|
|||||||||||||||||
|
для написания программ |
ровать, не может выбрать, |
ñ |
- модульный принцип. Мо- |
|
||||||||||||||||||||
на конкретном аппаратном |
какого именно языка ему |
|
дульным он назван потому, |
|
|||||||||||||||||||||
обеспечении. Многие при- |
|
что каждая |
задача для |
|
|||||||||||||||||||||
|
нятые сейчас стандарты в |
стоит начать обучение. Он |
|
предстоящего |
программи- |
|
|
|
|||||||||||||||||
период с конца 60-х до на- |
мечется в поисках простого и |
|
рования разбивается на ка- |
|
|||||||||||||||||||||
|
|
||||||||||||||||||||||||
чала 70-х попросту не су- |
понятного, но практически |
|
кие-то цельные завершен- |
|
|||||||||||||||||||||
ществовали, и |
каждый |
|
ñîç- |
|
ные части. И программиро- |
|
|
|
|||||||||||||||||
давал железки |
ïî |
|
своему |
везде наталкивается на поч- |
|
вание ведется исключи- |
|||||||||||||||||||
|
образу и подобию. Без ка- |
ти непреодолимую для непос- |
|
тельно по этим частям - на- |
|||||||||||||||||||||
|
ких-либо пожеланий быть |
|
писали часть номер 1, про- |
|
|
||||||||||||||||||||
|
|
|
|
||||||||||||||||||||||
совместимым с кем-то |
вященного преграду из непо- |
|
тестировали ее, написали |
|
|
|
|||||||||||||||||||
еще. Таким образом, под |
нятных терминов, классифика- |
|
часть номер 2, протестиро- |
|
|
||||||||||||||||||||
|
каждую железяку свое |
ций, структур. И обычно само- |
|
вали ее - потом все вместе |
|
|
|
||||||||||||||||||
программное обеспечение |
|
собрали и получили прог- |
|
|
|
||||||||||||||||||||
(утилиты, драйвера, прик- |
му разобраться в них не |
|
раммный продукт. То есть |
|
|
||||||||||||||||||||
|
|
|
|||||||||||||||||||||||
ладные программы) созда- |
представляется возможным. |
|
программу в конечном ито- |
|
|
|
|||||||||||||||||||
|
валось каждый раз с нуля. |
|
ге можно представить в ви- |
|
|||||||||||||||||||||
|
Так и появляются клянчащие |
|
|
||||||||||||||||||||||
|
Происходило это, в об- |
|
де мозаики, которую снача- |
|
|||||||||||||||||||||
ùåì-òî, îò òîãî, ÷òî íå áû- |
ламеры в ньюс-конференциях, |
|
ла рисует, а потом и соби- |
|
|
|
|||||||||||||||||||
ло создано более-менее |
которые в поисках помощи |
|
рает вместе программист. |
|
|
|
|||||||||||||||||||
|
универсального языка (или |
исходят криком на продукты |
|
Большим плюсом данного |
|||||||||||||||||||||
|
нескольких языков), подхо- |
|
подхода (и, |
собственно, |
|
|
|
||||||||||||||||||
|
дящего для каждого кон- |
жизнедеятельности человека, |
|
причиной, по |
которой он |
|
|
|
|||||||||||||||||
кретного круга задач. Вот и |
доставая окружающих своими |
|
появился) является воз- |
||||||||||||||||||||||
|
вынуждены были стараться |
|
можность работы над прог- |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
криками, навроде НаУЧИте |
|
|
|
|
|
|
|
|
|
|
|
|
|||
кто во что горазд. |
|
|
|
|
“ |
|
|
|
раммой не одного (заши- |
|
|
|
|||||||||||||
|
Вскоре появился немного |
МЕня ПРАГРОМИРАВАТЬ!”. |
|
|
|
бись!) программиста, а |
|
||||||||||||||||||
|
|
|
|
нескольких или даже нес- |
|||||||||||||||||||||
|
заторможенный Си. Боль- |
|
|
|
|
|
кольких групп программис- |
||||||||||||||||||
|
шинство программ писалось на ассемблере, |
без участия человека. Наверное, первым язы- |
тов. Простых и близких примеров языков мо- |
|
|
||||||||||||||||||||
|
поскольку предпочтения |
отдавались именно |
ком программирования нужно считать язык |
дульного принципа можно набрать сколько угод- |
|||||||||||||||||||||
|
скорости выполнения программ, но Си посте- |
программирования для машины Беббиджа. Он |
íî - ýòî è Pascal, è C, Phyton è äàæå Perl ñ åãî |
|
|
||||||||||||||||||||
|
|
|
|||||||||||||||||||||||
|
пенно вытеснил ассемблер, поскольку более |
предполагал, что его машина будет складывать |
модулями *.PM. Только последние два пред- |
||||||||||||||||||||||
|
удобен для использования - ведь он все-таки |
и вычитать за одну секунду, умножать два пяти- |
ставляют собой несколько более продвинутый |
||||||||||||||||||||||
|
язык высокого уровня, более нагляден и чуть |
десятизначных числа за минуту, делить стознач- |
вариант - о них немного позже. Весь код обыч- |
||||||||||||||||||||||
|
позже вдобавок приобрел способность быть |
ное на пятидесятизначное тоже за минуту. Шус- |
но разбивается на процедуры и функции, каж- |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
легко переносимым. Последнее оказалось од- |
трая машинка ;-). Но, увы, он так и не достроил |
дая из которых делает что-то независимо от |
||||||||||||||||||||||
|
ной из главных причин популярности медленных |
машину из-за нехватки средств (к тому времени |
других. Не совсем, конечно, независимо, все- |
|
|
|
|||||||||||||||||||
|
программ на Си - их было легко устанавливать |
вся машина целиком занимала огромную комна- |
таки должна быть какая-то связь между ними. ;- |
||||||||||||||||||||||
|
на самых разных компьютерах, зачастую вообще |
ту) и рабочих. Своих денег Беббиджу не хвати- |
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
не имеющих никакой совместимости. |
ло, а никто другой не соглашался ему помочь, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
Совсем |
|
давным-давно |
потому что никто не верил в эту затею с авто- |
Обучение языкам программирования лучше на- |
||||||||||||||||||||
|
|
матической машиной. Ее даже называли “чуда- |
чинать с языков модульного принципа - он наи- |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
чеством Беббиджа”. А первым программистом |
более прост и понятен. Кроме того, он является |
|||||||||||||
|
Страшно |
|
подумать, |
|
но вся эта компьютерно- |
(и по совместительству - первой программис- |
как бы “подложкой” для остальных двух принци- |
||||||||||||||||||
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|