Archive

Archive for the ‘DDD6’ Category

[DDD6] Testing Your Applications With MbUnit with Ben Hall

November 25th, 2007

Ben Hall

Gallio Test Platform allows for multiple test frameworks to run thru the one platform
NUnit is a subset of MBUnit so you can just replace NUnit with MBUnit and not have to change code
Indentity Increments happen even after rollbacks
DBCC CHECKIDENT (Orders,RESEED,0)
IOC thru a property and not just in the constructor
[ExpectedArgumentNullException] passes only if there was a NullException

ForEachTest,DataFixture,ResourceXmlDataProvider
loads in a XML file with the test data
DataType = typeof(Data) in the foreach will give you intellisense (I blinked on the first example and didn’t see that it didn’t have it in the first place)
CustomAssertions
Watin is just like NUnitASP is actually maintained
good examples of open source projects running MBUnit are subsonic,castle, dasblog

Thanks for the TShirt Ben, I’m going to have to go thru your blog to find the new features in v3, I know theres mutliple Assertion Failures at least.

DDD6

[DDD6] Dynamic Languages on .NET with Michael Foord

November 25th, 2007

Michael Foord
Resolver a financial tool written in IronPython
IronPython supports “from namespace import *” like java does
Magic Methods are dynamically interpretted like __init
dynamic typing and duck typing
Easy to Test because of monkey patching,mocking, no compile
late binding
variables are just references to actual memory

x = 1  so x = 1
y = x  so x = 1, y = 1
x = 2  so x = 2, y = 1

“import clr” brings in type methods
python used in youtube, google
stackless python for Eve online
byte code compiled like c#
_name means you shouldn’t mess with it but its not protected
self equivalent to this
DLR Languages include VbX,Vista Smalltalk, managed JS, IronLUA, IronLisp,IronRuby,IronPython 
DLR Console (uses silverlight 1.1 alpha)
can use python code mixed with other DLR languages and have access to the same variables
Web IDE
Multiline strings are enclosed with triple quotes “”"
*args, **keywargs  – dictionary??

DDD6

[DDD6] Grok Talks

November 25th, 2007

Gordon Mackie – releasable Web Controls

Make your properties appear cleanly in the Properties panel
Description Attribute on Properties
Use a Category Attribute or the Property will end up in the Misc Category
Browsable(false) Attribute keeps the Property from showing in the Property Panel
ToolboxBitmap Attribute lets you have an icon for your control
*add the bitmaps in a subfolder and set them to embedded resourse files
*add an empty code file to force compilation in visual studio
DefaultValue Attribute lets you use Reset in the context menu for the control in designer
Setup a method to reset to get around literal Default values
bool ShouldSerializeMyPropertyName //where MyPropertyName is your property
void ResetMyPropertyName
Default Event is the double click in designer
ToolboxItemFilter Attribute lets you show under contexts
Bindable Attribute avoid unneccissary binding, bind on change
Refresh Properties All – recalcalutes all dependant properties
generate documentation with sandcastle
SDK tools to register and install tools
TypeConverters,TypeEditors

Abid Quereshi – Story Based Estimating

Stacey Diagram showing predictability
velocities are good for hard to predict scenarios
must indicate Return on Investment per story
Each story has a Priority, Time Cost in Units, Client Value
Scooby Doo Respose to estimating “I don’t know”

Guy Smith Ferrier - Why Extension Methods will rule the world

(this RegionInfo regioninfo)
Extension methods are public, static, have the Extension Attribute (or a this)
could inherit Extension in 2.0 but it won’t compile in 2.0, but it will run if you compile it on the 3.5 compiler targetted at the 2.0 runtime
web sites compile at runtime so you need 3.5 for extension methods
They get around sealed classes, the work of the devil
Great if you don’t own all the source code your using.

Alex Mackey – Development in Dubai

issues with unicode,date format, date display, db collation, text flow
Don’t assume anything
Names are difficult to format there’s more than just first and last names
working hours change during holy week and there’s different holidays
icons and images mean different things
racial information won’t be volunteered
photos don’t help much when women were head coverring
server hosting is problematic due to climate
export restrictions
you can be barred from leaving Saudi Arabia if you have a local disagreement outstanding
health and safety issues in the workplace
equipment will always get delayed in customs
Dell in the UAE are slow
printers have different catridges there
fax is preferrable because the post is slow
staffing problems with people going native and getting frustrated with being away
skype.com is blocked but not the actual service

Ben – Powershell

lists are actually objects and are querible
you can pipe on top of pipes
export-csv,import-csv,format-table

Peter Ibbotson – Reflection

Store ProperyInfo and reference instead of looking it up each time
Setup a delegate of GetGetMethod() and reference that for a large speed up
if its a field you need to use dynamic methods

DDD6

[DDD6] Microsoft Codename “Astoria” with Guy Smith Ferrier

November 25th, 2007

Guy Smith Ferrier

Astoria is a web service provider that lets you serialize your entities out to the client as JSON or XML

client side data
Popfly is microsoft mash up engine
his .net internationalization book
astoria.mslivelabs.com
astoria was the first RESTful web service
May 2007 CTP, Dec 2007 CTP, Beta 1 Q108, RTM mid 2008
doesn’t work with the RTM… back to Beta 2
there was a slide with the requirements for an install
its a protocol and an extensible WCF service
builds on top of HTTP for tunneling, URI Protocol
security is coming in the future but theres no cross domain support right now and you can use forms/windows authentication
works well with the Entity Framework
Northwind.svc/Customers!key
has a query language in the url that supports where,order by, paged results
Dec 2007 CTP will turn of security by default to prevent database dumps thru Astoria

theres a WSDL like page on the root node using $sys_getedmdata in the Sept CTP and $metadata in Dec CTP
JSON supported on all versions (can eval easily in js)
can use HTTP,Remoting,COM because its part of the WCF
could use remoting in silverlight via partial trust in 3.5
ADO.Net Entity Model is a .Net version of DDL
supports accees to Stored Procedures
“it” is equivalent to this in the Entity Framework
can add custom methods to the URI
can access astoria straight from a web request so that we can support mixed enviroments
Astoria client library handles querying and mapping
WebDataContext,WebDataQuery
WebDataDen.exe will generate the proxy classes for us
runs the IQueriable interface so it can deal with anything thru LINQ
support for scalar returns and better concurrency coming in the future

Thanks Guy

DDD6