Предисловие

Материал из Deeptown Manual
Перейти к: навигация, поиск

В последнее время наблюдается постоянный интерес программистов к написанию собственных языков программирования. Одни видят в этом хороший способ повысить свою квалификацию, другие делают это из интереса, третьи — из желания сделать язык, отвечающий их личному пониманию того, каким же должен быть Идеальный Язык Программирования. Так или иначе, и те и другие пытаются найти компромисс между теми знаниями о языках которые были у них на момент начала работы и того что они ожидали получить в итоге.

Некоторые программисты пытаются сделать своего рода конгломерат мыслей и идей, объединив в одном языке лучшие черты нескольких других; другие же пытаются создать что-то принципиально новое, не похожее ни на один из существующих языков программирования. Иногда это удается, тогда язык может стать новым словом в программировании и в понимании самого процесса написания программы. Таким примером может послужить идея "графического" или "визуального" программирования. В этом случае программист не пишет программу в обычном понимании этого слова, а "рисует" ее, так же как художник пишет картину. Подобно тому, как художник берет краски с палитры и переносит их на холст, программист, пишущий на визуальном языке, работает с палитрой компонентов, перенося их на рабочее поле, соединяя их связями и тем самым получая готовый Образ программы. Такой подход дает существенный выигрыш в том плане, что мозг программиста работает в естественной для него среде — среде образов, объектов и взаимосвязей, что, в конечном счете, положительно сказывается на эффективности работы программиста и на сокращении трудозатрат, необходимых на получение качественной программы. Конечно, многие могут оспорить это заявление и привести тысячу доводов в защиту "классического" подхода, при котором программист оперирует только текстовым редактором и, конечно, собственным воображением. Каждая задача, каждая проблема может быть решена несколькими путями, с использованием различных инструментов. Какие из них более эффективные или удобные, решать все же самому программисту.

Однако такие нововведения случаются сравнительно редко. Гораздо чаще происходит своеобразное "изобретение велосипеда", при котором новоиспеченный язык программирования не претендует на место таких "монстров" как С++ или Perl. Взамен, он решает некоторые конкретные проблемы, предлагает свои решения по обеспечению удобства написания кода и его последующей отладки.

В этом смысле, язык К++ не является исключением. При написании его мы не старались сделать что-то принципиально новое, а скорее хотели переосмыслить наше понимание языков программирования. Мы хотели сохранить лучшие черты, которые мы нашли в других языках и в то же время постараться органично совместить их в нашем языке. Совместить так, чтобы они не противоречили друг другу и представляли собой цельную и законченную систему. В целом, это было довольно сложно, поскольку исходные языки представляли собой принципиально различные системы, "исповедующие" разные идеологии.

Язык К++ вобрал в себя строгость Паскаля, лаконичность С++, удобство Ruby, гибкость Perl и в чем-то даже "совершенство в простоте", присущее языку Smalltalk. На самом деле, этот список можно продолжить и дальше, однако наибольшее влияние оказали именно вышеперечисленные языки. Если вы знаете один или несколько из этих языков, то по ходу изложения материала вы, скорее всего, будете подмечать знакомые места. Разумеется, чем больше вы знакомы с программированием на этих языках, тем легче вам будет освоить язык К++.

Надеюсь, уважаемый Читатель еще не был утомлен потоком моего красноречия. Если это все-таки случилось, то вы можете вздохнуть спокойно, потому что самая философская часть книги закончилась. В будущем "воды" будет меньше, однако мы все же постараемся сохранить доверительный стиль изложения и не свалиться в пучину безд� ... \n

Use Your Talents Give More Receive More

When I stand before God at the end of my life, I would hope that I would not have a single bit of talent left, and could say, I used everything you gave me.Erma Bombeck

[Use Your Talents Give More Receive More]

[goodville news]

7 Reasons Why Not Making Mistakes Is The Biggest Mistake

The FEAR of being nothing, achieving nothing and becoming nothing should be way bigger than the fear of making mistakes.A life spent making mistakes is not only more honorable, but more useful than a life spent doing nothing. ~ George Bernard Shaw

[7 Reasons Why Not Making Mistakes Is The Biggest Mistake]

[goodville news]

10 Keys to Happier Living

Action for Happiness has developed the 10 Keys to Happier Living based on a review of the latest scientific research relating to happiness. Everyones path to happiness is different, but the research suggests these Ten Keys consistently tend to have a positive impact on peoples overall happiness and well-being.

[10 Keys to Happier Living]

[goodville news]

White dress, green wedding

Lindsey Gehl and Ryan Bell have a vision of their June wedding being white - and green, too.The 27-year-olds will pledge their troth in a traditional ceremony, followed by a reception amid the scenic trails and wildlife habitats of the Pilcher Park Nature Center in Joliet, Illinois, to which theyre donating $600.

[White dress, green wedding]

[goodville news]

How To Make Peace With Imperfection

If you look closely at a tree youll notice its knots and dead branches, just like our bodies. What we learn is that beauty and imperfection go together wonderfully. Matthew Fox

[How To Make Peace With Imperfection]

[goodville news]

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
информация
документация
Инструменты