Czy WPF, ewentualnie webdesign, to programowanie?

0

Uczę się WPF i męczę się bardziej niż podczas nauki C#. Na szczęście większość rzeczy już się pojawiło i trzeba szukać po stackoverflow.
Ale naszło mnie pytanie czy pisanie w WPF to programowanie? Bo np. html + css się do tego programowania nie zalicza, dopiero JS.

0

Tzn, że wystarczy zamienić something.Width = 200; na <something width=200 /> i już robisz coś zupełnie innego?

0

No właśnie nie wiem. Tzn żadnego z powyższych przykładów nie nazwałbym programowaniem. Być może termin programowanie określa jedynie back-end. Ewentualniue jakieś algorytymy front-endu.
Zawsze najciekawsze dla mnie, podczas pisania aplikacji, to wyobrażenie sobie jej modelu - obiektowość, mądrze rozplanowane klasy, mądrze rozplanowane style (jedne w Window.Resources, inne w Control.Style, tak by wykorzystywać wielokrotnie ten sam kod), a samo pisanie to już raczej formalność - z którą co prawda, zwłaszcza podczas nauki, trzeba się namęczyć.

1

Klepanie HTMLa można porównać do klepania configów. Czy klepanie configów nazwałbyś programowaniem? Nie, bo to tylko suchy plik z danymi, a że w formacie przystępnym dla człowieka...

Jeśli tworzysz wyłącznie suche dane, to średnio można nazwać to programowaniem.

3

Wpf (tzn. XAML, ale ty go nazywasz WPF-em) to tylko sposób tworzenia widoku. Gdybyś wszystkie kontrolki tworzył ręcznie w metodzie CreateMyWindow (albo InitializeComponent na modłę WinForms) to wyszłoby na to samo tylko byłoby 100 * brzydziej.
Czy to było by 'bardziej programowanie'? Może... Tylko po co, skoro prawdziwe problemy zaczynają się z tym co ma to okienko kontrolować.

XAML jest właśnie po to żebyś TY, programista, nie musiał się przejmować wyglądem okienka tylko na*****ał 'algorytmami backendowymi'.

0

No klepanie w WPF może nie jest programowaniem ale klepanie logiki dla tej aplikacji w C#/C++/VB.NET to już programowanie czyż nie?

0

A kto się zajmuje pisaniem w XAML, jeśli nie programista?
A jeśli robię interfejs do aplikacji webowej i piszę w HTML, to nie jestem programistą?
WTF?

0
somekind napisał(a):

A jeśli robię interfejs do aplikacji webowej i piszę w HTML, to nie jestem programistą?

Nie, wtedy jesteś webmasterem :)

1

A programowanie deklaratywne to co? Tak samo jakby powiedzieć że kodzenie w XSLT nie jest programowaniem. Jak coś nie ma Pascalo-C podobnej składni (wiem wiem, Pascal ma składnie z ALGOLa) to nie znaczy od razu, że to nie jest programowanie. XAML jest stosunkowo trudny właśnie dlatego, że wszyscy są przyzwyczajeni do klepania pętelek for i słiczów.

0
Igor1981 napisał(a):

Nie, wtedy jesteś webmasterem :)

Nawet jeśli reszta aplikacji jest napisana w C#, a kod HTML jest przepleciony jego wstawkami? ;)

6

zostawcie humanistom napisanie rozprawki na ten temat. nas powinno obchodzić, czy będzie z tego kasa :)

0

Xaml da się polubić.
A tworzycie najpierw front end czy back end? Ja póki co FE ale proste aplikacje pisze dopiero. Tak czy siak sprawia mi to dużo frajdy, a WPF duzo bardziej niż formsy i css razem wzięte.
Tylko nie wiem czy przyda mi się w pracy zawodowej, tu na forum stosunkowo mało ludzi zna WPF, kto tak w zasadzie w tym robi?

0
somekind napisał(a):
Igor1981 napisał(a):

Nie, wtedy jesteś webmasterem :)

Nawet jeśli reszta aplikacji jest napisana w C#, a kod HTML jest przepleciony jego wstawkami? ;)

Czy przeplatanie kodu HTML ze wstawkami to dobra praktyka? Czy taki kod jest dzięki temu bardziej czytelny i łatwiejszy w utrzymaniu? ;)

0
Igor1981 napisał(a):
somekind napisał(a):
Igor1981 napisał(a):

Nie, wtedy jesteś webmasterem :)

Nawet jeśli reszta aplikacji jest napisana w C#, a kod HTML jest przepleciony jego wstawkami? ;)

Czy przeplatanie kodu HTML ze wstawkami to dobra praktyka? Czy taki kod jest dzięki temu bardziej czytelny i łatwiejszy w utrzymaniu? ;)

Pisałeś kiedykolwiek coś w jakimkolwiek frameworku Jave'owym czy .NETowym do tworzenia stron? Jeśli nie, zamilcz i idź zamknij drzwi z drugiej strony.

0

@somekind:

A jeśli robię interfejs do aplikacji webowej i piszę w HTML, to nie jestem programistą?

Ty jesteś. Pytanie brzmi, czy ktoś, kto robi tylko to jest.

No bo przecież, jeśli piszesz w językach programowania, a danego dnia akurat klepiesz sobie specyfikację czy dokumentację lub tworzysz architekturę oprogramowania, albo wręcz nie piszesz nic, bo cały dzień debugujesz, albo konfigurujesz sobie IDE... to nie jest tak, że nagle przestajesz być programistą. Czy wszystkie te czynności można jednak uznać ściśle za "programowanie"? Raczej nie.


