konto usunięte

Temat: Przyjazny interfejs

Witam. Tworze mały program mający symulować pewne zachowania w środowisku produkcyjnym zasadniczo mam oprogramowane zachowanie się systemu. Jednak pojawia się problem z interfejsem. Program jest napisany w C# jako aplikacja okienkowa. Jednak Windows Forms wydaje się mało odpowiedni do mojego projektu.
Stworzyłem na szybko mockupa http://imm.io/9OmZ . Użytkownik ma mieć możliwość kreowania systemu przez drag and drop oraz ustalania routingu między stanowiskami. Miło by było również aby elementy miały możliwość minimalnej animacji. Zastanawiałem się nad XNA ale bardziej to przypomina krojenie chleba piłą łańcuchową. Silverlight - wydaje się bardziej webowy chociaż mogę się mylić w Expression Blend tworzyłem tylko playery. WPF - nie wiem nigdy nie miałem z tym styczności. Dlatego chciałbym zapytać czy ktoś zna jakiś ciekawy tutorial bądź jakieś gotowe biblioteki. A może jakiś inny pomysł zdaję się na wiedzę bardziej doświadczonych kolegów.Grzegorz Zalewski edytował(a) ten post dnia 01.10.11 o godzinie 15:52
Marek Z.

Marek Z. Programista

Temat: Przyjazny interfejs

WPF jest bardzo potężnym narzędziem więc możliwe że będzie dobrym wyborem w Twoim wypadku, jednak decydujący głos pozwolę zabrać bardziej doświadczonym, a ze swojej strony mogę polecić książkę Pro WPF in C# 2010 wydawnictwa Apress.

Wbrew nazwie "PRO" opisuje WPF od podstaw, jednak wymagana jest już solidna wiedza z samego języka C#.

Jak dobrze poszukasz to można znaleźć pdfa na stronach wymiany plików.Marek Zając edytował(a) ten post dnia 01.10.11 o godzinie 19:55
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Odradzam WinForms do tworzenia takich aplikacji. Sporo czasu musiałbyś poświęcić, aby stworzyć taką aplikację.

W WPF lub Silverlight to będzie dużo łatwiejsze. Ale trzeba pamiętać, że te technologie mają nieco inną filozofię niż stare poczciwe WinFormsy i nie jest to proste przejście do nowych komponentów.

Co wybrać WPF czy Silverlight? To zależy od wymagań.

Zaletą Silverlighta jest to, że może pracować zarówno pod Windowsem i na Macu.
Aplikacja może wyglądać jak zwykła aplikacja i użytkownik nie musi wcale uruchmiać przeglądarki. SL ma ograniczony dostęp do zasobów systemu.

Jeśli aplikacja z założenia ma pracować tylko pod windowsem to możesz użyć WPF. WPF ma pełny dostęp do systemu.

Należy jednak pamiętać, że mimo wielkich podobieństw pomiędzy WPF i Silverlight, są pewne różnice. W Silverlight nie ma wielu rzeczy, które są w WPF i na odwrót.

Tworze właśnie aplikację w WPF, która umożliwia rysowanie obiektów 2D.
WPF jest stworzony do takich aplikacji jak na twoim szkicu.

Stosunkowo łatwo tutaj dokonywać transformacji na obiektach oraz tworzyć graficzne połączenia pomiędzy obiektami.

Przeanalizuj sobie przykład:
http://www.codeproject.com/KB/WPF/WPFDiagramDesigner_P...

To dokładnie to czego potrzebujesz.

Powodzenia!

konto usunięte

Temat: Przyjazny interfejs

Silverlight nie jest juz wspierany przez MS
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: Przyjazny interfejs

Pawel K.:
Silverlight nie jest juz wspierany przez MS


Być może Silverlight nie, za to model pisania aplikacji jak w Silverlight + kompatybilność kontrolek Silverlight, WPF, jak najbardziej.

konto usunięte

Temat: Przyjazny interfejs

Łukasz Szumyło:
Pawel K.:
Silverlight nie jest juz wspierany przez MS


Być może Silverlight nie, za to model pisania aplikacji jak w Silverlight + kompatybilność kontrolek Silverlight, WPF, jak najbardziej.


