Форум программистов, компьютерный форум, киберфорум
Обо всем!
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
3239 / 2042 / 350
Регистрация: 24.11.2012
Сообщений: 4,897
1

С++ для начинающих. Мысли вслух

04.01.2013, 14:11. Показов 2358. Ответов 40
Метки нет (Все метки)

Доброго времени суток.

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

Дисклеймер
Пост вероятно получится относительно длинным, при этом в нем не будет ничего нового, только очевидные вещи, находящиеся на поверхности. Все высказывания субъективны. Ссылки с конкретными примерами не приводятся намеренно, чтобы не задеть чувства авторов. Орфография и пунктуация никогда не были моей сильной стороной.


Не страшно? Поехали!

Ctrl+C, Ctrl+V
Очень много тем с банально скопированым текстом задания. Пожалуй, по этому пункту сказать решительно нечего. Такие студенты всегда были и еще будут. И дипломы защищали на "отл" люди, не способные написать ни строчки кода. Иногда накатывает и хочется послать их подальше со специальности (о профессии пока и речи нет), но потом становится все равно - они сами решили потратить время обучения впустую.

cout, следовательно, C++
Часто приходится наблюдать откровенную кашу в голове студентов в виде неспособности отличить C от C++. Ребят, подскажите: почему так происходит и откуда у этой проблемы ноги растут? Не могу придумать на кого свалить, кроме как на преподавателей. Сам наблюдал, как в очень уважаемом ВУЗе нашего города студенты-математики писали в каком-то древнем билдере на языке Си, но при этом для вывода использовали cout, выделяли память для массивов с помощью new и очень удивлялись вызовам malloc.

Зачем сознательно создавать путаницу в головах студентов? Слишком страшен синтаксис, используемый в printf? Слишком сложно использовать malloc? Лично я не считаю это вескими причинами.

Вспоминая свой первый курс, у нас такой проблемы не было. Дали Linux, gcc. Что, какой g++? Забыли, пишем на Pure C. Да, проблемы были. Кто-то терялся в командной строке, кому-то было сложно поставить себе дистрибутив для работы, а когда программы стали состоять из нескольких файлов, пришлось еще учиться писать Makefile. Тем не менее, справились. Кто-то сам, кому-то помогли. Но работа в таком режиме помогла понять, что за IDE не стоит никакой магии.

У меня возникает вопрос. Может, я ошибаюсь, и в других учебных заведениях сразу говорят, что будем изучать С++, но начнем с его сишной части, не углубляясь пока в классы? Но для простоты пока будем использовать некоторые возможности С++. Если кто-нибудь в курсе, проясните, пожалуйста, этот момент.

Случается, что за помощью обращается человек с заданием явно академического плана, где стандартные вещи необходимо реализовать вручную. В итоге получает решение с использованием STL. Да, это лаконично и аккуратно. Да, я понимаю, что мы находимся в разделе С++ и хотим по максимуму использовать возможности языка и стандартной библиотеки для написания красивых решений. Но от нас ждали другого, и часто это можно понять по уровню сложности задания и формулировкам.

Вопрос: можно и нужно ли бороться с проблемой смешения двух языков студентами?

Горшочек, вари!
Еще раз о каше, дамы и господа. В этот раз - об оформлении исходого кода. Случалось видеть и полное отсутствие какого-либо форматирования, и просто бессистемное оформление кода. Есть примеры, в которых я прослеживаю логику оформления, но читать такой код не становится проще. Да, какое-то выравнивание есть. Но я не привык к такому его виду. И все вокруг меня не привыкли. Я сейчас не говорю о том, где расставлять фигурные скобки и сколько пробелов использовать для отступов. Но оформление элементарно должно быть. Отделить операторы пробелами, расположить по одной инструкции на строку, добавить пустые строки для разбиения кода на логические блоки - это все не так сложно, но сэкономит время-нервы и тем, кто желает помочь, и самому автору (хотя, наверное, сам он может этого и не осознавать).

Вопрос: как можно приучить к оформлению исходного кода?
Вспоминая практику своих преподавателей, код, в котором отсутствует форматирование не принимается. Без вопросов. В учебной практике можно продолжать придерживаться этого правила, в этом проблем не вижу. Можно ли что-нибудь поделать в рамках форума? Игнорировать темы, авторы которых не постарались придать коду аккуратный вид, наверное, не стоит. В конце концов, на форум обращаются с другими вопросами. Конечно, можно скопировать себе код, отформатировать одной из доступных утилит, но вы же понимаете, что лень. Иногда не приходится компилировать и запускать код, чтобы найти в нем ошибки. Можно прикрепить тему со списком соответствующих утилит. Но очень сомневаюсь, что кто-то будет заглядывать в нее.

Вместо заключения
Были и еще какие-то мысли о наболевшем, но они либо забылись, либо показались несущественными. Спасибо всем, кто дочитал.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.01.2013, 14:11
Ответы с готовыми решениями:

Мысли вслух
Почему собственно при оценке эффективности рекламы высчитывают именно отношение показов к кликам, а...

мысли вслух
Люди, давайте немного задумаемся!

Аварийное питание (мысли вслух)
Бывают ситуации, когда при отключении сетевого напряжения, необходимо, что бы устройство продолжало...

Робот SWG - мысли вслух
Поломав около года голову над поворотной платформой своего робота (для краткости я также называю ее...

__________________
40
4197 / 1789 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
04.01.2013, 18:08 2
Цитата Сообщение от 0x10 Посмотреть сообщение
Не могу придумать на кого свалить, кроме как на преподавателей. Сам наблюдал, как в очень уважаемом ВУЗе нашего города студенты-математики писали в каком-то древнем билдере на языке Си, но при этом для вывода использовали cout, выделяли память для массивов с помощью new и очень удивлялись вызовам malloc.
При чём здесь преподаватели, когда приходится учить языку "студентов" не знающих вообще ни одного языка, выключая русский? Виноваты здесь те, кто не определил их в психушку. Некоторые даже уверены в том, что в институте компы стоят для того, чтоб они на них играли. Обычно в контролстрайк.

Добавлено через 1 минуту
Цитата Сообщение от 0x10 Посмотреть сообщение
Вспоминая свой первый курс, у нас такой проблемы не было.
И после этого сваливаешь на препов?! Однако! Или проблема первый курс вспоминает, а не ты? Так её же вроде не было?

Добавлено через 4 минуты
Цитата Сообщение от 0x10 Посмотреть сообщение
Вспоминая практику своих преподавателей, код, в котором отсутствует форматирование не принимается.
А теперь код уже вспоминает логику.
0
3239 / 2042 / 350
Регистрация: 24.11.2012
Сообщений: 4,897
04.01.2013, 19:04  [ТС] 3
Цитата Сообщение от taras atavin Посмотреть сообщение
При чём здесь преподаватели, когда приходится учить языку "студентов" не знающих вообще ни одного языка, выключая русский?
Минимальное требование к студентам на первом курсе - желательно знать основы какого-нибудь языка программирования. Программа построена таким образом, чтобы быть понятной для студентов любого уровня. Никто не будет с первого же дня давать крутой материал, рассчитывая на предварительную подготовку, которой может и не быть. Таким образом, программа допускает наличие студентов без подготовки. И такие будут. А дальше - уж если преподаватель пишет ерунду, то студенты повторяют. Мне хочется узнать: имеет ли место такая ситуация? Или же просто студенты сами что-то упускают по невнимательности.

Цитата Сообщение от taras atavin Посмотреть сообщение
Виноваты здесь те, кто не определил их в психушку.
Пожалуй, я не настолько ненавижу людей.

Цитата Сообщение от taras atavin Посмотреть сообщение
И после этого сваливаешь на препов?! Однако! Или проблема первый курс вспоминает, а не ты? Так её же вроде не было?
Поясню: у нас все было достаточно однозначно, но ручаться за другие заведения я не могу.

Цитата Сообщение от taras atavin Посмотреть сообщение
А теперь код уже вспоминает логику.
Не понял смысла фразы.
0
~ Эврика! ~
1254 / 1003 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
04.01.2013, 23:21 4
Цитата Сообщение от 0x10 Посмотреть сообщение
Можно ли что-нибудь поделать в рамках форума? Игнорировать темы, авторы которых не постарались придать коду аккуратный вид, наверное, не стоит. В конце концов, на форум обращаются с другими вопросами. Конечно, можно скопировать себе код, отформатировать одной из доступных утилит, но вы же понимаете, что лень.
Напрячь сервер форума прогонять все исходники в исходник-тегах через соответствующий pretty-printer? ВырвиглаПлохое наименование переменных это не лечит, правда.

Цитата Сообщение от 0x10 Посмотреть сообщение
Мне хочется узнать: имеет ли место такая ситуация? Или же просто студенты сами что-то упускают по невнимательности.
Скорее всем пофиг. Работает — и ладно. Потому что курс языка надо вычитать за полгода-год с учётом того, что надо ещё подтягивать тех, кто совсем не бум-бум, и того, что ещё валом других дисциплин.

И если я правильно понял выражение "сишная часть" — то это тупо синтаксис и "императивные языки программирования 101". Тут вообще нет принципиальной разницы, что за язык и каким заклинанием можно что-то считать из файла или выделить памяти.
0
3239 / 2042 / 350
Регистрация: 24.11.2012
Сообщений: 4,897
05.01.2013, 07:21  [ТС] 5
Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
Напрячь сервер форума прогонять все исходники в исходник-тегах через соответствующий pretty-printer?
Была такая мысль. Но есть один минус: допустим, у меня используется самое-лучшее-оформление-кода-в-мире и я не хочу, чтобы оно менялось после вставки на форум. Т.е. нужна еще и галочка "Не форматировать код", которая по умолчанию будет выключена.
0
159 / 159 / 30
Регистрация: 09.11.2012
Сообщений: 1,008
05.01.2013, 07:55 6
МНОГО "сцудентов-погромистов" учатся для того, чтобы где-нибудь учиться. А погромист - это престижно. Вот и получаются такие. Те, кому это интересно пишут нормально.
0
386 / 212 / 102
Регистрация: 09.04.2012
Сообщений: 635
05.01.2013, 08:53 7
Новичок не знает, как вопрос сформулировать, так как нет знаний, которые позволят сформулировать вопросы. Большинство студентов таковы, так что не удивительно, что они приходят на форум, чтобы им помогли. Студенты обращаются на форум, совсем не потому что они ленивые, глупые или ничего не делают, а просто у них еще нет нужных знаний. Чтобы у студентов подобные знаний появились, нужно чтобы им кто-то в жизни или на форуме объяснял очень подробно и разжевывал, так как самостоятельно понять совершенно нереально. И желательно чтобы были примеры готового кода, на котором они смогли бы научиться, и форум им дает такую возможность, предоставляя решенные задачи. Самостоятельно разобраться и сделать задачи нереально.

НЕ умея формулировать вопрос, создать запрос в поисковую систему не получится, и в любом случае возникнет проблема с выделением из огромного потока, правильной страницы. Чтобы сформулировать запрос, нужно знать точные термины.

Чтобы использовать правильное оформление кода, его нужно знать. А чтобы его знать, нужно чтобы объясняли самостоятельно на поставленные вопросы, а не отправляли не в гугл ( на одном из форумов (это был codenet) я за отправление в гугл отправил на три буквы за что и был забанен, а вопрос был следующим "как написать компилятор"). Проблема в том, что мало кто объясняет теорию. Иногда у меня складывается впечатление, что большинство не знают, а те кто знает, на подобных форумах не отвечают, так как у них нет времени ( они работают и получают большие деньги за свою работу, делая проекты AAA, которые издаются крупнейшими издательскими компаниями по всему миру)

Недавно я тут в форуме "С для начинающих" встретил задачу, которая явно профессиональная и уровня кандидатской или монографии. И работа над которой должна продолжаться несколько месяцев. А студенту ее дали на 2 курсе. С ней и выпускник то не каждый справится.
0
159 / 159 / 30
Регистрация: 09.11.2012
Сообщений: 1,008
05.01.2013, 09:43 8
asidorchenko, я не зная, например, ЛИСПа могу нормально его написать. Красиво, в смысле. Отступы, все дела. Те, кто этого не делает - просто ленивы.
0
3239 / 2042 / 350
Регистрация: 24.11.2012
Сообщений: 4,897
05.01.2013, 09:59  [ТС] 9
Цитата Сообщение от mokojumbot Посмотреть сообщение
А погромист - это престижно. Вот и получаются такие.
Увы... Но ничего не могу тут сказать, т.к. никогда не понимал такой позиции. Всегда считал, что надо выбирать то, что нравится, а не то, что навязано со стороны.

asidorchenko, попробую резюмировать по поводу поиска информации. На что нужно обратить внимание во время выдачи материала студентам:
1. Указать возможные источники информации.
Сюда относятся:
- ссылки на книги, вплоть до главы и раздела с информацией;
- man pages. Случалось наблюдать, когда на рекомендацию "почитать man man" отправлялись в гугл и по первой ссылке находили ссылку на страницу вики о музыкальной группе.

2. Отметить ключевые слова для поиска.

3. Объяснить принцип форматирования.

Цитата Сообщение от asidorchenko Посмотреть сообщение
Недавно я тут в форуме "С для начинающих" встретил задачу, которая явно профессиональная и уровня кандидатской или монографии
Если не сложно, можно в личку ссылку на тему? Из интереса.

Цитата Сообщение от mokojumbot Посмотреть сообщение
я не зная, например, ЛИСПа могу нормально его написать.
Потому что Вы уже знаете основные принципы. Студенты, похоже, первое время не видят необходимости и им неочевидно, что может быть такая потребность.
0
Модератор
Эксперт NIX
6354 / 2245 / 97
Регистрация: 24.05.2011
Сообщений: 12,840
Записей в блоге: 8
05.01.2013, 11:41 10
Цитата Сообщение от 0x10 Посмотреть сообщение
Если не сложно, можно в личку ссылку на тему?
Не, лучше сюда, в эту тему. Мне, например, тоже интересно. И я уверен, что не мне одному.
0
386 / 212 / 102
Регистрация: 09.04.2012
Сообщений: 635
05.01.2013, 12:27 11
Цитата Сообщение от 0x10 Посмотреть сообщение
Если не сложно, можно в личку ссылку на тему? Из интереса.
Нет. Примерный уровень задачи это практическая реализация B-дерева
http://en.wikipedia.org/wiki/B-tree
0
1999 / 1599 / 488
Регистрация: 31.05.2009
Сообщений: 2,990
05.01.2013, 14:07 12
Цитата Сообщение от 0x10 Посмотреть сообщение
Очень много тем с банально скопированым текстом задания. Пожалуй, по этому пункту сказать решительно нечего. Такие студенты всегда были и еще будут. И дипломы защищали на "отл" люди, не способные написать ни строчки кода. Иногда накатывает и хочется послать их подальше со специальности (о профессии пока и речи нет), но потом становится все равно - они сами решили потратить время обучения впустую.
Дело в том, что не каждый кто создаёт такие темы учится на программиста. Сейчас программирование преподают, по-моему, всем кому не лень. Всё, что нужно таким ТС, это сдать зачёт, после чего о программировании благополучно забыть.
Цитата Сообщение от 0x10 Посмотреть сообщение
Часто приходится наблюдать откровенную кашу в голове студентов в виде неспособности отличить C от C++. Ребят, подскажите: почему так происходит и откуда у этой проблемы ноги растут? Не могу придумать на кого свалить, кроме как на преподавателей. Сам наблюдал, как в очень уважаемом ВУЗе нашего города студенты-математики писали в каком-то древнем билдере на языке Си, но при этом для вывода использовали cout, выделяли память для массивов с помощью new и очень удивлялись вызовам malloc.
Зачем сознательно создавать путаницу в головах студентов? Слишком страшен синтаксис, используемый в printf? Слишком сложно использовать malloc? Лично я не считаю это вескими причинами.
По поводу использование древних инструментов я как-то уже говорил: вся учебная программа(назовём это так) завязана на использовании именно этих инструментов. Для новых её необходимо перерабатывать, а преподавателей соответственно переучивать...
Что касается смешивание языков, то тут думаю не стоит забывать, что тот достандартный C++, который в большинстве случаев и преподают, всё-таки намного больше похож на C, чем сегодняшний.
0
2546 / 1640 / 149
Регистрация: 05.06.2011
Сообщений: 4,619
05.01.2013, 15:38 13
Цитата Сообщение от asidorchenko Посмотреть сообщение
Чтобы у студентов подобные знаний появились, нужно чтобы им кто-то в жизни или на форуме объяснял очень подробно и разжевывал, так как самостоятельно понять совершенно нереально
Во-первых, таки реально. Таки смею тебя уверить, авторы многих учебников писали их не просто для получения бабла, а именно чтобы объяснить читателю нечто новое. И многим из них таки действительно это удалось. Во-вторых, как ты представляешь себе -- на форуме! -- подробное разъяснение теории функций комплексной переменной, например? Таки форум может помочь человеку, который процентов на 90 как минимум знает то, что ему надо.
Цитата Сообщение от asidorchenko Посмотреть сообщение
на одном из форумов (это был codenet) я за отправление в гугл отправил на три буквы за что и был забанен, а вопрос был следующим "как написать компилятор"
Начал с того, что человек может не знать, как правильно сформулировать вопрос, а потом для примера приводишь вопрос, на который гугль на первой же странице явно даёт пару неглупых ссылок. Видимо, в ответ кто-то должен наколотить Ахо с Ульманом?
Сужу по случаю исключительно по твоему описанию и, возможно, неправильно -- но таки надеюсь, с тех пор ты заметно поумнел. Иначе и тут скоро забанят.
Цитата Сообщение от asidorchenko Посмотреть сообщение
Недавно я тут в форуме "С для начинающих" встретил задачу, которая явно профессиональная и уровня кандидатской или монографии. И работа над которой должна продолжаться несколько месяцев. А студенту ее дали на 2 курсе. С ней и выпускник то не каждый справится.
B-дерево? Разжёванное Кнутом до консистенции манной каши? Доступное в исходниках в десятке мест? Кандидатская? С которой не каждый выпускник справится? Хреновые ж у тебя выпускники, должен заметить.
0
4197 / 1789 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
05.01.2013, 16:01 14
Цитата Сообщение от 0x10 Посмотреть сообщение
Минимальное требование к студентам на первом курсе - желательно знать основы какого-нибудь языка программирования. Программа построена таким образом, чтобы быть понятной для студентов любого уровня. Никто не будет с первого же дня давать крутой материал, рассчитывая на предварительную подготовку, которой может и не быть.
Они не знают даже языков общения. Ни одного, включая русский. Возможности же учить их на первом курсе с яслей до программирования нет. При этом есть образовательный стандарт, по которому они должны хоть как то знать программирование. Какой ещё возможен результат?

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

Добавлено через 4 минуты
Причём, и на кандидатской, и на гранте, и при написании монографии дело не в размере задачи, даже если это прога, а в том, что информации для её написания в полном объёме нет в принципе, надо проводить исследования. И не язык учить, а изучать реальный объект/систему, прогой моделируемый, разрабатывать новые методы в области комбинаторики и тому подобное.
0
Антикодер
1872 / 848 / 48
Регистрация: 15.09.2012
Сообщений: 3,000
05.01.2013, 17:10 15
я бы отвечал на вопросы новичков так, чтобы привить им интерес к программированию, показывая как применяются их задачки в реальных условиях(чтоб им реально это помогало в жизни). А форматирование кода, отличие C от C++ и прочее - это побочные знания, которые через 200 лет никому уже будут не нужны.
0
4197 / 1789 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
09.01.2013, 09:37 16
Цитата Сообщение от mokojumbot Посмотреть сообщение
я не зная, например, ЛИСПа могу нормально его написать. Красиво, в смысле. Отступы, все дела. Те, кто этого не делает - просто ленивы.
А тебе не приходило в голову, что именно от лени и придуманы все хорошие стили? Лень в данном случае - двигатель прогресса, а не тормоз, а кривое форматирование, или отсутствие форматирования как такового - надёднейший признак не только патологической тяги к трудностям, но и желания помучаться. Бывает трудоголизм, а у них трудоголомазодебелизм.
0
Эксперт С++
5816 / 3468 / 356
Регистрация: 08.02.2010
Сообщений: 7,448
09.01.2013, 15:20 17
Цитата Сообщение от 0x10 Посмотреть сообщение
можно и нужно ли бороться с проблемой смешения двух языков студентами?
Можно, нужно.

Цитата Сообщение от 0x10 Посмотреть сообщение
как можно приучить к оформлению исходного кода?
Мне почему-то ничего эффективнее физических методов воздействия в голову не приходит, но по понятным причинам их применение представляется затруднительным.

Цитата Сообщение от asidorchenko Посмотреть сообщение
Новичок не знает, как вопрос сформулировать, так как нет знаний, которые позволят сформулировать вопросы. Большинство студентов таковы, так что не удивительно, что они приходят на форум, чтобы им помогли. Студенты обращаются на форум, совсем не потому что они ленивые, глупые или ничего не делают, а просто у них еще нет нужных знаний. Чтобы у студентов подобные знаний появились, нужно чтобы им кто-то в жизни или на форуме объяснял очень подробно и разжевывал, так как самостоятельно понять совершенно нереально. И желательно чтобы были примеры готового кода, на котором они смогли бы научиться, и форум им дает такую возможность, предоставляя решенные задачи. Самостоятельно разобраться и сделать задачи нереально.
Бред же. Если есть желание получить знания (а не оценку), то без проблем гуглятся книги, учебники, и все это изучается без всякого разжевывания со стороны.

Цитата Сообщение от asidorchenko Посмотреть сообщение
А чтобы его знать, нужно чтобы объясняли самостоятельно на поставленные вопросы, а не отправляли не в гугл
Если человек не научится самостоятельно находить ответы на вопросы, да и желания у него такого нет, то как специалист он ничего не стоит. А вопросы на этом форуме часто задают просто элементарные, для решения которых совсем не обязательно быть мастером Google-fu.

Цитата Сообщение от asidorchenko Посмотреть сообщение
на одном из форумов (это был codenet) я за отправление в гугл отправил на три буквы за что и был забанен, а вопрос был следующим "как написать компилятор"
Потому что вопрос неправильный (тебя ведь не удовлетворил бы ответ «Напиши лексический анализатор, потом к нему синтаксический анализатор, к ним прикрути кодогенератор, а затем, если остались силы, реализуй различные оптимизации», правда?). А правильный вопрос был бы таким — «Подскажите хорошую литературу по написанию компиляторов»

И забанили тебя в принципе справедливо.

Цитата Сообщение от asidorchenko Посмотреть сообщение
Проблема в том, что мало кто объясняет теорию
Потому что теория обычно — это достаточно объемный и сложный для объяснения «на пальцах» материал. И если ты не хочешь сам попытаться его изучить (проясняя уже конкретные вопросы на форуме), то неудивительно, что мало кто хочет его за тебя разжевывать.

И чтоб два раза не вставать: почитай вот это руководство. Ручаюсь, это тебе не раз пригодится в дальнейшем.

Цитата Сообщение от asidorchenko Посмотреть сообщение
Недавно я тут в форуме "С для начинающих" встретил задачу, которая явно профессиональная и уровня кандидатской или монографии
Цитата Сообщение от asidorchenko Посмотреть сообщение
Примерный уровень задачи это практическая реализация B-дерева
/me пошел писать кандидатскую.

Цитата Сообщение от XRuZzz Посмотреть сообщение
А форматирование кода, отличие C от C++ и прочее - это побочные знания, которые через 200 лет никому уже будут не нужны
Тут загвоздка в том, что и ты через 200 лет никому не будешь нужен, поэтому стоит заглядывать вперед на более скромные периоды времени. Скажем, лет на 20. А в ближайшие 20 лет ты, как программист на C/C++ (предположим), должен писать хороший код, который будет легко впоследствии читать и при необходимости изменять другим программистам. Так что все это имеет большое значение.
0
386 / 212 / 102
Регистрация: 09.04.2012
Сообщений: 635
10.01.2013, 10:07 18
Nameless One

Бред же. Если есть желание получить знания (а не оценку), то без проблем гуглятся книги, учебники, и все это изучается без всякого разжевывания со стороны.
Если человек не научится самостоятельно находить ответы на вопросы, да и желания у него такого нет, то как специалист он ничего не стоит. А вопросы на этом форуме часто задают просто элементарные, для решения которых совсем не обязательно быть мастером Google-fu.
Потому что вопрос неправильный (тебя ведь не удовлетворил бы ответ «Напиши лексический анализатор, потом к нему синтаксический анализатор, к ним прикрути кодогенератор, а затем, если остались силы, реализуй различные оптимизации», правда?). А правильный вопрос был бы таким — «Подскажите хорошую литературу по написанию компиляторов»
Потому что теория обычно — это достаточно объемный и сложный для объяснения «на пальцах» материал. И если ты не хочешь сам попытаться его изучить (проясняя уже конкретные вопросы на форуме), то неудивительно, что мало кто хочет его за тебя разжевывать.
Гугли, что такое пушка "Дора" и какой у нее калибр и что произойдет когда снаряд из этой пушки обрушится на твой дом.

Компьютерная литература является дефицитом. Дефицит в экономической теории это когда спрос превышает предложение. Таким образом, взять литературу законным способом либо неоткуда ( является библиографической редкостью), либо является незаконным и преследуется по закону. Выбор у человека только один - бросить обучение в данной сфере и идти работать на низкоквалифицированную работу. Таким образом, вместо того, чтобы писать "гугли", надо писать и говорить новичкам следующий правильный ответ "бросай занятие программированием, тебя никто тут не ждет и иди на три буквы". Список литературы по теме, я и сам способен найти без указки, что его нужно гуглить.
0
Эксперт С++
5816 / 3468 / 356
Регистрация: 08.02.2010
Сообщений: 7,448
10.01.2013, 11:59 19
Цитата Сообщение от asidorchenko Посмотреть сообщение
Компьютерная литература является дефицитом. Дефицит в экономической теории это когда спрос превышает предложение. Таким образом, взять литературу законным способом либо неоткуда ( является библиографической редкостью), либо является незаконным и преследуется по закону. Выбор у человека только один - бросить обучение в данной сфере и идти работать на низкоквалифицированную работу. Таким образом, вместо того, чтобы писать "гугли", надо писать и говорить новичкам следующий правильный ответ "бросай занятие программированием, тебя никто тут не ждет и иди на три буквы". Список литературы по теме, я и сам способен найти без указки, что его нужно гуглить.
Т.е. я правильно понял, литература по теме «Разработка компиляторов» — это дефицит, ее затруднительно добыть законным путем, да?

Цитата Сообщение от asidorchenko Посмотреть сообщение
Гугли, что такое пушка "Дора" и какой у нее калибр и что произойдет когда снаряд из этой пушки обрушится на твой дом.
К чему ты это сказал?
0
386 / 212 / 102
Регистрация: 09.04.2012
Сообщений: 635
10.01.2013, 12:28 20
Цитата Сообщение от Nameless One Посмотреть сообщение
Т.е. я правильно понял, литература по теме «Разработка компиляторов» — это дефицит, ее затруднительно добыть законным путем, да?
В 2000х старые книжные магазины исчезли. Бывает, я захожу в книжные магазины. обычно я пролистываю полки и внутри составляю "интуитивный" приблизительный "список" того, что есть. Книгу Ахо, Ульмана по разработке компиляторов я не видел, с чего книгу 1970х годов вдруг будут заново издавать, коммерчески это совершенно невыгодно, так как затраты не окупятся. А тиражи обычно исчисляются парой тысяч, и эта пара тысяч на всю страну, естественно это ситуация дефицита. Выбор книг в книжных очень маленький. Я знал о ней, когда спрашивал, и я даже ей пользовался и читал в то время, когда спрашивал.

Книги в магазины попадают на непродолжительное время. Отмечу, что они не переиздаются: например серия книг по WinAPI Windows от Microsoft Press - Petzold, Pietrek, Richter, Kruglinsky, Solomon, Russinovich как были изданы в конце 1990х-начале 2000х так с тех пор и не переиздавались в России, то есть их уже не купить, несмотря на то, что в них есть потребность. Аналогичное относится и к книгам по алгоритмам, изданным в начале 2000х. Книги становятся библиографической редкостью. Скачивание является незаконным, нарушением авторского права. Права у издательства. Та же самая ситуация и с программным обеспечением: его просто изымают из оборота.

Авторское право вечно, так как распространяется на перевод и на переиздание.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.01.2013, 12:28

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Как правильно говорить вслух команды типа du -sh
du минус sh? du тире sh?

Букмарклет читалки вслух Google Translate. Кириллица неадекватна
В результате 15 минут моего неловкого ковыряния в двух букмарклетах получился этот. Он читает...

Мысли материальны?
Который раз убеждаюсь! Недавно вот подумал про одного тиммейта из школьной баскетбольной...

Мысли о установщике 10.8
Дорогие друзья, у меня недавно мак и не могу понять одной вещи: Скачал N-ую программу из...


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

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

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