Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Auto-Moto
Mobilní telefony
Notebooky  |  Tablety
Příslušenství
Wearables  |  Ostatní
Svět hardware  |  Digimanie  |   TV Freak

C++ (Visual Studio) a GUI knihovna?

Peca_ce4you (45)|19.7.2005 14:12
Ahoj, chtěl bych se zeptat na jednu věc - má VS 3.0 či 4.0 něco jako je MFC pro PC? Co jsem totiž koukal na ten seriál na Palmare, tak tam jsou příklady ve WinAPI.

Rozhodl jsem se konečně pustit do pokusů s vývojem pro PocketPC, rozhodl jsem se pro C++ - ze dvou důvodů, za prvé dělám v C a potřebuju rozčířit znalosti a zadruhé, .NET prostředí není zadara a opravdu nemám peníze na to, abych si ho kupoval jen kvůli učení a eventuelnímu vypuštění výsledku zdarma ven.

Jenže právě nevím, co se používá pro GUI. Jestli WinAPI, tak to asi balím :) Nebo to není tak hrozný jako pro klasický Win?
Ale je tu eventuelně ještě jedna možnost - koukal jsem, že wxWidgets mají podporu i pro PocketPC. Zkoušel jste to už někdo? Jaký jsou eventuelně zkušenosti? Je to použitelné?
RStein (2012)|19.7.2005 22:17
Pri vyvoji aplikaci pro Pocket PC muzete pouzit MFC - je pochopitelne trochu orezanejsi nez jeho desktopova verze, ale staci.
Peca_ce4you (45)|20.7.2005 10:48
Díky.
A ještě jeden dotaz - koukám, co nabízí eVS3.0 při vytvoření nového projektu. Je tam mimo jiné "WCE Pocket PC 2002 MFC AppWizard (exe)" a "WCE MFC AppWizard (exe)". To první je jasný. Co to druhé? To je nějak univerzální, aby to třeba běželo i na SmartPhonech?

Další věc, pokud chci vytvořit "formulářovou" aplikaci, mám použít při vytváření projektu "Single document" s "Document/View architecture support" nebo bez tý podpory? Nebo ještě možná spíše "Dialog based"?

Nebo se mám vykašlat na MFC a dělat raději ve WinAPI? :)
RStein (2012)|20.7.2005 15:42
1) WCE MFC AppWizard (exe) je opravdu genericky projekt, ale neni cilen primo na "Smartphony". Tento projekt asi nevyuzijete....

Windows Mobile SmartPhone edition maji 2 verze - 2002 a 2003. Pro kazdou z nich musite nainstalovane SDK. SDK 2002 je pro eVC 3.0, SDK 2003 pro eVC4.0

2) Asi jste moc s MFC nedelal ani na desktopu, ze:D Tohle jsou opravdu zaklady. Strucne a zjednodusene receno:
SDI aplikace - aplikace, která obahuje vzdy max. 1 dokument (treba aplikace Notepad)
MDI aplikace - aplikace, v níž může být aktivováno najednou více dceřinných oken (dokumentů) - proflaknutym prikladem je treba MS Word.
Aplikace zalozena na dialozich je typem aplikace, ktera data sbira tak, ze neustale vas obtezuje novym (modalnim) oknem, ve kterem musite neco udelat, abyste mohl pokracovat v praci.

Document/View architektura odkazuje k navrhovemu vzoru Model View Controller, ktery separuje data (ci cely business model) od zpusobu jeho prezentace a interakce s uzivatelem (od uzivatelskeho rozhrani). Jednoduse receno - Document obsahuje-drzi-perzistuje data aplikace, View je jedno z moznych zobrazeni dokumentu (napriklad xml data chcete jednou zobrazit i s XML tagy jako text a podruhe v jinem view jako jako treeview, jehoz uzly odpovidaji hierarchii elementu v XML dokumentu).

Bez napsani typu aplikace nelze poradit, jaky typ projektu byste mel zvolit. A samozrejme, v MFC (kdyz ho umite;) ) budete mnohem produktivnejsi nez ve WIN API.
Nejproduktivnejsi ale budete u vetsiny aplikaci stejne v Compact .Net Frameworku.
Peca_ce4you (45)|20.7.2005 15:54
Díky za popis :)

Pravda, s MFC jsem nikdy pořádně nedělal, tvořím hlavně konzolový aplikace. GUI aplikace jsem dělal taky, ale v Delphi (docela hodně) a zkoušel jsem i nějaký free C# s prostředím od Borlandu (kdysi). Na MFC jsem koukal tak před dvěma roky, ale byla to pro mě španělská vesnice :) Teď už je to lepší, tak bych ho zkusil.

Vím, jaký je rozdíl mezi SDI a MDI aplikací a co je Document/View. Mě šlo spíš o to, jakého typu jsou aplikace alá formuláře v Delphi - jestli to jsou v MFC aplikace založené na dialogu nebo nebo jestli to jsou SDI Doc/View aplikace.

Taky bych klidně dělal v .NETu - jenže žádné prostředí není free. Pro normální desktop asi ještě ten od Borlandu, ale pro PDA vůbec. A já na tom nechci vydělávat, jen si to chci zkusit, něco napsat, třeba to dát tady i k dispozici. Ale byla by to pro mě dost drahá sranda, si něco takovýho kupovat.

Mimochodem (ale to je už v tomto příspěvku OT), ta beta verze, co se dá nechat poslat od Microsoftu, jak je to s licencí? Jakmile vyjde ostrá verze, musí to člověk smazat a zahodit? Nebo v tom v klidu může dělat a vypustit to jako freeware či open source? To asi těžko, co? :)
RStein (2012)|20.7.2005 16:08
Ad Delphi) I tam muzete vytvaret ruzne typy aplikaci. Bezna komercni aplikace je IMHO SDI - nemate tolik uzivatele, Ja mam nejradsi MDI aplikacky;)

Ad .NET) Pro Compact .Net Framework 2.0 by melo byt vydano SDK - ro znamena, ze i bez vyvojoveho prostredi napisete aplikaci. Dovedu si i predstavit, ze toto SDK bude mozne s trochou usili zaintegrovat do VS.NET Express edice (to je jen moje spekulace). Vzhledem k silnemu tlaku vyvojaru prosakuji take zpravy, ze nejake prostredi typu Express pro Smart Device projekty bude...

Ad BETA) Myslim, ze i v Bete 2 je nejaka expiracni doba, po urcite dobe od releasu ostre verze ji jiz nepustite. Asi nikdo nebude kontrolovat, jak jste svou aplikaci vytvoril, navic ma Beta Go Live licenci, ale tohle neni dobry pristup k tvorbe SW::))
sadilm (4)|28.7.2005 12:06
MDI aplikace nejsou preci podporaovany na Pocket PC!!!
RStein (2012)|28.7.2005 12:09
To mate samozrejme pravdu, ten odstavec se vztahoval obecne k MFC, ne k "Pocket" MFC.