Obejrzyj
http://www.ustream.tv/recorded/17254070
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: Przyjazny interfejs

Pawel K.:
Łukasz Szumyło:
Pawel K.:
Silverlight nie jest juz wspierany przez MS


Być może Silverlight nie, za to model pisania aplikacji jak w Silverlight + kompatybilność kontrolek Silverlight, WPF, jak najbardziej.


Obejrzyj
http://www.ustream.tv/recorded/17254070


Cóż, ostatnie zagrania Microsoft sprawiły, że zacząłem myśleć o alternatywach.
Sądzę, że z dorobkiem programistycznym w Silverlight i technologiach pokrewnych, można jeszcze kilka najbliższych lat po programować, ale warto przez ten czas budować sobie kolejny filar, który nas wesprze gdy przyjdą ciężkie czasy.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Pawel K.:
Silverlight nie jest juz wspierany przez MS

Cóż, nie zgodzę z takim kategorycznym stwierdzeniem. Wkrótce wyjdzie Silverlight 5.
Obawy o przyszłość można mieć, ale tak jest z każdą technologią. Cały czas następuje ewolucja, lecz nie rewolucja.

Oczywiście Grzegorz może napisać tą aplikację w HTML5 i być "trendy".
Ale obecne Visual Studio 2010 nie ma do tego szablonów ani narzędzi, więc pisanie raczej będzie wyzwaniem.
Z tego co wiem to dopiero VS 2011 będzie miało wsparcie dla HTML5 + JS.

Zakładam, że jest klient aplikacji, który chcą ją otrzymać dzisiaj i aby była stabilna. Nie ma czasu i miejsca na filozofowanie o przyszłości. Dlatego uważam, że wybór SL lub WPF na dzień dzisiejszy jest najlepszym wyborem do realizacji tej akurat aplikacji.

Zgodzę się z Łukaszem, że niezależnie jaką technologię wybierzemy SL/WPF/HTML5, filozofia ich tworzenia jest podobna. Natomiast WinForms miało inną filozofię i nie miało wsparcia do grafiki wektorowej 2D, dlatego ją odradzam.

konto usunięte

Temat: Przyjazny interfejs

Marcin Dziękuje to jest dokładnie to o co mi chodziło.

Widziałem WS 2011 na Windows 8 dev preview.

Kompletnie mi nie przypadł do gustu domyślne okno aplikacji to jeden wielki kafelek oczywiście w Html 5. Rozumiem że to ma działać na dotykowych ekranach ale strasznie mało informacji można na takim czymś zamieścić (checkbox zajmuje tyle co jego 3 standardowe odpowiedniki). Z 2 strony może aplikacje są bardziej przejrzyste ale ile to się trzeba "nascrollować" aby znaleźć odpowiednia funkcję.

BTW wiecie jak w win 8 zamknąć jakiś program bez użycia Menagera ?Grzegorz Zalewski edytował(a) ten post dnia 07.10.11 o godzinie 00:03

konto usunięte

Temat: Przyjazny interfejs

Marcin Sulecki:
Pawel K.:
Silverlight nie jest juz wspierany przez MS

Cóż, nie zgodzę z takim kategorycznym stwierdzeniem. Wkrótce wyjdzie Silverlight 5.
Obawy o przyszłość można mieć, ale tak jest z każdą technologią. Cały czas następuje ewolucja, lecz nie rewolucja.

Widziales video, do ktorego link wkleilem ?
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Widziałem. Niemniej jednak uważam, że do realizacji aplikacji przez Grzegorza na dzień dzisiejszy jest SL lub WPF. W przyszłości może go czekać migracja do nowej technologii, ale pewnie już będzie pisać nowy program 2.0 :)
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Grzegorz Zalewski:
Marcin Dziękuje to jest dokładnie to o co mi chodziło.

Widziałem WS 2011 na Windows 8 dev preview.

Kompletnie mi nie przypadł do gustu domyślne okno aplikacji to jeden wielki kafelek oczywiście w Html 5. Rozumiem że to ma działać na dotykowych ekranach ale strasznie mało informacji można na takim czymś zamieścić (checkbox zajmuje tyle co jego 3 standardowe odpowiedniki). Z 2 strony może aplikacje są bardziej przejrzyste ale ile to się trzeba "nascrollować" aby znaleźć odpowiednia funkcję.


