-
Поговорка: "Программист на фортране модет писать на фортране на любом языке" - на самом деле весьма актуальна. Банально сейчас веду проект на С++, и ловлю себя на том, что пытаюсь построить архитектуру так, как строил бы на Дельфе. Но это же в корне не правильно! Как переучится? вернее не переучится, а научится эффективно писать на С++.
-
> @!!ex © (16.05.08 22:06) > пытаюсь построить архитектуру так, как строил бы на Дельфе
и правильно делаешь
-
> Банально сейчас веду проект на С++, и ловлю себя на том, > что пытаюсь построить архитектуру так, как строил бы на > Дельфе. > Но это же в корне не правильно!
Что за брутальные мысли? Если ты практику "аккуратного" Delphi-кода перенесешь на С++, тебе будет только плюс. Или даже два :)
-
Такой подход приводит к тому, что на С++ переносятся недостатки Дельфи, и не используются преимущества С++.
В итоге получаем код, который содержит недостатки С++, содержит недостатки Дельфи, и содержит только те достоинства, которые есть и в Дельфи и в С++.
-
> @!!ex © (16.05.08 22:19) [3] > > Такой подход приводит к тому, что на С++ переносятся недостатки > Дельфи, и не используются преимущества С++. > > В итоге получаем код, который содержит недостатки С++, содержит > недостатки Дельфи, и содержит только те достоинства, которые > есть и в Дельфи и в С++.
это только в том случае, если ты решил переносить все недостатки
-
> Как переучится? вернее не переучится, а научится эффективно > писать на С++.
Читать хорошие исходники и медитировать над ними.
Кстати, на самом деле, программист на Фортране будет писать на Фортране на любом языке - я много раз видел написанный "на Фортране" код на Delphi и на C (и на C++)
На С# после Delphi писать несколько проще, чем на С++
-
> @!!ex © (16.05.08 22:19) [3]
> Такой подход приводит к тому, что на С++ переносятся недостатки > Дельфи, и не используются преимущества С++.
А можно обойтись без литературных метафор, и сказать конкретно, что именно тебя не устраивает? Какие именно недостатки ты переносишь, и какие преимущества теряешь?
-
Советую почитать последнее издание Страуструпа. Учиться по этой книге невозможно, но некую философию программирования на си++ из нее можно извлечь. Я, к стати, так ее и не одолел. Есть еще философский двухтомник Брюса Эккеля. Вернее, слово "философия" присутствует в названии второго тома. Я ее тоже читал местами.
-
для начала - ознакомиться с тем, что уже есть STL - контейнеры данных, алгоритмы, как оно всё работает в связке
потом - с вещами, которые тебе будут облегчать жизнь - например, смарт поинтеры, паттерны (можно и не все, всё равно опыт приходит с практикой)
ознакомиться с тем, что такое парадигма RAII, нужна ли она тебе и как её использовать
и практика - писать и еще раз писать
-
> Как переучится? вернее не переучится, а научится эффективно > писать на С++. >
Это придёт со временем. Точнее с опытом многолетней работы. И это относится к любому языку, а не только к С++. Бо ни у какого языка нет простой "Инструкции по применению"! :)
-
перенёс в си свои паскалевские привычки по наименованию идентификаторов. когда это видят заядлые сишники, у них начинаются припадки с пеной изо рта.
--- Understanding is not required. Only obedience.
-
> ketmar © (17.05.08 07:49) [10]
Дык... функции WinAPI, надо полагать, писали экстрасуперсишники, а имена им дали вполне даже паскалевские.
-
> Offtop
Может подскажите с какой книжки лучше начинать изучать С++ ? Или надо обратить свои взоры на С# ?
Лазила по форумам сишников, в поисках совета по стартовой литературе, но вот беда: одни хвалят некую книгу, другие ее тут же разносят "в пух и прах" да еще и ногами топчут :) Так как я там никого не знаю, то не могу и решить к чьему мнению надо прислушаться :( Поэтому и решила спросить у нашего "сообщества" :)
-
Сколько книжек я не пробовал читать по С++, единственно полезной для меня, видимо, оказался «Полный справочник» Шилдта. На втором месте, однако, стоит упомянуть «Философию» Эккеля (см. [7]), которая тоже довольно интересна и познавательна.
-
> Может подскажите с какой книжки лучше начинать изучать С++ > ?
C++ лучше изучать со Страуструпа.
С просто (и это более достойно) лучше изучать с Кернигана и Ричи "Язык программирования С" - она не толстая. Параллельно с ней желаетльно читать книжку Кернигана и Пайка "Практика программирования".
Почему более достойно - потому что и Unix и Windows написаны на С, а не на С++ :)
-
> LightRipple (17.05.2008 11:36:12) [12]
На C++ Microsoft наложила болт, так что не трать на него время. Все новые примеры в MSDN идут на C# и VB.Net
-
> Anatoly Podgoretsky © (17.05.08 12:09) [15]
Это не совсем так. :) Сейчас у них в планах этот болт переложить.
-
>[11] Юрий Зотов © (2008-05-17 11:20:00) а это наследие тяжёлых времён первой винды, которая на паскале была.
--- Understanding is not required. Only obedience.
-
Керниган и Риччи излагают старую версию языка си. Например функция там может быть определена так.
int fun(s, n)
char *s;
int n;
Теперь любой сишник опишет параметры в первой же строчке, а выражение после return не будет заключать в скобки. Хотя старый стиль и воспринимается современными компиляторами, я бы не советовал к нему привыкать. Сама книга очень хороший учебник. Достаточно сказать, что я изучил первое издание этой книги (перевод у нас вышел где-то на стыке 70-х и 80-х) когда у меня даже не было компилятора - всё было четко изложено в самой книге и прилагавшихся примерах и упражнениях.
-
> на стыке 70-х и 80-х
на стыке 80-х и 90-х
|