Я в замешательстве..(only guru!=)

Статус
В этой теме нельзя размещать новые ответы.

Kol0book

Постоялец
Регистрация
17 Июл 2009
Сообщения
55
Реакции
5
Друзья! Форумчане!

Вопрос вполне тривиальный, хочу освоить язык программирования, с возможностью компиляции в *.exe программу (среда Windows)
Для чего это мне нужно:
  • - планируется работать с WEB (а именно парсинг, сбор различных данных из интернета, работа с сокетами, вплоть до создания браузера)
  • - обработка больших объемом информации
  • - быстрота языка крайне важна
  • - многопоточность тоже (все языки такого типа поддерживают ее вроде)
  • - программирование пользовательского интерфейса (люблю красивые программы)
  • - ну и естесственно удобство
Начать надо почти с нуля, неплохо владею PHP, но данного языка веб-программирования мне недостаточно, по понятным причинам. Т.к. PHP и C++ схожие языки, по своему синтаксису, если я правильно выражаюсь, то есть мнение, что и изучать следует именно его. Но масса других языков сбивает с толку, все хвалят то, на чем пишут - Delphi, Basic, C, C#, QT, Java и тп. Этим список неограничивается, предлагайте.
Хотелось бы услышать авторитетные мнения людей, имеющих непосредственное отношение к программированию.
И чтобы топик не превратился в место для флуда, предлагаю обозначить приоритеты ответов:
  • - язык программирования
  • - почему именно он, можно сравнение с другими языками программирования, + возможности языка
  • - перспективы языка программирования
  • - платформа для программирования на данном языке
  • - какие-нибудь ссылки для просветления, можно даже на учебную литературу, но не обязательно, т.к. думаю начать разбираться с исходниками сразу
  • - какие-то общие советы
  • - вполне вероятно, что могут появится конкретные вопросы, уточняющие зачем именно нужен мне язык, пишите, если не сложно, это поможет быстрее понять, что именно подходит, для решения поставленных задач..

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

Спасибо!
 
javascript
клиент, сервер, ria.

самая перспективная платформа.

наиболее подходящий язык для задач(нужна не многопоточность, а асинхронность)
интерфейс на QT, Air и прочих RIA-платформах
гибкость разработки: GWT, haxe, php.js, harmony, mascara

 
javascript
клиент, сервер, ria.
Интересная связка, но не совсем мне понятная.
Получается что сам интерфейс программы мы видим в браузере? и основой этой программы является JavaScript.
  • Но язык Haxe к примеру компилируется в JS, поэтому можно писать и на нем..
  • Или JAVA, можно писать на нем, а потом, посредствам GWT компилировать все это в JS и HTML, где HTML можно использовать в качестве среды для интерфейса?
  • Или QT, пишем на С++, Питоне и тп, и компилируем, но если я правильно понял компиляция осуществляется в *.exe формат (или это не так?)
выполняется это все дело под браузером, IE, Opera, FireFox
Вообщем копать в сторону RIA-приложений.

наиболее подходящий язык для задач(нужна не многопоточность, а асинхронность)
хм, я в этом пока не силен, но мне кажется, если перед программистом стоит задача в выполнении одного и того же действия, то это асинхронность, то есть выполнение 10 действий одновременно, а если к примеру нужно подключаться к ресурсу используя разные прокси, порты, и чтобы одно действие уведомляло другое о каком-то событии, мне кажется это многопоточность... я могу ошибаться
прошу разъяснения, если не трудно..


Как я понимаю для всего этого мне нужен JS, либо учить, например, С++ и его уже компилировать в RIA
Я вообще несколько не представляю каким образом можно написать, к примеру парсилку поисковой системы(возьмем конкретную задачу), в которой 500 потоков и каждый будет работать через отдельный прокси. Возможно ли такое, используя эти связки?

владеешь php и хочешь углубиться в системные ресурсы
Конструктор программ, компиляция в *.exe, понятно
Не нашел данные о многопоточности и скорости работы получаемых приложений. Думаю попробовать можно

Обсуждение остается открытым..
 
Интересная связка, но не совсем мне понятная.
Получается что сам интерфейс программы мы видим в браузере? и основой этой программы является JavaScript.

  • Но язык Haxe к примеру компилируется в JS, поэтому можно писать и на нем..
  • Или JAVA, можно писать на нем, а потом, посредствам GWT компилировать все это в JS и HTML, где HTML можно использовать в качестве среды для интерфейса?
  • Или QT, пишем на С++, Питоне и тп, и компилируем, но если я правильно понял компиляция осуществляется в *.exe формат (или это не так?)
  • Haxe - это язык, в который должен был превратиться js, следующая(надолго ушедшая в черновики) версия ECMAscript. Синтаксис тот же самый + разного рода плюшки.
  • GWT - это не совсем Java, это скорее диалект поверх Java.
  • QT - позволяет создавать приложения целиком на js за исключением небольшого костяка на C++ в 5-10 строк, который компилируется в exe.