Ja jestem zadowolony z kierunku, który wybrał Microsoft. To ostre zagranie z jego strony, ale jeśli chce dorównać lub wyprzedzić konkurencję musi podejmować odważne decyzje. Apple często podejmował odważne decyzje i proszę zobaczyć jak daleko zaszedł.

Od kilku lat tworzę aplikacje dotykowe na PC. Zapewniam cię Grzegorz, że można tworzyć całkiem złożone aplikacje, bez potrzeby scrollowania. Mój program posiada duże, wyraźne litery, duże przyciski i checkboxy. Dzięki temu nie trzeba walczyć z myszką, aby wybrać opcję. Obsługa jest przyjemna i prosta, a to chodzi.

Trzeba otworzyć umysł, zaprojektować interfejs, a nie tylko napisać program.

Oczywiście, nie do wszystkich zastosowań obsługa dotykiem jest potrzebna, np. Visual Studio.
Ale może to też kwestia naszego przyzwyczajenia - ograniczenia? ;-)

Posiadam od dawna monitor dotykowy i czekam na Windows 8, bo na Windows 7 muszę walczyć aby coś wybrać :)Marcin Sulecki edytował(a) ten post dnia 07.10.11 o godzinie 10:46

konto usunięte

Temat: Przyjazny interfejs

Marcin Sulecki:
Widziałem. Niemniej jednak uważam, że do realizacji aplikacji przez Grzegorza na dzień dzisiejszy jest SL lub WPF. W przyszłości może go czekać migracja do nowej technologii, ale pewnie już będzie pisać nowy program 2.0 :)


Tak, pewnie masz racje. Moja checia bylo podzielenie sie informacja, ze zespol tworzacy Silverlight na dzien zostal rozwiazany w MS i produkt najprawdopodbniej umrze. Nie sugeruje nikomu, zeby od razu rzucil to co stworzyl i zajal sie technologia, ktora jest traktowana przez Microsoft jako przyszlosciowa. Takie informacje, przynajmniej mi, daja do myslenia i pociagaja ku refleksjom.

W tej chwili, gdybym mial robic aplikacje dotykowe po prostu nie rozwazalbym nawet SL. Argumenty typu "brak zespolu rozwiajajacego produkt SL w Microsofcie" przemawiaja, ze to najprawdopodobniej koniec. Ty jestes w innej sytuacji, bo juz masz cos co musisz wspierac i jezeli masz to napisane w SL to kiedys bedziesz musial zmigrowac, zatrzymac sie albo przestac wspierac.

Kazdy z nas wypowiada sie z innej perskeptywy.
To samo dotyczy technologii Flash.
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: Przyjazny interfejs

Nasuwa się pytanie: jaka technologia waszym zdaniem ma przyszłość w najbliższych latach ? Chciałbym od razu ograniczyć pytanie do wszystkich innych technologii poza tymi związanymi z HTML5.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Pawel K.:
Ty jestes w innej sytuacji, bo juz masz cos co musisz wspierac i jezeli masz to napisane w SL to kiedys bedziesz musial zmigrowac, zatrzymac sie albo przestac wspierac.

Ja napisałem wspomnianą aplikację dotykową jeszcze w WinForms :)
Nieźle musiałem się napocić. Przy okazji stworzyłem własną bibliotekę kontrolek dotykowych :)

Teraz korzystam z WPF i SL i jest dużo łatwiej.

konto usunięte

Temat: Przyjazny interfejs

Tak tylko w Dla informacji. Po kilku no może kilkunastu godzinach przy dłubaniu w WPF...

Po prostu się zakochałem *_* Expression Blend wymiata (dzięki Ci M$ za MSDNAA) W kilka minut poskładałem sobie okienko ze wstążką używając tylko 1 zewnętrznej biblioteki. Już nie mówię o tym że to wygląda naprawdę profesjonalnie i każdy element mogę sobie powykręcać jak tylko mi się żywnie podoba.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Łukasz Szumyło:
Nasuwa się pytanie: jaka technologia waszym zdaniem ma przyszłość w najbliższych latach ? Chciałbym od razu ograniczyć pytanie do wszystkich innych technologii poza tymi związanymi z HTML5.

