Przesiadka z vb6 na vb12 czy C#

Moje pytanie będzie trochę podobne do tych z serii W CZYM PROGRAMOWAĆ.

Tyle, że ja już programowałem trochę w Visual Basic 6. Tworzyłem proste aplikacje i gierki typu River Raid.

Teraz chciałbym programować w czymś kompatybilnym z Windows 8 (bo jak wiadomo gierki pisane w Visual Basic 6 z DirectX 7 i 8 nie działają w WIndows 7, a tym bardziej Windows 8 x64). Aplikacje napisane w przyszłości może i chciałbym umieścić w Windows Store Smile

Na początku myślałem by po prostu przerzucić się na Visual Basic 2012. No ale w porównaniu z 6 różnica jest spora (i z tego co wiem nie obsługuje DirectX) i mam wieeeele do nadrobienia. Chociażby na pisanie prostej aplikacji do obliczania za jaką kwotę chce się zalać samochód, w VB6 wykorzystałem tam tylko linijkę kodu z z wartością Val (Value). NO i oczywiście na formatce umieszczałem odpowiednie okienka. Tu już zauważyłem że wykorzystuje się coś innego niż Value itp.

NO ale do rzeczy.

Czy chcąc pisać proste gierki pod Windows 8 dobrym wyborem będzie C#??

I np ta publikacja: http://helion.pl/ksiazki/c-rusz-glowa-andrew-stellman-jennifer-greene,cshrug.htm

czy lepiej skupić się na czymś innym. Lub dać sobie spokój z Windows store i pisać np w Pythonie?

Od kiedy pod Win8 nie działa DX8?

 

Niemniej ciekawym pomysłem jest pisanie w Pythonie, niemniej wątpię czy się skusisz

Jeśli znasz już Visual Basic to VB.NET będzie dobrym wyborem. Pozostaje kwestia dostępu do Visual Studio. Visual Studio Express ma jednak pewne ograniczenia, które na dłużą metę mogą okazać się przeszkodą nie do przeskoczenia. Poza tym VS Express występuje w kilku wersjach przystosowanych wyłącznie do konkretnych zastosowań.

 

W Pythonie napiszesz niemal każdą aplikację… konsolową, desktopową, webową itd… i wystarczy do tego zainstalowany w systemie interpreter, notatnik i konsola. Naprawdę nie potrzeba tu kombajnu, chociaż PyCharm do świetne IDE.

Zdecydowanie odradzam Visual Basic, czy VB.NET. Język uczy złych nawyków. Od siebie polecę Pythona, Lispa lub Perla.

Prubujac uruchomic programy napisane w vb6 z wykorzystaniem directx 7 lub 8 w wind9ws 7 i 8 jest komunikat ze brakuje plikow takich jak chociazby directx8.dll itp. Do tego w systemach 64 bitowych czesto sie zdarza ze nie dzialaja aplikacje napisane typowo pod system 32 bitowy. Wiem ze niekt9re stare gry dzialaja bez problemu ale inne taki problem napotykaja i niewiem od czego jest to zalezne.

A czy mozesz polecic jakas lekture lub tutorial do pythona nastawiony na gry, grafike, dzwiew lub cos o zblizonej tematyce?

Np to: http://www.pygame.org/wiki/tutorials

Dzieki

Jak chcesz do Window Store to VS jest potrzebne. Zrób przesiadkę na C# (co nie jest takie straszne wbrew pozorom). Sam kiedyś tak zrobiłem i nie żałuję, zajęło to raptem kilka dni.

 

Z czystej ciekawości - jakich złych nawyków uczy VB.NET? Język jak język, jedynie (w mojej opinii) z dość rozwlekłą składnią.

Spytaj się autora tego dokumentu: http://www.catb.org/esr/faqs/hacker-howto.html

Co do windows store to racja VS raczej niezbedny. Zainstalowalem visual studio express 2012 for deskopt i to samo tylko ze for Windows. I to drugie jak odpalam np visual basic to nie moge sie odnalezc. Formatek niewidze itp a w for deskopt jest bardzo podobnie do vb6. Hmmm

Może język java jdk chyba każdy lubi grać w aplikacje na smartfona :slight_smile:

 

Problem polega na tym, że ja specjalnie zapytałem o złe nawyki w konkretnie Visual Basic .NET. Który od Visual Basic różni się, podobnie jak Delphi różni się od Pascala.

Fakt faktem, VB.NET też ma trochę rzeczy, które mogą przerodzić się w zły nawyk, ale żeby konkretnie był super-tragicznie-zaprojektowany - nie jest. Klasyczny VB był, bo on w ogóle nie był projektowany, tylko obrastał latami w dodatki i wyszedł z tego koszmarek.

 

@marcin0218:

Do rzeczy: jeśli chcesz programować dla Windows Store, to nie masz wyjścia - obecnie to musi być C# lub Visual Basic .NET. Spora większość materiałów Microsoftu jest w obu językach, dodatkowo oczywiście można mieszać elementy tych dwóch języków, ale mam wrażenie, że C# jest o wiele bardziej popularny. A VB.NET - w moim odczuciu - żyje tylko dla starych systemów (przenoszonych z VB6 na .NET). I pisząc dla Windows, wybrałbym jednak C#.

 

Problem tylko, że pisanie dla Windows Store odbiega od pisania dla klasycznego desktopu - sam się o tym przekonałeś. Formatki są np. zawarte w plikach .xaml, które są opisem XML-owym wyglądu aplikacji. Do nauki możesz sobie najpierw popatrzeć na to, jak to się robi na Windows Desktop, zanim przejdziesz do aplikacji Store.

 

Ale polecam spróbować czegoś nowego - czy to C#, czy Javy, czy może właśnie Pythona? Każdy z języków (i platform) ma pewne zalety i wady, dlatego warto popróbować pisania w wielu, aby sobie znaleźć ulubioną, a Pythona akurat wiele osób sobie chwali.

Faktycznie, moje niedopatrzenie.

Mam jeszcze jedno pytanie: da się tworzyć aplikacje do Windows Store w F#?

Hmmm. To najpierw z ciekawosci zobacze jak cokolwiek zrobic w visual basic 2012 for windows. Bo ten for desktop rzeczywiscie podobny do vb6. Ale for windows musze popatrzec gdzie co i jak bo tak jak pisalem wyzej niemoge tu sie odnalezc by napisac prosta aplikacje obliczajaca.

A co do C# jest jakas literatura lub tutoriale nastawione na tworzenieninterfejsu graficznego, dodawania dzwieku lub sterowania obiektami za pomoca klawiatury?

 

Niestety, platforma Windows Store nie ma bezpośredniej obsługi F# (tylko C#, VB.NET, C++/CX i JavaScript w tym momencie), ale może współpracować z komponentami .NET-owymi. Więc można napisać bibliotekę klas w F# i podpiąć ją do projektu Windows Store stworzonego w C#. I w ten sposób Model i ViewModel można zrobić w F#, a tylko w zasadzie obsługę widoku robi się w C#.

http://msdn.microsoft.com/pl-pl/library/hh913781.aspx