0 / 0 / 0
Регистрация: 16.09.2011
Сообщений: 5
1

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

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

Author24 — интернет-сервис помощи студентам
Привет всем!
Не могу выбрать что учить первым. Хотелось бы выучить язык основательно, и что бы он стал основой для изучения других технологий. C++ говорят что трудный для новичков(знаю Pascal, PHP(немного)). C# легче намного, но потом перейти с него на тот же C++ не получится. Так ли это и что вы лично посоветуете.
Плз писать тем кто уже сталкивался с таким вопросом. Не холиварить!!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.09.2011, 16:01
Ответы с готовыми решениями:

Что проще учить java или c++?
Что проще учить java или c++?.Сам знаю базу с++.Хотелось бы узнать про язык java.Вот при изучении...

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

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

Что учить первым си или си ++ или c#
Что учить первым си или си ++ или c#

73
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
20.09.2011, 23:06 61
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Jupiter Посмотреть сообщение
Chelioss, чем вас С++ не устраивает?
Всем устраивает. Просто как я вижу все программисты знают по несколько языков - это раз. Мне интересны разработки под телефоны - это два.
Стоит ли Java учить? С++ я как учил, так и буду дальше учить.
0
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
20.09.2011, 23:12 62
AnyOne697, я не имел ввиду аппаратную платформу, так как переносимость между архитектурами более проблематична, начиная с размера стандартных типов и заканчивая допустимыми операциями.

Отдельные алгоритмы вам вряд ли придётся разрабатывать при смене аппаратной платформы (если вы, конечно, не гонитесь за экзотикой вроде блинной сортировки ). Поддержку конкретных аппаратных расширений - это да. Я вот, например, недавно делал класс матрицы, так математические операции написал при помощи SSE. Если компилируется без SSE, исполняется обычный код. Да элементарно при включении поддержки конкретных процессоров и некоторых уровней оптимизации в опциях компилятора, он генерирует соответствующий код - с поддержкой MMX, SSE, SSE2, SSE3, SSSE3, AMD 3DNow!, 64-bit extensions и так далее.

Я имел ввиду переносимость между программными платформами, ОС, если хотите.

Возьмите Code::Blocks. Под линуксом - он, под виндой - он. И нигде я не жалуюсь на производительность. Или тот же gcc. Что плохого в том, что он есть и для UNIX, и для Windows (в составе либо mingw, либо более тяжелого, но и более функционального cygwin)? Ну, или в конце концов, OpenGL, OpenAL, OpenCV, FreeImage, libz, boost если говорить о библиотеках шаблонов... В конце концов, STL. Что в них плохого? Лучше писать код на DirectX для винды, и на OpenGL, OpenAL и прочих для Linux? А не проще один раз написать с использованием кроссплатформенных библиотек и успокоиться?

Chelioss, C++ не заканчивается на std::cout. Займитесь библиотеками вроде Qt, которые умеют и для Windows, и для Linux, и для смартфонов...

Добавлено через 2 минуты
Цитата Сообщение от Chelioss Посмотреть сообщение
Стоит ли Java учить? С++ я как учил, так и буду дальше учить.
Параллельно будет много путаницы в голове. А так - кто мешает?

Добавлено через 35 секунд
Цитата Сообщение от Chelioss Посмотреть сообщение
Просто как я вижу все программисты знают по несколько языков - это раз.
Ну это по мере надобности. Когда знаешь один, но хорошо - к остальным проще приспособиться, чем когда знаешь много, но по чуть-чуть.
2
Higher
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
21.09.2011, 09:05 63
Цитата Сообщение от Chelioss Посмотреть сообщение
Стоит ли Java учить? С++ я как учил, так и буду дальше учить.
Я начал яву учить в основном из-за того, что стал привыкать к плюсам, что не есть хорошо. И в общем-то до сих пор доволен доволен своим выбором...) Довольно необычный язык, никаких функций там нету, чистое ООП. Пришлось в корне менять свое представление о ООП =)
1
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
21.09.2011, 09:54 64
diagon, Функций нету? Интересно. А методы класса уже не функции?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class Hello
{
    public Hello(String str_)
    {
       str = str_;
    }
    public String getString()
    {
       return str;
    }
    String str;
};
 
