• Лови промокод з яким знижка 50 грн - promo50grn

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

Navigater

Привіт!
Статус: Offline
Реєстрація: 05.03.2009
Повідом.: 5
Какой язык программирования наиболее перспективный?

Какой язык программирования наиболее перспективный с точки зрения ценности специалистов, владеющих им, на рынке труда?
 
Хотелось бы узнать предпочтения ТС собсно в "областях программирования", к чему душа лежит, а то понятие "языг программирования" весьма растяженное. Если ПыхПых нихуя ни к чему кроме поделок для вэба не годится, то тот же C# пригоден для многих вещей.
 
Ну допустим, на сколько перспективен Phyton, PHP ? Сколько зарабатывают програмеры на них?
 
Не главное изучать какую-то современную технологию, которая якобы приносит больше денег, главное быть специалистом в своей области. Для примера:
.NET, C++ , Java.
У всех трёх средняя зарплата около 1000 у.е., специалист высокого уровня получает до 3к, вне зависимости от того пишет он на С#, Яве или плюсах.

Лично я изучаю .NET. Не вижу перспектив у неуправляемых языков а.к.а. С++. Хотя и Java тоже рулит: спрос довольно велик и ЗП на уровне.
 
developers точка org точка ua
 
Не главное изучать какую-то современную технологию, которая якобы приносит больше денег, главное быть специалистом в своей области. Для примера:
.NET, C++ , Java.
У всех трёх средняя зарплата около 1000 у.е., специалист высокого уровня получает до 3к, внезависмости от того пишет он на С#, Яве или плюсах.

Лично я изучаю .NET. Не вижу перспектив у неуправляемых языков а.к.а. С++. Хотя и Java тоже рулит: спрос довольно велик и ЗП на уровне.

Согласен. В плюсах сейчас надо очень серьезно шарить чтобы на работу устроиться.
 
Не главное изучать какую-то современную технологию, которая якобы приносит больше денег, главное быть специалистом в своей области. Для примера:
.NET, C++ , Java.
У всех трёх средняя зарплата около 1000 у.е., специалист высокого уровня получает до 3к, вне зависимости от того пишет он на С#, Яве или плюсах.

Лично я изучаю .NET. Не вижу перспектив у неуправляемых языков а.к.а. С++. Хотя и Java тоже рулит: спрос довольно велик и ЗП на уровне.

Жаба - неуправляемый язык? :eek:
 
Управляемый. Где я написал что он не управляемый?
Между .NET и Java я выбрал .NET, хотя и... дальше по тексту

Да просто эта цитата:
Лично я изучаю .NET. Не вижу перспектив у неуправляемых языков а.к.а. С++. Хотя и Java тоже рулит: спрос довольно велик и ЗП на уровне.
так воспринимается, "хотя и Java тоже рулит" воспринимается как исключение...
ЗЫ: ну и собсно, по поводу неуправляемых языков я тебя всецело поддерживаю.
 
Ууу... Нет перспективы у С++? Смешно...
Примеры.
1) Системное ПО, ОС и т.д. Лично я не представляю себе ОСь на управляемом языке. Сингулярити? Да фиг там, там только высокоуровневое API на .NET, остальное - всё тот же С/С++.
2) Драйвера. Опять же, написанный на Java или .NET драйвер - это потеря производительности дикая. Причём на самом низком уровне. Это в конце концов получится, что ваши приложения работают на виртуальной машине, которая работает на виртуальной машине и т.д....
3) Специфические разделы программирования, такие как AMD Stream, NVidia CUDA. Хоть и модифицированный, но там С++. И я сомневаюсь, что в ближайшее время будет приличная поддержка таких технологий у Java или .NET
4) Программирование Real-Time приложений с высокой производительностью, в частности - программирование под Linux. Представьте себе ядро распределённой СУБД Oracle или другой, написанной на Java. Придётся раскошелиться на вдвое бОльший кластер...
5) Программирование графики. Как человек, уже не первый год занимающийся графикой, скажу - ни .NET и Java не дают и близко такой производительности с 3D-графикой, как OpenGL+C++ или DirectX+C++.
6) Сами виртуальные машины для тех же .NET и Java =)

В общем, я это к чему... Да, .NET и Java дают не хилый уровень абстракции от платформы, а также, удобный интерфейс и избавление от многих головных болей. И если вы пишите коммерческое приложение, не требующее выдающейся производительности, то лучше управляемых языков нет. Сэкономит уйму времени.
Но есть разделы, в которых такой подход не уместен. Там только С++

Что до перспективности языков, то встречный вопрос - а чем вы хотите заниматься.
Если написанием низкоуровневого ПО, то нужно не только знание C/C++/asm, но и архитектуру железа.
Если для Real-Time ПО высокой производительности, то C++, и алгоритмизация.
Если десктопные приложения, не критичные к производительности - Java и C#(.NET).
Для веб-приложений проще всего PHP, но перспективней, ИМХО, Python.
Ну и остаются специализированные области, в которых выбор языка весьма разнообразен - OpenGL+C++, DirectX+C++ (это, конечно, не самостоятельные языки, но имеют значительную специфичность), Haskell (функциональное программирование очень эффективно) и много чего другого.

