С чего стоить начать на просторах языка Си/Си++

Всем, привет. С вами, Мирра Андрюхан.

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

И как многие понимают, раз даны направляющие, обязаны быть даны и определяющие. Коли рубрика ориентирована на тематику «Си++», следовательно стоит поделиться знаниями на тему того, с чего стоит начать, именно, в просторах языка Си/Си++.


С чего начать в общем и целом или от простого к сложному

Итак, представим себе обыденную ситуацию. Вы, новичок, ничего толком в программировании не знаете, однако вам хочется стать не новичком, а как минимум участником темы «язык Си++», т.е. уметь мало по малу, на нем что-то писать. Даже, тривиальные приложения, лишь бы работали. И, разумеется, вы откроете любой мануал и сразу же сядете лепить горбатого. Смешно, не верите моему опыту? Ну-ну, посмотрим. Посудите сами чего вы добьетесь набором распространенного шаблона «Привет, мир!», правильно, только набора самого приложения. А дальнейшие возможности будут ограничиваться фигфаками, например поиграться с входящими параметрами в функции main, а вы даже толком не знаете, для чего она нужна.Значит уже наполовину обрезали себе познание, а это интересно, знать о функции main и зачем она нужна, в общих представлениях.

Или другой момент, где вы имеете представления о языках программирования, тогда вы начнете лепить горбатого на основе своих знаний методом проб и ошибок. Скажите себе честно, приятно ходить по дороге, на которой много кочек и надо куда-то идти? Кому все равно, будет плестись, либо в самом конце в итоге, либо по середке пути, да там и застрянет. Да и к тому же, первоначально многие любят читать так сразу много, будто все запомнят. В результате большинство из прочтенного ушло в никуда, а силы и время потрачены.

В итоге, обо всем этом задумывались уже не раз и всегда страницы книг, начинаются с общих основ. Я учился именно так, это пошло мне на пользу. Т.к. сейчас у меня есть системное представление о языках программирования и могу эти познания развивать до бесконечности, потому что представление сформировано так, как оно обязано быть — системно. Т.е. мне нет нужды напрягать свою память, т.к. есть способы намного лучше и надежнее, все помнится само по себе, благодаря накопленному опыту и системному оперированию информацией. Говоря более простым языком, наработан свой шаблон/система работы с этой информацией, т.к. все всегда будет сводиться к простым шаблонам, в чем ни начинай свою деятельность. И, понятное дело, шаблон «Привет, мир!» служит для этой же цели, а не просто показать различия написания простой и элементарной программой. Так что, как видите, вы, не правы в своем распространенном мнении насчет любимой программы «Привет, мир!» и в пустую тратите свое время, время своего начала.

Так что, для начала, стоит почитать и потратить свое время на нормальные статьи, для формирования представления о программировании и о программах в общем. И только, после прочтения (см. ссылки в этом абзаце), как минимум самих страниц, браться за чтение книг более конкретной тематике. Потому, что те, кто не хочет этого делать, прямо заявили самим себе, что им не хочется учиться, тогда возникает логичный, что они тогда тут забыли? Ответ, прост, проявление негативизма с отсылкой, мол мне надо попроще. Ребята, попроще будет, только для тех, кто уже в теме, т.к. им учить уже ничего не надо. А вам, постигать и постигать азы, да основы. Так что, скажу вам прямо, не выделывайтесь, это вам только насолит в вашем саморазвитии. Проявите интерес к статьям и пойдем дальше по тексту этой статьи. А вам, самим прямой момент увидеть, как вы сделали свой выбор.

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


Что собственно за зверь такой?

Хех, для тех кто прочел статьи и проявил интерес, если не к вниканию, то как минимум освежил свои знания могу сделать приятный сюрприз. Дело все в том, что ваше прочтение с вниканием — это своего рода способ-уловка побудить себя вспомнить о прочтенном или переключиться на нужную тему, чтобы было не резко и в тоже время настроиться, заодно никогда лишним не будет прочитать что-то еще на пройденную тему, т.к. всегда попадаются новые и интересные вещи или на пройденную есть возможность взглянуть уже с более высокого уровня познания и опыта. Это, мой, вам, урок практического начинания в любом деле. А теперь, пойдем конкретнее.

По языку Си++ вам, доходчиво рассказано в Википедии (дельный совет, не трольте себя, читайте то, что легко читается, так вы сами ловите себя на своих огрехах и можете их после исправить). Так что от себя добавлю, лишь, то, что умение писать мастерски на Си++ — это скорее искусство, чем навык. И чем сложнее программы вы будете писать, чем больше вы будете думать также. Другой момент в том, что из-за его богатых возможностей научиться писать на нем сложнее, чем на Паскале или Яве. Однако не легко в начале, легче в применении.


