.NET DDD Example [closed] - domain-driven-design

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Can somebody point me towards a 'complete' DDD example developed on the .NET platform. Most of the examples I find feel 'incomplete'.
I'd really like to see the DDD principles in action.

You could try the code that is built as part of the .NET Domain-Driven Design with C#: Problem - Design - Solution book.
The code is freely available from Codeplex here and also on the book's website, and is a fairly feature complete application demonstrating DDD with C#.
From the codeplex site:
The book is one large case study of a real-world application, named SmartCA, which is a smart client application implemented with the latest .NET technologies and following DDD principles.

.NET DDD Sample from Domain-Driven Design Book by Eric Evans can be found here: http://dddsamplenet.codeplex.com
Szymon (search google for: simon-says-architecture dotCOM) is updating source code almost on daily basis. The last release is from 28th Jan 2010.
Cheers,
Jakub G

These are ASP.NET MVC sample applications -
here
Worked well enough for me.
Here it`s possible to get book about DDD -
here
(use www.bugmenot.com, if you dont want to register there).
edit
'ddd quickly...' ain`t good enough. look for 'ddd tackling complexity in the heart of software'.

Try this:
Domain Oriented N-Layered .NET 4.0 Sample App.
By Microsoft - Spain
Using .NET 4.0 C#, Entity Framework 4.0
Implementing typical DDD architecture & desing patterns
Sample-App Current state - BETA Version. (V0.9 is compatible with VS.2010 RTM, final .NET 4.0 version, Silverlight 4.0, UNITY 2.0 and PEX&MOLES V0.92)
http://microsoftnlayerapp.codeplex.com/

Related

