Какой выбрать язык программирования?

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

Какой выбрать язык программирования

Итак, немного обо мне. Занимаюсь программированием порядка двух лет. Первую строчку кода я написал на php, а вообще что-то начал писать на html (да-да, я знаю — это не ЯП) около двух с половиной лет назад. У меня процесс обучения программированию был классическим: html->css->php->js. Первые два освоил на нормальном уровне, php тоже знаю достаточно не плохо, а с js — не дружу: так, подправить скрипт или написать что-то простое для своих сайтов.

Одновременно с освоением этой группы языков/технологий я почитывал c++: освоил базовый синтаксис, основы объектно-ориентированного программирования, изучил первый паттерн Singleton. Каких-то серьезных вещей на c++ я не делал: консольные приложения — не более.

7 месяцев назад я обратил свое внимание на такой невероятно популярный язык программирования, как c#. Как же он мне понравился! Дженерики, отличная невероятно большая русская документация (у меня с английский, к сожалению, очень плохо), классная ide Microsoft Visual Studio 10.0, удачно реализованная событийная модель, делегаты, анонимные методы, лямбда выражения и многое, многое другое.

Настало лето. Я почему-то загорелся создать свою игру для android, захотел стать хорошим специалистом в этой сфере — ведь они сейчас так сильно ценятся. Тут же скачал два уровня курсов java от специалиста (по ним же я в свое время начинал изучение php). Посмотрев несколько минут — выключил. Слишком скучно: низкий темп преподавания, информация, о которой там рассказывается, мне уже известна. Прочитал мини книжку от ibm, подтвердил для себя, что java и c# многим похожи.

К сожалению, я не подружился с java. Однако, на это были причины: во-первых, мой энтузиазм по созданию игры для android под остыл. Я прекрасно понимал, что без опыта с нуля я смогу сделать только какие-нибудь крестики нолики, а что-то более крутое — я не потяну (не умею рисовать, не дружу с английским языком, нет смартфона, работающего на этой операционной системе). Надеялся, что найду какую-нибудь студию, которая работает в этой сфере — увы, в моем городе таких нет.

Во-вторых, в java, в отличие от c#, без английского языка очень туго. Все доки на английском, все крутые статьи на английском, все faq по разработке под андроид на английском. В очередной раз понимаю, что нужно что-то мне делать с этим иностранным языком…

Итак, резюмирую вышесказанное. Я не написал ни одного серьезного продукта на каком-либо языке программирования. Есть начальные знания в php, C++, js, C#, Java. Что-то знаю лучше (C#, php), что-то знаю средне (C++), а что-то практически не знаю (js, Java).

Есть огромное желание работать в сфере, каким-либо образом связанной с вебом: или непосредственно писать приложения для веба, или разрабатывать какие-то продукты, которые будут как-то взаимодействовать с ним. Для этого подойдут php, c#, java. Однако, как я понимаю, на java пишутся какие-то корпоративные приложения, и этот ЯП не так популярен в рунете.

C#, как и java, требует установки дополнительного программного обеспечения (.net), что накладывает определенные требования на хостинг и сказывается на популярности языка в вебе.

Приложения, созданные на PHP, будут работать везде. Но тут есть целая группа минусов: огромная конкуренция, более низкая заработная плата, вечные попытки создать то, что давно есть в других ЯП.

Лично я бы выбрал для себя ASP .net MVC, так как тут и мой любимый веб, и такой приятный дот нет. Но буду ли я востребован? В моем городе достаточно много веб студий, которые гавнокодят визитки на php, а про asp.net — они ничего не слышали. Что можете мне посоветовать? Какой мне выбрать язык программирования? В какую сторону развиваться?

Категории: Веб-мастеринг

Метки:


  • Роман

    А что тебе больше нравится? Я вот до недавних пор тоже метался, то к C# то к Java, но еще раньше я пытался изучать C++. Он мне казался слишком сложным, но меня все равно к нему чтото тянуло,и вот у меня встала задача написать программу для потокового стрима музыки. Я снова стал метаться какую технологию выбрать, я остановился на directSound, в свою очередь которая написана на плюсах (С++) к тому же я недавно сравнивал производительность языков программирования, C++ делает всех, причем иногда очень значительно, в общем я окончательно сделал вывод в пользу C++, как свободного, мощнейшего и быстрого языка программирования. Да некоторые могут возразить что он монстр, что на C# все гораздо удобнее, но С++ имеет неоспоримое преимущество в скорости и гибкости программирования плюс не требует для себя предустановленной .NET платформы. Пиши если чо на мыло turbopollux@rambler.ru Либо стучись вконтакт http://vk.com/true_speed интересно что же ты выберешь для себя

    • Спасибо за интересный комментарий. Ну да, код на плюсах всегда быстрее, чем управляемый код. Как говорится, под каждую задачу нужно выбирать свой инструмент.
      Проблема в том, что мне нечего писать на c# (я пока не могу устроиться в компанию, а личных виндовых проектов у меня нет). Конечно, можно на asp.net mvc4 что-то делать, но тут тоже не совсем понятно, зачем использовать этот фреймворк, когда есть изученный php и такие вещи, как cms drupal, cms wordpress и yii.
      В связи с этим, пока выбрал для себя java (sdk android), начинаю писать простые игры (сапер, например).

  • Artemiyplusplus

    У меня точно такая же проблема как у тебя, я не могу определиться с ЯП, толи в веб податься, толи в десктоп, а потом мысли, то ли в системное программирование или в прикладное и так всегда, но тебе подсказать могу. Я сам пишу на C++ и если ты любишь .net, то ты можешь использовать C++/CLI, хочешь писать игры под андроид? C/C++ тебе в помощь. Таким образом ты можешь освоить и научиться делать игры и освоить .net. Можешь еще игры попробовать делать на C#, движок Unity, компилируется под андроид, иос и т.п. И взгляни на Mono это .net кросплатформенный. Если что пиши.
    log.wil.log@gmail.com

    • Спасибо за совет. Проблема уже, к счастью не актуальна (как никак полтора года прошло) 🙂
      Сейчас прокачиваюсь в веб-разработку (c#/asp.net mvc и JS).