Autor Wątek: Aplikacja desktopowa z interfejsem przeglądarkowym  (Przeczytany 9549 razy)

Offline Avaj

  • Użytkownik

# Maj 17, 2014, 21:57:16
W JavaFX jak coś możesz w kilku liniach kodu wstawić kontrolkę WebKita. Co do pisania aplikacji w HTML/JS, próbowałem wejść w temat jakiś czas temu, problemem jest brak sensownych bibliotek do GUI, które nie mają look'n'feelu mobilnego. Niektóre frameworki web ui nawet nie implementują takich podstawowych na desktopie kontrolek jak Menubar.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Xion

  • Redaktor
    • xion.log

# Maj 17, 2014, 22:09:12
@up: Twitter Bootstrap jest niby "mobile-first" (bo teraz wszystko jest), ale działa i wygląda dobrze na wszystkim.

Offline Xender

  • Użytkownik

# Maj 17, 2014, 22:34:13
Mobilny look'n'feel stron www to rak...

Offline Reg

  • Administrator
    • Adam Sawicki - Home Page

# Maj 18, 2014, 11:16:31
Dzięki za wszystkie odpowiedzi.

Chodzi mi o aplikację, która by potrafiła odpowiadać na różne zapytania - trochę jak Google albo Wolfram Alpha, ale do specyficznych zastosowań i działająca całkowicie lokalnie. Mogłaby na przykład analizować jakieś pliki i generować z nich raport z różnymi tabelkami itp. Dlatego zrealizowanie całości w HTML i JavaScript w przeglądarce odpada (dostęp do plików), ale odpada też zrobienie całego interfejsu z kontrolek systemowych (jak wtedy pokazać ładnie sformatowany raport?)

Jeszcze inna opcja, którą rozważałem, ale nie byłaby zbyt wygodna do używania, to napisać program konsolowy, który przyjmuje zapytanie w parametrach wiersza poleceń i generuje ten raport do wskazanego pliku HTML albo na standardowe wyjście, sformatowany z pomocą ASCII Art :)

Offline Xender

  • Użytkownik

# Maj 18, 2014, 11:43:19
^ Opcja interfejsu konsolowego jako alternatywy dla przeglądarkowego brzmi sensownie.
Jeszcze sensowniej brzmi możliwość zapisania odpowiedzi do CSV / JSON / YAML.

Co do analizowania plików - może Ci się przyda - zapytania SQL na plikach tekstowych: https://github.com/harelba/q

Offline Xion

  • Redaktor
    • xion.log

  • +1
# Maj 18, 2014, 14:38:10
Cytuj
Mobilny look'n'feel stron www to rak...
"Błogosławieni ci, którzy nie mając nic do powiedzenia, nie ubierają tego faktu w słowa."

@Reg: Zacznij od programu, który bierze zapytanie jako parametr i wypluwa HTML na stdout. Potem możesz do tego dorobić proste GUI, w którym osadzisz jakiś WebView do jego wyświetlania. Przy tak prostym schemacie interakcji raczej nie ma sensu bawić się w cokolwiek bardziej skomplikowanego od razu; po napisaniu prototypu będziesz miał pewnie większe pojęcie, czy potrzebujesz innego podejścia.

Offline Xirdus

  • Redaktor

# Maj 18, 2014, 16:00:30
Mogłaby na przykład analizować jakieś pliki i generować z nich raport z różnymi tabelkami itp.
Ja bym z tego zrobił normalną aplikację okienkową, powiedzmy w Qt, a w części centralnej okienka wsadził kontrolkę QWebView, która ma metodę setHtml() przyjmującą QStringa. Obok byś dołożył jakieś dodatkowe natywne kontrolki, np. przycisk do eksportu.

Offline lethern

  • Użytkownik

# Maj 18, 2014, 16:32:32
Wolfran alpha doczekał się następcy
https://www.youtube.com/watch?v=_P9HqHVPeik

3grosze do topica - proponuję wybrać to, co pozwoli najłatwiej coś wprowadzać (wydaje mi się, że w normalnym programie łatwiej uzyskasz możliwość dania pliku czy ctrl-v na input), a w drugiej kolejności wybrać to, co będzie najszybsze do napisania - Xion napisał to jeszcze lepiej, a logikę możesz rozwinąć niby niezależnie od widoku :)
« Ostatnia zmiana: Maj 18, 2014, 16:37:41 wysłana przez lethern »

