I'm beginning focus on my first business (application + database) type application, using c# and sql I am brand-new for this,

What tips have you got for me personally?

What must i search for?

What concepts must i understand?

My tip is to buy began and return whenever you really possess a concrete question. Whether it enables you to feel more prepared, go read more C# and SQL books first.

Just start writing code. You are going to need to throw is away later whenever you evaluate which happening, but that is okay.

While your real question is broad, this is actually the number 1 factor I 'wish I knew' after i began by helping cover their business applications, kinda specific but it is pretty universal:

Writing business applications is created substantially simpler by establishing a good DAL (Data access layer) and abstracting your computer data access out and from the relaxation of the application. This way all your SQL is in one location and never thrown throughout your code.

Some golden suggestions to educate yourself on in this region are 'ORM' (object-relational mapping, as you are using C#, Linq to SQL might be a nice starting point) - this maps your database use of actual classes. For those who have a great database design you may even find you have little SQL try to do whatsoever.

Another nice practice is applying the Repository pattern, which effectively encapsulates all of your data access right into a single class (a minimum of within the simple situation - obviously in bigger applications you may have multiple). Then to be able to access data, you always go through the repository. This really is typically done with an interface which defines the repository, which in turn enables you to definitely implement multiple concrete implementations. For instance, you might like to fetch your computer data from an SQL server, but afterwards or perhaps in an alternate application you might like to make use of a web plan to fetch data rather - you don't need to re-write everything, just stop by a brand new repository class! The interface stays exactly the same, therefore the relaxation of the application does not know different :D)

This can be a pretty broad overview (and a little of the mind dump sorry), and I am no expert, but trust me, good data access practices certainly build your existence simpler!

Well, I'd say you've come right site should you start asking specific questions.

A lot of our greatest ranked questions, however, provides you with boat loads of reading through material, books, connect to other sites, etc. This is actually the URL

http://stackoverflow.com/questions?sort=votes

General tips:

  1. Get the help of anyone who has carried this out before. There's not a way you are likely to pull this off on your own unless of course you permit sufficient time to understand at work.
  2. Do not get depressed by the technical particulars -- make certain you realize the business. If you do not know why you are building the application (or perhaps your clients have no idea why they require it) not good may come from this.

So far as what you need to search for or just how much you must know, I'm not sure the scope from the application you are attempting to construct -- thus I can not give any intelligent advice. A genuine-time economic climate utilized by 1000's of concurrent customers differs from a little retail site that will get hit by 100s. So my only search for/understand advice is: don't overengineer your solution.