Ok, ajde recimo ovo mi je dio koda koji se nalazi na stranici. Koje bi verzije sada postojale..
Code:
Public Function Delete(ByVal auctionDate As Date, Optional ByVal branchCode As String = "", Optional ByVal stockNo As String = "", Optional ByVal sDbFlag As String = "C") As Boolean
znaci kako ovo sad bi trebalo da izgleda u C# i koliko funkcija??
mislim koliko meni izgleda ono bice 16 (2^4) funkcija!!! Meni je to malo previse ako cu morati da prepisujem svaku funkciju 8 puta, sa razlicitim parametrima... a i u mikrosoftu su neki... sto nisu napravili isto :)
Mislim moguce je anpraviti generic funkciju i onda pozvati 16 puta sa razlicitim parametrima da bi se napravila implementacija... Meni ce uzeti 300 godina da ovo sve prepisem, ima preko 300 klasa sa ko zna koliko funkcija... i uglavnom koriste optional parameters...
Evo upravo sad jednu klasu sam otvorio i ima 1807 linija koda, a uglavnom su funkcije koje su sa optional parameters. Takodje pitanje... Da li overloading ubija performance kad se uporedi sa VB optional parametrima i jednom funkcijom, ili je samo razlika u kolicini koda koje ce biti napisan.
Evo nasao sam neki software koji radi konverziju i pravi overload funkcije, samo me interesuje koliko je ovo tacno?
Code:
public bool Delete(System.DateTime auctionDate, string branchCode, string stockNo)
{
return Delete(auctionDate, branchCode, stockNo, "C");
}
public bool Delete(System.DateTime auctionDate, string branchCode)
{
return Delete(auctionDate, branchCode, "", "C");
}
public bool Delete(System.DateTime auctionDate)
{
return Delete(auctionDate, "", "", "C");
}
//INSTANT C# NOTE: C# does not support optional parameters. Overloaded method(s) are created above.
//ORIGINAL LINE: Public Function Delete(ByVal auctionDate As Date, Optional ByVal branchCode As String = "", Optional ByVal stockNo As String = "", Optional ByVal sDbFlag As String = "C") As Boolean
public bool Delete(System.DateTime auctionDate, string branchCode, string stockNo, string sDbFlag)
{
[Ovu poruku je menjao 01011011 dana 25.02.2008. u 21:46 GMT+1]