Jump to content

ostatní Mimic Framework (API)


mimic

Recommended Posts

Tak mě začlo celkem srá* to, jak všechno dělam znova a znova. Tak jsem si stejně jako PHP udělal vlastní API i pro C#.

Zatím nemá moc funkcí, přidávám podle toho, když něco dělám a vidim, že by to bylo dobré přidat jako jednu funkci nebo objekt.

 

Takže... momentálně mám 2 knihovny, kde jedna slouží jako addon pro druhou (lze použít i samostatně). Je to hlavně z toho důvodu, že knihovna slouží pro změnu fontů a má něco málo přes 1MB. Druhá má pár KB.

 

Rozdělení jsem dělal stejně jako to má .NET framework. Takže pokud budu chtit pracovat pouze s hashem md5, tak si načtu "using Mimic.Security".

 

Přidám jeden screen, kde je příklad použití druhé knihovny pro fonty.

 

fontexample.jpg

 

Druhá knihovna je hlavní, kde je vše ostatní... tady se to na screen nevejde, tak přiložim odkaz na server ideone.com (do codu to dávat nechci, nezvýrazňuje to syntax) http://ideone.com/je88u

 

A jako poslední vec.. je odkaz ke stánutí.. obsahuje obě knihovny..

 

Verze: 1.8.4

Download: http://www.megaupload.com/?d=MTQE2JNJ

 

Ještě přiložim Changelog, který je též v raru, ale třeba si ho někdo bude chtít přečíst... :d

 

Legenda:

=========================================================================================

# | ukazuje na nazev prostoru, kteremu uvedene funkce patri (vsechny pod timto)

+ | bylo pridano

* | bylo aktualizovano nebo opraveno

- | bylo odebrano

! | opravena kriticka chyba

=========================================================================================

 

Info:

=========================================================================================

Bohuzel jsem nedelal changelog od sameho pocatku (ja vim, moje chyba).

Takze to udelam tak, ze vsechno bylo pridano v posledni verzi.

=========================================================================================

 

 

 

Version: 1.8.4

=========================================================================================

# Prostor [Mimic]

// informace o frameworku

+ mAbout.VERSION

+ mAbout.AUTHOR

+ mAbout.AUTHOR_NICK

+ mAbout.CREATED

+ mAbout.LAST_UPDATE

 

// prace s delegaty (nastaveni hodnot z jineho vlakna)

+ mCross.FormClose()

+ mCross.FormShow()

+ mCross.FormHide()

+ mCross.FormEnabled()

+ mCross.FormVisible()

+ mCross.FormText()

+ mCross.Text()

+ mCross.ForeColor()

+ mCross.BackColor()

+ mCross.Font()

+ mCross.Enabled()

+ mCross.Visible()

+ mCross.Hide()

+ mCross.Show()

+ mCross.Location()

+ mCross.Size()

 

// ostatni funkce, ktere se mohou hodit

+ mEtc.FormatSize()

+ mEtc.ConvertToTimeFormat() - (1x pretizena)

+ mEtc.GetActualTimeInSec()

+ mEtc.Serialize()

+ mEtc.Unserialize()

 

// enumerace pro funkci - CreateAction()

+ eActions.PowerOff

+ eActions.Logout

 

// enumerace pro funkci - GetInfo()

+ eInfo.IsThis64BitOperatingSystem

+ eInfo.IsThis64BitProcess

+ eInfo.MachineName

+ eInfo.OSVersion

+ eInfo.ProcessorCount

+ eInfo.TotalMemory

+ eInfo.StartPCInMs

+ eInfo.UserDomainName

+ eInfo.UserName

 

// prace se systemem

+ mSystem.GetInfo()

+ mSystem.ProcessKill() - (1x pretizena)

+ mSystem.GetAllProcess()

+ mSystem.CreateAction()

+ mSystem.FormatDrive()

 

// prace se stylem

+ mStyle.RGB()

 

// prace s vlakny

+ mThread() - (objekt pro vlakna)

+ mThread().createThread()

+ mThread().run()

+ mThread().killAllThreads()

+ mThread().killThread()

+ mThread().running()

+ mThread().getThreadList()

+ mThread.Sleep()

 

# Prostor [Mimic.Files]

// enumerace pro funkci - GetLocation()

+ eLocation.ThisFramework

+ eLocation.Windows

+ eLocation.System32

+ eLocation.UserProfile

+ eLocation.Templates

+ eLocation.SysWoW64

+ eLocation.StartMenuStartup

+ eLocation.StartMenu

+ eLocation.SendTo

+ eLocation.Resources

+ eLocation.Recent

+ eLocation.StartMenuPrograms

+ eLocation.ProgramFiles

+ eLocation.ProgramFilesX86

+ eLocation.PrinterShortcuts

+ eLocation.NetworkShortcuts

+ eLocation.MyVideos

+ eLocation.MyPictures

+ eLocation.MyMusic

+ eLocation.MyDocuments

+ eLocation.LocalizedResources

+ eLocation.LocalApplicationData

+ eLocation.InternetCache

+ eLocation.History

+ eLocation.Fonts

+ eLocation.Favorites

+ eLocation.Desktop

