Сейчас я на 1-ом семестре по VisualBasic, но думаю на следующим перейти на web-технологии. Что вы думаете, стоит или нет?
да я сам не знаю, что хочу. Синтаксис VisualBasic не нравится и консоли создавать не хочется, ну веб как-то 1 семестр учился.
ещеб он нравился, хотя по сравнению с 1С, и вообще нужно 1С учить и бухгалтерию, в любом предприятии бухгалтер программист на вес золота.
1С — стабильный хороший заработок, но не сможете сделать ничего великого по определению C#, Java — очень большие деньги, если настойчиво будете идти к трудоустройству в большой корпорации; великое тоже едва ли возможно Python, Ruby, Scala, JS — хорошие деньги, если вы гуру, плохие деньги, если средний уровень (велика конкуренция); возможно поработать над великими проектами Perl, PHP — умерли и умирает соответственно Выбор зависит от амбиций и желаемой направленности. Смотрите индекс популярности языков: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html. Там же можно понять тренды. Для изучения выбирайте что-нибудь из топа, с восходящим или пологим трендом.
вообще выбор довольно широк, помимо программирования есть сети, монтаж, проектирование, опятьже не нужно зацикливаться на одном языке, нужно знать несколько. С\С++ это базис.
Yep. С точки зрения интеропа. Фишка вот в чём: если кто-то задумал новый язык, который претендует на успех, ему нужно не новую вселенную создавать, а стыковаться с имеющейся. Нужно выбрать к чему стыковаться. Интеропиться с библиотеками на чистом C куда проще, чем с чем либо ещё. У C++ сложные mangling-правила, «ненужные» уровни абстракции и т.п. Тем более, что библиотек на C гигантское количество и на всех уровнях (эффект снежного кома). Поэтому любая новая звезда стыкуется с чистым C прежде всего. И эта завязка с течением времени никуда не девается. Возьмите те же Python и Ruby: за более, чем 20 лет, тотальная зависимость от plain C никуда не делась. C++ хорош. Но на нём делаются только конечные проекты. А на Си можно сделать и конечный проект и некую порцию работы, которую затем возьмут в оборот hi-level разработчики. Потому C гораздо более фундаментален нежели C++, а гуру-программисты на plain C могут проще найти более оплачиваемую работу, чем разработчики с аналогичным опытом на C++. Ведь сишника возьмут на проект почти на любом стеке, а сиплюсплюсника только на C++. Disclaimer: я предпочитаю C++ перед C. А прежде всего я люблю Python и JS. Они пересекаются с Си, но с C++ — никак.
Есть ли еще какой-нибудь выбор? Что касается выбора web-технологий -- есть какая-нибудь информация, что там преподают? Под этим термином может пониматься многое. Например, верстка сайтов (дизайнерская работа, минимум программирования). Над какими великими проектами можно поработать при использовании Python, Ruby, Scala, JS? (Такими, что проекты, написанные с использованием C# и Java, нервно курят в сторонке) Могу ошибаться, но скорее всего нет такого 'С++' программиста, который не сможет написать качественный код на 'С'. По одной простой причине, что 'С++' это расширение 'С', которое добавляет возможности ООП (Объектно-Ориентированного Программирования) сохраняя все фишки 'С'. Исторически так сложилось. Возьмем, к примеру, Arduino IDE -- скетчи преобразуются в мешанину 'С' и 'С++' кода. А вот у 'C'-"процедурщика" могут возникнуть не малые трудности с освоением ООП (не каждому, это самое, ООП дается).
YouTube, Reddit, GithHub, Twitter, Eve, Basecampe, Hulu (!), SlideShare, Get Satisfaction из того, что в голову приходит. С# — это stackoverflow. Больше, честно, в голову ничего не приходит. Зато корпоративного софта мммммм… Nope. C и С++ — это разные люди. Универсалы есть, но их мало, к сожалению.
Насчет Youtube согласен, остальное до великости не дотягивает, до массовости да, но не до великости. Но, суть не в этом. Вы утверждали, что участвовать в великом проекте можно только при использовании Python, Ruby, Scala, JS, а при C# и Java -- едва ли. С этим утверждением, я не согласен. Используя C# и Java вероятность участия в великом ни чуть не меньше, если не больше. После этой фразы, кажется начал понимать, что в Вы под великим подразумеваете какое-нибудь интернетное приложение (и приведённый список это подтверждает). Поэтому понятна Ваша оценка таких языков как Python, Ruby, Scala, JS. Автору темы, если он решится заняться web-программированием, стоит обратить внимание на этот список. Только в него нужно ещё и Java'у добавить, т.к. на web-серверах Java распространена не меньше, чем Python, Ruby и т.п. Без знания 'C' на 'C++' Вы что-нибудь стоящее не напишете. Хотя наверно не правильно выразился, правильнее будет так -- 'C++' это 'C' с новыми возможностями. Поэтому, если человек изучил 'C++' -- это автоматом предполагает, что он изучил и 'C'. (В свое время, когда решил с Pascal перейти сразу на C++, все учебники по "чистому" C++, которые мне попадались в руки, начинались с фразы типа: "Читатель должен быть знаком с языком программирования С"). Недаром на эти языки всегда ссылаются как 'C/C++'. Связь этих языков можно выразить как: Код (Text): 'C++' = 'C' + ООП; 'C' = 'C++' - ООП;
Судя по плану в направлении "web-программирование" основной упор делается на дизайн сайтов. Хотя есть немного программирования на JS (3 семестр) и PHP (4 семестр). Поэтому, если хотите упор сделать на изучение программирования, то это направление (web-программирование) скорее не для Вас.
Не совсем так. При правильном обучении С++ можно и не знать, как программировать на "чистом С". Тому есть две причины. Во-первых, изучив язык как именно объектно ориентированный, можно испытывать существенные затруднения при "возвращении к корням", в смысле при использовании структурного программирования. Все-таки стиль мышления чистого объектно-ориентированного и чистого структурного программирования сильно отличается. Конечно, есть "промежуточный стиль", задействующий одновременно особенности ООП и структурного программирования, но это отдельная история. Вторая же причина в том, что разница между этими языками поддержкой ООП не исчерпывается. Есть еще ряд мелких отличий, способных попортить немало нервов при написании программ, связанных с небольшими отличиями в правилах, например, в преобразовании типов.
Фишка в том, что язык 'C++' не является чистым ООЯП. Он как раз относится к: А вот это действительно может доставить проблем: Последние шесть лет использую Java, поэтому познания в C/C++ немного стёрлись из памяти и про мелкие отличия как-то не подумал. Но мы не много отвлеклись от темы -- автору нужно определиться с направлением дальнейшего развития и надеюсь, что он сможет это сделать.
вот мой план, но тут одна проблема! я закончу в 10 классе, а хотелось в 9-ом. Есть вариант пойдти на си, сдав тест и пропустить практикум.