che guevara
15.04.2009 - 14:28
Как вы думаете какие языки программирования будут наболее востребованы в будущем?
Выбираешь, какой язык начинать изучать?
che guevara
15.04.2009 - 16:39
Цитата (whisk) |
Выбираешь, какой язык начинать изучать? |
Ну типа того
php7, ruby, java — т.е. web языки
digital_fox
15.04.2009 - 17:57
Что, и такое уже есть?
michael
15.04.2009 - 20:31
Цитата (RoDen) |
php7, ruby, java — т.е. web языки |
а платформы под т.н. web откуда будут браться? веб-сервисы тоже надо на чем-то крутить
che guevaraСоветую сначала разобраться в прошлом

Технологии меняются быстро, основы остаются.
Если лишь на ближайшие 2-3 года - то смотри в сторону веба. PHP и JavaScript популярностью пользоваться будут, но специалистов по ним и так достаточно. Профессионалов, пищущих на Flash, Flex, ASP.NET, Ruby, Java значительно меньше.
Спросом будет пользоваться не только знание языков, но и знание фреймворков для них, так что не забывай про эту сторону.
дед_мажор
15.04.2009 - 22:59
начинать надо с языка низкого уровня, на который имеется стандарт, и как минимум две его альтернативные реализации (это неотъемлемые гарантии качества и стабильности). идеальными языками по этому критерию являются си и си++. языком высокого уровня, который подходит под эти требования, является java. на все остальное говно только время впустую потратишь.
provisor
15.04.2009 - 23:21
SQL тоже пригодится, не то чтобы это язык программирования в чистом виде, но используется довольно широко
Цитата (digital_fox) |
Цитата (RoDen)php7 Что, и такое уже есть? |
нет, еще даже шестой не вышел, но я советую на будущее — пока человек соберется к осени, определится с языком, вот тут-то мой совет и пригодится, чем всякое старье учить, типа php 5
krokodil
16.04.2009 - 00:46
Учи С++, не ошибешся.
Остальное, при необходимости, за пару недель осваивается.
дед_мажор
16.04.2009 - 07:06
Цитата (provisor) |
SQL тоже пригодится, не то чтобы это язык программирования в чистом виде |
это язык программирования, декларативный, высокоуровневый, и даже полный по тьюрингу, если использовать хранимые процедуры.
полнота по тьюрингу, в частности, означает, что на этом языке может быть написана любая другая программа, написанная на turing-complete языке, например, на c++ или java.
теорию тоже выучить не мешало бы, да.
Цитата (krokodil) |
Учи С++, не ошибешся.Остальное, при необходимости, за пару недель осваивается. |
да точно, за пару недель.
тонкостей столько, что иным пару лет не хватает.
Еще советую выучить английский. Это пополезнее всяких сей будет.
БЕ3НОГNM
16.04.2009 - 16:43
chto-to srednee i genialnoe mezhdu D i C++
Полагаю, что будущее системного программирования за C++, web - за Java и PHP. Но Assembler как был популярен полвека назад, так и останется бескомпромиссным языком низкого уровня.
БЕ3НОГNM
16.04.2009 - 20:30
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)))
Ленивый Вычислитель
16.04.2009 - 20:39
Цитата (Доктор Курпатов) |
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
16.04.2009 - 20:45
Цитата (Ленивый Вычислитель) |
C# - ответ недостаткам C++ :-) |
ya dazhe pisat' ne budu chto ya dumayu pro vashi yebanie frameworki.
Ленивый Вычислитель
16.04.2009 - 21:09
Цитата (Доктор Курпатов) |
ya dazhe pisat' ne budu chto ya dumayu pro vashi yebanie frameworki. |
Ну ты же сам хвалишь Java :-)
А по поводу D... кто его реально использует?
Мёртворождённых языков хватает и без него
michael
16.04.2009 - 22:16
Цитата |
C# - ответ недостаткам C++ :-) |
не путай managed и unmanaged code, одно не заменяет другое
Ленивый Вычислитель
16.04.2009 - 22:26
Цитата (michael) |
не путай managed и unmanaged code, одно не заменяет другое |
Не заменяет, нет. Но существование одного значительно ограничевает сферы разумного применения второго.
БЕ3НОГNM
16.04.2009 - 22:41
Цитата (Ленивый Вычислитель) |
Ну ты же сам хвалишь 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
16.04.2009 - 23:19
Цитата (Ленивый Вычислитель) |
Но существование одного значительно ограничевает сферы разумного применения второго. |
ни разу. пока .net framework остаётся самой медленной application virtual machine
BrainDrain
16.04.2009 - 23:20
Кстати, о птичкахфреймворках: сколько раз уже ломалась совместимость, а сколько ещё только ожидается?
по сабжу: чем меньше язык похож на Brainfuck, и чем проще на нём писать и ловить ошибки, и чем меньше в нём "особенностей", тем больший успех он будет иметь.
Кстати, автору темы посоветую изучить что-нибудь из функциональных языков - получишь ценный опыт, который пригодится в любом случае, даже если не будешь заниматься программированием.
PS: главное - уметь программировать, а язык и среда разработки - это только инструмент в твоих руках.
Ленивый Вычислитель
16.04.2009 - 23:24
Цитата (michael) |
ни разу. пока .net framework остаётся самой медленной application virtual machine |
Ой-ли... Java приложения как правило гораздо более тягомотны.
подтверждаю.
Spark, Zend жрут дофига памяти и неповоротливы ужасно
michael
16.04.2009 - 23:57
Цитата |
Java приложения как правило гораздо более тягомотны. |
да ну?с cold startup в jvm довольно успешно борятся, а остальное там весьма и весьма на высоте
дед_мажор
17.04.2009 - 04:59
Цитата (Ленивый Вычислитель) |
C# - ответ недостаткам C++ |
оно конечно все хорошо, но c# c java конкурирует, а никак не с c++
/далее идет неопровержимый комментарий, доказывающая превосходство java над уебанс#им .net framework/
C# - убогая поделка по сравнению с классическим C++.
BrainDrain
17.04.2009 - 14:40
RHS
Хм.. А что не убогая поделка по сравнению с классическим C++?
Имхо, плюсы будут медленно терять позиции в масштабах глобального рынка.
Dr.Gonzo
17.04.2009 - 17:19
Самый хороший язык программирования - icq
che guevara
17.04.2009 - 23:46
А как насчет функционально-логичесикх языков программирвания.Ведь грядет же эра многоядерных систем.
BrainDrain
18.04.2009 - 12:06
Che, эра многоядерхых систем уже давно не грядёт, а наступила

