LINUX.ORG.RU

Что почитать человеку начинающему изучать прогрммирование


0

0

Дано: девушка поступившая на факультет computer science. не блондинка. средний уровень компьютерной граммотности.

Нужна книга достаточно подробно и с азов дает введение в программирование. хорошая теоретическая база приветствуется, хотя конечно Кнут думаю будет слишком уж. желательно на английском языке и со ссылками на PDF.

всем спасибо!

★★★★★

Ответ на: комментарий от svyatogor

Structure and Interpretation of Computer Programs, классический учебник. В MIT по нем учатся.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

> Не надо портить человека питоном

Вменяемые лисперы относятся к Питону с симпатией. Сам MIT перевел подготовку EE со Схемы на Питон, так что не нужно насчет "портить".

tailgunner ★★★★★
()

+1. SICP подойдёт просто идеально (ещё можно видео лекций посмотреть).

anonymous
()

я позволю себе оффтопик.

я всегда думал, что в химики идут те, кто еще в школе кидал цинк в аккумуляторную кислоту ну или на крайняк поджигал карбит.

все непотерянные информатики с малолетства рисовали котов на экране zx spectrum'a ну или на крайняк читали рассылку Калашникова о ассемблере под i386.

проявление заинтересованности может проявляться как угодно. весь ужас в том, что с недавних пор на информатику пруться, чтобы "научили меня программировать". нифига, деточка, тебя не научат.

back to topic. если ВУЗ классический, то мое мнение: пусть само барахтается. честно. SICP рулит, но не каждый бородатый программер читал эту достойную книгу. ведь есть дисциплина, есть методика, есть учебники - этого "должно" "хватить", чтоб был достигнут тот уровень, о котором начинающий студент даже не подозревает в начале курса.

Pi ★★★★★
()
Ответ на: комментарий от Pi

> он ничего никуда не перевел. питно введен для иного околокомпутерного курса.

http://tech.mit.edu/V125/N65/coursevi.html:

"Students would be introduced to the department with two required “core” classes: C1 and C2. These classes will focus on electrical engineering and computer science as one integrated topic

[...]

The first four weeks of C1 will be a lot like the first four weeks of 6.001, Abelson said. The difference is that programming will be done in Python and not Scheme."

Так что MIT экспериментирует с Питоном именно как заменой Схеме, и явно не считают, что он что-то "портит".

tailgunner ★★★★★
()
Ответ на: комментарий от ott

> еще могу посоветовать "Алгоритмы: Построение и анализ"

книгу Кормена, Лейзерсона и Ривеста можно рассматривать как классический учебник по теории алгоритмов и справочник а-ля Кнут, но никак не книгу для начинающего изучать программирование (на таком этапе подобная информация просто ни к чему).

twosev ★★
()
Ответ на: комментарий от Pi

Ну, в computer science идут еще и математики, которым практические приложения не особо интересны. Там же много чего фундаментального, именно на computer science уже лет сто как возлагаются надежды по решению задачи об обосновании математики.

anonymous
()
Ответ на: комментарий от anonymous

> именно на computer science уже лет сто как возлагаются надежды по решению задачи об обосновании математики.

в таком случае лучше жевать, честное слово.. ну или почитать хоть чуточку инфы о проблеме обоснования математики: хотя бы какие-нибудь исторические очерки об истоках проблемы и попытках решения.

twosev ★★
()
Ответ на: комментарий от twosev

> ну или почитать хоть чуточку инфы о проблеме обоснования математики: хотя бы какие-нибудь исторические очерки об истоках проблемы и попытках решения.

Это ты мне? Так я как раз над этой проблемой (точнее, над практическими некоторыми её аспектами) работаю последние лет пять. Все, что попытки решения этой задачи выродили, не просто вошло в computer science, а стало её основой - это и теория категорий, и лямбда-исчисление, и логика Рассела, и теории типов, и много чего еще. Сейчас же в этой области много чего интересного делается в теории доказательств, в логиках высшего порядка, и все это находит приложения в CAS, в системах автоматического доказательства и proof assistants, в языках формализации математики (даже в попсовом MathML). Тут огромное поле для работы, и в большей части результатов заинтересованы не только практики.

anonymous
()

Вообще, для совсем уж начинающих надо даже не SICP давать, а HTDP.

anonymous
()
Ответ на: комментарий от anonymous

> Это ты мне?

Угу. Проблемой обоснования математики занималась и занимается исключительно математика. Computer science родилась и получила развитие как раз отсюда: из заключений Рассела, истерик Брауэра и работ Гильберта, но cs - это лишь следствие, которое ушло далеко в сторону. Если ты этим занимаешься, то и называй уж вещи своими именами.

> это и теория категорий, и лямбда-исчисление, и логика Рассела, и теории типов, и много чего еще. Сейчас же в этой области много чего интересного делается в теории доказательств, в логиках высшего порядка

- это всё самая настоящая математика. Впрочем, некоторые ученые мужи и cs относят к математике.. =]

twosev ★★
()
Ответ на: комментарий от twosev

> но cs - это лишь следствие, которое ушло далеко в сторону.

Не все так просто и прямолинейно, как ты рисуешь. Из CS и в обратную сторону новые идеи в математику кочуют. Сейчас же ситуация такая, что формализовать математику, максимально избавившись от интуитивных понятий, описать математику языком математики, можно только в рамках разработки полноценной CAS + системы доказательств. И занимаются этим в CS и именно в CS, которая везде в мире и считается разделом математики, а не инженерной дисциплиной.

> это всё самая настоящая математика.

Всё это и есть CS.

> Впрочем, некоторые ученые мужи и cs относят к математике

Заметь, формально относят. И не "некоторые", а практически все.

anonymous
()
Ответ на: комментарий от anonymous

> И не "некоторые", а практически все.

В нашей стране термина, аналогичного cs, нет. А информатику к математике фактически никто не относит. Тут всё это дело банально относится к дискретке (и это справедливо, я считаю).

> Всё это и есть CS.

Полагаю, проблема спора свелась по Карпу к задаче унификации терминологии, которая в таком случае успешно разрешена. =]

twosev ★★
()
Ответ на: комментарий от twosev

> В нашей стране термина, аналогичного cs, нет.

Вполне возможно. Топикстартер явно сказал "computer science", так что я предполагаю, что речь идет о западном ВУЗе.

> Полагаю, проблема спора свелась по Карпу к задаче унификации терминологии,

К этому сводится 99% всех споров на форумах.

anonymous
()
Ответ на: комментарий от tailgunner

>Так что MIT экспериментирует с Питоном именно как заменой Схеме, и явно не считают, что он что-то "портит".

Вызывающе неверная информация.

Sidrian
()
Ответ на: комментарий от anonymous

Потому, что не с того бока к вопросу подходят. На хрен не надо начинающему понимать, как там что внутри работает. Математические абстракции намного понятнее чем микросхемы и ассемблер.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.