Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 128, средняя оценка - 4.96
C++ Beginner
0 / 0 / 0
Регистрация: 16.09.2011
Сообщений: 5
#1

C++ или C#? Что учить первым? - C++

17.09.2011, 16:01. Просмотров 17747. Ответов 73
Метки нет (Все метки)

Привет всем!
Не могу выбрать что учить первым. Хотелось бы выучить язык основательно, и что бы он стал основой для изучения других технологий. C++ говорят что трудный для новичков(знаю Pascal, PHP(немного)). C# легче намного, но потом перейти с него на тот же C++ не получится. Так ли это и что вы лично посоветуете.
Плз писать тем кто уже сталкивался с таким вопросом. Не холиварить!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2011, 16:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос C++ или C#? Что учить первым? (C++):

Что учить? visual c++ или Borland c++ - C++
Какой из них учить.Главное чтобы был легче.

Что лучше учить сначала C или C++? Выбор литературы. - C++
Что лучше учить сначала C или C++? Или в перечисленных ниже книгах материал по C уже есть? Также хочу с вами посоветоваться насчет...

Подсчитать сумму символов между первым и последним 'z'. Что надо изменить или дополнить? - C++
#include "stdafx.h" #include <iostream> #include <string> using namespace std; int TrvacSimvoliQanaky(char , int,int); int...

Имеет ли смысл продолжать учить с++ или попробовать перейти в с# или java? - C++
Надеюсь данный вопрос не нарушает правила этого раздела. Учу кресты уже месяца полтора-два. Это мой первый ЯП. По 2-7 часов в день. В...

Учить С или С++ - C++
Пол года учил в университете С и Паскаль, грубо говоря плохо учил, не сознательно учил, закончил первый семестр на тройку smile . Сейчас...

Что учить дальше? - C++
В каком направлении посоветуете двигаться дальше? В раздел классы я въехал, знаю как реализовывать стандартные структуры, типа (очередь,...

73
talis
792 / 544 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
17.09.2011, 16:10 #2
C++ Beginner, C++ будет для вас сложнее, если вы до него привыкните к другому языку.

При выборе учитывайте, что C# - это только Microsoft, то есть вы будете привязаны в VS и Windows. C/C++ используется практически везде. На них написано очень много ПО для винды и юниксов (в том числе мака). К тому же PHP использует много функций, похожих на функции стандартной библиотеки C.
1
Jupiter
Каратель
Эксперт С++
6565 / 3986 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.09.2011, 16:15 #3
Цитата Сообщение от C++ Beginner Посмотреть сообщение
Что учить первым?
если задались таким вопросом то С++ для вас сложен
1
fantaz1
33 / 25 / 2
Регистрация: 08.11.2008
Сообщений: 107
17.09.2011, 16:17 #4
учите С++, после него на любой другой язык перейти будет раз плюнуть
и не такой он уж и трудный, если есть желание то все норм будет. Я начал программировать с С++, потом с легкостью освоил и С#, и Java
1
CyBOSSeR
Эксперт С++
2306 / 1676 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
17.09.2011, 16:19 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от C++ Beginner Посмотреть сообщение
C++ говорят что трудный для новичков
Скорее по C++ слишком много хреновых книг, если с выбором литературы не ошибится, то проблем не должно быть.
Цитата Сообщение от C++ Beginner Посмотреть сообщение
C# легче намного
C# синтаксически богаче плюсов, поэтому как язык не может быть легче по определению (магию шаблонов и макросов в расчет не берем). Писать на нем быстрее и приятней, но не легче.

C++ Beginner, дело не в языке, а в голове и том как Вы думаете, поэтому какой язык Вы выберете не важно.
3
C++ Beginner
0 / 0 / 0
Регистрация: 16.09.2011
Сообщений: 5
17.09.2011, 16:51  [ТС] #6
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
Скорее по C++ слишком много хреновых книг, если с выбором литературы не ошибится, то проблем не должно быть.

C# синтаксически богаче плюсов, поэтому как язык не может быть легче по определению (магию шаблонов и макросов в расчет не берем). Писать на нем быстрее и приятней, но не легче.

C++ Beginner, дело не в языке, а в голове и том как Вы думаете, поэтому какой язык Вы выберете не важно.
Харви Дейтел, Пол Дейтел Как программировать на С++ ---- эта книжка хорошая или нет?
Начал читать сегодня.
0
CyBOSSeR
Эксперт С++
2306 / 1676 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
17.09.2011, 16:52 #7
C++ Beginner, вроде хвалят, а так не в курсе, не читал.
1
silent_1991
Эксперт С++
4993 / 3051 / 149
Регистрация: 11.11.2009
Сообщений: 7,038
Завершенные тесты: 1
17.09.2011, 17:03 #8
C++ Beginner, отличная, одна из лучших, по моему мнению, для начинающих.
1
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,134
17.09.2011, 17:41 #9
Цитата Сообщение от C++ Beginner Посмотреть сообщение
Харви Дейтел, Пол Дейтел Как программировать на С++ ---- эта книжка хорошая или нет?
Начал читать сегодня.
В этой книге масса упражнений разной сложности. Есть всякие классические задачи.
Еще в этой книге для примера разрабатывается программное обеспечение для банкомата с помощью ООП. Так же в этой книге в виде упражнения вы можете написать свой свой машинный язык SML, т.е. низкоуровневый язык и потом свой высокоуровневый язык, который будет транслироваться на этот низкоуровневый язык SML. Естественно все это эмуляция с помощью C++.
И это еще не все.
PS Да, я рекламирую свою книгу, которую я сейчас читаю)
0
diagon
Higher
1932 / 1198 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
17.09.2011, 18:16 #10
Я пробовал C# учить, мне он не очень понравился...
Во-первых, мне не нравиться MSVS, слишком перегруженный интерфейс. В линуксе IDE поудобнее будут, но писать на шарпе для никсов как-то глупо =)
Во-вторых, полноценно шарп будет работать только под виндой(огромнейший минус на мой взгляд).
В-третьих, зачем этот язык вообще нужен? Он произошел от C++ и Java, но ничего нового, чего нету в с++ или яве, я не заметил.
В-четвертых, по синтаксису он очень смахивает на с++, но многое там вырезано( if ( a % 2) к примеру, просто не скомпилируется). Кстати, интересно, в каком месте
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
C# синтаксически богаче плюсов
Я бы посоветовал учить плюсы, так как с них несложно перейти на шарп, а обратное неверно.
И вообще, у с++ плюсов больше(целых 2).
P.S. тема холиварная, если не можешь определиться - учи оба.
P.P.S. еще весомый аргумент - если все-таки выберите шарп, то вам придется заводить новый профиль.
1
AnyOne697
134 / 106 / 5
Регистрация: 22.05.2010
Сообщений: 533
17.09.2011, 18:30 #11
Ну, лично я начал с C#. Впрочем, обучали нас на курсах "профессионалы". Так что выбор очевиден. В принципе, да - C# очень прост в обучении. Но важно знать, что он создавался с оглядкой на C++. Вообще, лично мне он ОЧЕНЬ напоминает смесь C++ и Java. Например, в программе есть как минимум один класс - без него не запустится. Но в то же время семантика (мля, как-то сложно, не уверен то ли вообще говорю) языка чем-то схожа с C++. Ну, то есть очень многие понятия были переняты из C++.

Впрочем, если есть возможность, то лучше сразу изучать Java. Принципиальные отличия, конечно, есть, но возможности у этого языка гораздо выше, куда проще в обучении, да и в нашем мире более востребован и применений имеет более широкое. Самый главный минус - низкая производительность, но это, так сказать, константа. То есть программа, грубо говоря, будет работать в два-три-десять раз медленнее аналогичной, но написанной на C++, но зато это практически не зависит от объёма задачи (входных данных). Кстати, это относится и к C#. Производительностью он не блещет.

Впрочем, изучайте то, что хотите. C++ я после C# изучил и даже более досконально. И никаких проблем - спокойно изучаю самостоятельно и C++ (продолжаю) и платформу .NET [стараюсь - никто не помогает =( ]. C++ проще начинать изучать. Синтаксис его, всё же проще и нет за***ва с классами. Поэтому первые, тривиальные программы очень просты, понятны и прозрачны. По "встроенным" возможностям, C++, конечно, уступает его родственнику, но это с лихвой компенсируется полнотой Тьюринга и более быстрым компилятором, а также более эффективной работой.
0
Paporotnik
383 / 227 / 7
Регистрация: 06.07.2011
Сообщений: 512
17.09.2011, 18:52 #12
что C#, что Java - параллельное развитие C++. я бы предпочел начинать с C++. понять особенности двух прочих языков несложно.

а вот про сложности изучения других языков - бред. знание английского не мешает учить испанский. разобравшись в С++ ты освоишь большинство приемов, используемых в других языках. останетс ятолько выучить другой синтаксис и разузнать про мелкие особенности.
вот переходить от одной парадигмы программирования к другой - сложно. если ты ни разу не видел, к примеру, Лисп, Пролог, то может произойти разрыв шаблонов)
0
talis
792 / 544 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
17.09.2011, 18:58 #13
Цитата Сообщение от AnyOne697 Посмотреть сообщение
программа, грубо говоря, будет работать в два-три-десять раз медленнее аналогичной, но написанной на C++, но зато это практически не зависит от объёма задачи (входных данных)
Это как? Любой алгоритм за O(c), где c - константа? Класс...

Цитата Сообщение от AnyOne697 Посмотреть сообщение
По "встроенным" возможностям, C++, конечно, уступает его родственнику
Почитайте про контейнеры STL и алгоритмы STL. Ужаснётсь.
0
CyBOSSeR
Эксперт С++
2306 / 1676 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
17.09.2011, 19:09 #14
Цитата Сообщение от AnyOne697 Посмотреть сообщение
Кстати, это относится и к C#. Производительностью он не блещет.
Программа на C# может спокойно работать быстрее аналогичной на C++ т.к. у JIT'а гораздо больше информации об окружении в котором работает программа, поэтому он может использовать гораздо более весомые оптимизации, в том числе платформеннозависимые.
Цитата Сообщение от AnyOne697 Посмотреть сообщение
применений имеет более широкое
Чем C++, который может работать везде и всегда? Очень сомневаюсь.
0
silent_1991
Эксперт С++
4993 / 3051 / 149
Регистрация: 11.11.2009
Сообщений: 7,038
Завершенные тесты: 1
17.09.2011, 19:13 #15
Цитата Сообщение от talis Посмотреть сообщение
Любой алгоритм за O(c)
Имелось ввиду, что если на С++ одна программа при одних входных данных выполняется секунду, то на джаве она же с такими же входными данными будет выполняться (гипотетически, со слов AnyOne697) 20-30 секунд, а с другими входными данными на плюсах она выполняется 2 секунды, на джаве же 40-60 секунд. Т.е. множитель - константа.
1
17.09.2011, 19:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2011, 19:13
Привет! Вот еще темы с ответами:

Что учить дальше? - C++
Прата С. - Язык программирования С++. Лекции и упражнения (5-е изд.) - 2007 Все освоил что дальше посоветуйте. Темы книги: Глава...

Что учить дальше? - C++
Всем привет! Выучил с++, ооп ,но пишу только консольные программы. Вообщем хочется развиваться, подскажите пожалуйста что учить дальше?...

Как учить с++ чтобы не бросить (учить типы влом) - C++
Суть не в том токо как учить, а в том как начать, чтобы не бросить..Учить типы влом..Хотелось бы норм учебник по с++, норм компилятор...

Что учить после ООП? - C++
Здравствуйте, хотел бы узнать ваше мнение! Я разобрался с основами си++.Хотел бы вот узнать что учить , с чем разбираться дальше, куда...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.