👋 Nový obsah na borekb.cz

Info Tento blog je v "read-only módu" a nový obsah již nebude přibývat. O vývoji píšu na DevBlog.

.NET

PHP vs. ASP.NET - pokus o seriózní srovnání

Dávám ke stažení svoji bakalářku, která srovnává PHP a ASP.NET.

Zařazeno do kategorií | | |

Stáhněte si Mono a vývojářské nástroje jako VMware image

Pokud vás zajímá projekt Mono (třeba proto, že vás navnadil Tomáš Petříček), nejjednodušší cestou, jak začít, je stáhnout si VMware image, kde je na operačním systému SUSE Linux Enterprise Desktop 10 předinstalované Mono, PostgreSQL, MySQL a potřebné vývojářské nástroje. Pak už jen stačí mít dost RAMky a VMware player.

Může to být ještě jednodušší?

Zařazeno do kategorií |

Woohooo! MSDN wiki!

Tak na tohle jsem se opravdu těšil. Microsoft zpřístupnil MSDN wiki (betu, jak jinak), takže se odteď může na dokumentaci k Visual Studiu, .NET Frameworku a dalším věcem podílet kdokoliv.

Úplná wiki to není a asi ani nebude, protože obsah dokumentace jako takový editovat nelze. Pod ním se však nově objevuje sekce „Community Content“, která umožňuje k jednotlivým tématům přidávat komentáře podobně jako třeba v PHP manuálu. Oproti němu však navíc každý uživatel může editovat komentář každého uživatele, takže název „wiki“ aspoň trochu na místě je.

Zařazeno do kategorií |

Co říkáte přehlednosti zápisu delegátů v C# 3.0?

Dnes večer se v Microsoftu koná přednáška o C# 3.0 a při té příležitosti bych se rád zeptal, jak se vám líbí nebo nelíbí následující zápisy delegátů. (Takto se sice delegáti většinou nepoužívají, ale jde mi čistě o syntaxi.)

C# 1.x:

public delegate int IntOperation(int x);

public static int DoubleMe(int x) {
  return x * 2;
}

public static int InvokeNormal1x() {
  // základní zápis:
  IntOperation del = new IntOperation(DoubleMe);
  return del(5);
}

C# 2.0:

/--- code csharp public delegate int IntOperation(int x);

Zařazeno do kategorií |

Je ASP.NET příliš komplikované?

Karl Seguin, odborník na ASP.NET, v článku „ASP.NET isn't always the right tool“ doporučuje PHP. Jak se to se složitostí ASP.NET vlastně má?

Zařazeno do kategorií | | |

Programovací jazyk hraje roli aneb C# 3.0 mě dostal

Jsem mladý a naivní, ale lepší se to :)

Programovacích jazyků znám jen hrstku – reálně jsem pracoval s Pascalem, Javou, PHP a C#, nějakou tu knížku jsem prolistoval o Visual Basicu .NET, Pythonu a tak, ale že bych byl teoretický znalec jazyků, tak to ani náhodou. Přes svou malou zkušenost jsem postupem času sám sebe přesvědčil, že jazyk nehraje roli a že vždy záleží na „frameworku“. Posuďte sami:

Pascal jsem opustil ve prospěch Javy a její syntaxe byla intuitivní a snadná, ačkoliv podoba s Pascalem není tak úplně blízká. Pravý problém byl naučit se Javovskou class library, aby se taky dalo naprogramovat něco jiného než hello world. „Krok stranou“ z Javy do světa PHP byl rovněž snadný, syntaxe je velmi podobná a tak jediným reálným úsilím bylo naučit se novou sadu funkcí. Z Javy do C# to byla po syntaktické stránce úplná pohádka, některé věci by šly skoro 1:1 zkopírovat a spustit. Opět jsem však musel investovat čas do učení Frameworku, tentokrát s velkým F.

Zařazeno do kategorií |

Ruby je větší konkurent než Java, říká Don Box

Don Box v zápisku Gosling on Ruby po delší době upozornil na určité ignorantství Jamese Goslinga, duchovního i „biologického“ otce Javy, který rozhovorem Java Is Under No Serious Threat From PHP, Ruby or C# zahrál mnoha příznivcům dynamických jazyků na jak na city, tak na vášně :) Asi nejlepší reakcí, jakou jsem viděl, je Gosling Didn’t Get The Memo.

Zařazeno do kategorií | |

Zaujalo mě (6)

  • Andi Gutmans, jeden ze zakladatelů firmy Zend, upozornil na to, že po zadání slova ‚framework‘ do MSN Search se na prvním místě objeví Zend Framework před .NET Frameworkem. Kde udělali inženýři z Microsoftu chybu? :) (V Googlu se přitom .NET Framework „správně“ objevuje na prnvím místě a ZF není ani na první stránce.)
  • Každá technologie má několik typů uživatelů, od „early adopterů“ přes „brzkou většinu“, „pozdní většinu“ až po ty, co technologii zarytě odmítají. Larry O'Brien však upozornil, že se často zapomíná na velkou díru, která je mezi early adoptery a brzkou většinou. Zatímco nadšence zajímá nová technologie a jsou ochotni strávit mnoho času jejím učením, brzká většina potřebuje věci jako snadnost použití, produktivitu, integraci s jinými technologiemi apod. Článek říká, že Ruby má mnoho nadšených early adopterů, ale není jisté, jestli se mu podaří přeskočit onu propast. Uvidíme…
Zařazeno do kategorií | |

Slabá podpora pozdní vazby v C#

Polymorfismus je jedním ze základních konceptů objektově orientovaného programování. Na rozdíl od ostatních principů (zapouzdření, dědičnost, abstrakce apod.) se v případě polymorfismu jedná o poměrně komplikovanou záležitost (podívejte se třeba na Wikipedii), ale v podstatě se vše točí kolem jednoho pojmu, kterým je pozdní vazba.

Mým oblíbeným příkladem je zvířecí seznamka: objekt typu Zvíře má metodu představSe, která sama o sobě nevypisuje nic užitečného (např. „Jsem obecné zvíře“). Odvozené třídy ale mohou s výhodou tuto metodu překrýt a vypsat krátké představení sebe sama, např. „Jsem pes Alík“ nebo „Jsem kočka Micka“. Metoda PřidejDoSeznamky pak může díky pozdní vazbě přijímat obecný typ Zvíře a spolehnout se, že volání metody představSe bude fungovat podle konkrétního zvířete a vypíše se tedy smysluplná hláška namísto nicneříkajícího „Jsem obecné zvíře“. Teoreticky řečeno, pozdní vazba (late binding) odkládá rozhodnutí o konkrétní volané metodě až na dobu běhu, zatímco brzká vazba (early binding) o volané metodě rozhoduje už při kompilaci.

Zařazeno do kategorií |
Syndikovat obsah

Komentáře jsou uzavřeny (blog je v read-only módu). Pokud mě chcete kontaktovat, můžete mailem.