mayvelous

Me, Myself and Mayvelous

Archive for the ‘Software’ Category

Developer

Whenever people ask for my job title, I have to stop and think for a while. I am not sure what exactly my job title is. I got a few documents saying different job titles for me. One as Analyst Programmer, another as Web developer and yet another as Software Engineer. Since I prefer working with webforms than winforms, I answer myself as a webdeveloper. What exactly am I? I’m still figuring out. May be I’m just a “Developer” among millions of “Developers”. Developers Developers Developers Developers Developers

  • Comments Off
  • Filed under: Aside Notes, Development, Software, Technology, Thoughts, Web, Work
  • LLBLGen vs CodeSmith

    Comparison between LLBLGen Pro and CodeSmith tools. I’m very new to both so the following points might be completely wrong. So correct me please and do fill in more.

    LLBLGen CodeSmith
    O/R Mapper + Code Generator Template based Code Generator
    Uses Parameterized Dynamic Queries Mainly Stored procedures
    Cost license fee,
    Need to buy template studio for custom template creation/management.
    Free (console version)
    Comes as templates so add/update or manage as you wish.
    On-fly code generation, you don’t get to see templates or whatsoever. Gives control over the whole process, top-bottom, as they are managed by individual templates
    Does not create DB schema/generation. Creates the whole DB structure ie. Storeprocs, triggers, tables, functions etc
    N-tier generated with one go ie. If you change something in DB, you just regenerate the llblgen project and all files get updated. Individual template/batch file generation ie. You need to run B&D batch, channel batch etc one by one to get update files across 3 layer solutions.
    No webservices, remoting or channel server. Just uses classes and collections – entities, typelist, typeviews etc Can add as much layer separation between DB end and UI end. Can manage as you wish just by working on templates
    Less code – 2 projects, 1 solution More code, some redundant – multiple projects, 3 solutions
    N-tier project structure
    - Database Generic
    - Database Specific
    - UI
    (2 types: Adapter based or SelfServicing)
    N-tier project structure
    - Business and Data
    - Public Channels
    - Presentations
    (Add more as you wish)
    Do sorting, filtering, grouping, paging, all DB queries by a few class calls. (Dynamic queries) Need individual storeproc for each function. Adding one function needs to do individual updates for all projects and across solutions as well. Extensive use of storeproc.
    It is n-tier but basic multi tier structure which separate Business data code from UI codes. Advance/better n-tier architecture. Greater security and more control over each layers.
    Easier code generation + usage + less error generation. Need proper setup or you’ll get tangle in between. Small error in your base template will affect the entire project code.
    You write very little code ie. Only need to write for UI code. You have to write all the codes for your based templates if you don’t already have templates in hand.
    Provide .net 1.1, and .net 2.0 classes, ready to use and choose whichever you need. No .net 2.0 codesmith templates for us yet. Can use third-party templates but it will cost us.
    It doesn’t require dotnet framework and work independently. Uses dotnet framework as main backbone.

    # References:

    # Debate: O/R Mapping or Code Generation : Lots of discussion going on there in the reply threads.
    # Your Favorite O/R Mapper? : A discussion on O/R Mappers
    # CodeSmith Rocks! | When code generation goes bad…
    # LLBLGenPro vs CodeSmith w/ .netTiers

    What is O/R Mapper?

    O/R Mapper (Object-Relational Mappers) is a programming technique for converting data between incompatible type systems in databases and Object Oriented Programming languages. (# Ref)

    What does it do?

    The generated code from the O/R Mapper handles all of the steps that you would normally have to code yourself, saving you from having to:

    • Find the database server.
    • Log in and open a connection to the database server.
    • Select the particular database containing the information you want.
    • Find the correct table.
    • Find the correct row.
    • Read all the values for that row.
    • Convert every type of value from its SQL data type into the .NET data type while checking and handling the possibility of a null value.
    • Present those values in a strongly-typed format, so the consumer knows exactly what kind of object to expect (string, integer, array, etc.) and there are no surprises at run-time.
    • Create a container to temporarily hold the values while they are being modified.
    • Retrieve data from another row in a related table.
    • Manage which values have changed and make appropriate INSERT’s, UPDATE’s, and DELETE’s in the appropriate tables in the database to reflect those changes.
    • Close the connection.

    What is LLBLGen Pro

    LLBLGen Pro is a complete O/R mapper and data-access tier generator for .NET. It generates a data-access tier and business façade/support tier (in C# or VB.NET), using an existing database schema set. The generated .NET code is provided as a Visual Studio.NET project that can be added to a solution or compiled separately. (# Ref + More Info)

    LLBLGen Pro Features

    Rapid C# Windows DevelopmentA key feature in LLBLGen Pro is dynamically-generated SQL. When retrieving or manipulating data in a database, the SQL script — the code understood by the database — is generated at run-time based off the requested information and dirty flags in each entity’s fields. This enables a generic save entity function on the Data Access Tier to produce different and optimized SQL code each time it is called, optimizing bandwidth usage and database load. (# Ref)

    • LLBLGen Pro will completely auto-generate the data access layer. You do not need to do any hand-coding in this layer
    • LLBLGen Pro will optionally generate a business logic layer shell for you to get started with your business layer. You do not have to understand the intricacies of inheritance and making custom classes to take advantage of business logic classes; in LLBLGen Pro these classes are intuitively organized, powerful, and infinitely extendable.
    • LLBLGen Pro collections and entity objects are bindable, making them extremely easy to add to .NET controls. This can reduce the size of your UI layer.
    • Changing the database application and the data access layer without affecting the business logiv and UI layers is actually possible with LLBLGen Pro. If you migrated your database schema and stored procedures to a new database application, refraned from using any database-specific features and your schema matched exactly, you could actually re-generate your LLBLGen Pro data access layer and not make any other changes to your application.

    # Ref: Rapic CSharp Windows Development. pp. 17

    LLBLGen Pro Objects

    • Entities: Every “Row” becomes an “Entity”
    • Collections: Every “Table” becomes an “EntityCollection”. Collection classes eliminate the need for DataTable objects and are both strongly typed and bindable.
    • Entity relationships: Build into each entity are all relationships in the DB involving that table. You can either get a single entity or an entity collection depending on the type of relationship.
    • Typed views: Views in the DB can be wrapped as strongly-typed DataTable. Typed views are read-only; new LLBLGen Pro allows you to add a view from the database as an entity as well as a typed view.
    • Typed Lists: Typed lists are the only objects created by LLBLGen Pro that do not correspond one-to-one with DB objects. It’s handy when you need very specific information that does not necessarily correspond to a single table or entity or you only want to grab a subset of information for a given set of table.
    • Storedprocedures caller classes: Storedproc that you select will be wrapped in a layer of code. While the parameters of the stored procedures are strongly-typed, the result set is still an untyped DataSet.

    Project Types: SelfServicing Vs. Adapter

    There are two types of LLBLGen Pro Projects namely – SelfServicing and Adapter.
    # In SelfServicing template group, entity objects are responsible for their own persistence (saving their own changes to DB).
    # The entity class itself contains logic to know which fields were updated and where to find the database.
    # Lazy Loading is useful cos’ it abstracts the specific DB call from the upper layers of code.
    # Adapter template group: uses an object called a DataAccessAdapter to interact with DB
    # SelfServicing: bundles persistence inside entity objects
    # Allows data to load itself automoatically as it is needed without explicit commands.

  • Comments Off
  • Filed under: .Net, Asp.net, Development, Notes, Software, Technology, Tools, VS.Net, Web, Work
  • Study Notes

    I’m learning new things these days and am just sharing some notes here. I’m still learning and these technologies are very new for me, hence my notes gonna have heaps of errors and wrong information. You are most welcome to correct them, fill some more in and share you notes with me too. Alright, so we are set to go.

    I’ll be updating this post with links so still tune.

    All the notes are subject to change as I’ll be filling in with more info later.

    MS Firefox 2007 Professional

    Arh so IE + Firefox = MS Firefox

    IE + FF = msfirefox

    Such an ugly icon. The fox now looks like a lobster with one mustache. Also it got such a long name – “Microsoft Firefox 2007 Professional Edition“. What’s up with MS and their long versions? Professional version, developer version, standard version, etc.

    The combination of Microsoft’s power and might along with Firefox’s extensive fan database will create one of the world’s largest, most innovative and diversified browsers ever. The acquisition brings together two of the industry’s strongest contenders and is the most ubiquitous incorporation of technologies for creating, managing and delivering compelling spyware and viral experiences across multiple operating systems, devices and media (Subject to Microsoft Compatibility).

    Features

    • Simplified User Experience
    • Amazing Marginal Manipulation
    • Instant Search Box
    • Favorites Center
    • RSS (Real Simple Sex)
    • Tabbed Browsing
    • Quick Tabs
    • Tab Groups
    • Page Zoom, etc..etc..

    So now what? Do we ditch recent IE7 and replace with this MSFF? Anymore IE series to come? hmm…
    Full Features | Get MS Firefox 2007 Professional Edition

    Don’t feel like testing it yet. Kinda ZzzZz..Zzz at the moment. Let me know how it goes if you tested it.

    VS 05 SP1 is out, so install yaarr.

    This download installs Service Pack 1 for Microsoft® Visual Studio® 2005 Team Suite. Fixes in this Service Pack include stability, perfomance and security enhancements made in many areas of the product.

    Download: VS80sp1-KB926601-X86-ENU.exe (431.7 MB)

    Thanks Jason for the info.

    Installing .NET 3.0 and Orcas

    After many mishaps and frustrations, I’ve successfully installed .net 3.0 and all other extensions. I find installing .net 3.0 a painful process yet your case might be as easy as 1 2 3. Just for my own note and whoever with the similar situation can cross-check, I’ve listed down the followings.

    You need at least half a day work in installing all required setups for .net 3.0, not including the downloading time for installer files. Make sure you already have VS.Net 2005 installed. Ofcos have WinXP with all those latest service packs, just to be sure.

    • Clean up your machine and get at least 6 GB freespace,
    • Remove any previously installed versions of beta and RC releases,
    • Follow the installation order and notes below.

    Order of Installation
    Installation order plays an important part here. You must follow the following order to run files smoothly.

    1. Microsoft .NET Framework 3.0 Redistributable Package : dotnetfx3setup.exe (2.8MB)
    2. Microsoft® Windows® Software Development Kit for Windows Vista™ and .NET Framework 3.0 Runtime Components : Setup.exe (400KB)
    3. Visual Studio 2005 extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP : vsextwfx.msi (3.64MB)
    4. Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation) : Visual Studio 2005 Extensions for Windows Workflow Foundation (EN).exe (6.46MB)

    N.B: #2

    The setup file will load the sdk installation wizard which do direct installation. If your net is crappy like mine or if you need to install on multiple machines, then direct installation is just not right. In that case, you either need an installer DVD or get an iso image file like this one: 6.0.6000.0.0.WindowsSDK_Vista_rtm.DVD.Rel.img (1.15 GB) (My friend downloaded from somewhere…)

    You might need Virtual Clone Drive to run that iso image file. Free Download from here: Virtual Clone Drive 5.1.4.5.

    These are some of the problems I faced while installing and the fixes.

    Error: WWF extension for VS.net

    SDKSetup encountered an error: Unable to find the file SDKSetup.cab at the installation source. The most likely reason that you received this message is because the source location of your original installation is unavailable. If you installed from a DVD please re-insert the DVD. If you installed from the Internet, please check your connection.

    Fix: Place the WWF installer exe file in the same directory as your iso image file, then run again.

    Error: SDK Installation

    Error 1303. The installer has insufficient privileges to access this directory: C:\Config.msi. The installation cannot continue. Log on as administrator or contact your system administrator.

    Fix: Ignore and click “Continue” button. Might get this error twice or so, just ignore and continue installation.

    N.B: Make sure you log in as Administrator to your system and checks on C: drive that you have given full previlidge to “System” or “Everyone” account. Better to have full access on “System” account. Shouldn’t have any problem if you installing directly from internet.

    Well, at least I’ve taken one big step in upgrading to .net 3.0. Now all I need to do is, start digging and go dirty with it. I got a few online labs to play around and some good resource sites. I’ll write more about it once I get started. I’m getting my eyes on WWF labs at the moment. I’ll keep you updated.

    Tell me about your installation experiences and share some tips/resources too k?

    Technorati Tags: , , , , , ,

    Flickr Photos

    • Win's failed macarons and chocolate
      My Sis's failed attempt Macarons
      Max, May, Showey
      May & Showey
      devweb-programs
      blank document upload

    Downloads

    Twitter Status


    Goodie Links


    Mayvelous Friends


    Text-Link-Ads
    1and1 Hosting
    AdBrite
    VideoHive

    I'm an Author for Global Voices

    Archives