You will need the following things to make a simple digital camera:
- A camera module. These contain the actual CCD (or CMOS) imaging chip, and optics all nicely integrated. There are a few options available. For example the LinkSprite module. The good thing about this is that it contains an on board JPEG compressor, so it actually outputs the image already in JPEG format.
The downside to this module is that it has terrible resolution of 160x100 pixels, and costs about $50.
A better option (but harder to solder by hand) is this CMOS camera module.
It also outputs in JPEG format, but has a resolution of 1300x1040. Both of these camera modules are available from SparkFun.
- Something to store the image on. Easy, stick it on an SD card.
SD cards have an SPI interface which is supported by a great many microcontrollers. So you should easily be able to write to it. Assuming you want to be able to read the images off it, then you'll need to store the data as actual files in FAT32 format. There's a good tutorial about that. Also, don't forget to read the SD Card Specification.
- A microcontroller to control everything. This will detect the button press, command the camera module to take a photo, and copy the JPEG from the camera module to the SD card. There are so many microcontrollers out there, that it's hard to recommend one. The tutorial I mentioned uses an ATMEGA, so why not go for that? Alternatively, use a [PSoC3], which actually has an SD card component which can handle a [FAT32 file system] on up to 4 SD cards at the same time. Alternatively, use a PSoC3, which actually has an SD card component which can handle a FAT32 file system on up to 4 SD cards at the same time.
- A button, batteries, SD card holder.
- Finally, obviously, you'll need to design a PCB to connect all of these things together.
You also mentioned sending the image over USB, Bluetooth or WiFi. If I were you, I'd stick to this for now. It's already a fairly complex project, and as I understand it, you're fairly new to electronics. You can simply take the SD card out and put it in a card reader.