* [devel] [JT] Q: C/C++ study
@ 2003-02-25 3:42 Anton V. Denisov
2003-02-25 3:56 ` Vitaly Lugovsky
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Anton V. Denisov @ 2003-02-25 3:42 UTC (permalink / raw)
To: devel
Приветствую всех.
Прошу прощения за отступление от темы рассылки.
Решил я взяться серьёзно за изучение языков программирования C/C++. В
дальнейшем, я надеюсь, мне это пригодится. Собственно вопросы:
1) Какую книгу порекомендуете? В ней меня интересует не только описание
особенностей конкретного из языков, но и таких вещей как процесс компиляции
программы, строение бинарных файлов и процедура их запуска и выполнения ОС,
работа с памятью и аппаратным обеспечением, ну и другие фундаментальные
вещи, больше относящиеся к общей теории языков программирования и методов
транслирования. Желательно, чтобы эта книга была ориентирована именно на
начинающих программистов и написана нормальным языком.
2) Я такой человек, что на чужих примерах (исходниках) учусь быстрее,
поэтому исходники каких из программ, которые есть в Сизифе, порекомендуете
посмотреть, чтобы посмотреть примеры грамотного и безопасного (это для меня
тоже важно) программирования?
3) Из опыта знаю, что любые новые вещи изучаются гораздо быстрее, если есть
конкретные задачи. Поэтому было бы идеальным заиметь некий "задачник" с
такого типа заданиями: Написать программу, которая будет делать то-то и
то-то... Примерный алгоритм такой-то, можете его усовершенствовать... При
написании использовать функции: (перечень функций)...
Имея такое задание очень удобно сначала сделать man 3 имя функции, потом
подумать, как их применить в алгоритме и написать собственно программу.
4) Где взять документацию по утилите make с хорошими примерами и
объяснениями. info make это конечно хорошо, но мне не нравится сама
технология info, когда приходится переходить по куче ссылок, вместо того,
чтобы последовательно читать страницу за страницей. Может у кого что есть
получше? В пакете doc-gnu-ru-html есть похожая документация, но по
automake/autoconf, я же сначала хочу освоить "чистый" make.
5) Ещё было бы неплохо получить плугины для Vim'а, которых нет в Сизифной
его сборке, но которые реально могут помочь программисту и сэкономить его
время. Что-нибудь типа ClassBrowser или CodeCompletition или ещё что-нибудь
такое. Сейчас я использую связку vim-enhanced + ctags, но, полагаю, что её
можно сделать ещё более мощной.
К сожалению, я имею только e-mail доступ к Интернету, поэтому приму в
почту любые отзывы по поставленным вопросам.
С уважением, Антон В. Денисов.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] [JT] Q: C/C++ study
2003-02-25 3:42 [devel] [JT] Q: C/C++ study Anton V. Denisov
@ 2003-02-25 3:56 ` Vitaly Lugovsky
2003-02-25 8:13 ` Alex Ott
2003-02-25 11:03 ` [devel] " Dmitry V. Levin
2003-02-25 8:34 ` Stanislav Ievlev
2003-02-25 9:16 ` Igor Homyakov
2 siblings, 2 replies; 9+ messages in thread
From: Vitaly Lugovsky @ 2003-02-25 3:56 UTC (permalink / raw)
To: devel
On Tue, 25 Feb 2003, Anton V. Denisov wrote:
> Прошу прощения за отступление от темы рассылки.
> Решил я взяться серьёзно за изучение языков программирования
> C/C++. В
> дальнейшем, я надеюсь, мне это пригодится. Собственно вопросы:
А можно попробовать отговорить от этой глупой затеи? Спасибо.
1) Нельзя изучать языки программирования. Это вредно. Изучать
надо парадигмы и концепции, и лежащую в основе всего этого
математику. После чего конкретные языки приложатся, вообще без
проблем.
2) C и C++ - языки, имеющие очень узкую область применимости. В
большинстве случаев из "реальной жизни" им абсолютно не место.
Так что, конечно же, эти знания и могут пригодиться, но
маловероятно, и только в том случае, если будут более другие,
более востребованные знания.
3) Не имея достаточно фундаментальных знаний, изучать C, а тем
более - C++ - крайне опасно. Это приведёт к приобретению
огромного количества вредных привычек, каше в голове и полному
непониманию сути CS.
> 2) Я такой человек, что на чужих примерах (исходниках) учусь
> быстрее,
> поэтому исходники каких из программ, которые есть в Сизифе,
> порекомендуете
> посмотреть, чтобы посмотреть примеры грамотного и безопасного
> (это для меня
> тоже важно) программирования?
Грамотное и безопасное программирование как-то плохо сочетается
с C/C++. С такими требованиями - в другую сторону рулить:
apt-get install hugs98 swi-prolog ocaml ocamlcl ocaml-docs
> 4) Где взять документацию по утилите make с хорошими примерами
> и
> объяснениями. info make это конечно хорошо, но мне не нравится
> сама
> технология info, когда приходится переходить по куче ссылок,
> вместо того,
> чтобы последовательно читать страницу за страницей.
А texi2dvi на что, спрашивается?!?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] [JT] Q: C/C++ study
2003-02-25 3:56 ` Vitaly Lugovsky
@ 2003-02-25 8:13 ` Alex Ott
2003-02-25 9:09 ` [devel] " Michael Shigorin
2003-02-25 11:03 ` [devel] " Dmitry V. Levin
1 sibling, 1 reply; 9+ messages in thread
From: Alex Ott @ 2003-02-25 8:13 UTC (permalink / raw)
To: devel
>On Tue, 25 Feb 2003, Anton V. Denisov wrote:
....
>> 2) Я такой человек, что на чужих примерах (исходниках) учусь
>> быстрее,
>> поэтому исходники каких из программ, которые есть в Сизифе,
>> порекомендуете
>> посмотреть, чтобы посмотреть примеры грамотного и безопасного
>> (это для меня
>> тоже важно) программирования?
>
> Грамотное и безопасное программирование как-то плохо сочетается
>с C/C++. С такими требованиями - в другую сторону рулить:
>
>apt-get install hugs98 swi-prolog ocaml ocamlcl ocaml-docs
я добавлю сюда свои 3 копейки :-)
apt-get install plt2
и потом можно сидеть в обнимку с sicp и пробовать примеры оттуда :-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] [JT] Q: C/C++ study
2003-02-25 3:56 ` Vitaly Lugovsky
2003-02-25 8:13 ` Alex Ott
@ 2003-02-25 11:03 ` Dmitry V. Levin
2003-02-25 19:49 ` Vitaly Lugovsky
1 sibling, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2003-02-25 11:03 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 502 bytes --]
On Tue, Feb 25, 2003 at 06:56:37AM +0300, Vitaly Lugovsky wrote:
> > Прошу прощения за отступление от темы рассылки.
> > Решил я взяться серьёзно за изучение языков программирования
> > C/C++. В
> > дальнейшем, я надеюсь, мне это пригодится. Собственно вопросы:
>
> А можно попробовать отговорить от этой глупой затеи? Спасибо.
Не надо человека отговаривать, раз уж он спрашивает.
Может быть, ему это не для души надо, а для заработка.
P.S. И давайте дискуссию на этом разводить не будем.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] [JT] Q: C/C++ study
2003-02-25 11:03 ` [devel] " Dmitry V. Levin
@ 2003-02-25 19:49 ` Vitaly Lugovsky
0 siblings, 0 replies; 9+ messages in thread
From: Vitaly Lugovsky @ 2003-02-25 19:49 UTC (permalink / raw)
To: ALT Devel discussion list
On Tue, 25 Feb 2003, Dmitry V. Levin wrote:
> > > Прошу прощения за отступление от темы рассылки.
> > > Решил я взяться серьёзно за изучение языков программирования
> > > C/C++. В
> > > дальнейшем, я надеюсь, мне это пригодится. Собственно вопросы:
> >
> > А можно попробовать отговорить от этой глупой затеи? Спасибо.
>
> Не надо человека отговаривать, раз уж он спрашивает.
> Может быть, ему это не для души надо, а для заработка.
Хе. Если для заработка - то тем более мой путь ему наиболее
подходит. Иначе он и на C/C++ погано писать станет...
> P.S. И давайте дискуссию на этом разводить не будем.
Ok, ok...
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] [JT] Q: C/C++ study
2003-02-25 3:42 [devel] [JT] Q: C/C++ study Anton V. Denisov
2003-02-25 3:56 ` Vitaly Lugovsky
@ 2003-02-25 8:34 ` Stanislav Ievlev
2003-02-25 9:16 ` Igor Homyakov
2 siblings, 0 replies; 9+ messages in thread
From: Stanislav Ievlev @ 2003-02-25 8:34 UTC (permalink / raw)
To: devel
On Tue, Feb 25, 2003 at 03:42:53PM +1200, Anton V. Denisov wrote:
> Приветствую всех.
>
> Прошу прощения за отступление от темы рассылки.
> Решил я взяться серьёзно за изучение языков программирования C/C++. В
> дальнейшем, я надеюсь, мне это пригодится. Собственно вопросы:
>
> 1) Какую книгу порекомендуете? В ней меня интересует не только описание
> особенностей конкретного из языков, но и таких вещей как процесс компиляции
> программы, строение бинарных файлов и процедура их запуска и выполнения ОС,
> работа с памятью и аппаратным обеспечением, ну и другие фундаментальные
> вещи, больше относящиеся к общей теории языков программирования и методов
> транслирования. Желательно, чтобы эта книга была ориентирована именно на
> начинающих программистов и написана нормальным языком.
Лучше всего читать авторов.
>
> 2) Я такой человек, что на чужих примерах (исходниках) учусь быстрее,
> поэтому исходники каких из программ, которые есть в Сизифе, порекомендуете
> посмотреть, чтобы посмотреть примеры грамотного и безопасного (это для меня
> тоже важно) программирования?
>
> 3) Из опыта знаю, что любые новые вещи изучаются гораздо быстрее, если есть
> конкретные задачи. Поэтому было бы идеальным заиметь некий "задачник" с
> такого типа заданиями: Написать программу, которая будет делать то-то и
> то-то... Примерный алгоритм такой-то, можете его усовершенствовать... При
> написании использовать функции: (перечень функций)...
> Имея такое задание очень удобно сначала сделать man 3 имя функции, потом
> подумать, как их применить в алгоритме и написать собственно программу.
>
> 4) Где взять документацию по утилите make с хорошими примерами и
> объяснениями. info make это конечно хорошо, но мне не нравится сама
> технология info, когда приходится переходить по куче ссылок, вместо того,
> чтобы последовательно читать страницу за страницей. Может у кого что есть
> получше? В пакете doc-gnu-ru-html есть похожая документация, но по
> automake/autoconf, я же сначала хочу освоить "чистый" make.
>
> 5) Ещё было бы неплохо получить плугины для Vim'а, которых нет в Сизифной
> его сборке, но которые реально могут помочь программисту и сэкономить его
> время. Что-нибудь типа ClassBrowser или CodeCompletition или ещё что-нибудь
> такое. Сейчас я использую связку vim-enhanced + ctags, но, полагаю, что её
> можно сделать ещё более мощной.
>
> К сожалению, я имею только e-mail доступ к Интернету, поэтому приму в
> почту любые отзывы по поставленным вопросам.
>
> С уважением, Антон В. Денисов.
>
>
> _______________________________________________
> Devel mailing list
> Devel@altlinux.ru
> http://altlinux.ru/mailman/listinfo/devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] [JT] Q: C/C++ study
2003-02-25 3:42 [devel] [JT] Q: C/C++ study Anton V. Denisov
2003-02-25 3:56 ` Vitaly Lugovsky
2003-02-25 8:34 ` Stanislav Ievlev
@ 2003-02-25 9:16 ` Igor Homyakov
2 siblings, 0 replies; 9+ messages in thread
From: Igor Homyakov @ 2003-02-25 9:16 UTC (permalink / raw)
To: devel
* Anton V. Denisov <fire@kgpu.kamchatka.ru> [030225 06:41]:
> Приветствую всех.
Привет !
1) Б.Керниган, Р.Пайк "Практика программирования"
Б.Керниган, Д.Ричи "Язык программирования Си"
Bruce Eckel "Thinkong in C++" (http://www.mindview.net/Books)
Гради Буч "Объектно-ориентированный анализ п проектированние"
Вьерн Страустроуп "Язык программирования С++"
2) читайте код, это же Open Source !
4) из texinfo можно сделать и печатную документацию и html и .info
По этому просто сгенерите что нужно из исходников
--
Igor Homyakov
<homyakov at altlinux dot ru>
http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=190141
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2003-02-25 19:49 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-02-25 3:42 [devel] [JT] Q: C/C++ study Anton V. Denisov
2003-02-25 3:56 ` Vitaly Lugovsky
2003-02-25 8:13 ` Alex Ott
2003-02-25 9:09 ` [devel] " Michael Shigorin
2003-02-25 9:12 ` Alex Ott
2003-02-25 11:03 ` [devel] " Dmitry V. Levin
2003-02-25 19:49 ` Vitaly Lugovsky
2003-02-25 8:34 ` Stanislav Ievlev
2003-02-25 9:16 ` Igor Homyakov
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git