Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.04.2012, 18:15   #11
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

1. Пример задачи для серверного скрипта, где это критично? Во многих случаях многопоточность реализуется на PHP несколькими параллельными обращениями к серверу. А на клиентском JavaScript никакой многопоточности нет, разве что эмуляция с помощью setTimeout.
2. ООП в JS вообще никакое. Оно и в PHP далеко от идеала, но несравнимо лучше реализовано, чем в JS.
3. Чем плох global - не понятно. Используйте $GLOBALS, если global не нравится.
4. Не вижу принципиальную разницы между работай с n-ным количеством методов и с n-ным количеством функций. При желании можно создать класс, работающий с датой и временем, если вам так удобнее. Не вижу препятствий.
5. Что за глупость? Только чаще встречается название не хэш, а ассоциативный массив.
6. С какими еще иерархическими данными?
7. В чем же неудобство?
Arigato вне форума Ответить с цитированием
Старый 11.04.2012, 20:19   #12
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

1. setTimeout(fn, 0); — да... только в php и этого нет.
1.1. отрисовка нескольких независимых кусков страницы, цепляющих данные из разных таблиц БД, так как запросы идут не последовательно, число обращений к БД будет работать быстрее, чем запросы в 20 строк, которые также можно распараллелить.
1.2. Игры, напр. n потоков паралельно обрабатывают действия n игроков.
1 запрос, n действий, 1 ответ ИМХО лучше, чем
n запросов, 1 действие, n ответов
2. ООП в JS вообще другое) Прототипное, достаточно создать прототип, и по нему уже другие объекты — ничуть не хуже, все принципы ООП сохраняются. Достаточно привыкнуть.
Оно и в PHP далеко от идеала — с эти трудно не согласиться=)
3. В js все пространство имен наследуется в дочерние функции. Согласен, приемущество из пальца, ИМХО удобней.
4. В js уже есть объект, работающий с датой и хранящий его в виде "даты", а не числа.
5. на js весь запрос к базе можно получить в хэше (как на перл), в php нужно разбирать построчно хоть и да, MysqlFetchAssoc();
+ в php "хэш" - это всего лишь ассоциативный массив, в JS хэш — это уже Объект:
Код:
var a = {
      b:5,
      c:6,
      d:function(){
        this.b+=this.c
      }
    };
6. Например такими:
Код:
var goods = [
      {
        name:"Выпечка",
        type:"bread"
        goods: [
          {
            name:"Батон",
            count:12,
            price:20.6
          },
          {
            name:"Хлеб",
            count:8,
            price:16.80
          },
        ],
        name:"Молоко",
        type:"milk"
        price:40,
        count:[
          {
            deadline:"15.04.12",
            count:14
          },
          {
            deadline:"13.04.12",
            count:6
          }
        ]  
      }
    ];
7. В том, что чтобы разобрать дерево из примера выше на js мне нужна одна функция, которая создаст объекты товаров.
На PHP нужно 4 вложенных цикла.
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 11.04.2012, 23:37   #13
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

1. Это не многопоточность, а банальный таймер. Только зачем таймер на стороне сервера? Для этого есть крон. А если надо параллельно обработать множество запросов, то это легко делается в комбинации PHP + JS (клиентский). JS генерирует нужные запросы к серверу, на сервере параллельно запускается нужное число PHP скриптов.
1.1. AJAX полностью решает эту проблему.
1.2. Игровые сервера не пишутся на PHP или JS, эти языки не для многопоточных игр, да и не для игр вообще. Ну простенькие браузерные игры можно реализовать, только ума не приложу, зачем тут многопоточность в явном виде? Для каждого игрока и так свой PHP скрипт будет работать.
2. Про ООП в JS промолчу
3. -
4. Наличие объекта для работы с чем либо (пусть с датой) никак не дает языку преимуществ. Мало ли, где какие объекты или классы уже есть, так можно самый отвратительный язык напичкать 1000 объектами и сказать, что он лучше всех, т.к. объектов у него больше всего.
5. А говорили в PHP нет хэшей, а теперь говорите, что есть, но не такой. Надо еще доказать, что вариант из JS лучше, чем из PHP. В JS по сути как раз и нет ассоциативных массивов, они реализуются посредством объектов.
6. Тот же ассоциативный массив в PHP позволяет сделать тоже самое, только синтаксис записи будет несколько иной.
7. PHP функция json_decode.
Arigato вне форума Ответить с цитированием
Старый 12.04.2012, 11:10   #14
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

1. Таймеры, которые создают многопоточность — PHP даже на это не способен. Крон - это доп программа, а в js это реализуется средствами языка. «А если надо параллельно обработать множество запросов, то это легко делается в комбинации PHP + JS (клиентский)» — делается легко, да. Работает долго, каждый запрос будет зависеть от пинга.
1.1. Не решает, если на стороне клиента отключены скрипты (1)
Не решает, если нужна индексация поисковиками данных (2)
1.2. Почему не пишутся на php понятно) На JS не пишутся потому что технология молода) Он для этой цели отлично подходит.
2. Согласен, ООП в JS просто сказка
4. Аналогично можно сказать про 100500 функций в неком языке, с разным синтаксисом и с разными правилами офориления: код превращается (на это языке) в нечто: то кэмелкейс, то ф-ии через землю, никакой стандартизации.
5. В php есть то, что можно назвать хэшем. Зачем доказывать? Это очевидно: массив может быть хэшем или объектом, или вообще классом. Не так ли должно быть в языке с динамической типизацией?
6. И для дерева с n уровнями вложеностей тоже? С динамическим расширением классов обработки дерева?
7. а после нее 4 (в данном случае) вложенных цикла
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 12.04.2012, 11:56   #15
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

чет вы не в тему уже ребята спорите )))) создайте отдельно новый холивар - что круче php или JS
ADSoft вне форума Ответить с цитированием
Старый 12.04.2012, 23:17   #16
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Naive, короче, пишите на чем хотите, ваше дело, смысла в споре не вижу.
Цитата:
Сообщение от ADSoft
создайте отдельно новый холивар - что круче php или JS
Нет уж, не надо. Вкратце этот спор решается очень просто: оба г-вно.

P.S.
Цитата:
Сообщение от Naive
аймеры, которые создают многопоточность — PHP даже на это не способен.
Никакой многопоточности таймеры не создают. Простые таймеры в один поток, в чем легко убедится.

Последний раз редактировалось Arigato; 12.04.2012 в 23:35.
Arigato вне форума Ответить с цитированием
Старый 17.04.2012, 00:00   #17
kRicha
Пользователь
 
Регистрация: 29.03.2012
Сообщений: 17
По умолчанию

да, ребят, вы че-то действительно, куда-то не туда забрели.
Вопрос же был в генерировании pdf файла
kRicha вне форума Ответить с цитированием
Старый 17.04.2012, 01:41   #18
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

JS не способен генерировать PDF, в отличии от PHP, у которого есть библиотека PDFLib, позволяющая создавать PDF-файлы.
Arigato вне форума Ответить с цитированием
Старый 17.04.2012, 09:00   #19
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
JS не способен генерировать PDF, в отличии от PHP, у которого есть библиотека PDFLib, позволяющая создавать PDF-файлы.
Вы так говорите, как буд-то если бы в PHP не было бы библиотеки PDFLib, то создать ПДФ было бы невозможно и на php.
Библиотеку можно написать и для JS, главное желание.
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 17.04.2012, 09:54   #20
kRicha
Пользователь
 
Регистрация: 29.03.2012
Сообщений: 17
По умолчанию

Цитата:
Сообщение от Naive Посмотреть сообщение
Вы так говорите, как буд-то если бы в PHP не было бы библиотеки PDFLib, то создать ПДФ было бы невозможно и на php.
Библиотеку можно написать и для JS, главное желание.
это первое. А второе, то, что есть библиотеки, у меня одна даже завелась, но взглянув на историю разработки - увидел, что она была заброшена еще в 2008 или 2009 году, по этому некоторые детали там не подошли..
kRicha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Javascript и html-список Ast JavaScript, Ajax 11 19.12.2011 19:01
Javascript html-список Ast JavaScript, Ajax 19 18.12.2011 15:32
javascript html andrij2011 JavaScript, Ajax 2 18.05.2011 10:23
HTML и Javascript фрейм kapitel_bc@ukr.net HTML и CSS 2 05.01.2011 19:45
необходим поиск файлов форматов pdf, txt, djvu, chm, html Yokka Общие вопросы C/C++ 0 26.05.2010 03:41