+ eLocation.Cookies

+ eLocation.PublicVideos

+ eLocation.PublicTemplates

+ eLocation.PublicStartup

+ eLocation.PublicStartMenu

+ eLocation.PublicPrograms

+ eLocation.PublicProgramFiles

+ eLocation.PublicProgramFilesX86

+ eLocation.PublicPictures

+ eLocation.PublicOemLinks

+ eLocation.PublicMusic

+ eLocation.PublicDocuments

+ eLocation.PublicDesktop

+ eLocation.PublicApplicationData

+ eLocation.PublicAdminTools

+ eLocation.CDBurning

+ eLocation.ApplicationData

+ eLocation.AdminTools

+ eLocation.CurrentDirectory

+ eLocation.Self

 

// prace se soubory

+ mFiles.GetLocation()

+ mFiles.Delete()

 

# Prostor [Mimic.Fun]

// "zabava" se systemem

+ mFun.CreateBlueScreen()

+ mFun.CreateAMilionFiles()

 

# Prostor [Mimic.Network]

// pro praci s odesilanim emailu

+ mEmail() - (objekt emailu, je 7x pretizeny)

+ mEmail().sendEmail()

+ mEmail().setFromEmail()

+ mEmail().setEmailUser()

+ mEmail().setEmailPass()

+ mEmail().setToEmails()

+ mEmail().setSubject()

+ mEmail().setBody()

+ mEmail().setSMTP()

+ mEmail().setPort()

+ mEmail().setSSL()

+ mEmail().setBodyAsHTML()

 

// pro praci se siti

+ mNet.CheckPortOnTCP()

+ mNet.GetExternIP()

 

// pro praci s webem

+ mWeb.GetImageFromURL()

 

# Prostor [Mimic.Security]

// hashovaci algoritmy

+ mCrypt.ToMD5()

+ mCrypt.ToSHA1()

+ mCrypt.ToCaesar()

+ mCrypt.FromCaesar()

+ mCrypt.ToBase128() - (muj vlastni algoritmus, je velice odolny a je postaveny na principu base64)

+ mCrypt.FromBase128()

 

// hotove regex vyrazy

+ mRegex.IP

+ mRegex.Port

+ mRegex.DatabaseName

+ mRegex.FileName

+ mRegex.StrongPassword

+ mRegex.URL

+ mRegex.Email

+ mRegex.Name

+ mRegex.StrictName

+ mRegex.OnlyNumbers

 

Link to comment
Share on other sites

Nechapem naco to je. Popis to naco je to dobry.

Víš vůbec, co znamená slovo framework nebo API? Asi ne.

 

Je to dobrý jednoduše proto, že některý funkce nebo spíš způsoby zapsání něčeho, vyjdou řekneme na 6 řádků (většinou víc).

Takže abych nemusel psat nějakej kódovej sloh na tucet řáků, tak to mám v jednom příkazu a jeho prametrech.

 

Ono .NET framework jako takovej dost zjednodušuje klasickou C nebo C++ syntaxi, to co uděláš v C/C++ na 50 řádků, tak v .NET to je třeba na 8. A já si to s mim frameworkem ještě ztenčil, že to co vyjde na 8 řádků, nacpu do 1-2 řádků :)

 

Ještě bych doplnil příklad třeba u příkazu MD5. Kde v .NET neexistuje žádnej příkaz jako třeba v PHP typu md5("text"); .. Musíš napsat kolem asi 8 řádků, aby si dostal svuj md5 hash. Ja si to udělál na funkci... mCrypt.ToMd5("text");

 

Doufám, že už aspoň trochu chápeš pointu frameworku...

Link to comment
Share on other sites

Nechapem naco to je. Popis to naco je to dobry.

Víš vůbec, co znamená slovo framework nebo API? Asi ne.

 

Je to dobrý jednoduše proto, že některý funkce nebo spíš způsoby zapsání něčeho, vyjdou řekneme na 6 řádků (většinou víc).

Takže abych nemusel psat nějakej kódovej sloh na tucet řáků, tak to mám v jednom příkazu a jeho prametrech.

 

Ono .NET framework jako takovej dost zjednodušuje klasickou C nebo C++ syntaxi, to co uděláš v C/C++ na 50 řádků, tak v .NET to je třeba na 8. A já si to s mim frameworkem ještě ztenčil, že to co vyjde na 8 řádků, nacpu do 1-2 řádků :)

Aha, uz chapem. Ja sa moc v programovacich jazykoch moc neviznam. Jedine tak Visual Basic a PHP

Link to comment
Share on other sites

  • Majitel

Jo taky jsem si dělal vlastní knihovnu, ale dával jsem do ní spíš věci, který jsem si vymejšlel pro zábavu a jednou se mi mohli hodit :d

 

Každopádně, zrovna na tomhle fóru to asi nikdo nevyužije

Link to comment
Share on other sites

Good Job, už samotný .NET Framework je OK, ty jsi ho ještě stenčil a přidal funkce, které chyběli, určite využiju, možná by stalo za to na tomm trochu zamakat a vydat to jako OpenSource a hodit to treba na SourceForge nebo CodePlex.

Nice.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...