To, czy kogoś nazwiemy programistą, zależy od tego, jakich definicji użyjemy. Może to dziwne, ale wydaje się, że nie ma jasnych, "jedynych-słusznych" definicji dla pewnych związanych z programowaniem pojęć.

Np. co rozumiemy za "język programowania"? Wg jednych definicji, HTML i CSS nie są językami programowania. Z całą pewnością, HTML to język znaczników, a CSS to język arkuszy stylów.

Ale jeśli za "język programowania" przyjmiemy zbiór zasad określających, jaki ciąg symboli tworzy program komputerowy, to sprawa już się troszkę zmienia. Bo czym jest program komputerowy? Możemy za niego uznać np. ciąg instrukcji, które zmieniają stan maszyny. HTML i CSS na pewno zmieniają stan maszyny!

Niektórzy jednak za "język programowania" uważają tylko te języki, które są kompletne w sensie Turinga. I tu już HTML-om i CSS-om jest troszkę ciężej ;).

JavaScript natomiast nie ma takich problemów i jakiej definicji byśmy nie użyli, to wciąż będzie to -- wbrew wszelkim pozorom -- język programowania, a posługujący się nim autor kodu będzie się chlubnie zwał programistą. Inna sprawa, że nie zawsze na to określenie będzie zasługiwał, bo często bardziej adekwatne będzie "script kiddie".

Ja przeważnie, gdy mówię o HTML-u i CSS-ie, mówię o "kodowaniu" i o "koderach", żeby to jednak trochę rozróżnić i nikomu się nie narażać.

0
emfałsi napisał(a):
Igor1981 napisał(a):

Czy przeplatanie kodu HTML ze wstawkami to dobra praktyka? Czy taki kod jest dzięki temu bardziej czytelny i łatwiejszy w utrzymaniu? ;)

Pisałeś kiedykolwiek coś w jakimkolwiek frameworku Jave'owym czy .NETowym do tworzenia stron?

Niestety, ale piszę w ASP.NET MVC i używam standardowego view engine'u. Gdyby ten view engine był w porządku, to nie powstałoby aż tyle alternatywnych view engine'ów. Z alternatywnych Razor jest o wiele bardziej czytelny, a SPARK wygląda podobnie do xslt, więc da się tworzyć widoki bez używania kodu C#.
Poza tym w webformsach jest możliwe używanie tylko znaczników w plikach aspx. Oczywiście te znaczniki są rozszerzone o znaczniki zaczynające się od "asp", ale da się nie używać czystego kodu C# i wtedy taki widok wygląda przejrzyściej.

1
Igor1981 napisał(a):

Czy przeplatanie kodu HTML ze wstawkami to dobra praktyka? Czy taki kod jest dzięki temu bardziej czytelny i łatwiejszy w utrzymaniu? ;)

HTML ze wstawkami, to bardzo zła praktyka, problem w tym, że innego wyjścia nie ma.
Technicznie rzecz biorąc, najczytelniejszy i najłatwiejszy w utrzymaniu jest kod, który nie istnieje. ;P

0

Ale jeśli za "język programowania" przyjmiemy zbiór zasad określających, jaki ciąg symboli tworzy program komputerowy, to sprawa już się troszkę zmienia. Bo czym jest program komputerowy? Możemy za niego uznać np. ciąg instrukcji, które zmieniają stan maszyny. HTML i CSS na pewno zmieniają stan maszyny!
Niektórzy jednak za "język programowania" uważają tylko te języki, które są kompletne w sensie Turinga. I tu już HTML-om i CSS-om jest troszkę ciężej ;)

Osobiście spotkałam się jedynie z drugą definicją i dyskusja ta całkowicie mnie zadziwia. Od zawsze oczywistym dla mnie było, że HTML językiem programowania NIE JEST. Jest natomiast metajęzykiem. Nieprawdą również według mnie jest, że HTML zmienia stan maszyny - to jakiś absurd! Czy plik xml zmienia stan maszyny? Przecież plik html to nic innego, jak dane, opatrzone znacznikami. Jeżeli wyświetlisz ten plik w przeglądarce internetowej, zostanie ci on PRZEZ PRZEGLĄDARKĘ zinterpretowane w jakiś sposób i wyświetlone w ten konkretny sposób. Natomiast jeśli otworzysz w notatniku, to notatnik ci je wyświetli w jakiś konkretny sposób, zależnie od ustawień notatnika (kolor, wielkość czcionki itp.).

Nie da się w HTMLu napisać niczego, co by w jakikolwiek sposób, zmieniło stan maszyny. To, że użytkownik otwiera sobie plik, nie oznacza, że plik zmienia stan maszyny, bo idąc tym tokiem rozumowania, rtf, pdf i jpg też są językami programowania -_-'

Dopiero JavaScript może modyfikować elementy DOM, przez co wpływać faktycznie na to co się dzieje. HTML nie zawiera w sobie żadnej dynamiki.

XSLT jest językiem programowania (deklaratywnym). XSLT jest zupełne w sensie Turinga. XML natomiast nie jest. HTML nie jest. I RTF nie jest.

0
ubuntuser napisał(a):

Tylko nie wiem czy przyda mi się w pracy zawodowej, tu na forum stosunkowo mało ludzi zna WPF, kto tak w zasadzie w tym robi?

Byłem na paru rozmowach ostatnio w firmach i mi w kilku powiedzieli, że nawet nie pisali o WPF bo mało kto wie co to jest, a jeśli wie to pewnie w tym nie robił. (chodzi o prace studencką a nie jakieś 3-5lat znajomości .NET)

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