Showing posts with label Geek. Show all posts
Showing posts with label Geek. Show all posts

Tuesday, April 5, 2011

Lesser Known Design Patterns with Bevan Arps

Wellington Dot Net User Group Meeting

  1. NULL Object Pattern - useful to declutter your code. Requires creation of a Null object in order to remove requirement to always check whether your object exists.

  2. Command Pattern - Create function objects that interact with the object hierarchy.


    • Effects: Localises code; Undo/Compensation; New function: New object.

    • Considerations: Open-closed principle; # Classes; Likelihood of changes

  3. Emancipated Objects Pattern - make objects responsibile for maintaining their own state.


    • Effects: Read-only properties; Mutator methods; Validation

    • Considerations: Applicability; Reusability; ORMs

  4. Proposal Pattern - Complex Domain Factories. Explictly model the process that leads up to creation of the original object.

    • Effects: Natural Validation; Reduced Complexity; Increased Flexibility; Error Tolerant.

      Considerations: Process Complexity; Process Duration.

  5. State Pattern - Complex Domain Behaviour. Partially change the type of the object by swapping out behaviours based on state.

    • Effects: Switching removed; Grouped behaviour

    • Considerations: # Classes; Encapsulation; Complexity of Behaviour

    Friday, April 1, 2011

    Day 02 – Preferred programming language?

    Visual Basic.NET (Visual Studio 2010)

    Why?  Because historically, I progressed from:

    • AppleSoft BASIC
    • GW BASIC
    • dBASE III Plus
    • FoxPro
    • Paradox
    • Access
    • VB 5.0
    • VB 6.0
    • VB.NET

    In addition, Visual Basic.NET has the following advantages:

    • VB not only stands for Visual Basic, but also Verbose.  It is a verbose language, which assist with self-documentation, as I don’t have to guess as much which } closes which statement.
    • C#.NET coders are a dime a dozen.  You have to really love VB to go against the flow.  This makes you rare and more valuable.
    • All the Java developers hate you.  I can live with that because I am anti-LAMP:
      Open Source Microsoft
    Operating System Linux Windows
    Web Server Apache IIS
    Database Server MySQL SQL Server
    Language PHP/Java ASP.NET

    Thursday, March 31, 2011

    Day 01 – Why do you consider yourself a geek?

    This is day #1 of “30 Days of Geek” 

    To find out more about what that means, read here: http://www.eguru.co.nz/2011/03/30-days-of-geek-challenge-starting-1st-april/

    Day 01 – Why do you consider yourself a geek?

    1. I’ve been coding since Form Four at Nelson College in 1984.
    2. I am a Senior .NET Developer at Telecom New Zealand.
    3. I am Web Master for Align Church.
    4. I was Web Master for Grenada Village Residents Association.
    5. I was Web Master for Wellington Home Education Network.
    6. I am a Microsoft Certified Trainer.
    7. I am a Microsoft Certified Professional Developer (.NET Framework 2.0 – Web Developer).
    8. I am a Microsoft Certified IT Professional (SQL Server 2005)
    9. People ask me to fix their computers at parties.
    10. I carry an LG (Android) Smartphone.
    11. I am known as “Mr. VB” at Dot Net User Group meetings.

    That’ll do for now.