Tag Archives: Software Sagacity

C# Design Patterns: #7 – Bridge

BridgeThe Bridge pattern is ideal for building cross-platform applications.  By completely separating the class interface from the implementation, programs can interchange the actual implementation of a particular subsystem without requiring any changes in other parts of the code.
Continue reading

RSS Twitter LinkedIn Facebook Email

Elements of an Enterprise-Grade Web Framework – Part 3: Data-Bound Drop-downs

FormDrop-down list-of-values populated by database tables are another important component of enterprise-grade web frameworks.  Although most frameworks do support them through one technique or other, the ease of implementation is key in this often-used feature.
Continue reading

RSS Twitter LinkedIn Facebook Email

Elements of an Enterprise-Grade Web Framework – Part 2: Existing Database Schemas

Custom Database ProgrammingA powerful database schema is one of the key components of an enterprise application.  Using the database to enforce business logic and ensure data integrity enables both flexibility and scalability in application design.  By coding business logic in both the database layer and application layer, the database has the flexibility to then also be used by other applications and processes without fear of corrupting data.  In addition, other systems can take advantage of stored procedures or views that make future development easier, instead of the platform lock-in created by storing all business logic in the application itself.
Continue reading

RSS Twitter LinkedIn Facebook Email

When Optimization Breaks Software

LightningIt’s well known that most of the code we write is not what the computer actually runs. When writing a program, the compiler or runtime will take the code and perform a process called “optimization,” where various methods are applied to make the code more efficient so that it will execute faster.
Continue reading

RSS Twitter LinkedIn Facebook Email

ASP.NET – Custom Query Interfaces

SearchWhen developing web-based forms using the ASP.NET platform, one of the basic tools that is lacking from the framework is an effective search mechanism. Custom queries seem to have been neglected due to their apparent complexity, and their non-geometric fit into the ideology of most frameworks. Still, a good search tool is very useful to users for finding relevant data in a large database. As such, we have developed a few tools and methodologies to make search implementation easier in web applications.
Continue reading

RSS Twitter LinkedIn Facebook Email

Database Design Principles – Part 5: Isolate Semantically Related Multiple Relationships

Custom Database ProgrammingIn the previous database design post, we discussed isolating independent multiple relationships. The goal was to find relationships in the database that were independent, yet incorrectly bound to the same row. This last and final database design principle helps us find data that is too flexible, and can instead be combined to help reduce database size and optimize speed.
Continue reading

RSS Twitter LinkedIn Facebook Email

Database Design Principles – Part 4: Isolate Independent Multiple Relationships

Custom Database ProgrammingIn part 4 of this 5-part series on database design principles, we review Independent Multiple Relationships.  By isolating relationships so that the database structure is fully hierarchical, the software will be more adaptable to future user needs, and require less reprogramming when the requirements will inevitably change in the future.
Continue reading

RSS Twitter LinkedIn Facebook Email

Database Design Principles – Part 3: Eliminate Columns Not Dependent on Key

databaseIn the third of this five part database design series, we review the database design rule of removing columns not dependent on the key.  Similar to removing redundant data, this rule will make the database more flexible and maintainable throughout the lifecycle of the system.
Continue reading

RSS Twitter LinkedIn Facebook Email