[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Востребованность языков программирования
che guevara
Как вы думаете какие языки программирования будут наболее востребованы в будущем?
whisk
Выбираешь, какой язык начинать изучать?
che guevara
Цитата (whisk)
Выбираешь, какой язык начинать изучать?


Ну типа того rolleyes.gif
RoDen
php7, ruby, java — т.е. web языки
digital_fox
Цитата (RoDen)
php7

Что, и такое уже есть?

michael
Цитата (RoDen)
php7, ruby, java — т.е. web языки


а платформы под т.н. web откуда будут браться? веб-сервисы тоже надо на чем-то крутить
whisk
che guevara
Советую сначала разобраться в прошлом smile.gif Технологии меняются быстро, основы остаются.
Если лишь на ближайшие 2-3 года - то смотри в сторону веба. PHP и JavaScript популярностью пользоваться будут, но специалистов по ним и так достаточно. Профессионалов, пищущих на Flash, Flex, ASP.NET, Ruby, Java значительно меньше.
Спросом будет пользоваться не только знание языков, но и знание фреймворков для них, так что не забывай про эту сторону.
дед_мажор
начинать надо с языка низкого уровня, на который имеется стандарт, и как минимум две его альтернативные реализации (это неотъемлемые гарантии качества и стабильности). идеальными языками по этому критерию являются си и си++. языком высокого уровня, который подходит под эти требования, является java. на все остальное говно только время впустую потратишь.
provisor
SQL тоже пригодится, не то чтобы это язык программирования в чистом виде, но используется довольно широко
RoDen
Цитата (digital_fox)
Цитата (RoDen)php7 Что, и такое уже есть?

нет, еще даже шестой не вышел, но я советую на будущее — пока человек соберется к осени, определится с языком, вот тут-то мой совет и пригодится, чем всякое старье учить, типа php 5 smile.gif
krokodil
Учи С++, не ошибешся.
Остальное, при необходимости, за пару недель осваивается.
дед_мажор
Цитата (provisor)
SQL тоже пригодится, не то чтобы это язык программирования в чистом виде

это язык программирования, декларативный, высокоуровневый, и даже полный по тьюрингу, если использовать хранимые процедуры.
полнота по тьюрингу, в частности, означает, что на этом языке может быть написана любая другая программа, написанная на turing-complete языке, например, на c++ или java.
теорию тоже выучить не мешало бы, да.
RoDen
Цитата (krokodil)
Учи С++, не ошибешся.Остальное, при необходимости, за пару недель осваивается.

да точно, за пару недель.
тонкостей столько, что иным пару лет не хватает.
whisk
Еще советую выучить английский. Это пополезнее всяких сей будет.
BANIT
Асемблер
БЕ3НОГNM
chto-to srednee i genialnoe mezhdu D i C++
RHS
Полагаю, что будущее системного программирования за C++, web - за Java и PHP. Но Assembler как был популярен полвека назад, так и останется бескомпромиссным языком низкого уровня.
БЕ3НОГNM
Цитата (RHS)
C++

taki bolshie (osobenno korporativnie) prilozheniya pisat' racionalno na java. kogda u vseh razniy uroven' kvalifikacii, zadachi i stepen' informirovannosti. a na c++ komfortno pisat' neboshie zatochennie prilozheniya. + u c++ netu sborchika musora kak u java. i chto-to bolshoe ti zaebeshsya debagit. a esli eto rabota v komande - sam ponimaesh. s drugoy storoni yazik D dopilivaet mnogie nedostatki c++, dovodya eto do korporativnogo urovnya java. no ya pochemu-to ne dumayu chto on budet populyaren)) lichno menya chto-to besit i v java i v c++.. no java besit rezhe i ne tak silno))) k tomu zhe izuchat' java i pisat' na nem - gorazdo bistree chem na c++. a eto prakticheski ne ostavlyaet c++ shansov na chto-to bolshee nezheli prostenkie klienti i sranie kalkulyatory)))
Ленивый Вычислитель
Цитата (Доктор Курпатов)
taki bolshie (osobenno korporativnie) prilozheniya pisat' racionalno na java. kogda u vseh razniy uroven' kvalifikacii, zadachi i stepen' informirovannosti. a na c++ komfortno pisat' neboshie zatochennie prilozheniya. + u c++ netu sborchika musora kak u java. i chto-to bolshoe ti zaebeshsya debagit. a esli eto rabota v komande - sam ponimaesh. s drugoy storoni yazik D dopilivaet mnogie nedostatki c++, dovodya eto do korporativnogo urovnya java. no ya pochemu-to ne dumayu chto on budet populyaren)) lichno menya chto-to besit i v java i v c++.. no java besit rezhe i ne tak silno))) k tomu zhe izuchat' java i pisat' na nem - gorazdo bistree chem na c++. a eto prakticheski ne ostavlyaet c++ shansov na chto-to bolshee nezheli prostenkie klienti i sranie kalkulyatory)))


C# - ответ недостаткам C++ :-)
БЕ3НОГNM
Цитата (Ленивый Вычислитель)
C# - ответ недостаткам C++ :-)

ya dazhe pisat' ne budu chto ya dumayu pro vashi yebanie frameworki.
Ленивый Вычислитель
Цитата (Доктор Курпатов)
ya dazhe pisat' ne budu chto ya dumayu pro vashi yebanie frameworki.

Ну ты же сам хвалишь Java :-)
А по поводу D... кто его реально использует?
Мёртворождённых языков хватает и без него smile.gif
michael
Цитата
C# - ответ недостаткам C++ :-)


не путай managed и unmanaged code, одно не заменяет другое
Ленивый Вычислитель
Цитата (michael)
не путай managed и unmanaged code, одно не заменяет другое

Не заменяет, нет. Но существование одного значительно ограничевает сферы разумного применения второго.
БЕ3НОГNM
Цитата (Ленивый Вычислитель)
Ну ты же сам хвалишь Java :-)
А по поводу D... кто его реально использует?
Мёртворождённых языков хватает и без него

java mashinu ya hotyabi smog ustanovit' na svoy komp v neskolkih OS. eto vruchaet indulgenciyu java. chego ne skazhesh pro vsyaki razrabotki microsofta. kotorie ya dazhe v rodnoy dlya nih vinde smog postavit', no ne smog zavesti soft kotoriy treboval etot framework.. nirazu.. NI ODNOGO DOLBANOGO RAZA ne zapustilsya nuzhniy soft trebuya uzhe ustanovleniy framework! hotya ya ochen staralsya i ochen' hotel poluchit etot soft. ololo. eto esli tolko kasatsya vozmozhnostey ih udobnogo ispolzovaniya. oni provalili test))) ya ne znayu v chem bila problema, no ya ne objazan znat' kak rabotaet vinda i vashi tockinet chtobi pokupat' soft i fapat' na nego bez utomitelnih razgovorov s sapportom. ne znayu kak naschet mono.. ne popadalsya takoy soft. no komu nuzhni mertvorozhdennie frameworki da?
michael
Цитата (Ленивый Вычислитель)
Но существование одного значительно ограничевает сферы разумного применения второго.


ни разу. пока .net framework остаётся самой медленной application virtual machine
BrainDrain
Кстати, о птичкахфреймворках: сколько раз уже ломалась совместимость, а сколько ещё только ожидается?

по сабжу: чем меньше язык похож на Brainfuck, и чем проще на нём писать и ловить ошибки, и чем меньше в нём "особенностей", тем больший успех он будет иметь.
Кстати, автору темы посоветую изучить что-нибудь из функциональных языков - получишь ценный опыт, который пригодится в любом случае, даже если не будешь заниматься программированием.
PS: главное - уметь программировать, а язык и среда разработки - это только инструмент в твоих руках.
Ленивый Вычислитель
Цитата (michael)
ни разу. пока .net framework остаётся самой медленной application virtual machine

Ой-ли... Java приложения как правило гораздо более тягомотны.
RoDen
подтверждаю.
Spark, Zend жрут дофига памяти и неповоротливы ужасно
michael
Цитата
Java приложения как правило гораздо более тягомотны.


да ну?

с cold startup в jvm довольно успешно борятся, а остальное там весьма и весьма на высоте
дед_мажор
Цитата (Ленивый Вычислитель)
C# - ответ недостаткам C++

оно конечно все хорошо, но c# c java конкурирует, а никак не с c++

/далее идет неопровержимый комментарий, доказывающая превосходство java над уебанс#им .net framework/
RHS
C# - убогая поделка по сравнению с классическим C++.
BrainDrain
RHS
Хм.. А что не убогая поделка по сравнению с классическим C++?
Имхо, плюсы будут медленно терять позиции в масштабах глобального рынка.
Dr.Gonzo
Самый хороший язык программирования - icq starac.gif
che guevara
А как насчет функционально-логичесикх языков программирвания.Ведь грядет же эра многоядерных систем.
BrainDrain
Che, эра многоядерхых систем уже давно не грядёт, а наступила smile.gif
Я уже писал о том, что каждый разработчик софта по-хорошему должен владеть одним из функциональных языков, даже если он никогда не будет на нём работать.
Функционал жил, живёт и будет жить. Тем не менее, гигабайты промышленного кода будут писаться на императивных языках, а функционал будет на втором плане. Другими словами, через 1..10 лет не будет повального ФП.
Там, где задачи идеально поддаются распараллеливанию, ФП уже давно прочно заняло позиции, в задачах где ценой огромных усилий можно добиться прироста производительности в 10%, это никому в хаб не впёрлось.
timofeji
Как у вас скучно.
С++ - уныл. Смотри в сторону Haskell и Forth, можешь еще поиграться с Erlang.
timofeji
Цитата (RoDen)
php7, ruby, java — т.е. web языки