Offline Xender

  • Użytkownik

# Maj 18, 2014, 21:18:06
"Błogosławieni ci, którzy nie mając nic do powiedzenia, nie ubierają tego faktu w słowa."
Mam coś do powiedzenia - tani smartfon z marketu będzie w stanie wyrenderować desktopową wersję strony tak, że jest w miarę czytelnie. Za to wersje mobilne są przeważnie wykonane tak fatalnie, że lepiej mogłoby ich w ogóle nie być.

@Reg: Zacznij od programu, który bierze zapytanie jako parametr i wypluwa HTML na stdout.
Nie, niech zacznie od programu, który wypluwa na stdout CSV, JSON lub YAML (dajmy umrzeć XML w spokoju) - wszystkie te języki pozwalają przedstawić same dane, nie martwiąc się jeszcze o wygląd tego, co będzie oglądał user.
Potem można kombinować, jak zrobić z tego HTML.

Wolfran alpha doczekał się następcy

Widziałem to jakiś czas temu. Z całego wideo dowiedziałem się, że "język" (on tam prezentował więcej środowiska niż samego języka) jest "symboliczny". Marketingowy bullshit.

Offline lethern

  • Użytkownik

  • +1
# Maj 18, 2014, 21:32:49
@Xender - html jest zły? jakiś powód, który odnosi się do tej sytuacji?
co do "marketingowy bullshit"... n/c
« Ostatnia zmiana: Maj 18, 2014, 21:46:19 wysłana przez lethern »

Offline Xender

  • Użytkownik

# Maj 18, 2014, 22:15:58
@Xender - html jest zły? jakiś powód, który odnosi się do tej sytuacji?
Nie zły, ale jest językiem opisującym wygląd. Dane powinny być czytelne w formacie czysto tekstowym - dopiero wtedy kombinując z HTML nie przekombinujesz i nie zrobisz potworka.

Poza tym CSV, JSON, YAML są łatwo parsowalne. Wydobycie danych z powrotem z HTML to znów hacki. To ma znaczenie, jeśli dane mogą się przydać gdziekolwiek poza webowym widokiem.

co do "marketingowy bullshit"... n/c
Czemu n/c? Nie pokazał w tym wideo nic ciekawego - przeklikał pobieżnie przez przekrój danych, jakie to ustrojstwo umie pobać i wyświetlić i kilkanaście razy powtórzył "symbolic". Trochę mało treści.

Offline koirat

  • Użytkownik

# Maj 18, 2014, 22:27:22
Czy już ktoś wspomniał xml + xslt ?

W .Net można by użyć kontrolki WebBrowser  do wyświetlenia raportu.
« Ostatnia zmiana: Maj 18, 2014, 22:29:57 wysłana przez koirat »

Offline Xender

  • Użytkownik

# Maj 18, 2014, 23:07:08
Czy już ktoś wspomniał xml + xslt ?

CSV, JSON lub YAML (dajmy umrzeć XML w spokoju)

Zapewne nie o to Ci chodziło, ale...
Problem z XML jest taki, że nie jest on ani czytelny, ani łatwy do pisania. XSLT jest jeszcze gorsze - zapisywanie w tym nieczytelnym XML nie danych, ale "programowanie" przekształceń.

XML ma strasznie wybloatowaną specyfikację:
- Ideę CSV przekażesz w kilku zdaniach.
- Specka JSON zajmuje mi 2.5 ekranu w przeglądarce.
- Specka YAML jest sporo dłuższa, ale przeważnie potrzeba z niej niewiele więcej, niż z JSON.

Za to o XML napisano całe książki. I żeby zacząć używać XSLT musisz się nieco bardziej zagłębić.
Już szybciej będzie napisać w jakimś Pythonie coś, co je CSV/JSON/YAML i robi transformacje w kodzie. A jak można użyć Mustache, to w ogóle robi się masełko.

Offline lethern

  • Użytkownik

  • +2
# Maj 18, 2014, 23:44:13
specyfikacja XML ma bardzo duże znaczenie dla tego tematu. rzeczywiśćie, that makes sense

Offline Xender

  • Użytkownik

# Maj 19, 2014, 00:00:39
^ koirat zasugerował użycie XSLT. Tak, specka XML zaczyna wtedy mieć sens. XSLT nie jest trywialne.