Skip to content

Instantly share code, notes, and snippets.

View dbuksbaum's full-sized avatar

David Buksbaum dbuksbaum

View GitHub Profile
@dbuksbaum
dbuksbaum / App.xaml
Created May 2, 2015 23:05
Gentle Introduction to MEF–Part Three
<Application x:Class="RealMef.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>
@dbuksbaum
dbuksbaum / IGenerator.cs
Created May 2, 2015 21:25
Gentle Introduction to MEF
public interface IGenerator
{
string Name { get; }
string Generate();
}
@dbuksbaum
dbuksbaum / ILogExtended.cs
Created May 2, 2015 20:28
Introducing Caliburn.Micro.Logging
/// <summary>
/// Extension to the ILog interface to allow for richer Error messages.
/// Based on a discussion in the Caliburn.Micro discussion forum on Codeplex.
/// See <see cref="http://caliburnmicro.codeplex.com/discussions/261656"/>.
/// </summary>
public interface ILogExtended : ILog
{
/// <summary>
/// Logs the message as error.
/// </summary>
@dbuksbaum
dbuksbaum / CreatorLEDTelevision.cs
Last active August 29, 2015 14:20
Patterns 101 – Factory Pattern
class CreatorLEDTelevision : ITelevisionCreator
{
public Television CreateTelevision()
{
return new LED();
}
}
class CreatorLCDTelevision : ITelevisionCreator
{
public Television CreateTelevision()
@dbuksbaum
dbuksbaum / ObserverTest.cs
Created May 2, 2015 17:42
Patterns 101 – Observer Pattern
class ObserverTest
{
public void RunTest()
{
var observerable = new TheObservable();
var observer = new TheObserver();
using (observerable.Subscribe(observer))
{
// do something to change the state of an observable
@dbuksbaum
dbuksbaum / FirstBankOfSafety.cs
Last active August 29, 2015 14:20
Using Code Contracts for Safer Code
class FirstBankOfSafety
{
/// <summary>
/// The current balance in the account
/// </summary>
public double CurrentBalance { get; private set; }
/// <summary>
/// Deposit money into your bank account and return the new balance
/// </summary>
module Jekyll
class LessConverter < Converter
safe true
priority :high
def setup
return if @setup
require 'less'
@setup = true
rescue LoadError
@dbuksbaum
dbuksbaum / App.xaml
Last active July 26, 2019 15:13
Bootstrapping Caliburn.Micro with Autofac
<Application x:Class="HelloAutofac.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:HelloAutofac">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary>
<local:MyBootStrapper x:Key="bootstrapper" />
</ResourceDictionary>
@dbuksbaum
dbuksbaum / DebugLogger.cs
Created April 29, 2015 03:00
How To Do Logging with Caliburn.Micro
class DebugLogger : ILog
{
#region Fields
private readonly Type _type;
#endregion
#region Constructors
public DebugLogger(Type type)
{
_type = type;
@dbuksbaum
dbuksbaum / App.xaml
Created April 29, 2015 02:18
Caliburn.Micro the MEFtacluar
<Application x:Class="HelloMef.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:HelloMef">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary>
<local:MefBootStrapper x:Key="bootstrapper" />
</ResourceDictionary>