The basic difference between a deck and a porch is location: a porch is located at the front of a house and is a covered area where guests can stand before entering the home. A deck is in the back or on the side of the house, and it is more of a recreational or living area. While both can have a similar design, decks are more often not covered, whereas a porch is very often covered. A deck and a porch can essentially be made into one unit if the porch is a wraparound porch that extends to the side of the house.
A porch is designed to shield guests from the elements when waiting for entrance to a home. It can be a very simple structure or it can be quite ornate, but in both cases, the porch is typically not built into the supporting structure of the home. It is essentially an external structure, but it is connected to the house itself. Some porches are wraparound porches, which cover the entire front of the house and one or two of the sides of the house. Such porches are used for more than just shielding guests; it can be used for storage or for leisure as well. Porches are generally open air but are covered to protect against rain and snow.
Both a deck and a porch can be used for leisure, but a deck is built primarily for leisure. Decks are usually open air structures, though in more recent decades, it has become common to cover or enclose a deck to protect against weather or bugs. A deck is usually a wooden structure, or it can be made from composite materials, and often it is attached to the house. A back door of the house often opens up to a deck. One primary difference between a deck and a porch is functionality: a deck can be built to accommodate many activities, such as acting as a pool deck. It can be built around an in-ground or above-ground pool, and it can feature stairs that lead into a yard.
Another distinguishable difference between a deck and a porch is height. Most porches are raised above the street level by a few stairs that lead to the front door. A deck can be as high as a story off the ground to reach a second floor of the house. It can also be built to be multi-leveled, whereas a porch is almost always only one level.