Język ActionScript do oprogramowania usprawniające po stronie użytkownika czy servera należy?

0

Witam.
Język ActionScript do oprogramowania usprawniające po stronie użytkownika czy servera należy?

Oprogramowanie usprawniające po stronie użytkownika to np. język PHP
Oprogramowanie usprawniające po stronie serwera to np. język JavaScript, html

Jakie jeszcze języki do której z tych grup należą
Czy ktoś wie? jest do tego jakaś dobra strona opisująca to zagadnienie`'?:/

0

php jest po stronie serwera.
js i as po stronie uzytkownika

0

ktos ma zadanie domowe do zrobienia :P
serwer: php, jsp, asp.net, javascript też (projekt node.js, jakby się nauczyciel upierał, że nie), perl, python
klient: to, co wymieniłeś + java. oprócz tego to chyba nic innego nie jest POWSZECHNIE stosowane w web

0

projekt node.js - co to jest?
zbyt rozbieżne inf w google nie wiem o co ci chodzi, mógłbyś podać link :)

Proszę o link do informacji wyjaśniających mój temat ..z ką wiecie, że to do tego czy ten jezyk do tej grupy

0

@dolcan:

z ką wiecie, że to do tego czy ten jezyk do tej grupy

Bo jesteśmy koderami.

Ja jestem programistą webowym. Wiem dokładnie, co się dzieje od momentu gdy użytkownik klika w link lub przycisk lub wpisuje URL do przeglądarki, poprzez przeglądarkę wysyłającą żądanie na serwer, serwer przetwarzający żądanie (tu działają języki po stronie serwera) i generujący odpowiedź (w postaci kodu do wykonania po stronie klienta), a skończywszy ponownie na przeglądarce, która odbiera odpowiedź i "wykonuje ją", interpretując języki działające po stronie klienta.

Nie robi się przeglądarek, które interpretowałyby bezpośrednio PHP. Ono działa na serwerze -- manipuluje bazą danych i generuje (zwykle) kod HTML, który idzie do przeglądarki i jest w niej interpretowany.

Nasza wiedza nie bierze się więc z uczenia się na pamięć jakiejś listy, tylko dogłębnego (relatywnie) zrozumienia tematu.

Poza tym, języków działających po stronie klienta (inaczej: po stronie użytkownika, lub w przeglądarce) jest po prostu niewiele. Zwykle to po prostu HTML, CSS oraz JavaScript. To są najpopularniejsze języki, w których tworzy się otwarty kod. Fundamenty standardów sieciowych. Do tego relatywnie często dochodzi ActionScript -- gdy witryna korzysta z Flasha (którego generalnie niezbyt lubimy). Bardzo rzadko: czysty XML oraz XSLT. Coraz rzadziej: Java, w formie appletów.

I w zasadzie nic innego w przeglądarce nie chodzi. Żeby język działał bezpośrednio w przeglądarce, przeglądarka musi mieć do niego interpreter/kompilator. Ponieważ jest wiele przeglądarek, chodzących na wielu silnikach renderujących, nie jest łatwo wprowadzić choćby jeden nowy język do tej puli. Bo Microsoft musiałby dodać jego obsługę w IE, Mozilla w Firefoxie (silnik Gecko), Apple i Google w Chrome i Safari (ten sam silnik: Webkit) i tak dalej, i tak dalej... A nawet teraz są różnice w tym, jak przeglądarki obsługują różne fragmenty bardzo popularnego języka CSS!

Można założyć, że to, co wymieniłem powyżej, to wyczerpująca lista języków wykonywanych po stronie klienta w przypadku współczesnych aplikacji webowych. Nie liczę takich rzeczy jak CoffeeScript (bo jest kompilowany do JavaScriptu) czy LESS/SCSS (bo są kompilowane do CSS). Wszystko inne może działać jedynie po stronie serwera.

I na serwerze ograniczeń w zasadzie nie mamy. Możemy tam odpalić dowolny język. Czemu? Bo jako twórcy aplikacji webowej, mamy pełną kontrolę nad środowiskiem serwera. Nie mamy kontroli nad tym, jaką przeglądarkę ma użytkownik u siebie i jakie interpretery są w tej przeglądarce dostępne. Ale serwer to nasza działka. Płacimy i wymagamy. Firma hostingowa może nam tam wrzucić co nam się żywnie podoba. Istnieją nawet usługi sieciowe, które mają fragmenty napisane w bardzo niskopoziomowych językach, jak C/C++. One i tak generują ostatecznie odpowiedź HTML i to się liczy z punktu widzenia przeglądarki (tzn. tak niskopoziomowy kod akurat raczej nie będzie generował HTML-a, tylko jakieś informacje dla warstwy wyższej, która przerobi je na HTML).

projekt node.js - co to jest?
zbyt rozbieżne inf w google nie wiem o co ci chodzi, mógłbyś podać link

To dość ważny projekt, który już sporo namieszał w oprogramowaniu po stronie serwera. Czy słusznie -- to się jeszcze okaże.

NodeJS to środowisko, dzięki któremu JavaScript, który normalnie hula po stronie klienta, działa po stronie serwera. Okazało się, że pewne mocne strony JavaScriptu -- tzw. pętla zdarzeń oraz funkcyjność -- pozwalają na pisanie tzw. kodu asynchronicznego, który może drastycznie zwiększyć wydajność po stronie serwera. JavaScript, jako jeden z nie aż tak wielu języków, pozwala na bezpieczne programowanie równoległe. Tj. Twój kod może robić kilka rzeczy NARAZ, na różnych rdzeniach procesora lub różnych procesorach. To jednak da się też robić w Javie czy C#. Problem w tym, że programowanie równoległe (wielowątkowe) jest bardzo, bardzo trudne (łatwo popełnić błąd, a ekstremalnie trudno go wykryć). Pewne cechy JavaScriptu sprawiają, że programowanie równoległe jest w nim stosunkowo łatwe i całkowicie bezpieczne (!). Bo sam język nie pozwala na konstruowanie kodu, który powodowałby błędy wielowątkowości.

Są inne języki, które to robią. Czasem robią to nawet jeszcze lepiej. Np. Erlang. Ale JavaScript ma nad nimi jedną, dużą przewagę: jest cholernie popularny i znany (jako-tako) przez całe rzesze programistów. Erlanga nie zna "nikt", JavaScript znają "wszyscy".

I duża część tych "wszystkich" umie pisać kod asynchroniczny, który pozwala na tę zbawienną równoległość. Myśmy od zawsze pisali w ten sposób kod po stronie klienta. Dzięki NodeJS, możemy bardzo podobnie pisać po stronie serwera. I okazuje się, że w niektórych zastosowaniach działa to bardzo, bardzo sprawnie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1