\documentclass[10pt,a4paper,titlepage]{book}
|
|
\usepackage[width=7in, height=9.5in,papersize={8.5in,11in}]{geometry}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage{amsmath}
|
|
\usepackage{amsfonts}
|
|
\usepackage{amssymb}
|
|
\usepackage{moreverb}
|
|
\usepackage{listings}
|
|
\usepackage{layout}
|
|
\usepackage{fancyhdr}
|
|
\usepackage{color}
|
|
\usepackage{setspace}
|
|
|
|
\author{Brett Langdon}
|
|
\title{Programming In General}
|
|
|
|
\pagestyle{fancy}
|
|
\voffset=0.25in
|
|
|
|
\parskip 10pt
|
|
\parindent 0pt
|
|
|
|
\renewcommand{\theenumii}{\arabic{enumii}}
|
|
\renewcommand{\labelenumii}{\theenumii.}
|
|
|
|
\renewcommand{\theenumiii}{\arabic{enumiii}}
|
|
\renewcommand{\labelenumiii}{\theenumiii.}
|
|
|
|
|
|
\definecolor{pigChapter}{rgb}{.1,.1,.4}
|
|
\definecolor{pigVar}{rgb}{.4,.2,.2}
|
|
\definecolor{pigVal}{rgb}{.2,.4,.7}
|
|
\definecolor{pigOut}{rgb}{.5,.5,.1}
|
|
|
|
\newcommand{\HRule}{\rule{\linewidth}{0.5mm}}
|
|
\newcommand{\pigChapter}[1]{{\color{pigChapter}\textit{#1}}}
|
|
\newcommand{\pigVar}[1]{{\color{pigVar}\textit{\textbf{#1}}}}
|
|
\newcommand{\pigVal}[1]{{\color{pigVal}\textbf{#1}}}
|
|
\newcommand{\pigOut}[1]{{\color{pigOut}\textbf{#1}}}
|
|
|
|
|
|
|
|
|
|
\definecolor{lstkeyword}{rgb}{.2,.2,.7}
|
|
\definecolor{lstcomment}{rgb}{.7,.7,.7}
|
|
\definecolor{lstidentifier}{rgb}{0,0,0}
|
|
\definecolor{lststring}{rgb}{.4,.4,.4}
|
|
|
|
|
|
\lstset{
|
|
numbers=left,
|
|
stepnumber=1,
|
|
numberstyle=\footnotesize,
|
|
frame=single,
|
|
showspaces=false,
|
|
showstringspaces=false,
|
|
basicstyle=\ttfamily,
|
|
linewidth=6.5in,
|
|
xleftmargin=0.5in,
|
|
keywordstyle=\bfseries\color{lstkeyword},
|
|
commentstyle=\itshape\color{lstcomment},
|
|
identifierstyle=\color{lstidentifier},
|
|
stringstyle=\color{lststring},
|
|
morekeywords={class,public,private,protected,$this,return,this,self,if,else,function,print},
|
|
morestring=[b]',
|
|
morestring=[b]",
|
|
morecomment=[s]{/*}{*/},
|
|
comment=[l]{//}
|
|
}
|
|
|
|
|
|
\lstdefinelanguage{javascript}{
|
|
keywords={typeof, new, true, false, catch, function, return, null, catch, switch, var, if, in, while, do, else, case, break},
|
|
ndkeywords={class, export, boolean, throw, implements, import, this},
|
|
sensitive=false,
|
|
comment=[l]{//},
|
|
morecomment=[s]{/*}{*/},
|
|
morestring=[b]',
|
|
morestring=[b]"
|
|
}
|
|
|
|
\lstdefinelanguage{php}{
|
|
keywords={$this,class,public,private,protected,return,new,null,catch,try,switch,if,else,while,do,case,break,continue,true,false,function,boolean,throw,implements,inhrits,echo,print}
|
|
sensitive=false,
|
|
comment=[l]{//},
|
|
morecomment=[s]{/*}{*/},
|
|
morestring=[b]',
|
|
morestring=[b]"
|
|
}
|
|
|
|
\begin{document}
|
|
|
|
\begin{titlepage}
|
|
\begin{center}
|
|
|
|
\vspace*{3 in}
|
|
|
|
\HRule \\[0.4cm]
|
|
{\huge \bfseries Programming In General}
|
|
\HRule \\[0.4cm]
|
|
|
|
\emph{Author:}\\
|
|
Brett \textsc{Langdon}
|
|
|
|
\vfill
|
|
|
|
{\large \today}
|
|
|
|
\end{center}
|
|
\end{titlepage}
|
|
|
|
\null
|
|
\vfill
|
|
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
|
|
\par
|
|
To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
|
|
\vfill
|
|
\null
|
|
|
|
\tableofcontents
|
|
|
|
\chapter{Introduction}
|
|
\input{"./1 - Introduction/Introduction"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Who Is This Resource For}
|
|
\input{"./1 - Introduction/1.1 - Who Is This Resource For"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Code Examples}
|
|
\input{"./1 - Introduction/1.2 - Code Examples"}
|
|
\vfill
|
|
\pagebreak
|
|
\chapter{Getting Started}
|
|
\input{"./2 - Getting Started/Getting Started"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Choosing A Programming Language}
|
|
\input{"./2 - Getting Started/1.1 - Choosing A Programming Language"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{How To Read This Resource}
|
|
\input{"./2 - Getting Started/1.2 - How To Read This Resource"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Sudo Language}
|
|
\input{"./2 - Getting Started/1.3 - Sudo Language"}
|
|
\vfill
|
|
\pagebreak
|
|
\chapter{Functional Programming}
|
|
\input{"./3 - Functional Programming/Functional Programming"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Variables}
|
|
\input{"./3 - Functional Programming/1.1 - Variables"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Control Statements}
|
|
\input{"./3 - Functional Programming/1.2 - Control Statements"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Functions}
|
|
\input{"./3 - Functional Programming/1.3 - Functions"}
|
|
\vfill
|
|
\pagebreak
|
|
\chapter{Object Oriented Programming}
|
|
\input{"./4 - Object Oriented Programming/Object Oriented Programming"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Classes and Objects}
|
|
\input{"./4 - Object Oriented Programming/1.1 - Classes and Objects"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Inheritence}
|
|
\input{"./4 - Object Oriented Programming/1.2 - Inheritence"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Polymorphism}
|
|
\input{"./4 - Object Oriented Programming/1.3 - Polymorphism"}
|
|
\vfill
|
|
\pagebreak
|
|
\chapter{Design Patterns}
|
|
\input{"./5 - Design Patterns/Design Patterns"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Singleton}
|
|
\input{"./5 - Design Patterns/1.1 - Singleton"}
|
|
\vfill
|
|
\pagebreak
|
|
\chapter{Data Structures}
|
|
\input{"./6 - Data Structures/Data Structures"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Linked Lists}
|
|
\input{"./6 - Data Structures/1.1 - Linked Lists"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Doubly Linked Lists}
|
|
\input{"./6 - Data Structures/1.2 - Doubly Linked Lists"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Stacks}
|
|
\input{"./6 - Data Structures/1.3 - Stacks"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Queues}
|
|
\input{"./6 - Data Structures/1.4 - Queues"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Hash Maps}
|
|
\input{"./6 - Data Structures/1.5 - Hash Maps"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{Binary Trees}
|
|
\input{"./6 - Data Structures/1.6 - Binary Trees"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{B-Trees}
|
|
\input{"./6 - Data Structures/1.7 - B-Trees"}
|
|
\vfill
|
|
\pagebreak
|
|
\section{B+ Trees}
|
|
\input{"./6 - Data Structures/1.8 - B+ Trees"}
|
|
\vfill
|
|
\pagebreak
|
|
\chapter{Algorithms}
|
|
\input{"./7 - Algorithms/Algorithms"}
|
|
\vfill
|
|
\pagebreak\end{document}
|