Computer Science Guide

From Earlham CS Department
Revision as of 11:38, 20 September 2014 by Ghcrows13 (talk | contribs) (Created page with "Table of Contents forward notes about text code computer hardware operating systems networks databases graphics troubleshooting Detailed Table of Contents forward notes about te...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Table of Contents forward notes about text code computer hardware operating systems networks databases graphics troubleshooting

Detailed Table of Contents forward notes about text formatting composition reading guide sources code overview design concepts conditionals loops classes style c++ python computer hardware overview cpu ram hard drives displays motherboards ports peripherals operating systems overview networks overview topography security protocols performance databases overview design security queries & SQL graphics overview troubleshooting overview desktops laptops displays tablets phones ?

forward

This is a compilation of online resources. resources may be cut and edited to better fit the philosophy of this text This text is intended to: be simple help those that desire it expose concepts without complexity be accessible by print and web provide links to all sourced information be editable by those without malicious intent It is not expected that you read this text sequentially or entirely. use this text in whatever way benefits you most This is NOT a supplement for a traditional academic resource such as a textbook.

?

notes about text

formatting

chapter headings numbered 36-point font sub-chapter headings lettered 24-point font lists intended to be easily modifiable (TODO: explain) citation source links are included above their quotes note key (TODO: ) is used to indicate necessary changes

composition

reading guide

sources

Wikipedia is relied upon heavily. It was the fastest way to get this project going. Additional sources are welcome to be incorporated where appropriate. ?

code

overview

http://en.wikipedia.org/wiki/Computer_programming Programming is a process that leads from an original formulation of a computing problem to executable programs. It involves activities such as analysis, understanding, and generically solving such problems resulting in an algorithm, verification of requirements of the algorithm including its correctness and its resource consumption, implementation (commonly referred to as coding[1][2]) of the algorithm in a target programming language. Source code is written in one or more programming languages (such as C, C++, C#, Java, Python, Smalltalk, JavaScript, etc.). The purpose of programming is to find a sequence of instructions that will automate performing a specific task or solve a given problem. The process of programming thus often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic.

design

http://en.wikipedia.org/wiki/Software_design#Software_Design Software design is both a process and a model. The design process is a sequence of steps that enable the designer to describe all aspects of the software to be built. It is important to note, however, that the design process is not simply a cookbook. Creative skill, past experience, a sense of what makes “good” software, and an overall commitment to quality are critical success factors for a competent design.

The design model is the equivalent of an architect’s plans for a house. It begins by representing the totality of the thing to be built (e.g., a three-dimensional rendering of the house) and slowly re?nes the thing to provide guidance for constructing each detail (e.g., the plumbing layout). Similarly, the design model that is created for software provides a variety of different views of the computer software. Basic design principles enable the software engineer to navigate the design process. concepts conditionals http://en.wikipedia.org/wiki/Conditional_(computer_programming)#If-then-else_expressions Conditional statements are features of a programming language which perform different computations or actions depending on whether a boolean condition evaluates to true or false. if-then-else

switch

loops


enumerations


structures


classes


style a