public class hello
{
   public static void main(String[] args)
   {
      Hello obj = new Hello("hello");
      System.out.println(obj.getString()); 
   }
}
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
21.09.2011, 10:40 65
Цитата Сообщение от ForEveR Посмотреть сообщение
А методы класса уже не функции?
Идеологически все таки нет

AnyOne697, а Вам я бы посоветовал не растекаться мыслью по древу не разобравшись как следует в вопросе.
2
Higher
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
21.09.2011, 10:40 66
Цитата Сообщение от ForEveR Посмотреть сообщение
А методы класса уже не функции?
Не-а. Методы это методы. Функции это функции.
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
21.09.2011, 10:55 67
fasked, Идеологически нет. По сути да.
1
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
22.09.2011, 11:00 68
diagon,

Java
1
2
3
4
5
public class Socket {
  // ...
  private native boolean connectNative(String address, String name)
  // ...
}
C
1
2
3
4
JNIEXPORT jboolean JNICALL CLASS_METHOD(connectNative)(JNIEnv *env, jobject obj, jstring address, jstring name)
{
  // ...
}
да-да, ни разу в жабе нет функций
1
Higher
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
22.09.2011, 11:16 69
Цитата Сообщение от alex_x_x Посмотреть сообщение
diagon,

Java
1
2
3
4
5
public class Socket {
  // ...
  private native boolean connectNative(String address, String name)
  // ...
}
C
1
2
3
4
JNIEXPORT jboolean JNICALL CLASS_METHOD(connectNative)(JNIEnv *env, jobject obj, jstring address, jstring name)
{
  // ...
}
да-да, ни разу в жабе нет функций
Немного не понял, что вы хотели этим сказать...
Естественно java написана на с, и в ее реализации используются функции. Но программист-то ими пользоваться не может, разве нет? Приведите пример рабочей программы на яве без класса, тогда я вам поверю.
0
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
22.09.2011, 11:35 70
статические методы по сути являются функциями, так как они принадлежат классу, а не объекту, по сути имеют только семантическую привязку
2
Higher
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
22.09.2011, 11:48 71
Цитата Сообщение от alex_x_x Посмотреть сообщение
статические методы по сути являются функциями, так как они принадлежат классу, а не объекту, по сути имеют только семантическую привязку
Хм... Возможно... Но все-же говоря про функции, я подразумевал структурное программирование в целом(насколько я знаю, ява его не поддерживает, хотя в википедии написано обратное). Даже хелловорлд нельзя написать без класса(зато можно без мейна, даже пример привести могу =) ). И функция не может не быть методом, т.е. не может быть описана вне класса.
1
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
22.09.2011, 22:30 72
Цитата Сообщение от talis Посмотреть сообщение
Возьмите Code::Blocks. Под линуксом - он, под виндой - он. И нигде я не жалуюсь на производительность. Или тот же gcc. Что плохого в том, что он есть и для UNIX, и для Windows (в составе либо mingw, либо более тяжелого, но и более функционального cygwin)? Ну, или в конце концов, OpenGL, OpenAL, OpenCV, FreeImage, libz, boost если говорить о библиотеках шаблонов... В конце концов, STL. Что в них плохого? Лучше писать код на DirectX для винды, и на OpenGL, OpenAL и прочих для Linux? А не проще один раз написать с использованием кроссплатформенных библиотек и успокоиться?
Производительность, как много в этом слове...
Впрочем, да. Наверное, мои мечты разбились о камни реальности. Тем более, не трогается полиномиальность алгоритма, да и вообще - редко задевается скорость роста сложности программы (разве только в каких-то совсем экзотических случаев). А "константа" Java уже давно съедена производительностью железа (впрочем, на своём LG P990 не особо заметно). Видимо, я немного не прав. Всё же - написать Andorid полностью на ассемблере. Это могут себе позволить только Apple с их единой архитектурой. Поэтому Android всегда будет вторым...
Цитата Сообщение от diagon Посмотреть сообщение
Я начал яву учить в основном из-за того, что стал привыкать к плюсам, что не есть хорошо. И в общем-то до сих пор доволен доволен своим выбором...) Довольно необычный язык, никаких функций там нету, чистое ООП. Пришлось в корне менять свое представление о ООП =)
Почти золотые слова! Всё же методы - идеологически - функция внутри класса с полным доступом. Слово функция присутствует, так что... Пруфа
Зато совсем по другому представлено ООП. Теперь эта парадигма программирования является действительно главной мыслью, в отличии от C++, где она была представлена в практически зарождающемся виде.
Цитата Сообщение от fasked Посмотреть сообщение
AnyOne697, а Вам я бы посоветовал не растекаться мыслью по древу не разобравшись как следует в вопросе.
Собственно, а что я сейчас делаю? Пытаюсь разобраться. Можно, конечно, сидеть за литературой и долго читать, но, я люблю это делать в беседе за чаем =)
Цитата Сообщение от alex_x_x Посмотреть сообщение
статические методы по сути являются функциями, так как они принадлежат классу, а не объекту, по сути имеют только семантическую привязку
Вот оно - почти то, что я имел ввиду. Ну, может и есть какие-то ньюансы... Но что-то мне до них сейчас... Я спать лучше пойду =)