И ещё один забавный факт - с С++ перейти можно на что угодно, а вот с Java переползти на C++ - уже проблематично.

ЗЫ: Navigater, сорри за весь этот холивар, просто не хотел, чтоб кто-то кого-то в заблуждение вводил и объяснил что для чего (ИМХО). Ну и плюс я ответил на твой вопрос - высказал, какой язык в какой области перспективен (опять же ИМХО).
 
Останнє редагування:
ну... понеслась... Sefiroth - благодарю за разъяснения! Остальные, пожалуйста, конкретный язык - что, как и главное почему
 
Останнє редагування:
ап, очень интересная темка
 
Когда-то говорили, что в системном программировании будет только ассемблер, посмотрим...
 
Я согласен в целом с комрадом Sefiroth. Тогда давайте посмотрим на проблему с разных сторон.)


-PE файлы, скомпиленые на C# хранят в себе не процессорные команды, а MSIL-код, который уже во время выполнения преобразуется средой CLR в процессорные команды, а это нам даёт:
1.В зависимости от архитектуры приложения CLR Будет генерировать оптимизированные команды под конкретную машину(хотя и да, запускаться будет немного дольше)
2.Кроссплатформеность. Приложение может запускаться как на х86, так и на х64(не wow). Хотя с Linux-ом могут быть проблемы, так как Microsoft не выпускала фреймвёрк под Linux, но есть Mono _ продукт сторонних разработчиков, и он вроде как работает
3. Возможность абстрагироваться от конкретного языка. Т.к. в PE находится MSIL код, то допустим одно подразделение программистов может писать dll на VisualBAsic, а другое - подключить эту dll к своему коду на C#. При чё без проблем(сам делал :) )
-сборщик мусора(GarbageCollector). Зачастую он работает лучше, чем сбор мусора в ручную на С++. ТАм куча всяких фишек по оптимизации сбора. Есть поколения и т.д. Ну вот несколько достоинств GC:
1.После сбора мусора он дефрагментирует память и соответственно доступ к близко стоящим объектом происходит быстрее.
2.Разрабы старались сделать сбор мусора минимально заметным, и на сколько я знаю им это удалось: сбор мусора занимает ~ 1 мс.
-кстати, незабываем что на C# можно писать и неуправляемый код, где он имеет преимущества перед управляемым
-насчёт графики согласен, но 2 таких факта:
1.Microsoft выпустила .NET framework для разработки игр под Xbox360. В его основе лежит XNA.
2.WPF - достаточно крутая технология, где есть и использование DirectX, векторная графика, растровая и т.д. Хотя WPF - для десктопных приложений с красивым GUI(а не для реальной 3D графики) , но всё же

Ну и незабываем о безопасности кода, и производительности труда. Хотя об этом уже говорили. Согласно правилу Мура, мощность компьютеров растёт экспоненциально и разработчики уже давно жертвуют оптимизацией и производительностью во имя стоимости и времени разработки.

Это то, что сразу вспомнил..) Сумбурно, но как-то так. Да, и я не пытаюсь выступать в роли защитника или яростного поклонника, я хочу чтобы в споре родилась истина )

P.S.Только что случайно наткнулся на ДОУ. График продаж книг по наиболее известным технологиям за последние 4 года
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
 
Останнє редагування:
2.Кроссплатформеность. Приложение может запускаться как на х86, так и на х64(не wow). Хотя с Linux-ом могут быть проблемы, так как Microsoft не выпускала фреймвёрк под Linux, но есть Mono _ продукт сторонних разработчиков, и он вроде как работает
3. Возможность абстрагироваться от конкретного языка. Т.к. в PE находится MSIL код, то допустим одно подразделение программистов может писать dll на VisualBAsic, а другое - подключить эту dll к своему коду на C#. При чё без проблем(сам делал :) )
2. Неправда, в свойствах проекта сборки есть выбор битности, соотвественно сборка скомпиленная на 64 бита не будет работать на 32-битной винде.
3. VB.NET не полностью CLS-совместимый, поэтому при сопряжении сборок написанных на нем со сборками написанными на шарпе могут возникнуть траблы.
-сборщик мусора(GarbageCollector). Зачастую он работает лучше, чем сбор мусора в ручную на С++. ТАм куча всяких фишек по оптимизации сбора. Есть поколения и т.д. Ну вот несколько достоинств GC:
1.После сбора мусора он дефрагментирует память и соответственно доступ к близко стоящим объектом происходит быстрее.
2.Разрабы старались сделать сбор мусора минимально заметным, и на сколько я знаю им это удалось: сбор мусора занимает ~ 1 мс.
-кстати, незабываем что на C# можно писать и неуправляемый код, где он имеет преимущества перед управляемым
В С++ никакой "ручной сборки мусора" нет, и непонятно как автоматический сборщик может работать лучше и быстрее принудительного освобождения памяти (конечно, если не забывать это делать).
1. По поводу более быстрого доступа к близко стоящим обьектам после "дефрагментации" - ваще пацталом :іржач: Ага, головку по ячейкам в памяти как по диску гонять приходится :) Сжатие кучи преследует только одну цель - освобождение как можно более крупных кусков памяти.
2. Да, оно то может и занимает одну миллисекунду, тока вот происходит в самые неподходящие моменты времени.
-насчёт графики согласен, но 2 таких факта:
1.Microsoft выпустила .NET framework для разработки игр под Xbox360. В его основе лежит XNA.
2.WPF - достаточно крутая технология, где есть и использование DirectX, векторная графика, растровая и т.д. Хотя WPF - для десктопных приложений с красивым GUI(а не для реальной 3D графики) , но всё же

