|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
|
Простое начинание11.10.2013, 20:50. Показов 5012. Ответов 53
Сразу прошу - не бросайтесь кирпичами.
Предисловие (можно пропустить). С Си++ знаком очень давно, по сути - это первый язык программирования, с которым я стал более менее серьёзно программировать. От консольных утилит и курсовых с GUI, до игр и серьзных проектов с ассемблером. И за это время я узнал не мало о языке, о его возможностей. Что-то мне в нём нравиться, что-то нет. Но есть очень много новичков, которые хотели бы овладеть этим безусловно очень мощным инструментом (в умелых руках). Поэтому мне вдруг (на самом деле - очень давно) захотелось бы написать небольшое... руководство. С опорой на опыт, а не на рефернсы. Конечно, я не джедай и мне далеко до него. Но так уж получилось, что часто приходилось разных людей учить программированию, а точнее - Си++. Очень разных. Есть небогатый опыт. Просьба (можно начать отсюда). Таким образом мне хотелось бы составить список тем, которые требовалось бы осветить. Зачем? Последний сезон Breaking Bad вышел не так уж давно (да, я слоупок) и есть 15 минут, пока Собственно. Темы должны быть полными. При этом хотелось бы, чтобы последовательность изложения была удобной для чтения. Приятной и удобной. Не скучно и эффективно. Прошу здешних форумчан помочь составить базовый список тем Си++, владея которым на уровне, можно было бы считать себя отличным Си++ программистом. К тому же, в свете Си++11 и Си++14, появились определённые новшества, которые, возможно, сильно преобразуют обычный Си++ код. В добавок, хотелось бы сделать уклон в сторону ООП и описать техники, которые позволят избежать очередной пули в ногу. У Вас наверняка есть пара тузов в рукаве. Что хотелось бы (это так же можно пропустить). Собственно, в идеале талмуд должен быть интересен как новичкам в Си++, так и новичкам в программировании вообще. Было бы замечательно, если бы описанное было интересно и старичкам. Текст будет (если что получиться) полностью свободным. Приветствуется кооперативное авторство. Что есть сейчас (это будет обновляться). Предисловие) Начать хотелось бы с небольшого предисловия о роли языка Си++ в совремнном мире, небольшая справка о историческом значении и субъективный прогноз на будущее. 0) Введение в программирование. Наверное, важная часть, освещающая программирование в целом. Как строятся алгоритмы, что есть структорное программирование (и какие есть альтернативы). Немного о том, как связана математика, схемотехника и информатика. Вообще, какие науки (понятно, что все) изучают программирование и с какой стороны. 1) Базовый синтаксис. Проекция информации из введения в уловные обозначения Си++. То есть, каким образом реализуется структурное программирование в Си++, какова его объектная модель. Никаких сравнений с другими языками программирования. 2) Стандартные алгоритмы. Немного про стандартные алогритмы. В основном - практика. 3) Расширенные возможности. Дополнительные возможности. Всё, что не укладывается в базовый синтаксис по теореме Бома-Якопини. 4) Нетривиальные возможности. Возможности, выходящие за те возможности, которые предоставляет синтаксис с компилятором. Другими словами - какие крутые базовые блоки можно слепить из других базовых блоков. 5) Практика. Вот здесь я уже обессилил. Не представляю, что можно изучить в рамках практики с применением всех возможностей языка. В идеале требуется показать этакий best practice. Боюсь, это будет без всех возможностей. inf) Приложения. Здесь все дополнения, которые выбиваются из общей канвы повествования. Заранее благодарю. P.S. Вполне возможно, из этого ничего и не выйдет. Я просто подумал, что было бы не плохо попробовать. К тому же, вполне вероятно я сам научусь чему-то новому. А если у меня получиться научить кого-то, то это будет просто прекрасно.
0
|
|
| 11.10.2013, 20:50 | |
|
Ответы с готовыми решениями:
53
Помощь в начинание Объектно ориентированного програмирования
|
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
|||
| 11.10.2013, 21:23 [ТС] | |||
|
На мой взгляд, не стоит зацикливаться на реализации. То есть, у нас есть определённый синтаксис и он выполняется вот так: инициализируется, проверяется условие, выполняется блок, инкрементируется. Но это детали. Суть чуть в другом. Сначала стоит разобраться что такое цикл в плане алгоритма и только потом перейти к Си++ и его деталям.
0
|
|||
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||
| 11.10.2013, 21:25 | ||
|
0
|
||
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
||
| 11.10.2013, 21:25 [ТС] | ||
|
Кстати, как насчёт того, чтобы добавить немного математики в книгу. Самой обычной математики с примерами на Си++? Возможно даже удастся вспомнить теорию информации и дискретную математику =)
0
|
||
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||
| 11.10.2013, 21:26 | ||
|
0
|
||
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
|
| 11.10.2013, 21:27 [ТС] | |
|
0
|
|
|
Саморазвитие <3
|
||
| 11.10.2013, 21:28 | ||
|
По поводу того как я начинал учить паскаль, тоже с блок схем и алгоритмов, но как видите все равно есть проблемы, как их леквидировать даже не знаю. Может с опытом придет кто его знает, когда достаточно много уже задач порешаю, думаю тогда и придет понятие того, как это все решать. P.S Почитал бы Кнута, но как известно, у меня плоховато с математикой, и то что там написано, не всегда понятно
0
|
||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 11.10.2013, 21:29 | |
Сообщение было отмечено как решение
Решение
5
|
|
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
||
| 11.10.2013, 21:29 [ТС] | ||
|
Лучше начать с Юкио Сато и учебника математики за 9, 10 и 11 классы. То есть сначала с учебников, потом Юкио Сато (мне эта книга однажды сильно помогла с математикой). Ну а там Кормен и Кнут. Классика. Ещё Седжвик есть.
0
|
||
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
||
| 11.10.2013, 21:34 [ТС] | ||
|
Добавлено через 3 минуты К слову, есть ещё тема компилятора. Тоже годиться на отдельную книгу (и далеко не одну), но общие закономерности есть. Рядом с ней стоит тема низкоуровневых оптимизаций (CPU, как оно работает и как ускориться). Вообще, книга должна быть огромной, так-то. Надо подумать.
0
|
||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 11.10.2013, 21:37 | |
|
У автора, замахнувшегося на многотомник, есть хотя бы пяток действительно качественных статей по теме?
0
|
|
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||
| 11.10.2013, 21:38 | ||
|
AnyOne697, И вообще за ООП, ясно что он применяется в больших программах в мелких программах все делается в одном классе, так получаются программы более понятные, компактные. Выигрыша не получим мы если будем разбивать на мелкие классы. Да если это делать в плане обучения, то тогда да годиться, но а когда реальную программу пишешь, то ее разбиваешь только по мере надобности, тогда когда она становиться более понятна и легче дальше писать ее.
Добавлено через 1 минуту Автор напиши мелкую какую нить книгу С++ для чайников страниц на 300 да и все, там просто накидай пару примеров и хватит, я думаю она будет пользоваться спросом.
0
|
||
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
|
| 11.10.2013, 21:41 | |
|
Аха смысла ее нету писать, так же как и все учить, потому что все рамно то что учил год назад забывается, главное это принцип понимать, ну это со временем придет.
Добавлено через 43 секунды Если охота попробовать напиши для чайников, она будет популярна мб что нить еще и заработаешь.
0
|
|
|
Неэпический
|
|||
| 11.10.2013, 21:42 | |||
|
Не по теме:
0
|
|||
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||
| 11.10.2013, 21:50 | ||
|
Добавлено через 3 минуты В любом случае пасажир будет его применять в силу своего опыта, если слабинький опыт, такой и ООП будет.
0
|
||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 11.10.2013, 21:51 | ||
|
2
|
||
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
||
| 11.10.2013, 22:00 | ||
|
0
|
||
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
|||
| 11.10.2013, 23:24 [ТС] | |||
|
Окей, тогда я сейчас пойду попробую начать что-нибудь. Мб что выйдет. И принесу сюда, если что будет готово и мне будет не сильно стыдно =) Добавлено через 1 минуту
0
|
|||
| 11.10.2013, 23:24 | |
|
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.
Дано простое число N. Найти следующие простое число используя do while легко(начинание) Начинание проекта по snort Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|