Форум программистов, компьютерный форум CyberForum.ru

Изучение: C или С++ - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
NiceForce
1 / 1 / 0
Регистрация: 24.04.2011
Сообщений: 28
09.06.2013, 22:29     Изучение: C или С++ #1
Здравствуйте,
Прошу аргументировать главные за и против в выборе между изучением C и С++.

Цель изучения: в основном допиливание узких мест; частичная замена или взаимодействие с Java-логикой на сервере; обеспечение быстродействия.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,405
09.06.2013, 22:56     Изучение: C или С++ #2
С проще
С++ многофункциональней

Не по теме:

Choose your destiny. Fight!


Поищите по форуму, этих холиварных тем полно
danger_x
10 / 10 / 0
Регистрация: 15.11.2012
Сообщений: 46
10.06.2013, 09:41     Изучение: C или С++ #3
C. это основа. Выучишь С, с С++ проблем не будет)
ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
10.06.2013, 09:53     Изучение: C или С++ #4
Цитата Сообщение от danger_x Посмотреть сообщение
C. это основа. Выучишь С, с С++ проблем не будет)
ну ну. Небо и земля, уже давно.
NiceForce, плюсы качай. Аргумент: ++
Убежденный
Системный программист
 Аватар для Убежденный
14183 / 6198 / 984
Регистрация: 02.05.2013
Сообщений: 10,324
Завершенные тесты: 1
10.06.2013, 10:40     Изучение: C или С++ #5
Советовал бы начать с C, а затем, по мере необходимости, добавлять в свой
арсенал возможности C++ (RAII, шаблоны, STL и многое другое).
Так Вы ничего не теряете: будет базовое понимание C/C++, с одной стороны, и с
другой - сможете избежать лишнего переусложнения, которым так иногда любят
злоупотреблять любители C++ (в особенности C++11) и найдете для себя
ту самую золотую середину.
danger_x
10 / 10 / 0
Регистрация: 15.11.2012
Сообщений: 46
10.06.2013, 11:56     Изучение: C или С++ #6
Цитата Сообщение от ITcrusader Посмотреть сообщение
ну ну. Небо и земля, уже давно.
NiceForce, плюсы качай. Аргумент: ++
не знаю, я после С и на С++ без проблем перешел, а также на PHP и Java. синтаксис общий, концепция ООП, а что касается надстроек и библиотек, так это документацию почитать просто
Tulosba
:)
Эксперт C++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
10.06.2013, 12:11     Изучение: C или С++ #7
Цитата Сообщение от NiceForce Посмотреть сообщение
Цель изучения: в основном допиливание узких мест;
Смотря насколько "узки" эти места. Может быть и на ассемблере надо будет писать (или вообще аппаратное решение потребуется). А если заменять Java-код, то разницы в быстродействии C и C++ Вы вряд ли заметите.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
10.06.2013, 12:21     Изучение: C или С++ #8
Цитата Сообщение от ITcrusader Посмотреть сообщение
ну ну. Небо и земля, уже давно.
NiceForce, плюсы качай. Аргумент: ++
Ну, у Си гораздо шире круг применения. Я не уверен, но вроде сейчас гораздо больше программ пишутся на Си, а не на плюсах.
ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
10.06.2013, 12:25     Изучение: C или С++ #9
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Ну, у Си гораздо шире круг применения.
What are you talking about? (c)
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
вроде сейчас гораздо больше программ пишутся на Си, а не на плюсах
Отличная эмпирическая оценка)))
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
10.06.2013, 12:35     Изучение: C или С++ #10
Цитата Сообщение от ITcrusader Посмотреть сообщение
What are you talking about? (c)
О том! Ядра ОС. Драйвера.
Микроконтроллеры вообще отдельная обширная отрасль, в которой царит Си.
Игры для ПК и прочие приложения.
Quake написан на Си и куча других игр.
И вообще Си проще в понимании, на нём можно написать всё то, что написано на С++.
ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
10.06.2013, 12:43     Изучение: C или С++ #11
Да прост не понимаю, зачем некоторое подмножество плюсов, пусть и несколько, уже, обособленное, выделять в некий отдельный язык, якобы сегодня "наиболее используемый"
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
10.06.2013, 12:43     Изучение: C или С++ #12
Kuzia domovenok,
Игры для ПК и прочие приложения.
Чо?
Quake написан на Си и куча других игр.
А что-нибудь еще старее вспомнить?
И вообще Си проще в понимании, на нём можно написать всё то, что написано на С++.
Только вот сложность написания на Си и количество возможностей выстрелить себе в ногу несколько мешают эффективной разработке.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,405
10.06.2013, 12:46     Изучение: C или С++ #13
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
И вообще Си проще в понимании, на нём можно написать всё то, что написано на С++.
согласен, вопрос лишь времени. И на АСМ можно написать что угодно.


Цитата Сообщение от danger_x Посмотреть сообщение
синтаксис общий, концепция ООП
с каких это пор С имеет концепцию ООП?

Цитата Сообщение от Убежденный Посмотреть сообщение
арсенал возможности C++ (RAII,
какое то странное перечисление идиомы ООП наряду с инструментарием конкретного языка

Цитата Сообщение от Убежденный Посмотреть сообщение
лишнего переусложнения
как правило за этим кроется желание писать код отличный от квадратных велосипедов. Ибо сколько людей, столько и мнений, даже самый простой класс Student тут все отписавшиеся напишут совершенно разным образом. А теперь представим, что этих классов много и нам надо их поддерживать. Приятно, когда все сделано по одной и той же технологии, я уж молчу, что самописные реализации чаще всего содержат кучу баг и более скудный функционал. Как бы новый стандарт призван облегчить жизнь, а не усложнить. Например, чем так усложняет все конструкция auto или л-функции или константы времени исполнения или потоки или регулярки или новые ГСЧ?

Проблема перехода с С на С++ заключается в том, что потом пишут на "сишных плюсах", единственное отличие от pure C - i/o. Подход в языках совершенно разный. Поэтому знать надо, но не начинать с этого. Кстати, Бьерн Страуструп разделяет ту же точку зрения (нужны плюсы - учи сразу их).
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11816 / 6795 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
10.06.2013, 12:46     Изучение: C или С++ #14
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Quake написан на Си
На кваке мир остановился С википедии
Unreal Engine — игровой движок, разрабатываемый и поддерживаемый компанией Epic Games.
...
Написанный на языке C++, движок позволяет создавать игры для большинства операционных систем и платформ
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,405
10.06.2013, 12:46     Изучение: C или С++ #15
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Quake написан на Си и куча других игр.
весьма весомый аргумент в 2013 то году
Tulosba
10.06.2013, 12:48
  #16

Не по теме:

Уважаемые, мы скатываемся в холивар. Посмотрите на цели обучения, которые ставит ТС.

ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
10.06.2013, 12:50     Изучение: C или С++ #17
Цитата Сообщение от NiceForce Посмотреть сообщение
допиливание
ну для допиливания и С сгодится)
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
10.06.2013, 12:51     Изучение: C или С++ #18
в основном допиливание узких мест;
Слишком обобщенно. Для конкретного места нужно выбирать свое решение.
частичная замена или взаимодействие с Java-логикой на сервере;
И зачем тут Си? Аналогично, зависит от многих факторов.
обеспечение быстродействия.
Опять же, слишком обобщенно. Обеспечение быстродейсвия чего? На конкретные вопросы дадут конкретные ответы, а на настолько обобщенные вопрос никто ответов не даст. Да Си быстрый. А АСМ при грамотном использовании еще быстрее. А если писать сразу в машинных кодах вообще закачаешься.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
10.06.2013, 13:00     Изучение: C или С++ #19
Цитата Сообщение от Tulosba Посмотреть сообщение
Уважаемые, мы скатываемся в холивар. Посмотрите на цели обучения, которые ставит ТС.

Не по теме:

Ты так говоришь, словно это что-то плохое...
Я что тут зря Си расхваливаю? Вон мне уже пол страницы ответов понастрочили.



Цитата Сообщение от MrGluck Посмотреть сообщение
Quake написан на Си и куча других игр.
весьма весомый аргумент в 2013 то году
Тетрис на Си легче написать, чем на Си++. Вообще одна из проблем крестов - это стремление некоторых впихнуть сложные ООП-конструкции туда, где и без них было всё просто. (Обеспечение "расширяемости", "гибкости", даже "мультиплатформенности" там, где программа не будет ни расширяться, ни портироваться и вообще её пишет один человек, а не команда) Кстати, пример:
частичная замена или взаимодействие с Java-логикой на сервере;
Вот все тут ругают переход с Си на Си++, но забывают о худшем переходе - с Java на С++! Это конечно что-то! Явисты с головами, забитыми ООП, пихают это ООП везде-везде, ни одной программы без хоть одного класса не напишут.
Типичный симптом pattern abuse! http://taskinoor.wordpress.com/2011/...world-program/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2013, 13:05     Изучение: C или С++
Еще ссылки по теме:

изучение с++ C++
Изучение C++ или поиск подходящей литературы C++
Изучение С++11: Липпман или Прата? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
10.06.2013, 13:05     Изучение: C или С++ #20
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Вообще одна из проблем крестов - это стремление некоторых впихнуть сложные ООП-конструкции туда, где и без них было всё просто
Но ведь это не всегда так! ООП при уверенном понимании вносит много больше ясности, чем процедурный Си-подход. Мы же не будем сейчас говорить о том, что плохое качество ООП - это то, что при незнании в нем можно запутаться.

Не по теме:

Простите, должен был ответить

Yandex
Объявления
10.06.2013, 13:05     Изучение: C или С++
Ответ Создать тему
Опции темы

Текущее время: 00:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru