Стоит ли в школе изучать программирование на серьезном уровне?

Мне 16 лет. Неплохо умею программировать на паскале, но понятно, что нужно идти выше. Вопрос, стоит ли сейчас (в 10 классе) углубляться в «плюсы» или «джаву» для будущей профессии и востребованности на рынке софт-девелопинга.

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Я отвечу отдельно на два различных вопроса:

1. Стоит ли в школе изучать программирование на серьезном уровне? — Если это вопрос общего характера, применимый к школам вообще, то главный критерий: никакого насилия! Целесообразно ввести это обучение как опциональное, т.е. по выбору, чтобы каждый школьник мог решать самостоятельно, нужно ему это или нет.

2. Стоит ли автору углубляться в программирование? — Однозначно да, тем более, если душа лежит в этом направлении! ИТ индустрии очень нужна свежая кровь в ближайших 5 лет.

Однозначно да. Мозги человека так устроены, что чем раньше начать — тем легче дается.

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

www.edx.org/...S50x/2012/about вот хороший курс, вместо IDE консоль линукса. интересные лекции и вменяемые задания.

оффтоп: Можете подсказать, где можно поговорить на английском по скайпу для языкового обмена? Кто реально нашел себе собеседника?

Если хочешь прогить, то стоит.

Если интересно — однозначно нужно углубляться. В вашем возрасте за год-два можно усвоить такие вещи, на которые после 25 понадобится 4-5 лет

алгоритмы, enterprise, финансы или телеком. да, за 1-2 года он усвоит) станет в 23 ТЛ)))

да, стоит, вам уже не так и мало — 16 лет. Начинайте углубляться как можно глубже и скорее — я уже несколько лет на Паскале писал к вашему возрасту. начинайте учить шарп, руби, джаву, питон — пробуйте, дальше останавливайтесь на чем понравилось.

Лучшие свои годы похерить хочешь? Ну углубляйся, чо.

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

Если выбор стоИт именно так «углубляться в чо-то там» vs «шпилить/сидеть ффкантактеке» то спору нет, уж лучше из двух зол выбрать «углубляться в чо-то там». Хотя в целом и то и другое одинаково прожигает жизнь за бесценок.

Если под углублением в программирование понимается асоциальность — безусловно.

«насидеться вконтакте» или «нашпилиться» тоже необходимо, иначе эти желания потом ударяют лет в тридцать кирпичом в голову

Я восьмой, девятый и часть десятого класса прошпилил.
Аналогично, но я еще и 11 класс вместе 2 годами универа.
Но пользы от этого было больше. Познакомился с разными людьми, многие являются моими друзьями до сих пор, с частью из них даже работал в последствии.
+ финансово был обеспечен куда лучше чем те, кто «раздавал бумажки у метро» или подрабатывал в мак дональдсе/на выборах/"менеджером по продажам«.
+ английский язык остался на уровне (так как после девятого класа и до конца университета фнглийского как такового по сути не было вообще).
+ уверен, что дале не мало к скиллам по организации, управлению, менеджементу себя/других, пониманию слова «отвественность»...

Конечно стоит, чем раньше вы «углубитесь», тем раньше вы начнете заниматься профессиональной деятельностью.

Безусловно стоит — чем раньше, тем лучше.

О, Господи, еще один. Не нужно лишать себя детства, юности и разменивать все на учебу. Не нужно форсировать события, нагуляйся. Учись в школе, поступи в универ на IT-специальность, а там уже, как закончится всякое общеобразовательное и пойдет больше специализации, углубляйся куда угодно и как угодно, благо кругозор к тому времени появится и сможешь сделать это с толком.

Перефразируем: Антон, занимайся сексом с программистками!

если нравится — то нужно.

ну и если есть желание — то попытаться написать что-то реальное (ну там хоть фикс какой для какого нить опенсоурсного проекта сделать)

Я думаю начать углубляться в «плюсы», это будет правильно?

Давай, потом перейдёшь на Джаву/Шарп и станешь 23 летним сеньёром.

Тут очень много пишут про то, какие плюсы страшные и как они отбивают тягу к программированию. Существует в этих высказываниях смысл? Я уже начинаю читать Шилдта, а потом Страуструпа. Существует ли вероятность, что после Страуструпа я поседею или иные побочные эффекты?

«Куда все так бегут и кто какие перспективы видит в С++» dou.ua/...ums/topic/4766

Не в том дело, а в том, что в 16 есть еще время на фундаментальные вещи. А это — english, дискретка, алгоритмы/структуры данных, C, Lisp. Если уж плюсы, то Шилдта вообще читать не надо, можно сразу страуструпа.

Тут очень много пишут про то, какие плюсы страшные и как они отбивают тягу к программированию. Существует в этих высказываниях смысл?

Зависит от того, работать с С++ как с С с классами, или как с С с классами с метопрограммированием.

Я уже начинаю читать Шилдта, а потом Страуструпа. Существует ли вероятность, что после Страуструпа я поседею или иные побочные эффекты?

Шилдт хороший автор для новичков. От Страустрапа не поседеете, но есть вероятность неосиляторства. Тогда поработай и перечитывай. Седеют от Александреску. Но если ты потом перейдёшь на Джаву/Шарп, то оно тебе не понадобится.

Но если ты потом перейдёшь на Джаву/Шарп, то оно тебе не понадобится.

С++ не понадобится?

Ладно, поставим вопрос по другому, исходя отсюда

«Куда все так бегут и кто какие перспективы видит в С++» dou.ua/....ums/topic/4766

Джава будет лучшим вариантом, чем плюсы? С++ даст больший фундамент, или это будет тратой времени, по сравнением с Java, C#?

С++ даст больший фундамент. Джава и Шарп гораздо более востребованны на рынке. Можешь начать сразу с них, но я считаю что знать C/C++ надо, хотя бы потому, что Джавашарпы его прямые потомки.

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

Фундамент даст что угодно, если человек перестанет постить тупаки, и возьмет хоть что-то сделает, хоть на С++, хоть на С# хоть на Питоне с PHP. Так или иначе что бы составить полную картину — нужно иметь опыт с несколькими языками, понимать разницу между слабой и строгой, статической и динамической типизацией, и не факт что порядок играет сильную роль, так как в конечном итоге все должно собраться в единое представление. Раз на то пошло, то возможно стоит начинать не с «углубления» в языки вообще, а с изучении теории компьютерной науки в целом — архитектура компьютера, операционной системы, что такое компилятор и интерпретатор, парадигмы программирования, и так далее. И вообще кто сказал что на изучения языка нужно много времени? Много времени нужно на то что бы узнать все хитрости конкретного языка / платформы. Или что бы понять ООП или другую парадигму, которая часто встречается и в других языках в том или ином виде.

Хотя учитывая фотку у автора в профиле, ему наверно лучше углубится во всемирную историю (или это троллинг такой?).

ИМХО — время, потраченное на С++, не отобъётся. Понадобится несколько лет, чтобы им овладеть, которые можно потратить на С# / Java / Python.

Можете приблизительно описать план многолетнего изучения С++?

Не могу, не изучал (пишу на .NET). Но не думаю, что понадобится 21 день, учитывая то, что я с нуля HTML + CSS + JS + ASP.NET + SQL изучаю уже почти два года, и до сих пор во многих вопросах не уверен. А плюсы сложнее ведь намного того же .NET...

HTML + CSS + JS + ASP.NET + SQL

Это 5 языков, не говоря о сопутствующих технологиях (DOM, .NET, ASP.NET, возможно ADO .NET и какой нибудь ORM, WebForms, теория реляционных баз данных и т.д.)

Хорошо, тогда приведите пример плана изучения HTML, ну или CSS, или же JS, С#?

Ещё такой вопрос.
Допустим я знаю синтаксис CSS, как его инлайн писать, и style тегах, и отдельно в .js. Помню какие там основные свойства, приблизительно умею писать сложные селекторы (с вложенностью и псевдоклассами), ориентируюсь в практиках именования классов, и т.д.
Но при этом иногда заглядываю в справку, и не помню на наизусть всех свойств, включая специфические свойства конкретных бразуеров.

Я могу сказать, что я знаю CSS, что я его выучил? Или я это смогу это сказать только тогда, когда выучу все свойства на память, и смогу безошибочно писать css в блокноте без автоподсказки и заглядывания в справочник?

Вы правы, много технологий, хороших и не очень, ну и разных.

Изучение С#: Троелсен, Рихтер, практика, практика, еще раз практика... В это же время изучал ASP.NET + JS + NHibernate (последний крайне базово), позже ADO.NET и SQL (T-SQL). HTML, CSS, JS изучил раньше на уровне «моя твоя понимать», т.е. где-то так, как Вы описали. Да, еще jQuery по ходу C# изучал. Сейчас сконцентрировался на архитектуре, TDD в связке с MVP на Web Forms пытаюсь имплементить со слоем служб, тяжело пока... Но мне очень сильно помогают сборка мусора в .NET и отсутствие множественного наследования, а также Stack Trace при дебаге. И даже с ними индусы (проект legacy) умудрились наговнять ужасно... Не представляю, что можно сделать на C++ без отсутствия контроля архитектора... Нет уж, спасибо, останусь на .NET и не буду углубляться в контроль над памятью, мне хватает производительности .NET с головой. ИМХО, задача современного программиста — не писать велосипеды, а с помощью «кирпичиков», которые фреймворки, собрать классное, устойчивое к изменениям «здание», которое решение. Это — моё ИМХО, и лично я рекомендую топикстартеру не влезать глубоко в плюсы, а обратить внимание на более высокоуровневые языки для начала. Надо будет — освоите и плюсы, главное с Visual Basic (не VB.NET) не начинать:)

Вы высоконаруженные приложения не пишете, верно?

500 пользователей в один момент времени — высоконагруженное приложение?

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

Ну и собственно илюстрация: я не сомневаюсь, что вы хороший программист, но вы не работали с С++ и вас сравнительно безопастный прямой контроль памяти в .net пугает.

Я сам сомневаюсь, что я хороший программист (шутка, просто очень много технологий надо изучать). Я очень уважаю С++ за скорость работы и гибкость, но тем не менее считаю, что это не тот язык, с которого надо начинать изучать программирование. Мне вот например книга Рихтер по .NET взорвала мозг после года работы с ASP.NET Web Forms, и ту же многопоточность я просто не осилил — что уж говорить о человеке, который в 16 спрашивает, с чего стОит начать.

Кстати, топикстартер, а Вы не рассматривали www.coursera.org как отправную точку?

Александреску не понадобится.

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

Думаю нет.

Лучше просто на С посмотри.

Учи хаскель ради добра, бггггааа

Подписаться на комментарии