Ну и незабываем о безопасности кода, и производительности труда. Хотя об этом уже говорили. Согласно правилу Мура, мощность компьютеров растёт экспоненциально и разработчики уже давно жертвуют оптимизацией и производительностью во имя стоимости и времени разработки.
1. XNA есть и под винду, но пока оно сделано через жопу, и использует Managed DirectX, при этом мелкософт почему-то противопоставляет 2 эти технологии.
2. Пока не будет кроссплатформенного .NET, этот WPF никогда даже не приблизится к Флэшу.
 
Этими холливарами все интернеты завалены. ТС видимо решил переучится на программиста. Ну что ж, Вам и карты в руки. Только сначала решите нравится Вам программирование или нет. Потому как за месяц на специалиста не выучитесь.
+ еще действительно нужно сначала выбрать наиболее интересное направление (веб, драйвера, графика,...), а потом уже смотреть на язык.

Насчет востребованности на рынке труда - работа.харьков.юа и другие подобной направленности
 
Здравствуйте,всем попавшим в нежные ,теплые,заботливые руки интегрированных систем,оболочек,
продуктов,студий,платформ.Под их усыпляющий шелест,вы уснули,и может быть надолго.
Спать будете долго,может быть до конца профессиональной карьеры и видеть сон:
- не надо ничего оптимизмровать
- ничего нестандартного подключать не надо
- не надо ничего защищать,есть антивирусы
- в чужой код лезть не надо,даже если ты лопается от любобпытства
- стоит ящик и работает,чего еще надо
Но вот приходится наконец просыпаться,когда осознаешь,что нужно посмотреть в ящик,определить,что работаешь с конкретным микропроцессором,конкретной системой и на конкретном интерфейсе,которые требуют вмешательства из вне в силу своих достоинств и недостатков.
Нужно проснуться и потому,что завтра экран может стать сплошным настолько,что ты не нужен будешь как проффи,а пока вы танцуете на разных платформах под заказ и при этом недозволено повторяться .Вас втянули танцевать,обнажаясь на моря и океаны,от москвы до вашингтона,
на мировой сцене бесплатно,не давая осознать что СОС это ОС,экранирующая низко-уровневые
програмно-аппаратные средства сети по обслуживанию запросов.
Языки програмированичя,сегодня это скорее всего технология ,метод,который используется для решения конкретной задачи,не требующий глубокого изучения,а используемый как справочный материал,но технология требует знать возможности и технические характеристики.
Это таинство его использующего,скрытого от посторонних глаз и главное в нем -это метод,алгоритм,
которые не требуют интерпретации как язык программирования.
Просыпайтесь,господа,идите в начало и вы сами будете создовать интерфейсы,платформы такие,
которые будут удовлетворять требованиям ваших заказчиков.Создовайте сами СУБД,не забывайте,что их делали такие же как вы,но ваши будут болеее защищены и менее ресурсозависимы.Не ройтесь в ГУГЛЯХ,там есть то,что вы сами туда заносите,помимо средств разработчиков,не забывайте о том,что один и тот же продукт часто в инете выставляется под 150
разных имен.Пишите код НТМL от начала и до конца сами,не забывая в некоторых местах конкретно
поинтересоваться внутренним содержимым на низком уровне.
Разработав програмный модуль или пакет модулей в той или иной экранной студии в силу ограничения по времени,постарайтесь собрать свой модуль или пакет без студии,сделав его независимым от нее.Работая с платформами,не забывайте,что это расширения пользовательского
интерфейса,сделанного на основе обновлений,добавлений функций ,которые вам так хорошо
известны и вызванных некоторой конкретной особенностью аппаратных средств или потребностями
пользователя.
И наконец,самое главное:
УЧИМСЯ ПРОГРАМИРОВАТЬ НА АССЕМБЛЕРЕ.
 
Назад
Зверху Знизу