Good materials / resources to start on Windows Azure [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I've begun the migration of an ASP.NET MVC website to Windows Azure
I've already found some tutorials :
Windows Azure and SQL Azure Tutorials
Windows Azure - .NET Developer Center (Create your first application)
But I would like to have a more academical background, a general knowledge of the whole plateform.
Do you have some good books, websites, blogs or any other support to recommend ?
Thank you in advance
The patterns and practices group has several books available that give an overview of Windows Azure technology from different perspectives.
http://blogs.msdn.com/b/windowsazure/archive/2011/08/17/microsoft-patterns-amp-practices-books-offer-guidance-on-adopting-windows-azure.aspx
I have been through the book Moving Applications to the Cloud book in particular. It is written to consider the perspectives of the business person, the IT pro and the developer. It was good to see the technology decisions from different points of view.
Buck Woody has a nice summary on his blog on when to leverage the different service platforms available in the cloud.
If you are very new to Windows Azure the following articles will create a knowledge base for you:
Intro to Windows Azure
Understanding Cloud Storage
Hybrid Cloud Solution
After that you would be ready to start developing you application and as you showed interest in .net development I would say visit the link below for all the .net related resources at once single place:
Windows Azure .net Develop Center
In the same page above, look for left side section name "How to Guide" for a list of common steps you are going to use in your daily development.

Books recommended for a beginner SharePoint architect [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am a recent graduate and got a job as a junior SharePoint developer few months ago. For the last few months, I have been working on SharePoint development, e.g. webparts, .Net Forms, K2, Lists, Features, for Moss and a little bit for SharePoint 2010 as well...
Now because I made a future plan to become a SharePoint architect, I am not sure what way I need to follow to become what I want to, As there are so many things to learn in SharePoint, I am looking for Book or a series of Book that will help me gain knowledge as a SharePoint Architect has.
I am a bit confused with SharePoint architecture as well, like If I want to develop a new SharePoint Solution, What hardware e.g. Servers, Do I need + Software, e.g. We use .Net Forms, but are they better then using Info-Path forms ?
Thanks (I know its not a Coding question but I think its somehow related to Programming so please dont close it.. Cheers)
There is a huge amount to learn in order to "become" an architect for SharePoint. Do not forget that you will need to learn how the SharePoint content database works, especially how documents are stored. You will also need to figure out the infrastructure part of the equation, especially how virtualised environments will affect server performance.
Essentially, there is not enough space to list all the books that could be useful.
You have set yourself a long term task, so go hard with the curiosity. Whenever you run across a subject that you do not know the details of, hit google and find out.
For example, the difference between .NET forms and Info path forms maybe available in a book, but you are going to learn more quickly and thoroughly by creating some Infopath forms and having a look at how both are implemented.
There is no real shortcut around the hard graft required to learn SharePoint (except perhaps finding someone who already is good at this and learning from them directly).
A free ebook downlodable from msdn :
Developing Applications for SharePoint 2010
http://msdn.microsoft.com/en-us/library/ff770300.aspx
It's a good starting point.

What is the biggest new feature/improvement in SharePoint 2010? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
This is really a question for the 7400 people (!) at the SharePoint Conference 2009. Of all the new features and improvements in SharePoint 2010, which one (or area or feature set) do you think will have the biggest impact on the world of SharePoint development?
I haven't had a chance to do anything with it yet, but the new BDC (Business Data Catalog), the BCS (Business Connectivity Services), looks really promising - and something that people may actually use as more than a last resort this time around.
Edit: Now that I have had the time to play with the BCS - I can tell you that it is a HUGE improvement over the BDC in terms of both flexibility and ease of use - it is going to be the center of a ton of big-business custom development work to come.
Development support on Win 7 / WS08R2
You no longer have to do your development on Windows Server. You can use Win 7, Vista, or WS08R2.
It may sound stupid, but I would say sound compatibility with Firefox is the comforting thing to know. It not because I am a big fan of Firefox, but it shows a big step of MS towards openness.
For me? The fact that I can now publish my access applications to the web. Here is a video of me playing with ms-access, and about half way through this short demo I switch over to running the application in a browser. I tested this in FireFox, and it also runs 100% perfect...
http://www.youtube.com/watch?v=AU4mH0jPntI
I liked the BDC but was disappointed at the lack of tools to quickly bring an existing SPList from another site or site collection in as a external list. It can be done, but it is a very manual tedious process. I would have liked to see a point and proxy sort of API.
Having lived through some SharePoint application upgrade disasters, I would say that I am very favorable to the new Feature Versioning and Feature Upgrade capabilities. The ability to define an upgrade path for content types and lists as well as move existing file URL's is great. With the new event and FeatureUpgrading method on the SPFeatureReceiver you can do just about anything in upgrade.
More on the Feature Upgrade...
I have been playing with Business Conectivity Services and i'm very impressed. this is the tool that will make sharepoint the bridge in a business.
Out of the box Global Navigation Components no longer use tables. I know it's really not way up there on the list of improvements, but I was super excited when I read this.
SharePoint 2010 Changes in Rendering
2 biggest improvements:
1 - Dev tools support - You can throw away WSPBuilder, SharePoint Manager, and all the other hodge-podge tools you used to develop SharePoint Solutions.
2 - Taxonomy/MetaData - You can add a metadata column to any content type and query that information accross farms. Leverages the new service application infrastructure which gets rid of SSP's

How some developers move from one platform to another? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I have noticed some developers picking up new skills and moving from one platform to the other? How do they do it? How do they justify for the lack of experience in the said platform they get the job?
Is it based on relevance to their previous experience? do they get certified in the target platform and work at a junior level accepting a pay cut? is it simpler if you are into contracting/consulting? Or is it simply a matter of projecting the resume correctly?
Actually, a lot of seemingly different platforms are really very similar, if you understand what goes on "under the hood," as it were. Though I've barely touched a Microsoft platform for well over a decade, for example, I have little difficulty developing things there because deep knowledge of computer systems in general is quite transferable.
For me, moving from LAMP to .Net was a work necessity. The consulting company I work for needed a PHP guy right away which is how I got in, but that project completed abruptly and they did not have an PHP work on the horizon.
In the closing weeks of the PHP project, I took an online O'Reilly course in C# and worked closely with a more experienced developer on a Windows application for the same client. Once the PHP gig completed I was able to start right away on a .Net project and I've had .Net clients ever since.
The key for me was flexibility. I let my employer know immediately that I was interested in different technologies and platforms and have taken the initiative by requesting access to courses and taking advantage of our yearly book allowance to explore different areas. When opportunities arise for investigating new directions like Mobility (PDAs, specialty devices and tablets) I jumped at the chance.
If your employer doesn't have policies which promote this type of self-directed expansion, then try to build a type of application you are familiar with in a new platform. Once you have you have a decent grasp of the tech, get involved with open source projects in your target platform and look for paid outside opportunities (i.e. Craigslist, elance, etc.) while you are still learning.
Most likely it is a result of circumstances. In these touch economic times being able to move outside your comfort zones is crucial
I really haven't seen a lot of reluctance on anybody's part to put developers on platforms that are new to them. Changes in computer language tend to be far more worrisome to managers than platform changes.

Where do I find some good examples for DDD? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm learning about Domain Driven Design, however there are some practical issues that are confusing to me that I think seeing some good samples might clear up.
Does anyone know of some good working code samples that do a good job of modelling basic DDD concepts?
Particularly interested in
An illustrative Domain Model
Repositories
Use of Domain/Application Services
Value Objects
Aggregate Roots
The difficulty with DDD samples is that they're often very domain specific and the technical implementation of the resulting system doesn't always show the design decisions and transitions that were made in modelling the domain, which is really at the core of DDD. DDD is much more about the process than it is the code. (as some say, the best DDD sample is the book itself!)
That said, a well commented sample app should at least reveal some of these decisions and give you some direction in terms of matching up your domain model with the technical patterns used to implement it.
You haven't specified which language you're using, but I'll give you a few in a few different languages:
DDDSample - a Java sample that reflects the examples Eric Evans talks about in his book. This is well commented and shows a number of different methods of solving various problems with separate bounded contexts (ie, the presentation layer). It's being actively worked on, so check it regularly for updates.
dddps - Tim McCarthy's sample C# app for his book, .NET Domain-Driven Design with C#
S#arp Architecture - a pragmatic C# example, not as "pure" a DDD approach perhaps due to its lack of a real domain problem, but still a nice clean approach.
With all of these sample apps, it's probably best to check out the latest trunk versions from SVN/whatever to really get an idea of the thinking and technology patterns as they should be updated regularly.
Not source projects per say but I stumbled upon Parleys.com which has a few good videos that cover DDD quite well (requires flash):
Improving Application Design with a Rich Domain Model
Get Value Objects Right for Domain Driven Design (unavailable)
I found these much more helpful than the almost non-existent DDD examples that are currently available.
.NET DDD Sample from Domain-Driven Design Book by Eric Evans can be found here: http://dddsamplenet.codeplex.com
Cheers,
Jakub G
Check out Project Silk. Not only does it demonstrate DDD but other cutting edge patterns. This is an excellent resource for any Web Developer. A full overview of the project can be found on MSDN.
This is a good example based on domain driven design and explains why it is important to have separate domain layer.
Microsoft spain - DDD N Layer Architecture
ddd-cqrs-sample is also a good resource. Written with Java, Spring and JPA.
Updated link:
https://github.com/BottegaIT/ddd-leaven-v2
Code Camp Server, Jeffrey Palermo's sample code for the book ASP.NET MVC in Action. While the book is focused on the presentation layer, the application is modeled using DDD.

Resources