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

Тема в разделе "Другие языки", создана пользователем Kol0book, 14 июн 2010.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. Kol0book

    Kol0book Постоялец

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

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

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

    Спасибо!
     
  2. ConstNW

    ConstNW Постоялец

    Регистр.:
    30 июн 2007
    Сообщения:
    132
    Симпатии:
    39
    javascript
    клиент, сервер, ria.

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

    путь к просветлению можно начать здесь
     
    MnstD13 нравится это.
  3. sw04

    sw04 seoplayer

    Регистр.:
    1 дек 2007
    Сообщения:
    601
    Симпатии:
    193
    владеешь php и хочешь углубиться в системные ресурсы http://develstudio.ru/
     
  4. Kol0book

    Kol0book Постоялец

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

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


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

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

    Обсуждение остается открытым..
     
  5. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    если опустить требование компиляции под вин32 и ide, то в шапке описан он:

    http://www.perl.org/
     
  6. ConstNW

    ConstNW Постоялец

    Регистр.:
    30 июн 2007
    Сообщения:
    132
    Симпатии:
    39
    • Haxe - это язык, в который должен был превратиться js, следующая(надолго ушедшая в черновики) версия ECMAscript. Синтаксис тот же самый + разного рода плюшки.
    • GWT - это не совсем Java, это скорее диалект поверх Java.
    • QT - позволяет создавать приложения целиком на js за исключением небольшого костяка на C++ в 5-10 строк, который компилируется в exe.
      http://doc.qt.nokia.com/qsa-1.2.2/index.html

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

    В двух словах.
    Си это синхронный язык. В нем можно блокировать выполнение кода и ждать наступления события.

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

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


    Видимо не снизошло озарение. JS это не только то, что в браузере работает.
    Погугли что умеет node.js
     
  7. Kol0book

    Kol0book Постоялец

    Регистр.:
    17 июл 2009
    Сообщения:
    55
    Симпатии:
    5
    Буду учитывать и это мнения при выборе, спасибо. Боюсь это не совсем то что нужно, но все же.

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

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

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

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

    По теме, впечатлило! Наткнулся на статью "Создание веб-паука на Node.js".
    http://nodejs.ru/268
    За несколько секунд собрать 1.5к страниц и запросить их все. Что тут говорить. PHP и рядом не стоял.

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

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

    И вот реально такое ощущение, что ошибаюсь снова и снова, и конец топика будет таким "СМОТРИ! ЭТО БУ-КВА, А ЭТО АЛ-ФА-ВИТ!:D"
     
  8. durman

    durman Постоялец

    Регистр.:
    18 фев 2008
    Сообщения:
    87
    Симпатии:
    8
    вставлю и я 5 копеек. язык оцценивал по 3 пунктам
    скорость
    удобность
    интерфейс
    выбрал перл, сразу скажу что интерфейс в нём отсутствует. по скорости уступает си, я делал тесты. но зато удобнее ничего не видел. и дело не в регулярках а то что в анонимных функция (которые задаются как асинхронные обработчики событий) можно использовать переменные обьявленные вне их. т.е. не надо им передовать дополнительные параметры они всё что нужно увидят, это сыграло решающую роль.
     
Статус темы:
Закрыта.