ЩИТО? Что в твоем понимание "web языки" и как их отличить от "не-web языков"?!
timofeji
Цитата (Доктор Курпатов)
ya dazhe pisat' ne budu chto ya dumayu pro vashi yebanie frameworki.

Любитель велосипедов и реализации всего с нуля? Или что именно ты имел ввиду, а?
БЕ3НОГNM
timofeji
user posted image
timofeji
NOT funny!
sensey
Язык определяет сознание и мышление.
Поэтому рациональнее всего писать программу в терминах задачи (предметной области).
Поэтому в идеале каждой проблеме -- свой язык. (при этом язык должен быть адекватен предметной области а так же компактен и ортогонален).

Поэтому существует (и, надо сказать, процветает) методология метапрограммирования и проблемно-ориентированных языков (Domain Specific Language).

Цитата

Метапрограммирование — создание программ, которые создают другие программы как результат своей работы (либо — частный случай — изменяющие или дополняющие себя во время выполнения).


Реализуются DSL при помощи кодогенераторов или на основе языков функционального программирования.

Есть современные языки, типа Scala (на платформе Java) или Ruby или Python, которые позволяют совмещать функциональный и императивный стиль.

Программы, написанные в функциональном стиле наиболее компактны и наглядны.
Напр. я видел программку на Lisp-е в несколько строчек которая умела дифференцировать и интегрировать аналитические функции, заданные их алгебраическим выражением. Аналогичная программа на С/C++ потребовала бы на порядки (!!) больше кода со всеми вытекающими отсюда последствиями.

В общем, уважаемый топикстартер, рекомендую к прочтению классику. Напр. :
Эрик Рэймонд. Искусство программирования для UNIX
Ахо А. Структуры данных и алгоритмы
Знаменитый 4-томник Дональда Кнута. Кстати основным языком описания программ у Кнута является естесвенный язык (близкий к функциональному), а не алгоритмический.

А так же:
http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%...%BD%D0%B8%D0%B5
http://offline.computerra.ru/2006/630/258015/
http://en.wikipedia.org/wiki/Domain-specific_language
http://www.interface.ru/home.asp?artId=16215

И помните: всегда востребованы грамотные люди, знающие методологию проектирования, и разработки, способные принимать адекватные решения, а не сodemonkeys, знающие только лишь конкретные технологии.
дед_мажор
Цитата (sensey)
Реализуются DSL при помощи кодогенераторов или на основе языков функционального программирования.

dsl без проблем реализуются любым general-purpose объектно-ориентированным языком без необходимости изобретать новый синтаксис.
достаточно domain-specific классов с fluent-интерфейсом, позволяющим осуществлять конфигурацию. почти каждая domain-specific библиотека, каждый domain-specific framework — это dsl. хороший пример — web-фреймворк onPHP, onphp.org, некоторые компоненты которого являются dsl.
правило оккама гласит, что не нужно плодить лишнего без крайней надобности. и это называется embedded dsl. дальнейшее чтение продолжать в блоге у фаулера, который сейчас пишет книгу по этой теме: http://martinfowler.com/dslwip/index.html
BrainDrain
Цитата (sensey)
и ортогонален).

lolwut?
чему ортогонален-то? Предметной области? icon_lol.gif
БЕ3НОГNM
wat
sensey
BrainDrain,
я имел в виду компактность, концептуальную целостность и ортогональность понятий.

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

Цитата

Compact software has the property that it can fit conceptually inside a human's head. Orthogonal software has the property that operations are atomic and have no unexpected side effects; they change one thing without affecting others. Often, the concepts for good software design are best-illustrated by example, and Raymond provides many such examples to drive each point home. One of my favorite things about this material is that it has changed my thinking about design/architectural elements in my own programs.


timofeji
sensey что то у меня сомнения закрались о наличие у вас прикладного опыта по данной тематике
sensey
timofeji, а я нигде и не утверждал обратного.
В моей предметной области (системы автоматизированного управления, обработка сигналов) тяжело применить что-либо кроме C/Asm/Forth/Fortran.

:мечтательно: Вот займусь синтезом ПЛИС и имитационным моделированием, вот тогда-то и откроется простор для использования достижений Computer Science.
BrainDrain
Такое применение термина "ортогональность" слегка смутило, потому что ортогональной как правило называется некая пара языков (обычно императив+функционал); такая пара как раз и обладает всеми преимуществами, описанными в том (№41) посте.

Цитата (sensey)
Программы, написанные в функциональном стиле наиболее компактны и наглядны.

Если это именно те задачи, под которые функционал подходит лучше императива,
Цитата (sensey)
Поэтому в идеале каждой проблеме — свой язык
Fast Reply:

 Enable Smilies |  Enable Signature
Здесь расположена полная версия этой страницы.
Студенческий клуб ostudent.ru и его создатели не несут ответственности за достоверность самостоятельно размещаемой посетителями сайта информации и не могут подтвердить или опровергнуть её.
Рейтинг@Mail.ru
Invision Power Board © 2001-2025 Invision Power Services, Inc.