LINUX.ORG.RU

Ответ на: комментарий от fluorite

auto, for по коллекциям, лямбды, constexpr, final, override, move-семантика?

Тоже самое говно, только посыпаное сахарком... не так ли?

xterro ★★★★★
()
Ответ на: комментарий от emulek

что Вы подразумеваете под «этими вещами» (если можно, конкретно)?

1. файлы? Я что-то там кроме stdin/stdout не наблюдаю.

std::ifstream/std::ofstream отменили уже?

2. Сеть? Мы в 21ом веке живём, а не в двадцатом.

можно брать обычные bsd sockets, в сокетах различия реально небольшие, и сокеты для начального обучения явно не нужны

3. ГУЙ? Ну или там вебинтерфейс например.

Qt, wt, вообще про веб-интерфейс и С++ - это ржака

4. Shared lib (DLL), к примеру OpenSSL, zlib. Самому писать?

разница только внутри, и то не то чтобы сильно большая, подключай и пользуйся - никто не мешает

проблема в указанных Вами пунктах, и вообще в ОС-специфичных вещах, в том что они никак не помогают освоить язык на начальном этапе, особенно такой сложный как С++, короче проблема в том, что у Вас целеполагание сбилось

shty ★★★★★
()
Ответ на: комментарий от emulek

я считаю, что C++ не годен для первого ЯП.

это снова не ко мне

В нём полно не очевидных вещей

ты то сам пишешь на qbasic надеюсь? потому, что риальне ничего предсказуемее пока не придумали

UB на каждом шаге

ко-ко-ко

Кстати про UB в рекомендованной вами книге есть?

есть, но не в таком ключе, как Вы себе это представляете

Как обычно, вскользь, походя?

это не книжка для малолетних хацкиров-кювлзизопов, а вводный курс о том как правильно писать программы на С++

shty ★★★★★
()
Ответ на: комментарий от shty

std::ifstream/std::ofstream отменили уже?

нет, однако в разных системах даже слеши в разные стороны. Я уж не говорю о более тонких деталях, таких как буферизация потоков.

можно брать обычные bsd sockets, в сокетах различия реально небольшие, и сокеты для начального обучения явно не нужны

в прошлом веке были не нужны. А сейчас компьютер без интернета — нонсенс. Практически любая программа умеет в Сеть выходить, даже те, которым интернет и не нужен(e.g. xfce4-screenshooter умеет скриншоты в Сеть выкладывать).

Qt, wt, вообще про веб-интерфейс и С++ - это ржака

да-да, конечно. 95% ПО с гуем готовят именно на C++.

разница только внутри, и то не то чтобы сильно большая, подключай и пользуйся - никто не мешает

ты вообще в курсе, как so подключаются?

проблема в указанных Вами пунктах, и вообще в ОС-специфичных вещах, в том что они никак не помогают освоить язык на начальном этапе

что-бы освоить любой ЯП, нужно на нём читать и писать. И не только Helloworld`ы.

Да, ещё я забыл про fork сказать, в маздае всё сделано совершенно иначе. Или многозадачность не нужна?

emulek
()
Ответ на: комментарий от shty

это не книжка для малолетних хацкиров-кювлзизопов, а вводный курс о том как правильно писать программы на С++

что-бы правильно писать, необходимо видеть, где в коде UB.

emulek
()

Дейтелы.

Deleted
()
Ответ на: комментарий от grondek

Страуструп

Страуструп для начинающего способен привить только отвращение к плюсам.

Deleted
()

Только не Страуструп.

Страуструп написал отличную книгу для тех, кто знает Си. Да-да, не «какой-нибудь ещё ЯП», а именно Си.

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

hobbit ★★★★★
()
Ответ на: комментарий от Weres

Берите какой-нибудь Пайтон

Тебе ТС настолько крепко насолил, что в качестве первого ЯП ты ему советуешь аморфное отступозависимое (привет дедушке Фортрану) говно?

Джава ещё куда ни шло. А вообще, думаю, учиться надо начинать с Паскаля (с консольных приложений) или Оберона. Но поскольку автор планирует освоение плюсов, я ему и рекомендую компромиссный вариант - начать с обычного Си.

hobbit ★★★★★
()
Ответ на: комментарий от fluorite

Я имею в виду ту, которая наиболее известна, и на которой набито большинство шишек. Так получилось, что в России она появилась первой, и до сих пор, говоря «книга Страуструпа», имеют в виду именно её. (Она, вроде, и написана была раньше, хотя тут могу ошибаться.)

Но ты прав, мне следовало привести полное название.

hobbit ★★★★★
()
Ответ на: комментарий от emulek

прости дорогой, но в методисты тебе пока сильно рано, какие-то обрывки бессвязных мыслей в обоснование своей не вполне корректной мысли

shty ★★★★★
()
Ответ на: комментарий от hobbit

4-ое издание TC++PL вышло в мае 2013, на русском его нет. Более ранние выпуски смысла читать нет, т.к. c++11.

fluorite ★★★★★
()
Ответ на: комментарий от emulek

Ну, согласен со всем что ты написал (мелкие детали не в счет). Потому и рекомендую ТС'у до С++ поучить что-то попроще. Все равно то, что он выучит, будет применимо в С/С++, просто с нюансами.

Kroz ★★★★★
()
Ответ на: комментарий от emulek

Второй раз читаю твой пост и соглашаюсь. Ты вообще мне отвечаешь? :) Я как раза за то, чтобы ТС не начинал C++, а взял что-то попроще.

Лучше хорошо знать пхп, чем плохо C++.

+1

Kroz ★★★★★
()
Ответ на: комментарий от shty

прости дорогой, но в методисты тебе пока сильно рано, какие-то обрывки бессвязных мыслей в обоснование своей не вполне корректной мысли

есть возражения по существу?

emulek
()
Ответ на: комментарий от shty

по книжке ты этому не научишься

почему же? Есть вполне реальные места, в которых UB очень вероятно, классическое класс → void* → класс. Ну или точки следования, вроде не менее известного x++ + ++x;. Конечно можно набивать свои шишки, либо штудировать говнокод.ру. Но лучше прочитать об этом в учебнике. Потому что в реальном коде этого очень мало, а если и есть, то очень плохо заметно.

emulek
()
Ответ на: комментарий от Kroz

Ты вообще мне отвечаешь?

тебе. Ты сам начал со мной спорить с аргументом «спервадобейся». Я утверждал, что книжка говно, да и вообще не для *nix'ов, и что в отрыве от системы писать на C++ невозможно, всё равно привязки будут. Это IRL, а не в теории. Потому очень плохо, когда автор книги не уделил должного системе, причём той, которая у читателя.

emulek
()
Ответ на: комментарий от emulek

есть возражения по существу?

да, изучать язык программирования С++ целенаправленно с платформозависимых, вторичных по отношению к идеологии языка, кусков не зная толком ни основ, которые лежат в основе языка, ни синтаксиса, ни стандартной библиотеки - верный путь к тому чтобы стать ССЗБ

shty ★★★★★
()
Ответ на: комментарий от hobbit

Аморфное? Для обучения нужен кремень? Мне кажется, что Пайтон неплохо для обучения. Не сложный, распространенный, современный (знания приводятся, можно найти работу), много библиотек (можно писать делающие дело программы быстро и не особо вникая).

Паскаль неплохо, сам долго писал на Дельфи. Но сейчас я бы отдал предпочтение змею.

Weres ★★★
()
Ответ на: комментарий от emulek

Есть вполне реальные места, в которых UB очень вероятно, классическое класс → void* → класс.

это не UB, браза

Но лучше прочитать об этом в учебнике.

на начальном этапе гораздо лучше и правильнее понять как писать правильно, и что такое конструктор, деструктор, конструктор копирования, оператор присваивания и т.д., а не изучать тонну kewlzyz0p'ских конструкций, которые к тому же в реальной жизни лучше не использовать

shty ★★★★★
()
Ответ на: комментарий от Weres

Для обучения программированию в первый раз годятся только статически типизированные языки.

Deleted
()
Ответ на: комментарий от shty

да, изучать язык программирования С++ целенаправленно с платформозависимых, вторичных по отношению к идеологии языка, кусков не зная толком ни основ

основы там простые, 95% синтаксиса можно за день осилить ИМХО. А вот «подводных камней» Over9000. Даже стандарт не всегда внятно раскрывает суть происходящего в коде. Потому начинать ИМХО придётся с «C++ на моём локалхосте», а уж потом разбираться, как оно сделано в Windows и т.п. Сложность C++ ещё и в том, что там даже Hello World делается на шаблонном классе std::cout, который, в свою очередь, ЕМНИП является обёрткой над fwrite(3) из glibc, а последняя обёртка для read(2). Куда как проще тот же пхп, в котором тупо есть echo, причём в самом языке, а не где-то сбоку, как STL.

emulek
()
Ответ на: комментарий от Weres

Пайтон

современный

ИМХО это как раз плохо: вариантов два, либо учить мало распространённый и недоделанный питон3, либо устаревший питон2…

много библиотек (можно писать делающие дело программы быстро и не особо вникая).

сколько волка не корми, у слона всё равно толще. По сравнению с другими ЯП, у питона библиотек не так уж и много.

emulek
()
Ответ на: комментарий от shty

Есть вполне реальные места, в которых UB очень вероятно, классическое класс → void* → класс.

это не UB, браза

тут _может_ быть UB.

а не изучать тонну kewlzyz0p'ских конструкций, которые к тому же в реальной жизни лучше не использовать

какие конкретно?

emulek
()
Ответ на: комментарий от emulek

Потому что нагляднее видно, что и где. Опять же тайпчекер оказывает воспитательное воздействие.

Deleted
()
Ответ на: комментарий от emulek

Я утверждал, что книжка говно

Какая книжка? Я книжку никакую не предлагал.

Kroz ★★★★★
()

Кароч, бери Pascal/Lazarus и не мучайся... а то ща насоветуют тебе тут :)

xterro ★★★★★
()
Последнее исправление: xterro (всего исправлений: 1)

Исходники gcc читай.

anonymous
()
Ответ на: комментарий от Weres

обучения

быстро и не особо вникая

/0

Мы сейчас говорим про обучение будущего программиста или макаки-быдлокодера «на языке NNN»?

ТС хочет в будущем в плюсы, значит, я предполагаю, что у него серьёзные намерения. А если намерения серьёзные, то 1) одного языка мало; 2) в качестве первого языка нужно брать что-то фундаментальное.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от Deleted

alright, Ok, я тебе новый ник придумал: nepogano

anonymous
()
23 июня 2015 г.

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

Имхо, лучше всего начинать с чистого Си (чтобы потом понимать откуда вся эта плюсота пришла) и какого-нибудь sicp(в идеале)/питона(сойдет)/хаскелла(специфично, для математиков)

anonymous
()

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

Имхо, лучше всего начинать с чистого Си (чтобы потом понимать откуда вся эта плюсота пришла) и какого-нибудь sicp(в идеале)/питона(сойдет)/хаскелла(специфично, для математиков)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.