Я уже писал о том, что каждый разработчик софта по-хорошему должен владеть одним из функциональных языков, даже если он никогда не будет на нём работать.
Функционал жил, живёт и будет жить. Тем не менее, гигабайты промышленного кода будут писаться на императивных языках, а функционал будет на втором плане. Другими словами, через 1..10 лет не будет повального ФП.
Там, где задачи идеально поддаются распараллеливанию, ФП уже давно прочно заняло позиции, в задачах где ценой огромных усилий можно добиться прироста производительности в 10%, это никому в хаб не впёрлось.
timofeji
18.04.2009 - 13:59
Как у вас скучно.
С++ - уныл. Смотри в сторону Haskell и Forth, можешь еще поиграться с Erlang.
timofeji
18.04.2009 - 14:03
Цитата (RoDen) |
php7, ruby, java — т.е. web языки
|
ЩИТО? Что в твоем понимание "web языки" и как их отличить от "не-web языков"?!
timofeji
18.04.2009 - 14:06
Цитата (Доктор Курпатов) |
ya dazhe pisat' ne budu chto ya dumayu pro vashi yebanie frameworki. |
Любитель велосипедов и реализации всего с нуля? Или что именно ты имел ввиду, а?
БЕ3НОГNM
18.04.2009 - 14:21
timofeji
timofeji
27.04.2009 - 00:30
NOT funny!
Язык определяет сознание и мышление.
Поэтому рациональнее всего писать программу в терминах задачи (предметной области).
Поэтому в идеале каждой проблеме -- свой язык. (при этом язык должен быть адекватен предметной области а так же компактен и ортогонален).
Поэтому существует (и, надо сказать, процветает) методология метапрограммирования и проблемно-ориентированных языков (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%B5http://offline.computerra.ru/2006/630/258015/http://en.wikipedia.org/wiki/Domain-specific_languagehttp://www.interface.ru/home.asp?artId=16215И помните: всегда востребованы грамотные люди, знающие методологию проектирования, и разработки, способные принимать адекватные решения, а не сodemonkeys, знающие только лишь конкретные технологии.
дед_мажор
3.05.2009 - 08:53
Цитата (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
3.05.2009 - 19:57
Цитата (sensey) |
и ортогонален). |
lolwut?
чему ортогонален-то? Предметной области?
БЕ3НОГNM
3.05.2009 - 20:23
wat
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
8.05.2009 - 19:06
sensey что то у меня сомнения закрались о наличие у вас прикладного опыта по данной тематике
sensey
10.05.2009 - 18:41
timofeji, а я нигде и не утверждал обратного.
В моей предметной области (системы автоматизированного управления, обработка сигналов) тяжело применить что-либо кроме C/Asm/Forth/Fortran.
:мечтательно: Вот займусь синтезом ПЛИС и имитационным моделированием, вот тогда-то и откроется простор для использования достижений Computer Science.
BrainDrain
20.05.2009 - 09:14
Такое применение термина "ортогональность" слегка смутило, потому что ортогональной как правило называется некая пара языков (обычно императив+функционал); такая пара как раз и обладает всеми преимуществами, описанными в том (№41) посте.
Цитата (sensey) |
Программы, написанные в функциональном стиле наиболее компактны и наглядны. |
Если это именно те задачи, под которые функционал подходит лучше императива,
Цитата (sensey) |
Поэтому в идеале каждой проблеме — свой язык |
Fast Reply:
Powered by dgreen
Здесь расположена полная версия этой страницы.