Wiesz co Łukasz, wydaje mi się, że jednak przyszłość może należeć do HTML5 i nie widzę w tej chwili alternatywy.
Flash i Silverlight będą robiły dobrze to, do czego zostały stworzone, ale raczej nie mają wielkiej przyszłości.

Umacniają się systemy Android i iOS za sprawą tabletów i telefonów, więc jest potrzeba wspólnej technologii.

Windows Phone umożliwiał dotychczas tworzenie aplikacji tylko w Silverlight, ale za chwilę będzie również wspierał HTML5. Czy HTML5 stanie się jedną właściwą technologią? Zobaczymy... Java też miała być przenośna i multiplatformowa ale nie do końca to się udało. Może tym razem? ;-)

konto usunięte

Temat: Przyjazny interfejs

Marcin Sulecki:
Umacniają się systemy Android i iOS za sprawą tabletów i telefonów, więc jest potrzeba wspólnej technologii.

Absolutnie, zahamuje to rozwój.
Czy HTML5 stanie się jedną właściwą technologią? Zobaczymy... Java też miała być przenośna i multiplatformowa ale nie do końca to się udało. Może tym razem? ;-)

jak mawiał Smerf Maruda: "Nie uda się" :)
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przyjazny interfejs

Bogdan Pieńkowski:
Marcin Sulecki:
Umacniają się systemy Android i iOS za sprawą tabletów i telefonów, więc jest potrzeba wspólnej technologii.

Absolutnie, zahamuje to rozwój.

Dlaczego tak uważasz? Za chwilę i tak pojawią się całkowicie nowe urządzenia oraz technologie.
A dotychczasowe pluginy do przeglądarek sprawiały wiele problemów zwykłym użytkownikom.
Wchodzisz na stronę, a on chce coś pobierać, instalować... nie mówiąc o błędach w stylu "wtyczka uległa awarii".
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: Przyjazny interfejs

Zakładam, że większość z was pisze aplikacje biznesowe.

Trzeba przyznać, że świat aplikacji biznesowych toczy się według własnych zasad.

Możemy znaleźć masę projektów napisanych w archaicznych jak na te czasy technologiach. O dziwo tego typu aplikacje nadal funkcjonują, nadal są rozwijane, nadal je ktoś utrzymuje co przekłada się na zapotrzebowanie na osoby potrafiące w tych technologiach coś zrobić.

Trudno tutaj mówić o multi- platformowości ponieważ firmy raczej starają się korzystać z podobnego sprzętu np. wszyscy korzystają z Windows 7.

Oczywiście, nie zaprzeczam twierdzeniu by mieć wspólną technologię. W końcu wiele firm uruchamia projekty w nowych technologiach.

HTML5 być może i ma przyszłość, jednakże na obecną chwilę nie ma wystarczających narzędzi by pisać w nim aplikacje biznesowe.

Prawdopodobnie sytuacja ulegnie zmianie w najbliższym czasie, jednakże niektóre projekty muszę wystartować tak szybko jak to możliwe.

Śmiem twierdzić, że Silverlight i WPF jeszcze przez jakiś czas będą gościły na naszym rynku.
WinForms'ów Microsoft nie rozwija od lat, a radzą sobie dość dobrze. Starych ASP'ów też jest dosyć sporo.

iOS, Android - trzeba przyznać, że jest w nich spory potencjał umocniony wsparciem na dużej ilości sprzętu (oczywiście mobile+tablety) o czym nie należy zapominać.

Warto się im przyjrzeć choć nadal sobie nie wyobrażam jak np. księgowa wypełnia dokument PK na tablecie czy też komputerze korzystając z multi-touch.

Być może pomimo niecałych 29 wiosenek za sobą, jestem już za stary by dostrzec możliwości touch+wodotryski w aplikacjach biznesowych przy czym pisząc "aplikacje biznesowe" mam na myśli głównie aplikacje typu ERP, CRM etc.

Następna dyskusja:

PropertyGrid + Lista klas i...




Wyślij zaproszenie do