Some good choices have already been posted. But I'd advise against Beach Chalet. The place has a great view and a nice selection of beer but the food is terrible. Yelp reviewers agree
http://www.yelp.com/biz/beach-chalet-san-francisco
One place not mentioned I'd suggest is an Italian place, Tommasos. Between Broadway and Pacific on Kearny. Small family run place with great food. The pizza is really good. Went to school with the daughter of the owner. Her uncle and aunt are waiters/waitresses, her mom's the owner, Aunt's the chef, and the hot sister's the hostess.
http://tommasosnorthbeach.com/
http://www.yelp.com/biz/tommaso-rist...query:tommasos