Автор, не тролина, случаем?!

Разумеется, автор не тролль, т.к. высшая тролльность будет тогда, когда я вам напишу все из ссылок сюда в эту статью. Однако, как видите, этого не происходит. Итак, посопели, по-матерились. Пошли дальше.

Теперь, вы знаете, достаточно общих знаний о компьютерных программах, программировании, о языке Си++. Но, вы задумывались о том, что такое теория алгоритмов? Тогда читаем текст по ссылке в вопросе и познаем много интересного и любопытного для себя, т.к. нет предела самопознанию. Заодно, в своем сознании наработаете необходимое пространство для самого изучения именно в том плане, о котором задумывались в начале. И на заметку, если будете прочитывать постепенно и перечитывать, то со временем, ваши знания будут крепнуть, а вместе с ними придет и не очень объяснимая самостоятельная помощь, то бишь вы проникнитесь темой и будете мало по малу, на нужной волне. А значит, научитесь самостоятельно находить книги и статьи, которые будут вас развивать в вашем самосозидании.

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


 

В заключении

И напоследок, завершим эту статью тем, что поставим в Линуксе сам компилятор Си++, который называется «GNU Compiler Collection». И как, вы, уже подозреваете в ссылочке полезная и исчерпывающая инфа для тех, кто хочет освоить стязу программирования. Или, вы, думали улизнете в Интернет от норм обучения, которые имеют проверенные способы и найдете панацею. Ребят не будьте наивными, мир тоже всегда будет рядом.

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

Разумеется установку компилятора Си можно проверить убрав «++». Если хотите поставить из исходников (что вы так удивляетесь, да собрать из исходников, чем не компьютерная программа), то предлагаю толковую и краткую статью на эту тему.

А теперь, соберем нашу первую программу, создав пустой файл через консоль. И открыв в редакторе напишите следующее.

И разумеется, свежая нарезка из скриншотов, сделанных мною на ходу, со всеми ляпами, пока писал давно уже забытую мною программу «Привет, мир!». Эх, как долго я ее не писал.

Снимок экрана от 2016-03-19 18:46:03Снимок экрана от 2016-03-19 18:52:16Снимок экрана от 2016-03-19 18:52:26

Снимок экрана от 2016-03-19 18:53:34Снимок экрана от 2016-03-19 18:54:11Снимок экрана от 2016-03-19 18:54:59

Снимок экрана от 2016-03-19 18:55:19Снимок экрана от 2016-03-19 18:57:23Снимок экрана от 2016-03-19 18:59:12

Снимок экрана от 2016-03-19 18:59:22Снимок экрана от 2016-03-19 18:59:36Снимок экрана от 2016-03-19 18:59:44

Снимок экрана от 2016-03-19 18:59:50Снимок экрана от 2016-03-19 18:59:50Снимок экрана от 2016-03-19 19:02:05

Снимок экрана от 2016-03-19 19:14:48

Как видите, даже с моим опытом, иногда можно наделать ляпов. Сказывается отсутствие практики. Однако, вам была предъявлена самая простая программа, в которой уже есть много чего интересного. И для, целостности скажу, что cin читает ваш ввод, cout выводит (если отбросить букву Си, то наверняка названия сами за себя скажут). А ноль, в конце функции main возвращаем, для того чтобы ОС сказать, что программа нормально завершилась. А фраза «using namespace», дает возможность применять пространство имен std, которое позволяет применять «endl«. А библиотека «iostream«, как раз таки работает с входящими и исходящими потоками программы, т.е. предоставляет необходимый функционал для этого. А функция main — это точка вхождения в вашу программу, т.к. компилятор всегда дописывает свой код запуска программы, соответствующий ОС, на котором будет исполняться. Так что, как минимум уже из-за этого, программа не запустится на другой ОС. И уже потом, будет ссылаться на другие причины.

В итоге, я был с вами, предельно, честен на всех сюрпризах пути познания. Так что, полагаю, что у вас уже не такое сильное убеждение о программирование, как и обо мне, а также не такое однозначное. И да, теперь, вы, понимаете, каково нам, энтузиастам пера и бумаги. Так, что приятных вам познаний, в хорошем смысле этого слова. Я прекрасно знаю, что вы полистали все ссылки и картинки.

Loading

Один комментарий к “С чего стоить начать на просторах языка Си/Си++”

  1. Возможно, это будет одним из немногих и честных обучений в виде «легкой» статьи, где вас не грузят. Однако, можно много найти интересно в статье, а также самостоятельно понять многие интересные вещи, которые трудно прочесть, зато легко понять.

    При этом, я реально потратил меньше времени, чем остальные, по отношению к тем, кому не нужно все это программирование нафиг. ;))

Обсуждение закрыто.