Нужен совет по выбору книги (C++)

craz

Нестандартное звание
craz
Мне не понравилось, что ты изза "пробелов", не попробовав, пытаешься судить о языке. И при этом кааанечно: "я не случайный в программировании человек"!
я попробывал! как те доказать? да я не пару лет разрабатывал, но дня три уделил решал задачку по вычислению корней алгебраической системы уравнений - показательно что возникло много вопросов на простом алгоритме Гаусса, при этом на пхп я решил ее за полчаса.

сам троль(((((
 

MildMildMint

Новичок
что сложная задача? Трейнер-то написать?
Естественно. Или думаете, что все обойдется изменением значения по адресу? Хотя и данная задача для новичка сложна, т.к. кроме языка придется еще учить недружественные апи.

craz, функциональное программирование знаете?
 

craz

Нестандартное звание
Естественно. Или думаете, что все обойдется изменением значения по адресу? Хотя и данная задача для новичка сложна, т.к. кроме языка придется еще учить недружественные апи.

craz, функциональное программирование знаете?
да, и процедурное
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
MildMildMint
Написать трейнер не просто, особенно не зная ничего толком, но трейнер написать не так сложно, думаю, как например шифрофшик-дешифровшик траффика в сети, который работает прозрачно для какого-либо соединения. Просто Си я выбрал в виду его более широкой применимости, и более широкого охвата платформ (привлекает как nix так и win платформы).
 

MildMildMint

Новичок
когда узнал что программа на питон зависит от количества пробелов внутри операторов.. .
Зависеть от пробелов лучше, чем от скобок и пробелов одновременно. Дублирование = зло.

c0dex а задача нахождения адреса?
 

MildMildMint

Новичок
java, c# есть зависимость от скобок и пробелов?
Не понял вопроса. По ключевым словам выделил C# и Java. Там есть зависимость и от скобок, и от пробелов. Без скобок не поймет компилятор, без пробелов разработчик.
Дублирование.
От пробелов избавиться нельзя. От скобок можно.
 

craz

Нестандартное звание
Не понял вопроса. По ключевым словам выделил C# и Java. Там есть зависимость и от скобок, и от пробелов. Без скобок не поймет компилятор, без пробелов разработчик.
Дублирование.
От пробелов избавиться нельзя. От скобок можно.
клева слушайте я не задумывался... а ведь надо тогда всем языкам строго задать кодстайл и наступит мир во всем мире!!! Ура товарищи, Ура!!!. Еще строгую типизацию надо повсеместно ввести.
 

phprus

Moderator
Команда форума
Духовность™
Если все так, то совет - C#. После PHP - заколебешься с указателями в C++. Да и .NET скилл - весьма хорошая строчка в резюме.
Указатели - это одно из базовых знаний о том, как реально работает компьютер. С моей точки зрения об этом должен знать любой программист. Да и не такое сложное это знание если подумать.

ИМХО данная фраза содержит явное противоречие.
Ну почему-же? Кроссплатформенность на уровне исходных кодов вполне достижима. А не кроссплатформенные вещи можно завернуть в Boost, GUI в Qt, а некоторые особенности в свои кроссплатформенные абстракции.

P.S. Ребята, давайте жить дружно. (с) Кот Леопольд.
Не надо из нормальной темы делать священную войну языков.
 

Adelf

Administrator
Команда форума
Немного не так выразился насчет указателей... даже совсем не так. Имел ввиду что в С++ надо за собой чистить. Каждый созданный объект должен быть удален. Иногда это нетривиально. Нужно использовать различные smart pointers и дальнейшие развития этой идеи, которые все равно ведут к GC :)
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
MildMildMint
Задача нахождения адреса - задача дебагинга, с которым у меня отродясь проблем не было. Покопаться люблю, заодно освою еще и асму) Все упирается только во время
 

phprus

Moderator
Команда форума
Имел ввиду что в С++ надо за собой чистить. Каждый созданный объект должен быть удален. Иногда это нетривиально. Нужно использовать различные smart pointers и дальнейшие развития этой идеи, которые все равно ведут к GC :)
С другой стороны это дисциплинирует. А на счет нетривиальности это как посмотреть. В моем последнем проекте оказалось, что в самом нетривиальном случае проще было отказаться от boost::shared_ptr и заменить их на ручное управление памятью, иначе были нужны либо лишние блокировки в многопоточном приложении, либо получались необъяснимые coredump'ы. Хотя и с нетривиальностью случаи бывают разные.

А идея GC в языках уровня С/С++ мне не нравится тем, что вводит в программу элемент непредсказуемости, так как программист заранее не может предсказать, когда именно вызовется GC и за сколько он отработает.
 

Adelf

Administrator
Команда форума
phprus
Угу. Мне вот сложно представить как воспримет такие вот проблемы человек, который писал только на PHP. Почитает кое-чего, справится конечно. Но C# или Java в данном случае явно предпочтительней.
 

phprus

Moderator
Команда форума
Adelf
Мне сейчас тоже. Правда давным давно я тоже начинал с PHP. Потом начал потихоньку писать на С/С++. И уже после этого в 10 классе я узнал Pascal.
 

MildMildMint

Новичок
Кроссплатформенность на уровне исходных кодов вполне достижима.
Каким образом, если без использования библиотек сложно что-то написать. Частичное исключение - Qt, но все равно придется использовать платформозависимые либы.

По поводу указателей - это перенос работы среды на программиста. Среда все же способна справляться с такой задачей лучше. Или ни разу segmentation fault и access violation не видели?
 

fixxxer

К.О.
Партнер клуба
Каким образом, если без использования библиотек сложно что-то написать. Частичное исключение - Qt, но все равно придется использовать платформозависимые либы.

По поводу указателей - это перенос работы среды на программиста. Среда все же способна справляться с такой задачей лучше. Или ни разу segmentation fault и access violation не видели?
Распушхую до 4 гигов джаву тоже видели :) и что?
 

Krishna

Продался Java
Мой голос за Яву.
1) 99% кроссплатформена (более, нежели пых) - не придётся привязываться к платформе.
2) Нет возни с указателями и прочих радостей С++. Ява проще, упорядоченней и стандартизирована. В ней нет С++ приколов, когда выполнение одного и того же кода может варьироваться в зависимости от компилятора.
3) Более востребована на рынке и не менее оплачиваема, нежели С++. Подавляющая часть "энтерпрайз"-приложений, мобильных приложений - ява. Таким образом, для тех кто знает яву доступная предметная область крайне широка.
4) Благодаря тому, что она служила основным донором для ООП-функционала пхп при её изучении многое будет знакомо, это большой плюс. Для тех кто знает пых и паскаль на уровне института - освоить Яву не проблема.
5) Производительность современной Явы сопоставима с С++. Можно разрабатывать практически любые прикладные приложения. Работа с OpenGL и т.п. доступна.
 
Сверху