выполняется это все дело под браузером, IE, Opera, FireFox
Вообщем копать в сторону RIA-приложений.
Можно и под браузером, можно и под Mozilla XULrunner(на котором создан FireFox, Thunderbird, Songbird и прочие животные),
Можно под Adobe Air, который для отображения использует WebKit(Safari,Chrome)
+ к этому всевозможные движки виджетов.
Да, вообщем копать в сторону RIA-приложений.

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

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

Весь смысл js(а точнее ECMAscript) это события(Events).


Как я понимаю для всего этого мне нужен JS, либо учить, например, С++ и его уже компилировать в RIA
Я вообще несколько не представляю каким образом можно написать, к примеру парсилку поисковой системы(возьмем конкретную задачу), в которой 500 потоков и каждый будет работать через отдельный прокси. Возможно ли такое, используя эти связки?
Видимо не снизошло озарение. JS это не только то, что в браузере работает.
Погугли что умеет node.js
 
если опустить требование компиляции под вин32 и ide, то в шапке описан он:

Для просмотра ссылки Войди или Зарегистрируйся
Буду учитывать и это мнения при выборе, спасибо. Боюсь это не совсем то что нужно, но все же.

А теперь о наших помидорах..
Ну ребята, вы меня еще больше озадачили, или впечатлили, я еще не определился)

В саму задумку и реализацию языка js была вложена асинхронность.
Та же самая многопоточность, только в самом языке. Без мутексов, семафоров и блокировок.
В js код нельзя заблокировать и ждать события, для этого назначается отдельный обработчик события.
Если я правильно понял, мьютексы и семафоры это такие, своего рода, ограничители языка класса СИ(и наверняка и множества других языков), то есть 1 "поток" вперед другого не убежит, если сработает быстрее. С JS все абсолютно иначе, "потоки" работают/обрабатываются независимо друг от друга, это и является асинхронностью, я прав?

И если оно так, то получается это дает преимущество в скорости как минимум. Но одно не могу понять, не влияет ли это на загрузку самой системы, если приложение на базе JS (опять же если это правильная формулировка) работает: клиент - приложение, приложение - сервер, а сервер не что иное как твой рабочий компьютер

Видимо не снизошло озарение. JS это не только то, что в браузере работает.
Погугли что умеет node.js
Прийдет, никуда не денется.
node.js - вот видите друзья, я даже не знал что есть такая штука, что говорить о моей компетентности в вопросах программирования, благо умею пользоваться поиском)

По теме, впечатлило! Наткнулся на статью "Создание веб-паука на Node.js".

За несколько секунд собрать 1.5к страниц и запросить их все. Что тут говорить. PHP и рядом не стоял.

Но уж слишком много платформ для RIA, какую выбрать.. наверное это прийдет после того как на каждой что-нибудь сотворишь
Но понятно с чего начать, с освоения JS. Ведь получается в большинстве случаев это основа RIA (в большинстве, потому что не понял с GWT, Java и JS насколько я знаю разные вещи, а по сему пути разные а исход RIA, возможно сделать такой вывод?)

Возник тут вопрос, что НЕЛЬЗЯ выполнить на RIA ?
Вот пока писал это сообщение пришло на ум, С++, JAVA, JS, прочие.. все возможности этих языков, используемых в различных платформах, все это можно перенести в RIA-приложение, так ли оно? может быть эту мысль вы пытаетесь до меня донести? вот в чем перспектива и мощь?

И вот реально такое ощущение, что ошибаюсь снова и снова, и конец топика будет таким "СМОТРИ! ЭТО БУ-КВА, А ЭТО АЛ-ФА-ВИТ!:D"
 
вставлю и я 5 копеек. язык оцценивал по 3 пунктам
скорость
удобность
интерфейс
выбрал перл, сразу скажу что интерфейс в нём отсутствует. по скорости уступает си, я делал тесты. но зато удобнее ничего не видел. и дело не в регулярках а то что в анонимных функция (которые задаются как асинхронные обработчики событий) можно использовать переменные обьявленные вне их. т.е. не надо им передовать дополнительные параметры они всё что нужно увидят, это сыграло решающую роль.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху