The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Brython 3.9, реализации языка Python для web-браузеров

10.10.2020 10:41

Опубликован релиз проекта Brython 3.9 (Browser Python) с реализацией языка программирования Python 3 для выполнения на стороне web-браузера, позволяющей использовать Python вместо JavaScript для разработки скриптов для Web. Код проекта написан на языке Python и распространяется под лицензией BSD. Новый выпуск примечателен обеспечением совместимости с Python 3.9 и обновлением стандартной библиотеки.

Подключив библиотеки brython.js и brython_stdlib.js, web-разработчик может использовать язык Python для определения логики работы сайта на стороне клиента, применяя Python вместо JavaScript. Для включения Python-кода на страницы используется тег <script> с mime-типом "text/python". Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (<script type="text/python" src="test.py">). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.

Выполнение Python-кода из блоков <script> производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление "<body onload="brython()">". На основе Python кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

Итоговая производительность большинства операций во встраиваемых в web-страницы Python-сценариях близка к производительности CPython. Задержка возникает только на этапе компиляции, но для её устранения предоставляется возможность загрузки предварительно скомпилированного в JavaScript кода, которая применяется для ускорения загрузки стандартной библиотеки (Brython предоставляет инструментарий для создания JavaScript-библиотек на основе модулей Python).


<script type="text/python">

import time
import math

from browser import document
import browser.timer

content = document["content"]

...

canvas = content.select_one(".clock")

if hasattr(canvas, 'getContext'):
    ctx = canvas.getContext("2d")

    browser.timer.set_interval(set_clock, 100)
    show_hours()
else:
    content.select_one('.navig_zone').html = "canvas is not supported"

</script>


  1. Главная ссылка к новости (https://github.com/brython-dev...)
  2. OpenNews: Реализация языка Python на JavaScript и транслятор кода Python в JavaScript
  3. OpenNews: PyPy.js - реализация языка Python для web-браузеров
  4. OpenNews: Обеспечена возможность запуска MicroPython в web-браузере
  5. OpenNews: Релиз 19.3.0 виртуальной машины GraalVM и реализаций Python, JavaScript, Ruby и R на её основе
  6. OpenNews: Работа по интеграции языка Python в web-браузеры
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53866-brython
Ключевые слова: brython, python
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (125) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, A.Stahl (ok), 11:18, 10/10/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +16 +/
     
     
  • 2.4, Lex (??), 11:30, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +5 +/
     
     
  • 3.11, Аноним (11), 12:11, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +12 +/
     
  • 2.14, Аноним (14), 12:22, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • –9 +/
     
     
  • 3.18, funny.falcon (?), 12:33, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.20, Аноним (14), 12:54, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
     
  • 5.34, zzz (??), 15:31, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • –5 +/
     
     
  • 6.37, A.Stahl (ok), 16:10, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 7.40, zzz (??), 16:28, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • –3 +/
     
  • 6.39, Ordu (ok), 16:25, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 3.38, Аноним (38), 16:16, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.15, Аноним (15), 12:25, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +2 +/
     
     
  • 3.29, Онаним (?), 14:24, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.33, Аноним (33), 15:26, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +2 +/
     
  • 2.47, TheFotoMag (ok), 18:33, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 3.48, A.Stahl (ok), 18:41, 10/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.111, TheFotoMag (ok), 22:22, 11/10/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     

     ....ответы скрыты (16)

  • 1.3, Аноним (-), 11:28, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Из скрипта предоставляется полный доступ к элементам и событиям DOM.

    Я тут думал в чём подвох. Ах вот оно что! Манипуляция "Документ Объект Модель" при помощи Питона. А чем им Жабо_Скрипт-то не понравился? Питон всё таки это полноценный язык программирования. Зачем его совать в браузер?

     
     
  • 2.5, Lex (??), 11:32, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Он толкается.. но лишь отчасти, ведь на стороне клиента он преобразуется в жс.
    Обычный пихон-вэй чо
     
     
  • 3.87, Аноним (87), 10:24, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Браузеры не позволяют по-другому, хотя WASM якобы должен был этому поспособствовать. Поживём-увидим.
     
     
  • 4.104, Ненавижу SJW (?), 17:58, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да хватит молится на тот WASM
     
  • 4.127, Lex (??), 09:52, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Браузеры не позволяют по-другому, хотя WASM якобы должен был этому поспособствовать. Поживём-увидим.

    Ну поспособствует и питон будет компилиться в него, а не в жс... на стороне клиента. Многое ли это принципиально изменит ?)

     
  • 2.10, Fedd (ok), 12:10, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Просто потому что могут, ведь сегодня модно создавать проЭкты
     
     
  • 3.124, Аноним (-), 03:44, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    но ты-то, иксперт, даже десятой частью чего-то подобного похвастаться не можешь
     
  • 2.106, Аноним (106), 19:54, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Js говно
     

  • 1.6, Аноним (6), 11:42, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Астрологи объявяли неделю земноводных.
    Количество видов змей (питонов) увеличилось в три раза.
     
     
  • 2.7, Аноним (6), 11:44, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    cpython
    jython (rip)
    pypy
    ironpython(?)
    micropython
    snek
    brpython

    кто еще знает?

     
     
  • 3.8, m.makhno (ok), 11:58, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    <ul>
    ** Stackless Python
    ** CircuitPython
    </ul>
     
     
  • 4.12, Аноним (12), 12:12, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    RustPython конечно же, который через WASI на изи заменяет сабжевую подделку.
     
     
  • 5.97, Онаним (?), 12:29, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    PythonRust?
     
     
  • 6.99, Аноним (99), 14:06, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://github.com/RustPython/RustPython
     
  • 3.50, Аноним (50), 20:01, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    rupypy жи
     
     
  • 4.55, Аноним (50), 20:27, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    а хотя не, это наоборот
     
     
  • 5.81, trdm (ok), 05:25, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    жируру?
     

  • 1.9, Аноним (12), 12:05, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Наконец-то нормальный джаваскрипт подвезли
     
     
  • 2.19, Аноним (19), 12:49, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    А как же Kotlin/JS ?
     
  • 2.28, Урри (?), 14:17, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Промисы то он умеет? а то как бы реальный жабострипт это давно не язык, а надстройка над фреймворком надстройки над другим фреймворком и асинхронная сеть.

    Я так годика два назад запилил "лисп вместо жабоскрипта" - оказалось очень здорово, но только для хелловорлдов. Для чего-то сложнее - обломс, слишком много городить надо.

     
     
  • 3.86, Аноним (87), 10:22, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Так ведь уже есть ClojureScript.
     

  • 1.13, Аноним (13), 12:16, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Я чот туплю, но браузер-то "чем" этот код выполнять будет??
     
     
  • 2.17, вцспс (?), 12:28, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вот этим https://www.brython.info/src/brython.js
     

  • 1.16, YetAnotherOnanym (ok), 12:25, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Подключив библиотеки brython.js и brython_stdlib.js, web-разработчик может использовать язык Python для определения логики работы сайта на стороне клиента, применяя Python вместо JavaScript

    Тьфу, блин... А я уж подумал, что они плугин сделали, аналогично флэшу...

     
     
  • 2.22, Аноним (22), 12:58, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    С учётом того из чего состоят плагины/расширения для современных броузеров (тоже js), то можно считать и это плагином. ;)
     
     
  • 3.58, Аноним (58), 20:47, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    раньше настоящие плагины были, не зря упомянут флэш.
     
     
  • 4.72, Аноним (50), 01:09, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    WebAssembly тоже неплох, он я так понимаю в перспективе позволит выкинуть emscripten на мороз? Достали своим js уже.
     
     
  • 5.77, Аноним (58), 03:02, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А может сразу каждый сайт будет предоставлять браузер, через который надо смотреть?
     
     
  • 6.84, YetAnotherOnanym (ok), 09:16, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Вообще-то, на Андроеде - уже. Называется "мобильное приложение". Отдельное на каждый пук и каждый чих.
     

  • 1.24, Аноним (24), 13:30, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ждем транслятора из javascript в
    bython
     
  • 1.27, Аноним (27), 13:52, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    <петросян> Минимизатор для скриптом уже завезли?  </петросян>
     
  • 1.30, Аноним (30), 14:30, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Раз пошла такая пьянка, давайте HTML с XML на JSON переведем.
    {"t": "html","c":{"t": "body", "c":{"JSONHTML"}}}
    вместо
    <html><body>XMLHTML</body></html>
     
     
  • 2.42, Аноним (42), 16:42, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И ты никогда не сможешь понять в большом джейсоне где ошибка.
     
     
  • 3.49, Аноним (49), 19:00, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    JSON сам по себе большая ошибка.
     
     
  • 4.64, Аноним (64), 22:48, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И что же такого ужасного в JSON?
     
     
  • 5.68, Gogi (??), 00:09, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если в контексте веба, то многим.

    1. JSON - строгая синтаксическая хрень, HTML можно распарсить даже при тегах без >. И при незакрытых тегах. И при неправильной вложенности. И вообще как бог на душу положит.
    2. JSON - это больше про "структуры из структур". Паблишинг на нём выглядит похабно.
    3. JSON нельзя удобно парсить кусками, что-то вырезать (типа через XPath), добавлять в логические единицы дополнительный контент и т.п.

    Короче, идея - говно. HTML пока что лучшее, что есть.

     
     
  • 6.70, Аноним (50), 01:03, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    1. Ты пока расписал только почему хтмл говно. Давай доводы против жсон.
    2. Интернет и так уже бинарный, по-сути.
    3. Всё там можно, есть свой xpath с блэкджеком и всем остальным -- смотри jq, можно даже стримить.
     
  • 6.85, Ordu (ok), 09:43, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Вот за одно это html надо вышвырнуть в окно вместе со всеми его парсерами Ты пр... большой текст свёрнут, показать
     
     
  • 7.105, Gogi (??), 19:09, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Абсолютно солидарен с "выкинуть HTML". Но на замену всё равно нужно что-то текстоподобное. Для общей структуры - что-то типа XAML, а для внутреннего форматтинга текстов - даже markdown сойдёт.
     
  • 7.113, Аноним (113), 00:56, 12/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >Ты пробовал когда-нибудь распарсить html руками?

    Зачем парсить хтмл руками?
    Можно подумать ты жсон генеришь руками.
    При этом в результате в исходнике страницы жсона я вижу просто кашу из аски-кода вместо человеческих символов.

     
     
  • 8.115, Ordu (ok), 06:40, 12/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы поработать с html ем не подключая в качестве депендансов электрона ... текст свёрнут, показать
     
     
  • 9.122, Аноним (122), 12:11, 13/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А когда json генеришь в бекенде не подключаешь допендасов электрона Имхо конеч... текст свёрнут, показать
     
     
  • 10.123, Ordu (ok), 12:48, 13/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Нет Это что ещё js в проект тащить То есть, если бы я уже затащил полэлектрона... большой текст свёрнут, показать
     
     
  • 11.132, Аноним (132), 04:14, 15/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    бро, может просто заранее этих ошибок не писать Нет я не троллирую, конечно, но... текст свёрнут, показать
     
  • 6.88, Аноним (87), 10:29, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > 3

    Гугли jsonpath. На крайняк тот же jq уже портирован не только в CLI.

     
  • 2.52, Аноним (52), 20:14, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    лучше сразу на yaml. количество выработанной от страданий электроэнергии увеличится на несколько порядков, профит
     
     
  • 3.91, Аноним (99), 10:37, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    html на yaml называется pug https://github.com/pugjs/pug
     
     
  • 4.93, Аноним (52), 11:47, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    или haml. оба богомерзки
     
  • 2.89, Аноним (87), 10:32, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты не поверишь, но некоторые особо упоротые "микро"сервисы так и делают, а потом на клиенте жирная жысня на пару-тройку мегабайт проворачивает эту колбасу обратно через мясорубку, генеря html-теги и встраивая их в нужное место в DOM.
    Спасибо, не надо.
     
     
  • 3.92, Аноним (99), 10:39, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Зато для всех есть работа и еще пару джунов надо нанять, а для них старого разработчика повысить до лида. Все при делах
     

  • 1.36, Котовшив (?), 15:33, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Сикушку всякую разрабатывают вместо внедрения wasm/wasi.
     
     
  • 2.43, Аноним (42), 16:43, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Их можно сразу на Расте писать
     
     
  • 3.100, Аноним (99), 14:09, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ты забыл сказать что тогда надо учить раст. А пистрон сейчас любая табуретка знает
     

  • 1.44, Аноним (44), 16:52, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ждём нативненько
     
     
  • 2.59, Аноним (58), 20:58, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Они тебе скорее бинарный питон-компилятор запустят на виртуальном линухе в эмуляторе x86 на JS.
     

  • 1.45, муу (?), 18:13, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    блин, питон я уважаю, иногда пишу свои поделки и очень даже люблю,
    но это уже какоето извращение, не?
     
     
  • 2.56, Аноним (50), 20:28, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Почему? Теперь можно будет с комфортом писать свои аппликухи для электрона.
     
     
  • 3.57, муу (?), 20:40, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    ааааааааааааааааааааа!!!111
     
  • 3.62, онанимуз (?), 22:32, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    блин, случайно минус поставил.
    в общем, сюда плюс, т.к. медленнее электрон от двойной трансляции жс всё равно не станет, ибо медленнее уже некуда.
     
     
  • 4.131, Аноним (131), 19:57, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    блин, случайно минус поставил вместо плюса, а туда плюс, а когда сюда хотел исправить минус на плюс, снова поставил плюс туда, хотя в общем сюда плюс.
    ибо транспайлер все исправит!
     

  • 1.46, Аноним (46), 18:21, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Класс. Лучший язык, применимый везде: веб, настольные и мобильные программы, бекенд, микроконтроллеры. Осталось добавить мощи, так сказать, скорости.
     
     
  • 2.54, Онаним (?), 20:15, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Пихаемый везде, вы хотели сказать.
    Работает везде одинаково плохо - "мощей бы добавить".
     
     
  • 3.63, онанимуз (?), 22:33, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    и GIL убрать)
     
     
  • 4.74, Аноним (74), 01:18, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Так убрать то можно хоть завтра, только без него хуже. Поэтому Гвидо и держит.
     
  • 4.107, Аноним (106), 19:59, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Multiprocessing
     
  • 3.125, Аноним (-), 03:46, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    тебе, видимо, мало напихали, хотя горбатого ...
     
     
  • 4.128, Онаним (?), 09:57, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Мне вообще напихать сложно, я и уе... оказать сопротивление могу.
     
     
  • 5.129, Совсем Другой Аноним (?), 13:14, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Аноним прав? Кто-то преодолел сложности.
     
     
  • 6.130, Онаним (?), 13:55, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Создавать самому себе сложности, чтобы потом их героически преодолевать?
    Спасибо, но нет, спасибо.
     
  • 2.90, Аноним (87), 10:33, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Прочитал как мо́щи. Каких-нибудь святых.
     
     
  • 3.103, Аноним (103), 16:25, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Святого Пигидия.
     

  • 1.51, Аноним (52), 20:02, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Чем это лучше Haskell? (популярность и порог вхождения сразу нет)
     
     
  • 2.69, Gogi (??), 00:12, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Haskel придумали яйцеголовые академики - он вообще не про программирование, а тупо "поиграть в программы". Что-то длиннее 10 строк превращается в космическую абракадабру.
     

  • 1.53, Онаним (?), 20:14, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Snebrykton budet?
     
  • 1.60, jOKer (ok), 22:18, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Как я понял, это пока что-то вроде jquery самых первых выпусков. О виртуальной DOM и реактивных взаимодействиях речи пока нет, однако есть кооперативная многозадачность и возможность свои поделки вынести в отдельные пакеты.
    То есть, это уже не "Hello, world!", но пока и до промышленного применения далековато, на мой взгляд. Но поиграться на досуге все равно будет очень интересно.
     
     
  • 2.67, Аноним (49), 23:52, 10/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > виртуальной DOM

    Кто смузихлёбов пропустил через КПП?

     
     
  • 3.71, IRASoldier_registered (ok), 01:04, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –6 +/
    Луддит как всегда ничего не понял, да?

    DOM как она есть - не рассчитана на работу с динамическим UI. Создаем копию, работаем с ней, сравниваем с оригиналом, вносим в оригинал изменения. Что непонятно?

    Но да, таким как ты UI в вебе не надо, тебе надо странички с голым текстом, сверстанным на таблицах, как в конце 90-х, потому что купленный тобой в те же годы в кредит системник с каким-нибудь Celeron'ом на борту не тянет ничего другого в IE 4, а на новый комп у тебя денег нет - вот ты и мечтаешь, чтобы ни у кого другого веба не было, тогда тебе некому будет завидовать.


     
     
  • 4.73, Аноним (50), 01:13, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Начнём с того, что динамический веб разбегающийся во все стороны это как минимум отвратительно. Если рассматривать прочие недостатки, то батарейки не бесконечные, а утюг держать весьма некомфортно что в ладошке, что на коленках.
     
     
  • 5.101, IRASoldier_registered (ok), 14:46, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Шизофазия?
     
  • 4.76, jOKer (ok), 02:04, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > купленный тобой в те же годы в кредит системник с каким-нибудь Celeron'ом на борту

    Есть такое ощущение, что с его "познаниями", он до сих пор за этот системник кредит и выплачивает =)
    По моему, вы зря потратили свое время на объяснения. Мне, например, с такими лениво даже спорить.

     
     
  • 5.102, IRASoldier_registered (ok), 14:50, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Ох уж эта публика с её "то не нужно, это не нужно"... В принципе - им и Интернет-то не нужен. Так до сих пор и не поняли за четверть века, что это за приблуда такая и почему в ней юзается дофига таких сложных и непонятных технологий. Но чёртовы интели вгрохивают туда тонны времени и бабла, от того у публики регулярно случается баттхерт.


     
  • 4.95, Аноним (95), 12:02, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > DOM как она есть - не рассчитана на работу с динамическим UI.

    Ох уж мне эти недоучки из ПТУ.

     
  • 4.119, ACCA (ok), 07:33, 13/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Про таблицы - гы два раза.

    Недавно нарисовались инвесторы - набрели на наш старый проект, всё ещё сидящий online.

    Основной восторг - всё летает вообще на любом железе, которое у них оказалось. И делает ровно то, что нужно.

    Скорости соединения выросли. Перерисовать всю таблицу стало сильно быстрее, чем отработать MVC через 100500 слоёв НЁХ на JavaScript.

     
     
  • 5.120, IRASoldier_registered (ok), 08:15, 13/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Перерисовать всю таблицу стало сильно быстрее

    Вот так и засирают веб. Семантика? Не, не слышали! Зато всё работает, клиент доволен, ага.


     
     
  • 6.134, ACCA (ok), 06:06, 19/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот так и засирают веб. Семантика? Не, не слышали! Зато всё работает,
    > клиент доволен, ага.

    Web засирают фреймворками.

    Задача - перекачать 10К CVS. В HTML это превращается в 500K. Если делать это через MVC/JavaScript, то получается 50M фреймворка + 10K CVS. И что ты выиграл?

    Причём заклевав всем мозг версиями браузеров.

     
     
  • 7.135, IRASoldier_registered (ok), 15:43, 19/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Если делать это через MVC/JavaScript

    Ты имел в виду JavaScriptMVC? Древняя штука...

    > то получается 50M фреймворка + 10K CVS.
    > И что ты выиграл?

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

    > Причём заклевав всем мозг версиями браузеров.

    Edge/Chrome + Firefox - если не страдать фигней и не некрософтить, под современными версиями браузеров таких проблем нет. IE может идти в дупу, если техотдел не может поставить нормальные браузеры сотрудникам - уволить к чертовой бабушке.

     
  • 2.108, Аноним (106), 20:01, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Можешь реактивности добавлять используя питоновские либы для реактивности
     
     
  • 3.112, jOKer (ok), 00:54, 12/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Можешь реактивности добавлять используя питоновские либы для реактивности

    Что бы добавить реактивности, сперва нужно реализовать Virtual DOM, а это само по себе не такое уж простое дело. Точнее говоря, это _очень_ сложное дело, и это уева туча труда. Потом придется сделать что-то вроде redux/vuex. Что тоже займет немалый кусок времени. Ну и конечно, придется наладить сборку webpack'ом (или написать свой подобный инструмент), потому что без этого тоже далеко не уедешь. А это еще одна уева туча труда. Ах, да! - потом еще придется написать библиотеку реактивных компонентов UI, которая будет хоть как-то покрывать потребности прикладов.... Не, сделать можно, конечно, все... вопрос какой ценой и за какое время.

     

  • 1.61, Анонннннннннн (?), 22:25, 10/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    В очередной раз пришел к мысли, что будущего у веба на браузерах нет, еще немного и его совсем засрут до полной неюзабельности.
     
     
  • 2.78, Аноним (78), 03:54, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ещё немного? Серьезно? Ты из 2010 года пишешь? Уже все за... превратили его в херню. Сам не сравнивал но думаю сейчас браузеры уже с Linux ядром по количеству кода могут потягаться. А что на этих хернях крутится это уже совсем, раньше такой говнокод на сайтах выкладывали посмеяться а теперь это <...> крутит главную страницу гугла ...
     
     
  • 3.79, Аноним (58), 04:52, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > сейчас браузеры уже с Linux ядром по количеству кода могут потягаться

    Давно обогнали :) Исходники хромиума около 15 ГБ весят.

     
     
  • 4.82, Аноним (78), 07:32, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну все, я так не играю... абсурд да и только.
     
  • 2.80, Аноним (58), 04:56, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Приколись, сайт Intel-а: https://fpgasoftware.intel.com/devices/

    Software downloads are currently not working correctly with Chrome Browser version 85 and above.

    Ёкарный стыд, там просто скачивается файл по https... Но в Хромом даже это смогли сломать!

     
     
  • 3.110, Аноним (58), 21:33, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Наконец-то поправили.
     
  • 3.116, пох. (?), 08:07, 12/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Ёкарный стыд, там просто скачивается файл по https... Но в Хромом даже это смогли сломать!

    Если бы там _просто_ скачивался бы файл - он бы скачивался. Даже в хромом.

    Но там javascript:void(0) вместо нормальных линков для скачивания. И такие же скриптованные кнопки без form submit. Ибо нехрен - сперва распишись-ка вот тут: https://www.intel.com/content/www/us/en/my-intel/fpga-sign-in.html (разумеется - паспорт, прописка, не крысская, документы подтверждающие проживание - а то мало ли какая б-ть скачает ценнейший софт для fpga!) а потом получишь свой одноразовый линк.

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

    Но виноват, конечно же, хром, смотри не перепутай!

     

  • 1.75, Аноним (78), 01:45, 11/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Чеее зааааа ну уже нет... мало всякого JS теперь ещё и python туда. Ну уж нет... нафиг вас всех
     
  • 1.83, Аноним (83), 09:03, 11/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Где скачать NoScriptBrython Block?
     
  • 1.94, Michael Long (ok), 11:50, 11/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Как же это ужасно!
    Почему язык выпустил кто-то другой, а от последствий страшно мне? Предрекаю, что синтаксис Пайтона, простой для вхождения, привлечёт толпы людей, пишущих приложения на электроне. И у них ещё язык поворачивается называть это "native".

    Ещё очень неприятно, что тенденцию не остановить, даже если самому кинуться присать всё правильно и эффективно, на расте, плюсах или фортране. Один в поле не воин.

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

     
     
  • 2.109, Аноним (106), 20:04, 11/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ты собрался писать скрипты браузера на плюсах и фортране?
     
     
  • 3.114, Аноним (58), 05:15, 12/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Почему бы и да? Бинарный вебасм тебя почему-то не пугает, а почему должен пугать фортран или си?
     
  • 3.126, Аноним (-), 03:49, 14/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    он ничего не собирался, это типичный опеннет-иксперт, в жизни ничего не писавший сложней баш-трехстрочников
     

  • 1.96, Аноним (-), 12:27, 11/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот это круто ! Вы просто не понимаете, вы никогда не могли себе даже представить что в питон таки завезут обфускацию, надежды на проект возлагаю я, дайте нам скобок и точкозапятых в питоне ! (угнетенные программированием вайтспейсами)
     
  • 1.98, Онаним (?), 12:32, 11/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Попытался представить себе минимайзер для пыхтона.
     
     
  • 2.117, пох. (?), 08:08, 12/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    он называется webasm.js

     

  • 1.118, Аноним (118), 12:18, 12/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ого!
    Решительное изгнание жабаскрипта ?
     
  • 1.121, Аноним (121), 10:25, 13/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Пытался какой-то питон на wasm загрузить в своём Chrome на уютном планшетнике. Ах да, вот тут это было: https://pygments.org/demo/?lang=bash&sort=lang
    Так за несколько минут и не прогрузилось, тормоза ощутимые. Не нужно. Типичный "софт под линукс", блин — решает некую шизофреническую задачу и то криво.
     
  • 1.133, mandms (?), 02:43, 17/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Python in Browser: How to choose between Brython, PyPy.js, Skulpt and Transcrypt?
    Running Python in the Browser is a really good and up-to-date (as of 2019) article that compares Brython, Skulpt, PyPy.js, Transcrypt, Pyodide, Batavia. I highly recommend reading it.

    https://stackoverflow.com/a/58684358/647597
    ответ
    Из вопроса: https://stackoverflow.com/questions/30155551/python-in-browser-how-to-choose-b

    Зашел сюда увидеть эту ссылку, там хорошая 2D картинка

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру