Firefox.html – interfejs Firefox napisany w HTML?

Firefox.html – interfejs Firefox napisany w HTML?

    przez -
    27 599
    Mozilla Firefox 23
    Paul Rouget z zespołu Mozilla udostępnił publicznie projekt Firefox.html. Jest to próba przebudowania interfejsu przeglądarki Firefox z użyciem HTML. Deweloper ma nadzieję, że któregoś dnia interfejs napisany w XUL, zostanie zastąpiony przez w implementacji HTML. Może stać się to możliwe po wprowadzeniu nowego silnika przeglądarkowego – Servo, który ma w przyszłości zastąpić wysłużony już Gecko. Paul Rouget ma nadzieję, że intefejs pozwoli na przyspieszenie działania systemu Firefox OS i wbudowanej przeglądarki.

    Firefox.html - wygląd

    Firefox.html porównanie Gecko i Servo

    • Krystian Juskowiak

      Przyznam, że odważna i niecodzienna koncepcja :-)

      W sumie sam HTML aż tak hiper mocno rozbudowany nie jest, żeby w całości dało się w nim budować to i owo. Niemniej HTML, CSS + tona kleju skryptowego i da się wszystko :-)

      Osobiście ciarki mi jednak przechodzą na myśl, o kodowaniu logiki aplikacji w JavaScripcie…

      • Jakub Konieczny

        A ten klej jest toksyczny, więc bym uważał z jego nadużywaniem.
        Czy taka niecodzienna, to nie wiem, skoro już IDE robią w JavaScripcie (Atom, Brackets)

      • Krystian Juskowiak

        Kiedyś, gdy miałem pierwszy etap fascynacji JavaScriptem to zamierzałem pisać w nim nawet programy desktopowe (są aplikacje zewnętrzne, które potrafią zapakować kod internetowy i uruchamiać go niczym aplikacje desktopowe). Ostatecznie zrezygnowałem z zaginania rzeczywistości – wybrałem normalny język programowania :-)

        Dla mnie kod JS/JQuery jest nielogiczny, rozwleczony i w sumie nie jestem pewny, czy deweloperzy JS łapią się jeszcze w nim tak do końca ;-)

        Chciałem też pisać aplikacje dla Firefox OS, ale nie mogłem się przemóc – kodowanie logiki aplikacji za pomocą JS było ponad moją cierpliwość i chęci.

        Jak dla mnie JS nadal powinien być najdalej językiem skryptowym – przenoszenie go na desktop jest bez sensu. Niczym przyjemnym nie jest też zamarzanie przeglądarki od nadmiaru JS w witrynie.

        Doceniam JavaScript, ale składnie ma dla mnie fatalną.

      • Roman

        Po co ci JQuery? W tym co dziś nazywanymy HTML5 jest wystarczająco elementów do zabawy.

        A co wybrałeś w zamian?

      • Krystian Juskowiak

        Mnie JQuery potrzebne było do budowania animowanych banerów reklamowych i innych ślizgająco/migająco/podświetlających się elementów na www :-) Standard :-)

      • Roman

        Wiem teraz w modzie jest to paskudne Angular, które w 300 liniach robi to co czyste js/css w 15 ;-)

        No ale co w zamian? C++/Qt?
        Bo do Pythona nie widziałem ostatnio nic wygodnego poza Pygame ;-)

      • Krystian Juskowiak

        Ogólnie mam wrażenie, że internetowe języki skryptowe wymagają napisania kodu w ilości nieproporcjonalnej do tego, co ma zostać wykonane ;-) Niemniej używa się ich i tyle – nie ma w sumie języka komputerowego, który byłby fajny od A do Z bez zgrzytów. Są jakie są i tyle.

        Ja akurat postawiłem na…Javę :-) Głównie ze względu na bliskość z Androidem, J2ME oraz cross-platform. Dodatkowo natywny Swing do budowania GUI nie jest dalej raczej rozwijany, gdyż w jego miejsce planują GUI z JavaFX, jednak tak czy siak w Swingu dość prosto i szybko rysuje się GUI. Są jeszcze jakieś tam bindingi do GTK czy Qt, ale do moich projektów Swing się sprawdza. Ustawisz jeszcze wyświetlanie na wzorzec GTK i jest fajnie.

        Java co prawda też wymaga rozwleczenia kodu i najszybszym przykładem jest pobranie wpisanych znaków od użytkownika i wypisanie ich na ekranie, ale żaden język nie jest idealny. A wprawny javoviec w J2EE (Java Enterprise) swoje może zarobić.

      • Roman

        Rzeczywiście zrobiłeś dobra inwestycję.
        Liczyłem na to, że masz problemy jak ja – w czym napisać projekt, żeby był multiplatformowy i społeczność chciała go dotykać i rozwijać bez problemu.

      • mikolajs

        “Wiem teraz w modzie jest to paskudne Angular, które w 300 liniach robi to co czyste js/css w 15 ;-)”

        Widać, że nie używałeś Angular.

      • asd

        Ja się do hobbystycznych projektów przerzuciłem na język Dart. Ma Javopodobną składnię i bogatą bibliotekę standardową (pod tym względem wydaje mi się lepszy od TypeScriptu).

      • Krystian Juskowiak

        Też jakiś czas temu myślałem o Darcie (szukając zamiennika JS). Stwierdziłem jednakże, że JavaScript to póki co niezatapialny okręt (razem z PHP), jest do niego multum bibliotek, więc chyba nie ma co płynąć pod prąd i kiedyś będę musiał się z nim przeprosić :-)

      • asd

        Taaa, takie Titaniki. Szukanie bibliotek po internetach mnie odrzuca, wolę mieć jak najwięcej wbudowane w oficjalną platformę (jak Java, .Net) z dobrą dokumentacją. Dart ma przynajmniej (w stosunku do JS, TS) wbudowaną bibliotekę kolekcji (wow). No ale ja go używam do dziabania gierki w Canvasie, do web deweloperki i paru wstawek do zarządzania DOMem pewnie też bym się przeprosił z JS.

      • mikolajs

        Przesadzasz. JS jest o tyle słaby do większych aplikacji, że nie jest silnie typowany. Aplikacje da się pisać bez problemu i niewiele to się różni od innych języków dynamicznie typowanych. Co najwyżej obiektowość jest nieco odmienna od klasycznych języków.

      • Roman

        Obiektywność to dziś tylko jeden z paradygmatów, co zauważa słusznie Bjarne Stroustrup. JS jest raczej oparty na prototypach, a przetwarzanie danych nawiązuje do języków funkcyjnych. W porównaniu z podobnymi językami, oprócz większej wydajności ma też super asynchroniczność i bogatą bibliotekę standardową.

        Typy nie uchronią cię przed bzdurnymi danymi. Co udowadniało C/C++ na przestrzeni lat.

        Mimo wszystko język ten powstał do obsługi UI i pisanie w nim aplikacji – z przeplataniem maszyny stanowej i asynchroniczności jest upierdliwe. Szczególnie w porównaniu z takim synchronicznym Pythonem czy C++.

      • Krystian Juskowiak

        Może i masz rację. Mnie podoba się właśnie silne typowanie – ma się to pod kontrolą, choć oczywiście przy zapędzeniu potrafi być upierdliwe.

        Mnie do JS zraziło to, że składnia nie zawsze wydaje się logiczna. Co prawda teraz pomieszam nieco języki, ale jeśli ktoś zna choć troszkę programowanie – czytając kod choćby C# a nie znając go, składnia jest na tyle logiczna, że czasem można się domyślić nawet co ten kod miałby wykonać.

        Czytając kod JS miałem czasem wrażenie, że ni choinki nie wiem, o co tu chodzi. W dodatku czasem patrząc po projektach ludzi miałem wrażenie, że do małej pierdołki trzeba ekranu kodu. Stąd też mam wrażenie, że JS nie jest do końca na zrozumienie, ale w jakieś części na mechaniczne używanie, no bo taka składnia i koniec ;-)

        Aczkolwiek mówię z perspektywy hobbysty.

      • mikolajs

        “Mnie do JS zraziło to, że składnia nie zawsze wydaje się logiczna.”

        Ale logiczna jest. Tylko ta logika jest trochę inna niż typowych języków. W JS łatwo jest pisać byle jak, szczególnie jeśli ktoś przywykł do pisania prostych skryptów dołączanych do html. Korzystając z takich bibliotek jak Dejavu można pisać obiektowo (tylko te denerwujące this gdy się używa jQuery).

        A od JS nie ma odwrotu. Ludzie są leniwi, więc wolą używać jednego języka po obu stronach webaplikacji. A jak dobrze pójdzie to wersja 6 poprawi trochę składnie JS.

      • Roman

        ES6 niczego nie poprawi. Będzie jeszcze paskudniej, patrząc po tych przykładach:

        http://www.2ality.com/2014/12/es6-proxies.html

      • Roman

        Mi tam tona kleju nie potrzebna.
        Może robiłeś mockupy oderwane od rzeczywistości, a potem ktoś to musiał zrealizować?

      • Krystian Juskowiak

        Kiedy chce się budować aplikacje, no to przyda się trochę tego JavaScriptu na frontendzie ;-) Nie trzeba tu nawet projektów z kosmosu – wystarczy choćby jak ktoś chce ładny sklep internetowy, szyty pod konkretne zamówienie.

        Wiem z doświadczenia, iż wymagania w tej materii są różne, cuda wianki :-)

    • garrappachc

      Kiedyś widziałem interpreter js napisany w całości w js.

    • gosc

      To jest niezłe, ale załatwi konfigurację na całego. Firefox stałby się kolejną zabawką dla debi… ekhm, Amerykanów, gdzie trzeba suwak od rozmiaru historii schować bo użytkownik może pociągnąć na 6x więcej RAMu niż ma. Dzięki, Google Chrome już jest.