ОК. Пойду теперь подтверждать свои знания у более достоверных источников, чем википедия или пересказ других программистов. Всем спасибо, но теперь я не буду
Цитата Сообщение от fasked Посмотреть сообщение
растекаться мыслью по древу
а пойду разбираться
Цитата Сообщение от fasked Посмотреть сообщение
как следует в вопросе.
Всем спасибо за участие в продуктивном разговоре.
0
3 / 3 / 1
Регистрация: 18.10.2009
Сообщений: 83
23.09.2011, 00:11 73
пишу в основном на C#, иногда на php, но с недавних пор для решения задачи был вынужден обратится к C++. Мне "пару дней" казалось что этот язык самый сложный в мире, но вскоре сдружился и теперь не считаю его таковым - тут дело практики. Чтобы свыкнутся с С++ - практики нужно больше, чем в случае C#, т.к. на C++ меньше готовых функций(и это даже по своему хорошо)
0
40 / 40 / 7
Регистрация: 21.02.2012
Сообщений: 95
10.03.2012, 01:44 74
Лучший ответ Сообщение было отмечено как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 
 class Hellow_World
{
public:
static int HELLO();
 
};
 int Hellow_World::HELLO()
{
       printf("%s","Hellow world!");
 return 0;
};
 
Hellow_World H;
это программа без мэйна на С++. скажите линкеру про новую точку входа, задайте явно ему же подсистему и все.
не надо никакого мэйна. Просто один класс, хотя может со статиком не совсем честно, там выше писали про это


/ENTRY:"Hellow_World::HELLO" /SUBSYSTEM:CONSOLE
5
10.03.2012, 01:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.03.2012, 01:44
Помогаю со студенческими работами здесь

Что следует учить первым
Подскажите какие книги следует прочитать первыми по 1с программированию.

Что учить? Си или C++?
1.5 года программирую на PHP, пол года назад немного выучил java. Вот сейчас хочу попробовать что...

Что учить? Delphi или c++
Что из них учить?Хорошо владею vb.net и средне c#

Что лучше учить «С» или «С++»
Всем привет! Извините если не туда написал. Я хочу спросить что лучше учить «С» или «С++». Сначала...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru