Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Стоит ли учить С (в частности по книге K&R2) 
:(
    Опции темы
АлексейX86
  Дата 9.8.2013, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.2.2013

Репутация: нет
Всего: нет



Здравствуйте.
Около полугода учу С++ и решил все-таки основательно выучить С , для более ясного понимания того , что происходит внутри С++ , да и вообще язык очень нравится.
Актуально сейчас учить С по учебнику Ричи , Кернигана (второе издание)?
С одной стороны книга от самих разработчиков языка , а другой стороны в книге ANSI C, в то время как сейчас современный стандарт C11.
Под актуальность я также хотел бы узнать стоит ли вообще сейчас в 2013 учить С , когда кругом вакансии С++ и Java?
Спасибо. 

Это сообщение отредактировал(а) АлексейX86 - 9.8.2013, 22:16
PM MAIL   Вверх
feodorv
Дата 9.8.2013, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Вопрос стоит так: только C, или так: С в довесок к другим языкам?


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
АлексейX86
Дата 9.8.2013, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.2.2013

Репутация: нет
Всего: нет



Цитата(feodorv @ 9.8.2013,  22:50)
Вопрос стоит так: только C, или так: С в довесок к другим языкам?

В перспективе хочу выучить С , С++ (в какой-то степени), Java.


Это сообщение отредактировал(а) АлексейX86 - 9.8.2013, 22:56
PM MAIL   Вверх
feodorv
Дата 9.8.2013, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Как довесок знание C никак не помешает, даже наоборот, прояснит многие вещи в так называемых "си подобных" языках.

Другой вопрос - что учить раньше (параллельно, думаю, не стоит). Здесь мнения кардинально расходятся. Однозначного ответа, видимо, нет.


И третий вопрос:
Цитата(АлексейX86 @  9.8.2013,  23:04 Найти цитируемый пост)
Актуально сейчас учить С по учебнику Ричи , Кернигана (второе издание)?

Думаю, актуально, по сей день считаю этот учебник лучшим по C)))


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
kemiisto
Дата 9.8.2013, 23:49 (ссылка) |    (голосов:5) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 5
Всего: 160



Цитата(АлексейX86 @  9.8.2013,  21:04 Найти цитируемый пост)
Около полугода учу С++ и решил все-таки основательно выучить С , для более ясного понимания того , что происходит внутри С++

Это бессмысленно. Даже больше скажу, это только всё усугубит. Настоящий С++ (шаблоны, умные указатели и прочее) начинается там, где С заканчивается.
То есть одно другому подспорьем не будет. Разве что, синтаксис. Но, думаю, за пол года синтаксис С++ на уровне "С с классами" Вы уже осилили, так что, если цель выучить С для понимания С++, то я не рекомендую.

И уж если учить С, то не по K&R точно. Это, возможно, и неплохое руководство по С, но ужасный учебник по программированию. Не то, чтобы я перечитал кучу книг по С, но есть одна более-менее годная. Название C Programming: A Modern Approach, 2nd Edition. На русском не видел.
И к тому же, да, у K&R даже во втором издании описан не то что не С11, а даже не С99.

Цитата(АлексейX86 @  9.8.2013,  21:04 Найти цитируемый пост)
Под актуальность я также хотел бы узнать стоит ли вообще сейчас в 2013 учить С , когда кругом вакансии С++ и Java?

Безотносительно к С, Вы бы пока на вакансии не смотрели, ей богу. Вам бы программировать научится, а там увидите. К тому времени очень может статься, что никаких С++ и Java не будет (скрестил пальчики smile ).

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


--------------------
PM MAIL WWW GTalk Jabber   Вверх
bsa
Дата 12.8.2013, 15:40 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Согласен с kemiisto.
С и С++ - это инструменты профессиональных программистов. Чтобы понять, что это значит достаточно представить классическую сервировку стола, например:user posted imageПрактически любое блюдо можно есть любым из металлических предметов. Но профессионал знает, что для определенного блюда есть свой инструмент.
Неспроста ходят байки про отстреленную ногу - на этих языках очень легко допустить фатальную ошибку. Зато линейная скорость написания кода выше, чем, например, на паскале.

С и С++ разные языки. Но в то же время, С++ включает в себя С почти полностью (есть серьезные отличия, но несущественные для новичков). Поэтому, при переходе с С++ на С возникнет ощущение попадания в каменный век. Но при этом, сохранятся все привычки, заложенные на этапе работы на С++. В то же время, при переходе из С на С++ получается обратное - как-будто человек из каменного века попал в современный - ему будет очень сложно освоить ту кучу механизмов, которая на него обрушится. В итоге, для "соответствия современности" он будет применять микроскоп для забивания гвоздей, а при упоминаниях пневмомолотка (есть такая штука, судя по телеку, пользуется популярностью на западе) его будет охватывать священный ужас.
PM   Вверх
EvilsInterrupt
Дата 12.8.2013, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Executables research
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 14.7.2007
Где: Железнодорожный, МО, Россия

Репутация: нет
Всего: 9



АлексейX86, 
Моя рекомендация: запишись в ученики к гуру. Спустя некоторое время поймешь что нужно знать, а что нет. Во время выполнения задач гуру, если не будешь филонить, получишь хорошего наставника и опыт.
Как правило у любого опытного человека есть своя копилка задачек, которые вроде бы и сделать надо,но они не так важны по приоритету как текущие. Почти в любой компании есть для этого фильтр в багтрекере "новичок" и там складываются задачи. Начни учиться выполнять действительно серьезные задачи. Учись выполнять их хорошо и что самое главное "выполнять". Очень часто "перфекционизм" стремление сделать хорошо приводит к тому что задача или очень долго делается или вообще забрасывается. Поэтому "выполнять" и подчеркнул. Когда ты займешься реальными задачами, то столкнешься с различными сложностями, которые ранее не видел и решая которые получишь опыт после которого вопросы "учить си или нет?" уже покажутся глупыми. 

Это сообщение отредактировал(а) EvilsInterrupt - 13.8.2013, 13:26
PM MAIL WWW ICQ Jabber   Вверх
АлексейX86
Дата 13.8.2013, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.2.2013

Репутация: нет
Всего: нет



Спасибо всем.
Интересные мысли написали в ответах , есть над чем подумать.
Скачал пока книгу Сатера по С++11 , буду учить.

PM MAIL   Вверх
JackYF
Дата 15.8.2013, 23:03 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(bsa @  12.8.2013,  14:40 Найти цитируемый пост)
Поэтому, при переходе с С++ на С возникнет ощущение попадания в каменный век. Но при этом, сохранятся все привычки, заложенные на этапе работы на С++. В то же время, при переходе из С на С++ получается обратное - как-будто человек из каменного века попал в современный - ему будет очень сложно освоить ту кучу механизмов, которая на него обрушится.


Отлично сказано smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0766 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.