Thursday, March 05, 2009

Molding code to your will with Sculpture – The .NET open source Model-Driven Development Code Generation Framework

CodePlexSculpture - Model Your Life

“What is Sculpture?

  • Sculpture is a .NET open source Model-Driven Development code generation framework ideal for creating and managing .NET Enterprise Applications.
  • With Sculpture you can model your application components, and then transform this model to deployable components with your favorite technology.
  • Sculpture comes with a host of ready-made Molds (The word “Molds” comes from Molding) like (DAAB, NHibernate, LINQ, CSLA, WCF, ASMX, Windows forms, WPF, Silverlight, ASP.NET, & ASP.NET MVC).
  • Sculpture provides starter kit wizard enables choosing among available technologies to start your project with all layers in no time.
  • Sculpture doesn't force you to adhere to a specific architecture, it contains a guidance package for building your own Mold or customizes existing ones. If you have a custom architecture, using this guidance package you can build a custom code generator with your favorite technology.
  • Sculpture can generate any kind of text output using templates (source code, database scripts, web pages, XML, configuration files, etc.).
  • Sculpture takes you to the next level of abstraction by separating the problem from the implementation technology.
  • Sculpture takes you to the domain specific programming by adding your specifications to the model environment and the generated code.

img_1

Sculpture is divided into:

  • Sculpture Core Engine: it is a platform that hosts the molds, takes care of making all the Molds work together. It includes the model designer, mold discovery and loader, generic validation engine, generic code generation engine, command holder, and editor controls holder.
  • Mold: The primary plug-in of the Sculpture framework, with molds you can extend all the power of Sculpture to manage the model and the produced code as your needs, molds provide the ability to process model elements.

Ready-made Molds:

  • For Data Source Layer:
    • SQL Server.
  • For Data Access Layer:
    • DAAB (Data Access Application Block).
    • NHibernate.
    • LINQ to SQL.
    • CSLA framework.
  • For Service Layer:
    • Service Library.
    • ASMX (ASP.NET Web Service).
    • WCF (Windows Communication Foundation).
  • For User Interface Layer:
    • Windows Forms.
    • WPF (Windows Presentation Foundation)
    • Silverlight.
    • ASP.NET.
    • ASP.NET MVC.

 

img_2

Why Sculpture?

  • Sculpture does not come to the world to become another CRUD code generation tool, but the essence of it is allowing the developers to model all of the application components and rapidly get it on real application.
  • Sculpture gives you permanent preview to your application, the model can be easily updated in any application life cycle phase and see the reflections of these changes immediately.
  • The model gives you the control of tenuous details in your application, plus that you can extend it to meet your needs.
  • The pluggable environment of Sculpture enables Hugh amount of customizations. (For more information see Customize Sculpture screencast).
  • SQL Server Mold has reverse engineering engine that parses the database and translates it to model, so you can start your project from the database, additionally any updates in the database schema can reflect on the model easily without losing any metadata.
  • Unlike many other code generation engines Sculpture generates as possible simple and readable code, no complex structures, organized, tested, follows Microsoft best practice, and easy to understand and tweak code, plus giving you the pleasure when you try to write your custom code side by side the generated one. (For more information see Introduction to Sculpture screencast).
  • Sculpture provides ready-to-use Molds for common enterprise architectures (DAAB, NHibernate, LINQ, CSLA, WCF, ASMX, Windows forms, WPF, Silverlight, ASP.NET, & ASP.NET MVC).

…”

Sculpture - Model Your Life - Sculpture 1.0 Final

“…

Sculpture 1.0 Final Binary Installer (Include Molds)
application, 9644K, uploaded Mon

Sculpture Source Code
application, 3307K, uploaded Mon

Molds Source Code
application, 1093K, uploaded Mon

Release Notes
Welcome to the Sculpture 1.0 Final !

Sculpture 1.0 Final is the first production release of Sculpture.
It is quite similar to the beta 2.

Pre-requisites: You will need the following development environment to install and use Sculpture:

Warning: You MUST uninstall any previous versions of Sculpture before installing this version.

…”

I’m a huge sucker for code generators and “things” that propose to make my coding life easier, helping me from reinventing the wheel and handling the “goo” code.

(via Arquitetura de Soluções - Sculpture 1.0 Final : uma ferramenta de automação sobre o GAT/GAX.)

No comments: